From b83116eb2621fcfe9b34d49b06d103f950b8e028 Mon Sep 17 00:00:00 2001 From: windyboy Date: Sat, 31 Jan 2026 08:25:19 +0800 Subject: [PATCH] vault backup: 2026-01-31 08:25:19 --- .claude/settings.json | 384 +- .obsidian/community-plugins.json | 18 +- .obsidian/plugins/any-block/main.js | 49908 ++++++++++++++++ .obsidian/plugins/any-block/styles.css | 1169 + .obsidian/plugins/mcp-tools/main.js | 523 - .obsidian/plugins/mcp-tools/manifest.json | 11 - .obsidian/plugins/memos-sync/data.json | 7 - .obsidian/plugins/memos-sync/main.js | 23420 -------- .obsidian/plugins/memos-sync/manifest.json | 10 - .obsidian/plugins/memos-sync/styles.css | 8 - .obsidian/plugins/note-buddy/main.js | 692 + .obsidian/plugins/note-buddy/styles.css | 48 + .../plugins/obsidian-advanced-uri/main.js | 12 +- .../obsidian-advanced-uri/manifest.json | 2 +- .../obsidian-excalidraw-plugin/data.json | 2 +- .../obsidian-excalidraw-plugin/main.js | 6 +- .../obsidian-excalidraw-plugin/manifest.json | 2 +- .../obsidian-excalidraw-plugin/styles.css | 2 +- .../plugins/obsidian-tasks-plugin/data.json | 4 +- .obsidian/plugins/opencode-obsidian | 48 + .obsidian/plugins/opencode-obsidian/LICENSE | 5 - .obsidian/plugins/opencode-obsidian/main.js | 100 - .../plugins/opencode-obsidian/manifest.json | 11 - .../plugins/opencode-obsidian/styles.css | 475 - .obsidian/plugins/quickadd/data.json | 19 +- .obsidian/plugins/quickadd/main.js | 151 +- .obsidian/plugins/quickadd/manifest.json | 4 +- .obsidian/plugins/quickadd/styles.css | 2 +- .obsidian/plugins/templater-obsidian/main.js | 28 +- .../plugins/templater-obsidian/manifest.json | 2 +- 00_Inbox/2026-01-17.md | 49 + .../01/Welcome to LessWrong! — LessWrong.md | 124 + .../Development/AI-ML/Zenmux-config.md | 6 + 03_Resources/Development/AI-ML/火山引擎.md | 15 + specs/001-opencode-client/contracts/CLAUDE.md | 11 + 35 files changed, 52219 insertions(+), 25059 deletions(-) create mode 100644 .obsidian/plugins/any-block/main.js create mode 100644 .obsidian/plugins/any-block/styles.css delete mode 100644 .obsidian/plugins/mcp-tools/main.js delete mode 100644 .obsidian/plugins/mcp-tools/manifest.json delete mode 100644 .obsidian/plugins/memos-sync/data.json delete mode 100644 .obsidian/plugins/memos-sync/main.js delete mode 100644 .obsidian/plugins/memos-sync/manifest.json delete mode 100644 .obsidian/plugins/memos-sync/styles.css create mode 100644 .obsidian/plugins/note-buddy/main.js create mode 100644 .obsidian/plugins/note-buddy/styles.css create mode 100644 .obsidian/plugins/opencode-obsidian delete mode 100644 .obsidian/plugins/opencode-obsidian/LICENSE delete mode 100644 .obsidian/plugins/opencode-obsidian/main.js delete mode 100644 .obsidian/plugins/opencode-obsidian/manifest.json delete mode 100644 .obsidian/plugins/opencode-obsidian/styles.css create mode 100644 00_Inbox/2026-01-17.md create mode 100644 00_Inbox/Clippings/2026/01/Welcome to LessWrong! — LessWrong.md create mode 100644 03_Resources/Development/AI-ML/火山引擎.md create mode 100644 specs/001-opencode-client/contracts/CLAUDE.md diff --git a/.claude/settings.json b/.claude/settings.json index 62978a4..eb3dd18 100644 --- a/.claude/settings.json +++ b/.claude/settings.json @@ -44,375 +44,13 @@ "thinkingBudget": "off", "permissionMode": "normal", "lastNonPlanPermissionMode": "normal", - "permissions": [ - { - "toolName": "Bash", - "pattern": "mkdir -p \"03_Resources/Articles\" \"03_Resources/Books\" \"03_Resources/Concepts\" \"03_Resources/People\" \"03_Resources/Tools\" \"03_Resources/Quotes\" \"03_Resources/Examples\" \"03_Resources/Learning\"", - "approvedAt": 1767579982085, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "mkdir -p \"06_Metadata/Reference\" \"06_Metadata/Templates\" \"06_Metadata/Agents\" \"06_Metadata/Workflows\" \"06_Metadata/Archive\"", - "approvedAt": 1767580054324, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "if [ -f .gitignore ]; then echo \"EXISTS\"; else echo \"NOT_FOUND\"; fi", - "approvedAt": 1767587601599, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "mkdir -p 03_Resources/Prompt-Library", - "approvedAt": 1767592134447, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": "03_Resources/Prompt-Library/Gemini 图片生成提示词模板.md", - "approvedAt": 1767592217296, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": "03_Resources/Prompt-Library/README.md", - "approvedAt": 1767592256349, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "mv \"01_Projects/AI-Development/Prompt-Library/baibot-system-prompts.md\" \"03_Resources/Prompt-Library/\" && mv \"01_Projects/AI-Development/Prompt-Library/cycling-training-prompt.md\" \"03_Resources/Prompt-Library/\" && mv \"01_Projects/AI-Development/Prompt-Library/dev-engineering-rules.md\" \"03_Resources/Prompt-Library/\" && mv \"01_Projects/AI-Development/Prompt-Library/movie-review-prompt.md\" \"03_Resources/Prompt-Library/\"", - "approvedAt": 1767592881054, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "rmdir \"01_Projects/AI-Development/Prompt-Library\"", - "approvedAt": 1767592895883, - "scope": "always" - }, - { - "toolName": "Edit", - "pattern": "03_Resources/Prompt-Library/README.md", - "approvedAt": 1767592921581, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": "03_Resources/Prompt-Library/baibot-system-prompts.md", - "approvedAt": 1767593197954, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "python3 << 'EOF'\nimport os\nimport re\n\nchinese_pattern = re.compile(r'[\\u4e00-\\u9fff]+')\nchinese_files = []\n\nfor root, dirs, files in os.walk('.'):\n # 跳过隐藏目录\n dirs[:] = [d for d in dirs if not d.startswith('.')]\n \n for file in files:\n if chinese_pattern.search(file):\n full_path = os.path.join(root, file)\n chinese_files.append(full_path)\n\nfor f in sorted(chinese_files):\n print(f)\nEOF", - "approvedAt": 1767593330771, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "python << 'EOF'\nimport os\nimport re\n\nchinese_pattern = re.compile(r'[\\u4e00-\\u9fff]+')\nchinese_files = []\n\nfor root, dirs, files in os.walk('.'):\n # 跳过隐藏目录\n dirs[:] = [d for d in dirs if not d.startswith('.')]\n \n for file in files:\n if chinese_pattern.search(file):\n full_path = os.path.join(root, file)\n chinese_files.append(full_path)\n\nprint(f\"Found {len(chinese_files)} files with Chinese characters:\\n\")\nfor f in sorted(chinese_files):\n print(f)\nEOF", - "approvedAt": 1767593392020, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": ".scripts/scan-vault-para.ps1", - "approvedAt": 1767593508230, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": ".scripts/rename-chinese-to-english.ps1", - "approvedAt": 1767593891436, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "powershell -ExecutionPolicy Bypass -File \".\\.scripts\\rename-chinese-to-english.ps1\"", - "approvedAt": 1767593905094, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": ".scripts/rename-chinese-to-english.py", - "approvedAt": 1767594043665, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "python .scripts/rename-chinese-to-english.py", - "approvedAt": 1767594060348, - "scope": "always" - }, - { - "toolName": "Edit", - "pattern": ".scripts/rename-chinese-to-english.py", - "approvedAt": 1767594101469, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "python .scripts/rename-chinese-to-english.py --execute", - "approvedAt": 1767594252544, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "python .scripts/rename-chinese-to-english.py --execute 2>&1 | grep -E \"^\\[\" | tail -30", - "approvedAt": 1767594293947, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "ls 00_Inbox/*.md 2>&1 | head -5", - "approvedAt": 1767604467950, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "ls 03_Resources/*.md 2>&1 | head -5", - "approvedAt": 1767604961692, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": ".claude/project-instructions.md", - "approvedAt": 1767605314357, - "scope": "always" - }, - { - "toolName": "Edit", - "pattern": "2026-01-05.md", - "approvedAt": 1767605423829, - "scope": "always" - }, - { - "toolName": "WebFetch", - "pattern": "{\"url\":\"https://silentvoid13.github.io/Templater\",\"prompt\":\"提取Templater插件的主要功能、安装方法、基本使用方式和核心语法\"}", - "approvedAt": 1767605778052, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": "06_Metadata/Templater使用指南.md", - "approvedAt": 1767606555612, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "mkdir -p \"06_Metadata/Templates\"", - "approvedAt": 1767606562910, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": "06_Metadata/Templates/daily-note.md", - "approvedAt": 1767606599739, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": "06_Metadata/Templates/project.md", - "approvedAt": 1767606602396, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": "06_Metadata/Templates/meeting.md", - "approvedAt": 1767606604749, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": "06_Metadata/Templates/quick-note.md", - "approvedAt": 1767606606848, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": "06_Metadata/Templates/book-note.md", - "approvedAt": 1767606608965, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": "06_Metadata/Templates/person.md", - "approvedAt": 1767606610745, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": "06_Metadata/Templater配置指南.md", - "approvedAt": 1767606650610, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": "06_Metadata/Templater快速参考.md", - "approvedAt": 1767606680611, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "cd 06_Metadata && mv \"Templater使用指南.md\" \"Templater-User-Guide.md\" && mv \"Templater配置指南.md\" \"Templater-Setup-Guide.md\" && mv \"Templater快速参考.md\" \"Templater-Quick-Reference.md\"", - "approvedAt": 1767606719668, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "ls -lh 06_Metadata/*.md", - "approvedAt": 1767606724364, - "scope": "always" - }, - { - "toolName": "Edit", - "pattern": "06_Metadata/Templater-Setup-Guide.md", - "approvedAt": 1767606758871, - "scope": "always" - }, - { - "toolName": "Edit", - "pattern": "06_Metadata/Templater-Quick-Reference.md", - "approvedAt": 1767606763446, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": "06_Metadata/Obsidian-Plugins-Manual.md", - "approvedAt": 1767608585967, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "git remote remove origin 2>&1 || echo \"no origin to remove\"", - "approvedAt": 1767616810536, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "pnpm install", - "approvedAt": 1767616837185, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "mkdir -p 00_Inbox 01_Projects 02_Areas 03_Resources 04_Archive 05_Attachments/Organized 06_Metadata/Reference 06_Metadata/Plans 06_Metadata/Templates && echo \"Folders created successfully\"", - "approvedAt": 1767617713953, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "cat > \"01_Projects/README.md\" << 'EOF'\n# Projects\n\n**Purpose:** Time-bound initiatives with clear completion criteria.\n\n## What is a Project?\n\nA project has:\n- A specific goal or deliverable\n- A clear end date or completion criteria\n- Multiple tasks or actions\n\nExamples: Writing a paper, launching a product, planning an event, learning a new skill\n\n## Recommended Structure\n\nFor each project folder, create:\n- `Research/` - Source materials and references\n- `Drafts/` - Work in progress\n- `Output/` - Final deliverables\n- `README.md` - Project objectives, timeline, and status\n\n## Project Lifecycle\n\n1. **Start:** Create folder with subfolders and README\n2. **During:** Keep all related materials in the project folder\n3. **Complete:** Create summary note, then move to `04_Archive/`\n\n## Tips\n\n- Link to relevant Areas and Resources\n- Commit regularly to track progress with git\n- Review weekly to check status and next actions\nEOF\necho \"Created 01_Projects/README.md\"", - "approvedAt": 1767618086311, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "cat > \"04_Archive/README.md\" << 'EOF'\n# Archive\n\n**Purpose:** Completed or inactive items from Projects and Areas.\n\n## What Gets Archived\n\n- **Completed projects** - Move entire project folder here\n- **Inactive areas** - Areas you're no longer maintaining\n- **Old resources** - Outdated reference materials (use sparingly)\n\n## Archive Structure\n\nMaintain the same folder structure:\n- `Projects/` - Completed project folders\n- `Areas/` - Inactive areas\n- `Resources/` - Outdated resources (if needed)\n\n## Before Archiving a Project\n\n1. Create a project summary note with:\n - What was accomplished\n - Key learnings\n - Links to important outputs\n2. Update related Area notes\n3. Move the entire project folder here\n\n## Maintenance\n\n- Review quarterly to see what can be deleted\n- Some archived items may be reactivated\n- Keep the archive organized (mirror active structure)\n\n## Tips\n\n- Don't archive too aggressively - keep valuable reference material\n- Use git history to track when things were archived\n- Archived doesn't mean forgotten - you can still search and reference\nEOF\necho \"Created 04_Archive/README.md\"", - "approvedAt": 1767618088747, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "cat > \"05_Attachments/README.md\" << 'EOF'\n# Attachments\n\n**Purpose:** Storage for all non-text files (images, PDFs, videos, audio).\n\n## Organization\n\n- **Root (05_Attachments/)** - Unprocessed attachments\n- **Organized/** - Files that have been properly named and referenced\n\n## Naming Convention\n\nUse descriptive names that indicate the related note:\n- `[RelatedNote]_[Description].[ext]`\n- Example: `ProjectAlpha_Architecture_Diagram.png`\n- Example: `BookNotes_Thinking_Fast_Slow_Cover.jpg`\n\n## Helper Scripts\n\n```bash\npnpm attachments:list # List unprocessed files\npnpm attachments:organized # Count organized files\npnpm attachments:orphans # Find unreferenced files\npnpm attachments:update-links # Update links after moving\n```\n\n## Processing Workflow\n\n1. Files initially land in `05_Attachments/`\n2. Rename with descriptive names\n3. Reference in notes using `![[filename.ext]]`\n4. Move to `Organized/` subfolder\n5. Update any links if paths change\n\n## Tips\n\n- Process attachments regularly (don't let them pile up)\n- Use consistent naming patterns\n- Delete duplicates and unused files\n- Consider using Gemini Vision to analyze images\nEOF\necho \"Created 05_Attachments/README.md\"", - "approvedAt": 1767618090058, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "cat package.json | grep -A 30 '\"scripts\"'", - "approvedAt": 1767618132102, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "mkdir -p .claude && echo '{\"user\":{\"name\":\"\",\"publicProfile\":false},\"organizationMethod\":\"PARA\",\"primaryUses\":[\"research\",\"writing\",\"project-management\",\"daily-notes\"],\"tools\":{\"geminiVision\":false,\"firecrawl\":true},\"weeklyReview\":true,\"importedAt\":\"2026-01-05\",\"lastUpdated\":\"2026-01-05\"}' > .claude/vault-config.json && cat .claude/vault-config.json", - "approvedAt": 1767618135787, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": "D:\\tmp\\vault\\my-vault\\CLAUDE.md", - "approvedAt": 1767618385844, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": "D:\\tmp\\vault\\my-vault\\WEEKLY_REVIEW.md", - "approvedAt": 1767618388814, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "test -f \"D:\\tmp\\vault\\my-vault\\.gitignore\" && echo \"exists\" || echo \"not found\"", - "approvedAt": 1767618406650, - "scope": "always" - }, - { - "toolName": "Edit", - "pattern": "D:\\tmp\\vault\\my-vault\\.gitignore", - "approvedAt": 1767618439421, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "pnpm vault:stats", - "approvedAt": 1767618580628, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "git add CLAUDE.md WEEKLY_REVIEW.md .gitignore .claude/vault-config.json 01_Projects/README.md 02_Areas/README.md 03_Resources/README.md 04_Archive/README.md 05_Attachments/README.md pnpm-lock.yaml", - "approvedAt": 1767618604305, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "git commit -m \"$(cat <<'EOF'\nInitial vault setup with PARA structure\n\n- Created CLAUDE.md configuration file\n- Created WEEKLY_REVIEW.md template\n- Set up PARA folder structure (Projects, Areas, Resources, Archive)\n- Created README files for each main folder\n- Configured .gitignore for vault files\n- Saved vault configuration to .claude/vault-config.json\n\nGenerated with Claude Code\nCo-Authored-By: Claude Sonnet 4.5 \nEOF\n)\"", - "approvedAt": 1767618611184, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": ".claude/commands/git-commit-msg.md", - "approvedAt": 1767619909039, - "scope": "always" - }, - { - "toolName": "Edit", - "pattern": ".claude/commands/README.md", - "approvedAt": 1767619920589, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": ".git-commit-msg-temp.txt", - "approvedAt": 1767620317298, - "scope": "always" - }, - { - "toolName": "Write", - "pattern": "01_Projects/Work/Government-Projects/Municipal-Development-Reform/login.md", - "approvedAt": 1767753309725, - "scope": "always" - }, - { - "toolName": "Bash", - "pattern": "git add \"01_Projects/Work/Government-Projects/Municipal-Development-Reform/Server-Credentials.md\" && git commit -m \"Rename: login.md → Server-Credentials.md for better clarity\"", - "approvedAt": 1767755418968, - "scope": "always" - } - ], + "permissions": [], "excludedTags": [], - "mediaFolder": "", + "mediaFolder": "05_Attachments", "environmentVariables": "", "envSnippets": [], "systemPrompt": "", "allowedExportPaths": [ - "~/Desktop", "~/Downloads" ], "allowedContextPaths": [], @@ -421,21 +59,5 @@ "scrollDownKey": "s", "focusInputKey": "i" }, - "claudeCliPath": "", - "hooks": { - "SessionStart": [ - { - "hooks": [ - { - "type": "command", - "command": "[ -f FIRST_RUN ] && echo '{\"hookSpecificOutput\":{\"hookEventName\":\"SessionStart\",\"additionalContext\":\"\\n\\n# 🚀 Welcome to Claudesidian!\\n\\n**This appears to be your first time using this vault.**\\n\\n## Quick Start\\n\\nRun the setup wizard:\\n\\n⬇\\n/init-bootstrap\\n⬆\\n\\n## What this will do:\\n\\n✅ Set up your personalized configuration\\n✅ Disconnect from the original repository\\n✅ Help you import any existing Obsidian vault\\n✅ Configure your preferred workflow\\n✅ Create your PARA folder structure\\n\\nThe setup wizard will guide you through everything!\\n\\n\"}}' || true" - }, - { - "type": "command", - "command": "npm run check-updates --silent 2>/dev/null || true" - } - ] - } - ] - } + "claudeCliPath": "/Users/windy/.local/bin/claude" } \ No newline at end of file diff --git a/.obsidian/community-plugins.json b/.obsidian/community-plugins.json index ecb1636..641a2f5 100644 --- a/.obsidian/community-plugins.json +++ b/.obsidian/community-plugins.json @@ -2,17 +2,33 @@ "claudian", "obsidian-local-rest-api", "table-editor-obsidian", + "obsidian-git", "templater-obsidian", + "obsidian-tasks-plugin", + "calendar", "obsidian-kanban", + "obsidian-style-settings", "obsidian-icon-folder", "omnisearch", + "copilot", + "easy-typing-obsidian", "obsidian-advanced-uri", - "obsidian-advanced-codeblock", + "advanced-canvas", "better-word-count", + "dataview", "obsidian-excalidraw-plugin", "obsidian-mind-map", "cm-chs-patch", "quickadd", +<<<<<<< HEAD "highlightr-plugin", "obsidian-git" +======= + "any-block", + "obsidian-opencode", + "opencode-obsidian", + "highlightr-plugin", + "code-styler", + "note-buddy" +>>>>>>> main/main ] \ No newline at end of file diff --git a/.obsidian/plugins/any-block/main.js b/.obsidian/plugins/any-block/main.js new file mode 100644 index 0000000..9d6ce11 --- /dev/null +++ b/.obsidian/plugins/any-block/main.js @@ -0,0 +1,49908 @@ +/* +THIS IS A GENERATED/BUNDLED FILE BY ESBUILD +if you want to view the source, please visit the github repository of this plugin +*/ + +var __create = Object.create; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __getProtoOf = Object.getPrototypeOf; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __commonJS = (cb, mod) => function __require() { + return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; +}; +var __export = (target, all) => { + for (var name2 in all) + __defProp(target, name2, { get: all[name2], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( + isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, + mod +)); +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); + +// ../../node_modules/.pnpm/plantuml-encoder@1.4.0/node_modules/plantuml-encoder/dist/plantuml-encoder.js +var require_plantuml_encoder = __commonJS({ + "../../node_modules/.pnpm/plantuml-encoder@1.4.0/node_modules/plantuml-encoder/dist/plantuml-encoder.js"(exports, module2) { + (function(f) { + if (typeof exports === "object" && typeof module2 !== "undefined") { + module2.exports = f(); + } else if (typeof define === "function" && define.amd) { + define([], f); + } else { + var g; + if (typeof window !== "undefined") { + g = window; + } else if (typeof global !== "undefined") { + g = global; + } else if (typeof self !== "undefined") { + g = self; + } else { + g = this; + } + g.plantumlEncoder = f(); + } + })(function() { + var define2, module3, exports2; + return function() { + function r(e, n, t2) { + function o(i2, f) { + if (!n[i2]) { + if (!e[i2]) { + var c = "function" == typeof require && require; + if (!f && c) + return c(i2, true); + if (u) + return u(i2, true); + var a = new Error("Cannot find module '" + i2 + "'"); + throw a.code = "MODULE_NOT_FOUND", a; + } + var p = n[i2] = { exports: {} }; + e[i2][0].call(p.exports, function(r2) { + var n2 = e[i2][1][r2]; + return o(n2 || r2); + }, p, p.exports, r, e, n, t2); + } + return n[i2].exports; + } + for (var u = "function" == typeof require && require, i = 0; i < t2.length; i++) + o(t2[i]); + return o; + } + return r; + }()({ 1: [function(require2, module4, exports3) { + "use strict"; + var pako = require2("pako/lib/deflate.js"); + module4.exports = function(data2) { + return pako.deflateRaw(data2, { level: 9, to: "string" }); + }; + }, { "pako/lib/deflate.js": 4 }], 2: [function(require2, module4, exports3) { + "use strict"; + function encode6bit(b) { + if (b < 10) { + return String.fromCharCode(48 + b); + } + b -= 10; + if (b < 26) { + return String.fromCharCode(65 + b); + } + b -= 26; + if (b < 26) { + return String.fromCharCode(97 + b); + } + b -= 26; + if (b === 0) { + return "-"; + } + if (b === 1) { + return "_"; + } + return "?"; + } + function append3bytes(b1, b2, b3) { + var c1 = b1 >> 2; + var c2 = (b1 & 3) << 4 | b2 >> 4; + var c3 = (b2 & 15) << 2 | b3 >> 6; + var c4 = b3 & 63; + var r = ""; + r += encode6bit(c1 & 63); + r += encode6bit(c2 & 63); + r += encode6bit(c3 & 63); + r += encode6bit(c4 & 63); + return r; + } + module4.exports = function(data2) { + var r = ""; + for (var i = 0; i < data2.length; i += 3) { + if (i + 2 === data2.length) { + r += append3bytes(data2.charCodeAt(i), data2.charCodeAt(i + 1), 0); + } else if (i + 1 === data2.length) { + r += append3bytes(data2.charCodeAt(i), 0, 0); + } else { + r += append3bytes( + data2.charCodeAt(i), + data2.charCodeAt(i + 1), + data2.charCodeAt(i + 2) + ); + } + } + return r; + }; + }, {}], 3: [function(require2, module4, exports3) { + "use strict"; + var deflate = require2("./deflate"); + var encode64 = require2("./encode64"); + module4.exports.encode = function(puml) { + var deflated = deflate(puml); + return encode64(deflated); + }; + }, { "./deflate": 1, "./encode64": 2 }], 4: [function(require2, module4, exports3) { + "use strict"; + var zlib_deflate = require2("./zlib/deflate"); + var utils = require2("./utils/common"); + var strings = require2("./utils/strings"); + var msg = require2("./zlib/messages"); + var ZStream = require2("./zlib/zstream"); + var toString2 = Object.prototype.toString; + var Z_NO_FLUSH = 0; + var Z_FINISH = 4; + var Z_OK = 0; + var Z_STREAM_END = 1; + var Z_SYNC_FLUSH = 2; + var Z_DEFAULT_COMPRESSION = -1; + var Z_DEFAULT_STRATEGY = 0; + var Z_DEFLATED = 8; + function Deflate(options) { + if (!(this instanceof Deflate)) + return new Deflate(options); + this.options = utils.assign({ + level: Z_DEFAULT_COMPRESSION, + method: Z_DEFLATED, + chunkSize: 16384, + windowBits: 15, + memLevel: 8, + strategy: Z_DEFAULT_STRATEGY, + to: "" + }, options || {}); + var opt = this.options; + if (opt.raw && opt.windowBits > 0) { + opt.windowBits = -opt.windowBits; + } else if (opt.gzip && opt.windowBits > 0 && opt.windowBits < 16) { + opt.windowBits += 16; + } + this.err = 0; + this.msg = ""; + this.ended = false; + this.chunks = []; + this.strm = new ZStream(); + this.strm.avail_out = 0; + var status = zlib_deflate.deflateInit2( + this.strm, + opt.level, + opt.method, + opt.windowBits, + opt.memLevel, + opt.strategy + ); + if (status !== Z_OK) { + throw new Error(msg[status]); + } + if (opt.header) { + zlib_deflate.deflateSetHeader(this.strm, opt.header); + } + if (opt.dictionary) { + var dict; + if (typeof opt.dictionary === "string") { + dict = strings.string2buf(opt.dictionary); + } else if (toString2.call(opt.dictionary) === "[object ArrayBuffer]") { + dict = new Uint8Array(opt.dictionary); + } else { + dict = opt.dictionary; + } + status = zlib_deflate.deflateSetDictionary(this.strm, dict); + if (status !== Z_OK) { + throw new Error(msg[status]); + } + this._dict_set = true; + } + } + Deflate.prototype.push = function(data2, mode) { + var strm = this.strm; + var chunkSize = this.options.chunkSize; + var status, _mode; + if (this.ended) { + return false; + } + _mode = mode === ~~mode ? mode : mode === true ? Z_FINISH : Z_NO_FLUSH; + if (typeof data2 === "string") { + strm.input = strings.string2buf(data2); + } else if (toString2.call(data2) === "[object ArrayBuffer]") { + strm.input = new Uint8Array(data2); + } else { + strm.input = data2; + } + strm.next_in = 0; + strm.avail_in = strm.input.length; + do { + if (strm.avail_out === 0) { + strm.output = new utils.Buf8(chunkSize); + strm.next_out = 0; + strm.avail_out = chunkSize; + } + status = zlib_deflate.deflate(strm, _mode); + if (status !== Z_STREAM_END && status !== Z_OK) { + this.onEnd(status); + this.ended = true; + return false; + } + if (strm.avail_out === 0 || strm.avail_in === 0 && (_mode === Z_FINISH || _mode === Z_SYNC_FLUSH)) { + if (this.options.to === "string") { + this.onData(strings.buf2binstring(utils.shrinkBuf(strm.output, strm.next_out))); + } else { + this.onData(utils.shrinkBuf(strm.output, strm.next_out)); + } + } + } while ((strm.avail_in > 0 || strm.avail_out === 0) && status !== Z_STREAM_END); + if (_mode === Z_FINISH) { + status = zlib_deflate.deflateEnd(this.strm); + this.onEnd(status); + this.ended = true; + return status === Z_OK; + } + if (_mode === Z_SYNC_FLUSH) { + this.onEnd(Z_OK); + strm.avail_out = 0; + return true; + } + return true; + }; + Deflate.prototype.onData = function(chunk) { + this.chunks.push(chunk); + }; + Deflate.prototype.onEnd = function(status) { + if (status === Z_OK) { + if (this.options.to === "string") { + this.result = this.chunks.join(""); + } else { + this.result = utils.flattenChunks(this.chunks); + } + } + this.chunks = []; + this.err = status; + this.msg = this.strm.msg; + }; + function deflate(input, options) { + var deflator = new Deflate(options); + deflator.push(input, true); + if (deflator.err) { + throw deflator.msg || msg[deflator.err]; + } + return deflator.result; + } + function deflateRaw(input, options) { + options = options || {}; + options.raw = true; + return deflate(input, options); + } + function gzip(input, options) { + options = options || {}; + options.gzip = true; + return deflate(input, options); + } + exports3.Deflate = Deflate; + exports3.deflate = deflate; + exports3.deflateRaw = deflateRaw; + exports3.gzip = gzip; + }, { "./utils/common": 5, "./utils/strings": 6, "./zlib/deflate": 9, "./zlib/messages": 10, "./zlib/zstream": 12 }], 5: [function(require2, module4, exports3) { + "use strict"; + var TYPED_OK = typeof Uint8Array !== "undefined" && typeof Uint16Array !== "undefined" && typeof Int32Array !== "undefined"; + function _has(obj, key) { + return Object.prototype.hasOwnProperty.call(obj, key); + } + exports3.assign = function(obj) { + var sources = Array.prototype.slice.call(arguments, 1); + while (sources.length) { + var source = sources.shift(); + if (!source) { + continue; + } + if (typeof source !== "object") { + throw new TypeError(source + "must be non-object"); + } + for (var p in source) { + if (_has(source, p)) { + obj[p] = source[p]; + } + } + } + return obj; + }; + exports3.shrinkBuf = function(buf, size) { + if (buf.length === size) { + return buf; + } + if (buf.subarray) { + return buf.subarray(0, size); + } + buf.length = size; + return buf; + }; + var fnTyped = { + arraySet: function(dest, src, src_offs, len, dest_offs) { + if (src.subarray && dest.subarray) { + dest.set(src.subarray(src_offs, src_offs + len), dest_offs); + return; + } + for (var i = 0; i < len; i++) { + dest[dest_offs + i] = src[src_offs + i]; + } + }, + flattenChunks: function(chunks) { + var i, l, len, pos, chunk, result; + len = 0; + for (i = 0, l = chunks.length; i < l; i++) { + len += chunks[i].length; + } + result = new Uint8Array(len); + pos = 0; + for (i = 0, l = chunks.length; i < l; i++) { + chunk = chunks[i]; + result.set(chunk, pos); + pos += chunk.length; + } + return result; + } + }; + var fnUntyped = { + arraySet: function(dest, src, src_offs, len, dest_offs) { + for (var i = 0; i < len; i++) { + dest[dest_offs + i] = src[src_offs + i]; + } + }, + flattenChunks: function(chunks) { + return [].concat.apply([], chunks); + } + }; + exports3.setTyped = function(on) { + if (on) { + exports3.Buf8 = Uint8Array; + exports3.Buf16 = Uint16Array; + exports3.Buf32 = Int32Array; + exports3.assign(exports3, fnTyped); + } else { + exports3.Buf8 = Array; + exports3.Buf16 = Array; + exports3.Buf32 = Array; + exports3.assign(exports3, fnUntyped); + } + }; + exports3.setTyped(TYPED_OK); + }, {}], 6: [function(require2, module4, exports3) { + "use strict"; + var utils = require2("./common"); + var STR_APPLY_OK = true; + var STR_APPLY_UIA_OK = true; + try { + String.fromCharCode.apply(null, [0]); + } catch (__) { + STR_APPLY_OK = false; + } + try { + String.fromCharCode.apply(null, new Uint8Array(1)); + } catch (__) { + STR_APPLY_UIA_OK = false; + } + var _utf8len = new utils.Buf8(256); + for (var q = 0; q < 256; q++) { + _utf8len[q] = q >= 252 ? 6 : q >= 248 ? 5 : q >= 240 ? 4 : q >= 224 ? 3 : q >= 192 ? 2 : 1; + } + _utf8len[254] = _utf8len[254] = 1; + exports3.string2buf = function(str) { + var buf, c, c2, m_pos, i, str_len = str.length, buf_len = 0; + for (m_pos = 0; m_pos < str_len; m_pos++) { + c = str.charCodeAt(m_pos); + if ((c & 64512) === 55296 && m_pos + 1 < str_len) { + c2 = str.charCodeAt(m_pos + 1); + if ((c2 & 64512) === 56320) { + c = 65536 + (c - 55296 << 10) + (c2 - 56320); + m_pos++; + } + } + buf_len += c < 128 ? 1 : c < 2048 ? 2 : c < 65536 ? 3 : 4; + } + buf = new utils.Buf8(buf_len); + for (i = 0, m_pos = 0; i < buf_len; m_pos++) { + c = str.charCodeAt(m_pos); + if ((c & 64512) === 55296 && m_pos + 1 < str_len) { + c2 = str.charCodeAt(m_pos + 1); + if ((c2 & 64512) === 56320) { + c = 65536 + (c - 55296 << 10) + (c2 - 56320); + m_pos++; + } + } + if (c < 128) { + buf[i++] = c; + } else if (c < 2048) { + buf[i++] = 192 | c >>> 6; + buf[i++] = 128 | c & 63; + } else if (c < 65536) { + buf[i++] = 224 | c >>> 12; + buf[i++] = 128 | c >>> 6 & 63; + buf[i++] = 128 | c & 63; + } else { + buf[i++] = 240 | c >>> 18; + buf[i++] = 128 | c >>> 12 & 63; + buf[i++] = 128 | c >>> 6 & 63; + buf[i++] = 128 | c & 63; + } + } + return buf; + }; + function buf2binstring(buf, len) { + if (len < 65534) { + if (buf.subarray && STR_APPLY_UIA_OK || !buf.subarray && STR_APPLY_OK) { + return String.fromCharCode.apply(null, utils.shrinkBuf(buf, len)); + } + } + var result = ""; + for (var i = 0; i < len; i++) { + result += String.fromCharCode(buf[i]); + } + return result; + } + exports3.buf2binstring = function(buf) { + return buf2binstring(buf, buf.length); + }; + exports3.binstring2buf = function(str) { + var buf = new utils.Buf8(str.length); + for (var i = 0, len = buf.length; i < len; i++) { + buf[i] = str.charCodeAt(i); + } + return buf; + }; + exports3.buf2string = function(buf, max) { + var i, out, c, c_len; + var len = max || buf.length; + var utf16buf = new Array(len * 2); + for (out = 0, i = 0; i < len; ) { + c = buf[i++]; + if (c < 128) { + utf16buf[out++] = c; + continue; + } + c_len = _utf8len[c]; + if (c_len > 4) { + utf16buf[out++] = 65533; + i += c_len - 1; + continue; + } + c &= c_len === 2 ? 31 : c_len === 3 ? 15 : 7; + while (c_len > 1 && i < len) { + c = c << 6 | buf[i++] & 63; + c_len--; + } + if (c_len > 1) { + utf16buf[out++] = 65533; + continue; + } + if (c < 65536) { + utf16buf[out++] = c; + } else { + c -= 65536; + utf16buf[out++] = 55296 | c >> 10 & 1023; + utf16buf[out++] = 56320 | c & 1023; + } + } + return buf2binstring(utf16buf, out); + }; + exports3.utf8border = function(buf, max) { + var pos; + max = max || buf.length; + if (max > buf.length) { + max = buf.length; + } + pos = max - 1; + while (pos >= 0 && (buf[pos] & 192) === 128) { + pos--; + } + if (pos < 0) { + return max; + } + if (pos === 0) { + return max; + } + return pos + _utf8len[buf[pos]] > max ? pos : max; + }; + }, { "./common": 5 }], 7: [function(require2, module4, exports3) { + "use strict"; + function adler32(adler, buf, len, pos) { + var s1 = adler & 65535 | 0, s2 = adler >>> 16 & 65535 | 0, n = 0; + while (len !== 0) { + n = len > 2e3 ? 2e3 : len; + len -= n; + do { + s1 = s1 + buf[pos++] | 0; + s2 = s2 + s1 | 0; + } while (--n); + s1 %= 65521; + s2 %= 65521; + } + return s1 | s2 << 16 | 0; + } + module4.exports = adler32; + }, {}], 8: [function(require2, module4, exports3) { + "use strict"; + function makeTable() { + var c, table2 = []; + for (var n = 0; n < 256; n++) { + c = n; + for (var k = 0; k < 8; k++) { + c = c & 1 ? 3988292384 ^ c >>> 1 : c >>> 1; + } + table2[n] = c; + } + return table2; + } + var crcTable = makeTable(); + function crc32(crc, buf, len, pos) { + var t2 = crcTable, end2 = pos + len; + crc ^= -1; + for (var i = pos; i < end2; i++) { + crc = crc >>> 8 ^ t2[(crc ^ buf[i]) & 255]; + } + return crc ^ -1; + } + module4.exports = crc32; + }, {}], 9: [function(require2, module4, exports3) { + "use strict"; + var utils = require2("../utils/common"); + var trees = require2("./trees"); + var adler32 = require2("./adler32"); + var crc32 = require2("./crc32"); + var msg = require2("./messages"); + var Z_NO_FLUSH = 0; + var Z_PARTIAL_FLUSH = 1; + var Z_FULL_FLUSH = 3; + var Z_FINISH = 4; + var Z_BLOCK = 5; + var Z_OK = 0; + var Z_STREAM_END = 1; + var Z_STREAM_ERROR = -2; + var Z_DATA_ERROR = -3; + var Z_BUF_ERROR = -5; + var Z_DEFAULT_COMPRESSION = -1; + var Z_FILTERED = 1; + var Z_HUFFMAN_ONLY = 2; + var Z_RLE = 3; + var Z_FIXED = 4; + var Z_DEFAULT_STRATEGY = 0; + var Z_UNKNOWN = 2; + var Z_DEFLATED = 8; + var MAX_MEM_LEVEL = 9; + var MAX_WBITS = 15; + var DEF_MEM_LEVEL = 8; + var LENGTH_CODES = 29; + var LITERALS = 256; + var L_CODES = LITERALS + 1 + LENGTH_CODES; + var D_CODES = 30; + var BL_CODES = 19; + var HEAP_SIZE = 2 * L_CODES + 1; + var MAX_BITS = 15; + var MIN_MATCH = 3; + var MAX_MATCH = 258; + var MIN_LOOKAHEAD = MAX_MATCH + MIN_MATCH + 1; + var PRESET_DICT = 32; + var INIT_STATE = 42; + var EXTRA_STATE = 69; + var NAME_STATE = 73; + var COMMENT_STATE = 91; + var HCRC_STATE = 103; + var BUSY_STATE = 113; + var FINISH_STATE = 666; + var BS_NEED_MORE = 1; + var BS_BLOCK_DONE = 2; + var BS_FINISH_STARTED = 3; + var BS_FINISH_DONE = 4; + var OS_CODE = 3; + function err(strm, errorCode) { + strm.msg = msg[errorCode]; + return errorCode; + } + function rank(f) { + return (f << 1) - (f > 4 ? 9 : 0); + } + function zero(buf) { + var len = buf.length; + while (--len >= 0) { + buf[len] = 0; + } + } + function flush_pending(strm) { + var s = strm.state; + var len = s.pending; + if (len > strm.avail_out) { + len = strm.avail_out; + } + if (len === 0) { + return; + } + utils.arraySet(strm.output, s.pending_buf, s.pending_out, len, strm.next_out); + strm.next_out += len; + s.pending_out += len; + strm.total_out += len; + strm.avail_out -= len; + s.pending -= len; + if (s.pending === 0) { + s.pending_out = 0; + } + } + function flush_block_only(s, last2) { + trees._tr_flush_block(s, s.block_start >= 0 ? s.block_start : -1, s.strstart - s.block_start, last2); + s.block_start = s.strstart; + flush_pending(s.strm); + } + function put_byte(s, b) { + s.pending_buf[s.pending++] = b; + } + function putShortMSB(s, b) { + s.pending_buf[s.pending++] = b >>> 8 & 255; + s.pending_buf[s.pending++] = b & 255; + } + function read_buf(strm, buf, start, size) { + var len = strm.avail_in; + if (len > size) { + len = size; + } + if (len === 0) { + return 0; + } + strm.avail_in -= len; + utils.arraySet(buf, strm.input, strm.next_in, len, start); + if (strm.state.wrap === 1) { + strm.adler = adler32(strm.adler, buf, len, start); + } else if (strm.state.wrap === 2) { + strm.adler = crc32(strm.adler, buf, len, start); + } + strm.next_in += len; + strm.total_in += len; + return len; + } + function longest_match(s, cur_match) { + var chain_length = s.max_chain_length; + var scan = s.strstart; + var match2; + var len; + var best_len = s.prev_length; + var nice_match = s.nice_match; + var limit = s.strstart > s.w_size - MIN_LOOKAHEAD ? s.strstart - (s.w_size - MIN_LOOKAHEAD) : 0; + var _win = s.window; + var wmask = s.w_mask; + var prev2 = s.prev; + var strend = s.strstart + MAX_MATCH; + var scan_end1 = _win[scan + best_len - 1]; + var scan_end = _win[scan + best_len]; + if (s.prev_length >= s.good_match) { + chain_length >>= 2; + } + if (nice_match > s.lookahead) { + nice_match = s.lookahead; + } + do { + match2 = cur_match; + if (_win[match2 + best_len] !== scan_end || _win[match2 + best_len - 1] !== scan_end1 || _win[match2] !== _win[scan] || _win[++match2] !== _win[scan + 1]) { + continue; + } + scan += 2; + match2++; + do { + } while (_win[++scan] === _win[++match2] && _win[++scan] === _win[++match2] && _win[++scan] === _win[++match2] && _win[++scan] === _win[++match2] && _win[++scan] === _win[++match2] && _win[++scan] === _win[++match2] && _win[++scan] === _win[++match2] && _win[++scan] === _win[++match2] && scan < strend); + len = MAX_MATCH - (strend - scan); + scan = strend - MAX_MATCH; + if (len > best_len) { + s.match_start = cur_match; + best_len = len; + if (len >= nice_match) { + break; + } + scan_end1 = _win[scan + best_len - 1]; + scan_end = _win[scan + best_len]; + } + } while ((cur_match = prev2[cur_match & wmask]) > limit && --chain_length !== 0); + if (best_len <= s.lookahead) { + return best_len; + } + return s.lookahead; + } + function fill_window(s) { + var _w_size = s.w_size; + var p, n, m, more, str; + do { + more = s.window_size - s.lookahead - s.strstart; + if (s.strstart >= _w_size + (_w_size - MIN_LOOKAHEAD)) { + utils.arraySet(s.window, s.window, _w_size, _w_size, 0); + s.match_start -= _w_size; + s.strstart -= _w_size; + s.block_start -= _w_size; + n = s.hash_size; + p = n; + do { + m = s.head[--p]; + s.head[p] = m >= _w_size ? m - _w_size : 0; + } while (--n); + n = _w_size; + p = n; + do { + m = s.prev[--p]; + s.prev[p] = m >= _w_size ? m - _w_size : 0; + } while (--n); + more += _w_size; + } + if (s.strm.avail_in === 0) { + break; + } + n = read_buf(s.strm, s.window, s.strstart + s.lookahead, more); + s.lookahead += n; + if (s.lookahead + s.insert >= MIN_MATCH) { + str = s.strstart - s.insert; + s.ins_h = s.window[str]; + s.ins_h = (s.ins_h << s.hash_shift ^ s.window[str + 1]) & s.hash_mask; + while (s.insert) { + s.ins_h = (s.ins_h << s.hash_shift ^ s.window[str + MIN_MATCH - 1]) & s.hash_mask; + s.prev[str & s.w_mask] = s.head[s.ins_h]; + s.head[s.ins_h] = str; + str++; + s.insert--; + if (s.lookahead + s.insert < MIN_MATCH) { + break; + } + } + } + } while (s.lookahead < MIN_LOOKAHEAD && s.strm.avail_in !== 0); + } + function deflate_stored(s, flush) { + var max_block_size = 65535; + if (max_block_size > s.pending_buf_size - 5) { + max_block_size = s.pending_buf_size - 5; + } + for (; ; ) { + if (s.lookahead <= 1) { + fill_window(s); + if (s.lookahead === 0 && flush === Z_NO_FLUSH) { + return BS_NEED_MORE; + } + if (s.lookahead === 0) { + break; + } + } + s.strstart += s.lookahead; + s.lookahead = 0; + var max_start = s.block_start + max_block_size; + if (s.strstart === 0 || s.strstart >= max_start) { + s.lookahead = s.strstart - max_start; + s.strstart = max_start; + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + } + if (s.strstart - s.block_start >= s.w_size - MIN_LOOKAHEAD) { + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + } + } + s.insert = 0; + if (flush === Z_FINISH) { + flush_block_only(s, true); + if (s.strm.avail_out === 0) { + return BS_FINISH_STARTED; + } + return BS_FINISH_DONE; + } + if (s.strstart > s.block_start) { + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + } + return BS_NEED_MORE; + } + function deflate_fast(s, flush) { + var hash_head; + var bflush; + for (; ; ) { + if (s.lookahead < MIN_LOOKAHEAD) { + fill_window(s); + if (s.lookahead < MIN_LOOKAHEAD && flush === Z_NO_FLUSH) { + return BS_NEED_MORE; + } + if (s.lookahead === 0) { + break; + } + } + hash_head = 0; + if (s.lookahead >= MIN_MATCH) { + s.ins_h = (s.ins_h << s.hash_shift ^ s.window[s.strstart + MIN_MATCH - 1]) & s.hash_mask; + hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h]; + s.head[s.ins_h] = s.strstart; + } + if (hash_head !== 0 && s.strstart - hash_head <= s.w_size - MIN_LOOKAHEAD) { + s.match_length = longest_match(s, hash_head); + } + if (s.match_length >= MIN_MATCH) { + bflush = trees._tr_tally(s, s.strstart - s.match_start, s.match_length - MIN_MATCH); + s.lookahead -= s.match_length; + if (s.match_length <= s.max_lazy_match && s.lookahead >= MIN_MATCH) { + s.match_length--; + do { + s.strstart++; + s.ins_h = (s.ins_h << s.hash_shift ^ s.window[s.strstart + MIN_MATCH - 1]) & s.hash_mask; + hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h]; + s.head[s.ins_h] = s.strstart; + } while (--s.match_length !== 0); + s.strstart++; + } else { + s.strstart += s.match_length; + s.match_length = 0; + s.ins_h = s.window[s.strstart]; + s.ins_h = (s.ins_h << s.hash_shift ^ s.window[s.strstart + 1]) & s.hash_mask; + } + } else { + bflush = trees._tr_tally(s, 0, s.window[s.strstart]); + s.lookahead--; + s.strstart++; + } + if (bflush) { + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + } + } + s.insert = s.strstart < MIN_MATCH - 1 ? s.strstart : MIN_MATCH - 1; + if (flush === Z_FINISH) { + flush_block_only(s, true); + if (s.strm.avail_out === 0) { + return BS_FINISH_STARTED; + } + return BS_FINISH_DONE; + } + if (s.last_lit) { + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + } + return BS_BLOCK_DONE; + } + function deflate_slow(s, flush) { + var hash_head; + var bflush; + var max_insert; + for (; ; ) { + if (s.lookahead < MIN_LOOKAHEAD) { + fill_window(s); + if (s.lookahead < MIN_LOOKAHEAD && flush === Z_NO_FLUSH) { + return BS_NEED_MORE; + } + if (s.lookahead === 0) { + break; + } + } + hash_head = 0; + if (s.lookahead >= MIN_MATCH) { + s.ins_h = (s.ins_h << s.hash_shift ^ s.window[s.strstart + MIN_MATCH - 1]) & s.hash_mask; + hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h]; + s.head[s.ins_h] = s.strstart; + } + s.prev_length = s.match_length; + s.prev_match = s.match_start; + s.match_length = MIN_MATCH - 1; + if (hash_head !== 0 && s.prev_length < s.max_lazy_match && s.strstart - hash_head <= s.w_size - MIN_LOOKAHEAD) { + s.match_length = longest_match(s, hash_head); + if (s.match_length <= 5 && (s.strategy === Z_FILTERED || s.match_length === MIN_MATCH && s.strstart - s.match_start > 4096)) { + s.match_length = MIN_MATCH - 1; + } + } + if (s.prev_length >= MIN_MATCH && s.match_length <= s.prev_length) { + max_insert = s.strstart + s.lookahead - MIN_MATCH; + bflush = trees._tr_tally(s, s.strstart - 1 - s.prev_match, s.prev_length - MIN_MATCH); + s.lookahead -= s.prev_length - 1; + s.prev_length -= 2; + do { + if (++s.strstart <= max_insert) { + s.ins_h = (s.ins_h << s.hash_shift ^ s.window[s.strstart + MIN_MATCH - 1]) & s.hash_mask; + hash_head = s.prev[s.strstart & s.w_mask] = s.head[s.ins_h]; + s.head[s.ins_h] = s.strstart; + } + } while (--s.prev_length !== 0); + s.match_available = 0; + s.match_length = MIN_MATCH - 1; + s.strstart++; + if (bflush) { + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + } + } else if (s.match_available) { + bflush = trees._tr_tally(s, 0, s.window[s.strstart - 1]); + if (bflush) { + flush_block_only(s, false); + } + s.strstart++; + s.lookahead--; + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + } else { + s.match_available = 1; + s.strstart++; + s.lookahead--; + } + } + if (s.match_available) { + bflush = trees._tr_tally(s, 0, s.window[s.strstart - 1]); + s.match_available = 0; + } + s.insert = s.strstart < MIN_MATCH - 1 ? s.strstart : MIN_MATCH - 1; + if (flush === Z_FINISH) { + flush_block_only(s, true); + if (s.strm.avail_out === 0) { + return BS_FINISH_STARTED; + } + return BS_FINISH_DONE; + } + if (s.last_lit) { + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + } + return BS_BLOCK_DONE; + } + function deflate_rle(s, flush) { + var bflush; + var prev2; + var scan, strend; + var _win = s.window; + for (; ; ) { + if (s.lookahead <= MAX_MATCH) { + fill_window(s); + if (s.lookahead <= MAX_MATCH && flush === Z_NO_FLUSH) { + return BS_NEED_MORE; + } + if (s.lookahead === 0) { + break; + } + } + s.match_length = 0; + if (s.lookahead >= MIN_MATCH && s.strstart > 0) { + scan = s.strstart - 1; + prev2 = _win[scan]; + if (prev2 === _win[++scan] && prev2 === _win[++scan] && prev2 === _win[++scan]) { + strend = s.strstart + MAX_MATCH; + do { + } while (prev2 === _win[++scan] && prev2 === _win[++scan] && prev2 === _win[++scan] && prev2 === _win[++scan] && prev2 === _win[++scan] && prev2 === _win[++scan] && prev2 === _win[++scan] && prev2 === _win[++scan] && scan < strend); + s.match_length = MAX_MATCH - (strend - scan); + if (s.match_length > s.lookahead) { + s.match_length = s.lookahead; + } + } + } + if (s.match_length >= MIN_MATCH) { + bflush = trees._tr_tally(s, 1, s.match_length - MIN_MATCH); + s.lookahead -= s.match_length; + s.strstart += s.match_length; + s.match_length = 0; + } else { + bflush = trees._tr_tally(s, 0, s.window[s.strstart]); + s.lookahead--; + s.strstart++; + } + if (bflush) { + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + } + } + s.insert = 0; + if (flush === Z_FINISH) { + flush_block_only(s, true); + if (s.strm.avail_out === 0) { + return BS_FINISH_STARTED; + } + return BS_FINISH_DONE; + } + if (s.last_lit) { + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + } + return BS_BLOCK_DONE; + } + function deflate_huff(s, flush) { + var bflush; + for (; ; ) { + if (s.lookahead === 0) { + fill_window(s); + if (s.lookahead === 0) { + if (flush === Z_NO_FLUSH) { + return BS_NEED_MORE; + } + break; + } + } + s.match_length = 0; + bflush = trees._tr_tally(s, 0, s.window[s.strstart]); + s.lookahead--; + s.strstart++; + if (bflush) { + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + } + } + s.insert = 0; + if (flush === Z_FINISH) { + flush_block_only(s, true); + if (s.strm.avail_out === 0) { + return BS_FINISH_STARTED; + } + return BS_FINISH_DONE; + } + if (s.last_lit) { + flush_block_only(s, false); + if (s.strm.avail_out === 0) { + return BS_NEED_MORE; + } + } + return BS_BLOCK_DONE; + } + function Config(good_length, max_lazy, nice_length, max_chain, func) { + this.good_length = good_length; + this.max_lazy = max_lazy; + this.nice_length = nice_length; + this.max_chain = max_chain; + this.func = func; + } + var configuration_table; + configuration_table = [ + new Config(0, 0, 0, 0, deflate_stored), + new Config(4, 4, 8, 4, deflate_fast), + new Config(4, 5, 16, 8, deflate_fast), + new Config(4, 6, 32, 32, deflate_fast), + new Config(4, 4, 16, 16, deflate_slow), + new Config(8, 16, 32, 32, deflate_slow), + new Config(8, 16, 128, 128, deflate_slow), + new Config(8, 32, 128, 256, deflate_slow), + new Config(32, 128, 258, 1024, deflate_slow), + new Config(32, 258, 258, 4096, deflate_slow) + ]; + function lm_init(s) { + s.window_size = 2 * s.w_size; + zero(s.head); + s.max_lazy_match = configuration_table[s.level].max_lazy; + s.good_match = configuration_table[s.level].good_length; + s.nice_match = configuration_table[s.level].nice_length; + s.max_chain_length = configuration_table[s.level].max_chain; + s.strstart = 0; + s.block_start = 0; + s.lookahead = 0; + s.insert = 0; + s.match_length = s.prev_length = MIN_MATCH - 1; + s.match_available = 0; + s.ins_h = 0; + } + function DeflateState() { + this.strm = null; + this.status = 0; + this.pending_buf = null; + this.pending_buf_size = 0; + this.pending_out = 0; + this.pending = 0; + this.wrap = 0; + this.gzhead = null; + this.gzindex = 0; + this.method = Z_DEFLATED; + this.last_flush = -1; + this.w_size = 0; + this.w_bits = 0; + this.w_mask = 0; + this.window = null; + this.window_size = 0; + this.prev = null; + this.head = null; + this.ins_h = 0; + this.hash_size = 0; + this.hash_bits = 0; + this.hash_mask = 0; + this.hash_shift = 0; + this.block_start = 0; + this.match_length = 0; + this.prev_match = 0; + this.match_available = 0; + this.strstart = 0; + this.match_start = 0; + this.lookahead = 0; + this.prev_length = 0; + this.max_chain_length = 0; + this.max_lazy_match = 0; + this.level = 0; + this.strategy = 0; + this.good_match = 0; + this.nice_match = 0; + this.dyn_ltree = new utils.Buf16(HEAP_SIZE * 2); + this.dyn_dtree = new utils.Buf16((2 * D_CODES + 1) * 2); + this.bl_tree = new utils.Buf16((2 * BL_CODES + 1) * 2); + zero(this.dyn_ltree); + zero(this.dyn_dtree); + zero(this.bl_tree); + this.l_desc = null; + this.d_desc = null; + this.bl_desc = null; + this.bl_count = new utils.Buf16(MAX_BITS + 1); + this.heap = new utils.Buf16(2 * L_CODES + 1); + zero(this.heap); + this.heap_len = 0; + this.heap_max = 0; + this.depth = new utils.Buf16(2 * L_CODES + 1); + zero(this.depth); + this.l_buf = 0; + this.lit_bufsize = 0; + this.last_lit = 0; + this.d_buf = 0; + this.opt_len = 0; + this.static_len = 0; + this.matches = 0; + this.insert = 0; + this.bi_buf = 0; + this.bi_valid = 0; + } + function deflateResetKeep(strm) { + var s; + if (!strm || !strm.state) { + return err(strm, Z_STREAM_ERROR); + } + strm.total_in = strm.total_out = 0; + strm.data_type = Z_UNKNOWN; + s = strm.state; + s.pending = 0; + s.pending_out = 0; + if (s.wrap < 0) { + s.wrap = -s.wrap; + } + s.status = s.wrap ? INIT_STATE : BUSY_STATE; + strm.adler = s.wrap === 2 ? 0 : 1; + s.last_flush = Z_NO_FLUSH; + trees._tr_init(s); + return Z_OK; + } + function deflateReset(strm) { + var ret = deflateResetKeep(strm); + if (ret === Z_OK) { + lm_init(strm.state); + } + return ret; + } + function deflateSetHeader(strm, head) { + if (!strm || !strm.state) { + return Z_STREAM_ERROR; + } + if (strm.state.wrap !== 2) { + return Z_STREAM_ERROR; + } + strm.state.gzhead = head; + return Z_OK; + } + function deflateInit2(strm, level, method, windowBits, memLevel, strategy) { + if (!strm) { + return Z_STREAM_ERROR; + } + var wrap2 = 1; + if (level === Z_DEFAULT_COMPRESSION) { + level = 6; + } + if (windowBits < 0) { + wrap2 = 0; + windowBits = -windowBits; + } else if (windowBits > 15) { + wrap2 = 2; + windowBits -= 16; + } + if (memLevel < 1 || memLevel > MAX_MEM_LEVEL || method !== Z_DEFLATED || windowBits < 8 || windowBits > 15 || level < 0 || level > 9 || strategy < 0 || strategy > Z_FIXED) { + return err(strm, Z_STREAM_ERROR); + } + if (windowBits === 8) { + windowBits = 9; + } + var s = new DeflateState(); + strm.state = s; + s.strm = strm; + s.wrap = wrap2; + s.gzhead = null; + s.w_bits = windowBits; + s.w_size = 1 << s.w_bits; + s.w_mask = s.w_size - 1; + s.hash_bits = memLevel + 7; + s.hash_size = 1 << s.hash_bits; + s.hash_mask = s.hash_size - 1; + s.hash_shift = ~~((s.hash_bits + MIN_MATCH - 1) / MIN_MATCH); + s.window = new utils.Buf8(s.w_size * 2); + s.head = new utils.Buf16(s.hash_size); + s.prev = new utils.Buf16(s.w_size); + s.lit_bufsize = 1 << memLevel + 6; + s.pending_buf_size = s.lit_bufsize * 4; + s.pending_buf = new utils.Buf8(s.pending_buf_size); + s.d_buf = 1 * s.lit_bufsize; + s.l_buf = (1 + 2) * s.lit_bufsize; + s.level = level; + s.strategy = strategy; + s.method = method; + return deflateReset(strm); + } + function deflateInit(strm, level) { + return deflateInit2(strm, level, Z_DEFLATED, MAX_WBITS, DEF_MEM_LEVEL, Z_DEFAULT_STRATEGY); + } + function deflate(strm, flush) { + var old_flush, s; + var beg, val2; + if (!strm || !strm.state || flush > Z_BLOCK || flush < 0) { + return strm ? err(strm, Z_STREAM_ERROR) : Z_STREAM_ERROR; + } + s = strm.state; + if (!strm.output || !strm.input && strm.avail_in !== 0 || s.status === FINISH_STATE && flush !== Z_FINISH) { + return err(strm, strm.avail_out === 0 ? Z_BUF_ERROR : Z_STREAM_ERROR); + } + s.strm = strm; + old_flush = s.last_flush; + s.last_flush = flush; + if (s.status === INIT_STATE) { + if (s.wrap === 2) { + strm.adler = 0; + put_byte(s, 31); + put_byte(s, 139); + put_byte(s, 8); + if (!s.gzhead) { + put_byte(s, 0); + put_byte(s, 0); + put_byte(s, 0); + put_byte(s, 0); + put_byte(s, 0); + put_byte(s, s.level === 9 ? 2 : s.strategy >= Z_HUFFMAN_ONLY || s.level < 2 ? 4 : 0); + put_byte(s, OS_CODE); + s.status = BUSY_STATE; + } else { + put_byte( + s, + (s.gzhead.text ? 1 : 0) + (s.gzhead.hcrc ? 2 : 0) + (!s.gzhead.extra ? 0 : 4) + (!s.gzhead.name ? 0 : 8) + (!s.gzhead.comment ? 0 : 16) + ); + put_byte(s, s.gzhead.time & 255); + put_byte(s, s.gzhead.time >> 8 & 255); + put_byte(s, s.gzhead.time >> 16 & 255); + put_byte(s, s.gzhead.time >> 24 & 255); + put_byte(s, s.level === 9 ? 2 : s.strategy >= Z_HUFFMAN_ONLY || s.level < 2 ? 4 : 0); + put_byte(s, s.gzhead.os & 255); + if (s.gzhead.extra && s.gzhead.extra.length) { + put_byte(s, s.gzhead.extra.length & 255); + put_byte(s, s.gzhead.extra.length >> 8 & 255); + } + if (s.gzhead.hcrc) { + strm.adler = crc32(strm.adler, s.pending_buf, s.pending, 0); + } + s.gzindex = 0; + s.status = EXTRA_STATE; + } + } else { + var header = Z_DEFLATED + (s.w_bits - 8 << 4) << 8; + var level_flags = -1; + if (s.strategy >= Z_HUFFMAN_ONLY || s.level < 2) { + level_flags = 0; + } else if (s.level < 6) { + level_flags = 1; + } else if (s.level === 6) { + level_flags = 2; + } else { + level_flags = 3; + } + header |= level_flags << 6; + if (s.strstart !== 0) { + header |= PRESET_DICT; + } + header += 31 - header % 31; + s.status = BUSY_STATE; + putShortMSB(s, header); + if (s.strstart !== 0) { + putShortMSB(s, strm.adler >>> 16); + putShortMSB(s, strm.adler & 65535); + } + strm.adler = 1; + } + } + if (s.status === EXTRA_STATE) { + if (s.gzhead.extra) { + beg = s.pending; + while (s.gzindex < (s.gzhead.extra.length & 65535)) { + if (s.pending === s.pending_buf_size) { + if (s.gzhead.hcrc && s.pending > beg) { + strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); + } + flush_pending(strm); + beg = s.pending; + if (s.pending === s.pending_buf_size) { + break; + } + } + put_byte(s, s.gzhead.extra[s.gzindex] & 255); + s.gzindex++; + } + if (s.gzhead.hcrc && s.pending > beg) { + strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); + } + if (s.gzindex === s.gzhead.extra.length) { + s.gzindex = 0; + s.status = NAME_STATE; + } + } else { + s.status = NAME_STATE; + } + } + if (s.status === NAME_STATE) { + if (s.gzhead.name) { + beg = s.pending; + do { + if (s.pending === s.pending_buf_size) { + if (s.gzhead.hcrc && s.pending > beg) { + strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); + } + flush_pending(strm); + beg = s.pending; + if (s.pending === s.pending_buf_size) { + val2 = 1; + break; + } + } + if (s.gzindex < s.gzhead.name.length) { + val2 = s.gzhead.name.charCodeAt(s.gzindex++) & 255; + } else { + val2 = 0; + } + put_byte(s, val2); + } while (val2 !== 0); + if (s.gzhead.hcrc && s.pending > beg) { + strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); + } + if (val2 === 0) { + s.gzindex = 0; + s.status = COMMENT_STATE; + } + } else { + s.status = COMMENT_STATE; + } + } + if (s.status === COMMENT_STATE) { + if (s.gzhead.comment) { + beg = s.pending; + do { + if (s.pending === s.pending_buf_size) { + if (s.gzhead.hcrc && s.pending > beg) { + strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); + } + flush_pending(strm); + beg = s.pending; + if (s.pending === s.pending_buf_size) { + val2 = 1; + break; + } + } + if (s.gzindex < s.gzhead.comment.length) { + val2 = s.gzhead.comment.charCodeAt(s.gzindex++) & 255; + } else { + val2 = 0; + } + put_byte(s, val2); + } while (val2 !== 0); + if (s.gzhead.hcrc && s.pending > beg) { + strm.adler = crc32(strm.adler, s.pending_buf, s.pending - beg, beg); + } + if (val2 === 0) { + s.status = HCRC_STATE; + } + } else { + s.status = HCRC_STATE; + } + } + if (s.status === HCRC_STATE) { + if (s.gzhead.hcrc) { + if (s.pending + 2 > s.pending_buf_size) { + flush_pending(strm); + } + if (s.pending + 2 <= s.pending_buf_size) { + put_byte(s, strm.adler & 255); + put_byte(s, strm.adler >> 8 & 255); + strm.adler = 0; + s.status = BUSY_STATE; + } + } else { + s.status = BUSY_STATE; + } + } + if (s.pending !== 0) { + flush_pending(strm); + if (strm.avail_out === 0) { + s.last_flush = -1; + return Z_OK; + } + } else if (strm.avail_in === 0 && rank(flush) <= rank(old_flush) && flush !== Z_FINISH) { + return err(strm, Z_BUF_ERROR); + } + if (s.status === FINISH_STATE && strm.avail_in !== 0) { + return err(strm, Z_BUF_ERROR); + } + if (strm.avail_in !== 0 || s.lookahead !== 0 || flush !== Z_NO_FLUSH && s.status !== FINISH_STATE) { + var bstate = s.strategy === Z_HUFFMAN_ONLY ? deflate_huff(s, flush) : s.strategy === Z_RLE ? deflate_rle(s, flush) : configuration_table[s.level].func(s, flush); + if (bstate === BS_FINISH_STARTED || bstate === BS_FINISH_DONE) { + s.status = FINISH_STATE; + } + if (bstate === BS_NEED_MORE || bstate === BS_FINISH_STARTED) { + if (strm.avail_out === 0) { + s.last_flush = -1; + } + return Z_OK; + } + if (bstate === BS_BLOCK_DONE) { + if (flush === Z_PARTIAL_FLUSH) { + trees._tr_align(s); + } else if (flush !== Z_BLOCK) { + trees._tr_stored_block(s, 0, 0, false); + if (flush === Z_FULL_FLUSH) { + zero(s.head); + if (s.lookahead === 0) { + s.strstart = 0; + s.block_start = 0; + s.insert = 0; + } + } + } + flush_pending(strm); + if (strm.avail_out === 0) { + s.last_flush = -1; + return Z_OK; + } + } + } + if (flush !== Z_FINISH) { + return Z_OK; + } + if (s.wrap <= 0) { + return Z_STREAM_END; + } + if (s.wrap === 2) { + put_byte(s, strm.adler & 255); + put_byte(s, strm.adler >> 8 & 255); + put_byte(s, strm.adler >> 16 & 255); + put_byte(s, strm.adler >> 24 & 255); + put_byte(s, strm.total_in & 255); + put_byte(s, strm.total_in >> 8 & 255); + put_byte(s, strm.total_in >> 16 & 255); + put_byte(s, strm.total_in >> 24 & 255); + } else { + putShortMSB(s, strm.adler >>> 16); + putShortMSB(s, strm.adler & 65535); + } + flush_pending(strm); + if (s.wrap > 0) { + s.wrap = -s.wrap; + } + return s.pending !== 0 ? Z_OK : Z_STREAM_END; + } + function deflateEnd(strm) { + var status; + if (!strm || !strm.state) { + return Z_STREAM_ERROR; + } + status = strm.state.status; + if (status !== INIT_STATE && status !== EXTRA_STATE && status !== NAME_STATE && status !== COMMENT_STATE && status !== HCRC_STATE && status !== BUSY_STATE && status !== FINISH_STATE) { + return err(strm, Z_STREAM_ERROR); + } + strm.state = null; + return status === BUSY_STATE ? err(strm, Z_DATA_ERROR) : Z_OK; + } + function deflateSetDictionary(strm, dictionary) { + var dictLength = dictionary.length; + var s; + var str, n; + var wrap2; + var avail; + var next2; + var input; + var tmpDict; + if (!strm || !strm.state) { + return Z_STREAM_ERROR; + } + s = strm.state; + wrap2 = s.wrap; + if (wrap2 === 2 || wrap2 === 1 && s.status !== INIT_STATE || s.lookahead) { + return Z_STREAM_ERROR; + } + if (wrap2 === 1) { + strm.adler = adler32(strm.adler, dictionary, dictLength, 0); + } + s.wrap = 0; + if (dictLength >= s.w_size) { + if (wrap2 === 0) { + zero(s.head); + s.strstart = 0; + s.block_start = 0; + s.insert = 0; + } + tmpDict = new utils.Buf8(s.w_size); + utils.arraySet(tmpDict, dictionary, dictLength - s.w_size, s.w_size, 0); + dictionary = tmpDict; + dictLength = s.w_size; + } + avail = strm.avail_in; + next2 = strm.next_in; + input = strm.input; + strm.avail_in = dictLength; + strm.next_in = 0; + strm.input = dictionary; + fill_window(s); + while (s.lookahead >= MIN_MATCH) { + str = s.strstart; + n = s.lookahead - (MIN_MATCH - 1); + do { + s.ins_h = (s.ins_h << s.hash_shift ^ s.window[str + MIN_MATCH - 1]) & s.hash_mask; + s.prev[str & s.w_mask] = s.head[s.ins_h]; + s.head[s.ins_h] = str; + str++; + } while (--n); + s.strstart = str; + s.lookahead = MIN_MATCH - 1; + fill_window(s); + } + s.strstart += s.lookahead; + s.block_start = s.strstart; + s.insert = s.lookahead; + s.lookahead = 0; + s.match_length = s.prev_length = MIN_MATCH - 1; + s.match_available = 0; + strm.next_in = next2; + strm.input = input; + strm.avail_in = avail; + s.wrap = wrap2; + return Z_OK; + } + exports3.deflateInit = deflateInit; + exports3.deflateInit2 = deflateInit2; + exports3.deflateReset = deflateReset; + exports3.deflateResetKeep = deflateResetKeep; + exports3.deflateSetHeader = deflateSetHeader; + exports3.deflate = deflate; + exports3.deflateEnd = deflateEnd; + exports3.deflateSetDictionary = deflateSetDictionary; + exports3.deflateInfo = "pako deflate (from Nodeca project)"; + }, { "../utils/common": 5, "./adler32": 7, "./crc32": 8, "./messages": 10, "./trees": 11 }], 10: [function(require2, module4, exports3) { + "use strict"; + module4.exports = { + 2: "need dictionary", + 1: "stream end", + 0: "", + "-1": "file error", + "-2": "stream error", + "-3": "data error", + "-4": "insufficient memory", + "-5": "buffer error", + "-6": "incompatible version" + }; + }, {}], 11: [function(require2, module4, exports3) { + "use strict"; + var utils = require2("../utils/common"); + var Z_FIXED = 4; + var Z_BINARY = 0; + var Z_TEXT = 1; + var Z_UNKNOWN = 2; + function zero(buf) { + var len = buf.length; + while (--len >= 0) { + buf[len] = 0; + } + } + var STORED_BLOCK = 0; + var STATIC_TREES = 1; + var DYN_TREES = 2; + var MIN_MATCH = 3; + var MAX_MATCH = 258; + var LENGTH_CODES = 29; + var LITERALS = 256; + var L_CODES = LITERALS + 1 + LENGTH_CODES; + var D_CODES = 30; + var BL_CODES = 19; + var HEAP_SIZE = 2 * L_CODES + 1; + var MAX_BITS = 15; + var Buf_size = 16; + var MAX_BL_BITS = 7; + var END_BLOCK = 256; + var REP_3_6 = 16; + var REPZ_3_10 = 17; + var REPZ_11_138 = 18; + var extra_lbits = [0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0]; + var extra_dbits = [0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, 12, 12, 13, 13]; + var extra_blbits = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 2, 3, 7]; + var bl_order = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]; + var DIST_CODE_LEN = 512; + var static_ltree = new Array((L_CODES + 2) * 2); + zero(static_ltree); + var static_dtree = new Array(D_CODES * 2); + zero(static_dtree); + var _dist_code = new Array(DIST_CODE_LEN); + zero(_dist_code); + var _length_code = new Array(MAX_MATCH - MIN_MATCH + 1); + zero(_length_code); + var base_length = new Array(LENGTH_CODES); + zero(base_length); + var base_dist = new Array(D_CODES); + zero(base_dist); + function StaticTreeDesc(static_tree, extra_bits, extra_base, elems, max_length) { + this.static_tree = static_tree; + this.extra_bits = extra_bits; + this.extra_base = extra_base; + this.elems = elems; + this.max_length = max_length; + this.has_stree = static_tree && static_tree.length; + } + var static_l_desc; + var static_d_desc; + var static_bl_desc; + function TreeDesc(dyn_tree, stat_desc) { + this.dyn_tree = dyn_tree; + this.max_code = 0; + this.stat_desc = stat_desc; + } + function d_code(dist) { + return dist < 256 ? _dist_code[dist] : _dist_code[256 + (dist >>> 7)]; + } + function put_short(s, w) { + s.pending_buf[s.pending++] = w & 255; + s.pending_buf[s.pending++] = w >>> 8 & 255; + } + function send_bits(s, value, length) { + if (s.bi_valid > Buf_size - length) { + s.bi_buf |= value << s.bi_valid & 65535; + put_short(s, s.bi_buf); + s.bi_buf = value >> Buf_size - s.bi_valid; + s.bi_valid += length - Buf_size; + } else { + s.bi_buf |= value << s.bi_valid & 65535; + s.bi_valid += length; + } + } + function send_code(s, c, tree) { + send_bits(s, tree[c * 2], tree[c * 2 + 1]); + } + function bi_reverse(code2, len) { + var res = 0; + do { + res |= code2 & 1; + code2 >>>= 1; + res <<= 1; + } while (--len > 0); + return res >>> 1; + } + function bi_flush(s) { + if (s.bi_valid === 16) { + put_short(s, s.bi_buf); + s.bi_buf = 0; + s.bi_valid = 0; + } else if (s.bi_valid >= 8) { + s.pending_buf[s.pending++] = s.bi_buf & 255; + s.bi_buf >>= 8; + s.bi_valid -= 8; + } + } + function gen_bitlen(s, desc) { + var tree = desc.dyn_tree; + var max_code = desc.max_code; + var stree = desc.stat_desc.static_tree; + var has_stree = desc.stat_desc.has_stree; + var extra = desc.stat_desc.extra_bits; + var base2 = desc.stat_desc.extra_base; + var max_length = desc.stat_desc.max_length; + var h2; + var n, m; + var bits; + var xbits; + var f; + var overflow = 0; + for (bits = 0; bits <= MAX_BITS; bits++) { + s.bl_count[bits] = 0; + } + tree[s.heap[s.heap_max] * 2 + 1] = 0; + for (h2 = s.heap_max + 1; h2 < HEAP_SIZE; h2++) { + n = s.heap[h2]; + bits = tree[tree[n * 2 + 1] * 2 + 1] + 1; + if (bits > max_length) { + bits = max_length; + overflow++; + } + tree[n * 2 + 1] = bits; + if (n > max_code) { + continue; + } + s.bl_count[bits]++; + xbits = 0; + if (n >= base2) { + xbits = extra[n - base2]; + } + f = tree[n * 2]; + s.opt_len += f * (bits + xbits); + if (has_stree) { + s.static_len += f * (stree[n * 2 + 1] + xbits); + } + } + if (overflow === 0) { + return; + } + do { + bits = max_length - 1; + while (s.bl_count[bits] === 0) { + bits--; + } + s.bl_count[bits]--; + s.bl_count[bits + 1] += 2; + s.bl_count[max_length]--; + overflow -= 2; + } while (overflow > 0); + for (bits = max_length; bits !== 0; bits--) { + n = s.bl_count[bits]; + while (n !== 0) { + m = s.heap[--h2]; + if (m > max_code) { + continue; + } + if (tree[m * 2 + 1] !== bits) { + s.opt_len += (bits - tree[m * 2 + 1]) * tree[m * 2]; + tree[m * 2 + 1] = bits; + } + n--; + } + } + } + function gen_codes(tree, max_code, bl_count) { + var next_code = new Array(MAX_BITS + 1); + var code2 = 0; + var bits; + var n; + for (bits = 1; bits <= MAX_BITS; bits++) { + next_code[bits] = code2 = code2 + bl_count[bits - 1] << 1; + } + for (n = 0; n <= max_code; n++) { + var len = tree[n * 2 + 1]; + if (len === 0) { + continue; + } + tree[n * 2] = bi_reverse(next_code[len]++, len); + } + } + function tr_static_init() { + var n; + var bits; + var length; + var code2; + var dist; + var bl_count = new Array(MAX_BITS + 1); + length = 0; + for (code2 = 0; code2 < LENGTH_CODES - 1; code2++) { + base_length[code2] = length; + for (n = 0; n < 1 << extra_lbits[code2]; n++) { + _length_code[length++] = code2; + } + } + _length_code[length - 1] = code2; + dist = 0; + for (code2 = 0; code2 < 16; code2++) { + base_dist[code2] = dist; + for (n = 0; n < 1 << extra_dbits[code2]; n++) { + _dist_code[dist++] = code2; + } + } + dist >>= 7; + for (; code2 < D_CODES; code2++) { + base_dist[code2] = dist << 7; + for (n = 0; n < 1 << extra_dbits[code2] - 7; n++) { + _dist_code[256 + dist++] = code2; + } + } + for (bits = 0; bits <= MAX_BITS; bits++) { + bl_count[bits] = 0; + } + n = 0; + while (n <= 143) { + static_ltree[n * 2 + 1] = 8; + n++; + bl_count[8]++; + } + while (n <= 255) { + static_ltree[n * 2 + 1] = 9; + n++; + bl_count[9]++; + } + while (n <= 279) { + static_ltree[n * 2 + 1] = 7; + n++; + bl_count[7]++; + } + while (n <= 287) { + static_ltree[n * 2 + 1] = 8; + n++; + bl_count[8]++; + } + gen_codes(static_ltree, L_CODES + 1, bl_count); + for (n = 0; n < D_CODES; n++) { + static_dtree[n * 2 + 1] = 5; + static_dtree[n * 2] = bi_reverse(n, 5); + } + static_l_desc = new StaticTreeDesc(static_ltree, extra_lbits, LITERALS + 1, L_CODES, MAX_BITS); + static_d_desc = new StaticTreeDesc(static_dtree, extra_dbits, 0, D_CODES, MAX_BITS); + static_bl_desc = new StaticTreeDesc(new Array(0), extra_blbits, 0, BL_CODES, MAX_BL_BITS); + } + function init_block(s) { + var n; + for (n = 0; n < L_CODES; n++) { + s.dyn_ltree[n * 2] = 0; + } + for (n = 0; n < D_CODES; n++) { + s.dyn_dtree[n * 2] = 0; + } + for (n = 0; n < BL_CODES; n++) { + s.bl_tree[n * 2] = 0; + } + s.dyn_ltree[END_BLOCK * 2] = 1; + s.opt_len = s.static_len = 0; + s.last_lit = s.matches = 0; + } + function bi_windup(s) { + if (s.bi_valid > 8) { + put_short(s, s.bi_buf); + } else if (s.bi_valid > 0) { + s.pending_buf[s.pending++] = s.bi_buf; + } + s.bi_buf = 0; + s.bi_valid = 0; + } + function copy_block(s, buf, len, header) { + bi_windup(s); + if (header) { + put_short(s, len); + put_short(s, ~len); + } + utils.arraySet(s.pending_buf, s.window, buf, len, s.pending); + s.pending += len; + } + function smaller(tree, n, m, depth) { + var _n2 = n * 2; + var _m2 = m * 2; + return tree[_n2] < tree[_m2] || tree[_n2] === tree[_m2] && depth[n] <= depth[m]; + } + function pqdownheap(s, tree, k) { + var v = s.heap[k]; + var j = k << 1; + while (j <= s.heap_len) { + if (j < s.heap_len && smaller(tree, s.heap[j + 1], s.heap[j], s.depth)) { + j++; + } + if (smaller(tree, v, s.heap[j], s.depth)) { + break; + } + s.heap[k] = s.heap[j]; + k = j; + j <<= 1; + } + s.heap[k] = v; + } + function compress_block(s, ltree, dtree) { + var dist; + var lc; + var lx = 0; + var code2; + var extra; + if (s.last_lit !== 0) { + do { + dist = s.pending_buf[s.d_buf + lx * 2] << 8 | s.pending_buf[s.d_buf + lx * 2 + 1]; + lc = s.pending_buf[s.l_buf + lx]; + lx++; + if (dist === 0) { + send_code(s, lc, ltree); + } else { + code2 = _length_code[lc]; + send_code(s, code2 + LITERALS + 1, ltree); + extra = extra_lbits[code2]; + if (extra !== 0) { + lc -= base_length[code2]; + send_bits(s, lc, extra); + } + dist--; + code2 = d_code(dist); + send_code(s, code2, dtree); + extra = extra_dbits[code2]; + if (extra !== 0) { + dist -= base_dist[code2]; + send_bits(s, dist, extra); + } + } + } while (lx < s.last_lit); + } + send_code(s, END_BLOCK, ltree); + } + function build_tree(s, desc) { + var tree = desc.dyn_tree; + var stree = desc.stat_desc.static_tree; + var has_stree = desc.stat_desc.has_stree; + var elems = desc.stat_desc.elems; + var n, m; + var max_code = -1; + var node; + s.heap_len = 0; + s.heap_max = HEAP_SIZE; + for (n = 0; n < elems; n++) { + if (tree[n * 2] !== 0) { + s.heap[++s.heap_len] = max_code = n; + s.depth[n] = 0; + } else { + tree[n * 2 + 1] = 0; + } + } + while (s.heap_len < 2) { + node = s.heap[++s.heap_len] = max_code < 2 ? ++max_code : 0; + tree[node * 2] = 1; + s.depth[node] = 0; + s.opt_len--; + if (has_stree) { + s.static_len -= stree[node * 2 + 1]; + } + } + desc.max_code = max_code; + for (n = s.heap_len >> 1; n >= 1; n--) { + pqdownheap(s, tree, n); + } + node = elems; + do { + n = s.heap[1]; + s.heap[1] = s.heap[s.heap_len--]; + pqdownheap(s, tree, 1); + m = s.heap[1]; + s.heap[--s.heap_max] = n; + s.heap[--s.heap_max] = m; + tree[node * 2] = tree[n * 2] + tree[m * 2]; + s.depth[node] = (s.depth[n] >= s.depth[m] ? s.depth[n] : s.depth[m]) + 1; + tree[n * 2 + 1] = tree[m * 2 + 1] = node; + s.heap[1] = node++; + pqdownheap(s, tree, 1); + } while (s.heap_len >= 2); + s.heap[--s.heap_max] = s.heap[1]; + gen_bitlen(s, desc); + gen_codes(tree, max_code, s.bl_count); + } + function scan_tree(s, tree, max_code) { + var n; + var prevlen = -1; + var curlen; + var nextlen = tree[0 * 2 + 1]; + var count = 0; + var max_count = 7; + var min_count = 4; + if (nextlen === 0) { + max_count = 138; + min_count = 3; + } + tree[(max_code + 1) * 2 + 1] = 65535; + for (n = 0; n <= max_code; n++) { + curlen = nextlen; + nextlen = tree[(n + 1) * 2 + 1]; + if (++count < max_count && curlen === nextlen) { + continue; + } else if (count < min_count) { + s.bl_tree[curlen * 2] += count; + } else if (curlen !== 0) { + if (curlen !== prevlen) { + s.bl_tree[curlen * 2]++; + } + s.bl_tree[REP_3_6 * 2]++; + } else if (count <= 10) { + s.bl_tree[REPZ_3_10 * 2]++; + } else { + s.bl_tree[REPZ_11_138 * 2]++; + } + count = 0; + prevlen = curlen; + if (nextlen === 0) { + max_count = 138; + min_count = 3; + } else if (curlen === nextlen) { + max_count = 6; + min_count = 3; + } else { + max_count = 7; + min_count = 4; + } + } + } + function send_tree(s, tree, max_code) { + var n; + var prevlen = -1; + var curlen; + var nextlen = tree[0 * 2 + 1]; + var count = 0; + var max_count = 7; + var min_count = 4; + if (nextlen === 0) { + max_count = 138; + min_count = 3; + } + for (n = 0; n <= max_code; n++) { + curlen = nextlen; + nextlen = tree[(n + 1) * 2 + 1]; + if (++count < max_count && curlen === nextlen) { + continue; + } else if (count < min_count) { + do { + send_code(s, curlen, s.bl_tree); + } while (--count !== 0); + } else if (curlen !== 0) { + if (curlen !== prevlen) { + send_code(s, curlen, s.bl_tree); + count--; + } + send_code(s, REP_3_6, s.bl_tree); + send_bits(s, count - 3, 2); + } else if (count <= 10) { + send_code(s, REPZ_3_10, s.bl_tree); + send_bits(s, count - 3, 3); + } else { + send_code(s, REPZ_11_138, s.bl_tree); + send_bits(s, count - 11, 7); + } + count = 0; + prevlen = curlen; + if (nextlen === 0) { + max_count = 138; + min_count = 3; + } else if (curlen === nextlen) { + max_count = 6; + min_count = 3; + } else { + max_count = 7; + min_count = 4; + } + } + } + function build_bl_tree(s) { + var max_blindex; + scan_tree(s, s.dyn_ltree, s.l_desc.max_code); + scan_tree(s, s.dyn_dtree, s.d_desc.max_code); + build_tree(s, s.bl_desc); + for (max_blindex = BL_CODES - 1; max_blindex >= 3; max_blindex--) { + if (s.bl_tree[bl_order[max_blindex] * 2 + 1] !== 0) { + break; + } + } + s.opt_len += 3 * (max_blindex + 1) + 5 + 5 + 4; + return max_blindex; + } + function send_all_trees(s, lcodes, dcodes, blcodes) { + var rank; + send_bits(s, lcodes - 257, 5); + send_bits(s, dcodes - 1, 5); + send_bits(s, blcodes - 4, 4); + for (rank = 0; rank < blcodes; rank++) { + send_bits(s, s.bl_tree[bl_order[rank] * 2 + 1], 3); + } + send_tree(s, s.dyn_ltree, lcodes - 1); + send_tree(s, s.dyn_dtree, dcodes - 1); + } + function detect_data_type(s) { + var black_mask = 4093624447; + var n; + for (n = 0; n <= 31; n++, black_mask >>>= 1) { + if (black_mask & 1 && s.dyn_ltree[n * 2] !== 0) { + return Z_BINARY; + } + } + if (s.dyn_ltree[9 * 2] !== 0 || s.dyn_ltree[10 * 2] !== 0 || s.dyn_ltree[13 * 2] !== 0) { + return Z_TEXT; + } + for (n = 32; n < LITERALS; n++) { + if (s.dyn_ltree[n * 2] !== 0) { + return Z_TEXT; + } + } + return Z_BINARY; + } + var static_init_done = false; + function _tr_init(s) { + if (!static_init_done) { + tr_static_init(); + static_init_done = true; + } + s.l_desc = new TreeDesc(s.dyn_ltree, static_l_desc); + s.d_desc = new TreeDesc(s.dyn_dtree, static_d_desc); + s.bl_desc = new TreeDesc(s.bl_tree, static_bl_desc); + s.bi_buf = 0; + s.bi_valid = 0; + init_block(s); + } + function _tr_stored_block(s, buf, stored_len, last2) { + send_bits(s, (STORED_BLOCK << 1) + (last2 ? 1 : 0), 3); + copy_block(s, buf, stored_len, true); + } + function _tr_align(s) { + send_bits(s, STATIC_TREES << 1, 3); + send_code(s, END_BLOCK, static_ltree); + bi_flush(s); + } + function _tr_flush_block(s, buf, stored_len, last2) { + var opt_lenb, static_lenb; + var max_blindex = 0; + if (s.level > 0) { + if (s.strm.data_type === Z_UNKNOWN) { + s.strm.data_type = detect_data_type(s); + } + build_tree(s, s.l_desc); + build_tree(s, s.d_desc); + max_blindex = build_bl_tree(s); + opt_lenb = s.opt_len + 3 + 7 >>> 3; + static_lenb = s.static_len + 3 + 7 >>> 3; + if (static_lenb <= opt_lenb) { + opt_lenb = static_lenb; + } + } else { + opt_lenb = static_lenb = stored_len + 5; + } + if (stored_len + 4 <= opt_lenb && buf !== -1) { + _tr_stored_block(s, buf, stored_len, last2); + } else if (s.strategy === Z_FIXED || static_lenb === opt_lenb) { + send_bits(s, (STATIC_TREES << 1) + (last2 ? 1 : 0), 3); + compress_block(s, static_ltree, static_dtree); + } else { + send_bits(s, (DYN_TREES << 1) + (last2 ? 1 : 0), 3); + send_all_trees(s, s.l_desc.max_code + 1, s.d_desc.max_code + 1, max_blindex + 1); + compress_block(s, s.dyn_ltree, s.dyn_dtree); + } + init_block(s); + if (last2) { + bi_windup(s); + } + } + function _tr_tally(s, dist, lc) { + s.pending_buf[s.d_buf + s.last_lit * 2] = dist >>> 8 & 255; + s.pending_buf[s.d_buf + s.last_lit * 2 + 1] = dist & 255; + s.pending_buf[s.l_buf + s.last_lit] = lc & 255; + s.last_lit++; + if (dist === 0) { + s.dyn_ltree[lc * 2]++; + } else { + s.matches++; + dist--; + s.dyn_ltree[(_length_code[lc] + LITERALS + 1) * 2]++; + s.dyn_dtree[d_code(dist) * 2]++; + } + return s.last_lit === s.lit_bufsize - 1; + } + exports3._tr_init = _tr_init; + exports3._tr_stored_block = _tr_stored_block; + exports3._tr_flush_block = _tr_flush_block; + exports3._tr_tally = _tr_tally; + exports3._tr_align = _tr_align; + }, { "../utils/common": 5 }], 12: [function(require2, module4, exports3) { + "use strict"; + function ZStream() { + this.input = null; + this.next_in = 0; + this.avail_in = 0; + this.total_in = 0; + this.output = null; + this.next_out = 0; + this.avail_out = 0; + this.total_out = 0; + this.msg = ""; + this.state = null; + this.data_type = 2; + this.adler = 0; + } + module4.exports = ZStream; + }, {}] }, {}, [3])(3); + }); + } +}); + +// ../../node_modules/.pnpm/plantuml-encoder@1.4.0/node_modules/plantuml-encoder/dist/plantuml-decoder.js +var require_plantuml_decoder = __commonJS({ + "../../node_modules/.pnpm/plantuml-encoder@1.4.0/node_modules/plantuml-encoder/dist/plantuml-decoder.js"(exports, module2) { + (function(f) { + if (typeof exports === "object" && typeof module2 !== "undefined") { + module2.exports = f(); + } else if (typeof define === "function" && define.amd) { + define([], f); + } else { + var g; + if (typeof window !== "undefined") { + g = window; + } else if (typeof global !== "undefined") { + g = global; + } else if (typeof self !== "undefined") { + g = self; + } else { + g = this; + } + g.plantumlEncoder = f(); + } + })(function() { + var define2, module3, exports2; + return function() { + function r(e, n, t2) { + function o(i2, f) { + if (!n[i2]) { + if (!e[i2]) { + var c = "function" == typeof require && require; + if (!f && c) + return c(i2, true); + if (u) + return u(i2, true); + var a = new Error("Cannot find module '" + i2 + "'"); + throw a.code = "MODULE_NOT_FOUND", a; + } + var p = n[i2] = { exports: {} }; + e[i2][0].call(p.exports, function(r2) { + var n2 = e[i2][1][r2]; + return o(n2 || r2); + }, p, p.exports, r, e, n, t2); + } + return n[i2].exports; + } + for (var u = "function" == typeof require && require, i = 0; i < t2.length; i++) + o(t2[i]); + return o; + } + return r; + }()({ 1: [function(require2, module4, exports3) { + "use strict"; + var pako = require2("pako/lib/inflate.js"); + module4.exports = function(data2) { + return pako.inflateRaw(data2, { to: "string" }); + }; + }, { "pako/lib/inflate.js": 4 }], 2: [function(require2, module4, exports3) { + "use strict"; + function decode6bit(cc) { + var c = cc.charCodeAt(0); + if (cc === "_") + return 63; + if (cc === "-") + return 62; + if (c >= 97) + return c - 61; + if (c >= 65) + return c - 55; + if (c >= 48) + return c - 48; + return "?"; + } + function extract3bytes(data2) { + var c1 = decode6bit(data2[0]); + var c2 = decode6bit(data2[1]); + var c3 = decode6bit(data2[2]); + var c4 = decode6bit(data2[3]); + var b1 = c1 << 2 | c2 >> 4 & 63; + var b2 = c2 << 4 & 240 | c3 >> 2 & 15; + var b3 = c3 << 6 & 192 | c4 & 63; + return [b1, b2, b3]; + } + module4.exports = function(data2) { + var r = ""; + var i = 0; + for (i = 0; i < data2.length; i += 4) { + var t2 = extract3bytes(data2.substring(i, i + 4)); + r = r + String.fromCharCode(t2[0]); + r = r + String.fromCharCode(t2[1]); + r = r + String.fromCharCode(t2[2]); + } + return r; + }; + }, {}], 3: [function(require2, module4, exports3) { + "use strict"; + var inflate = require2("./inflate"); + var decode64 = require2("./decode64"); + module4.exports.decode = function(encoded) { + var deflated = decode64(encoded); + return inflate(deflated); + }; + }, { "./decode64": 2, "./inflate": 1 }], 4: [function(require2, module4, exports3) { + "use strict"; + var zlib_inflate = require2("./zlib/inflate"); + var utils = require2("./utils/common"); + var strings = require2("./utils/strings"); + var c = require2("./zlib/constants"); + var msg = require2("./zlib/messages"); + var ZStream = require2("./zlib/zstream"); + var GZheader = require2("./zlib/gzheader"); + var toString2 = Object.prototype.toString; + function Inflate(options) { + if (!(this instanceof Inflate)) + return new Inflate(options); + this.options = utils.assign({ + chunkSize: 16384, + windowBits: 0, + to: "" + }, options || {}); + var opt = this.options; + if (opt.raw && opt.windowBits >= 0 && opt.windowBits < 16) { + opt.windowBits = -opt.windowBits; + if (opt.windowBits === 0) { + opt.windowBits = -15; + } + } + if (opt.windowBits >= 0 && opt.windowBits < 16 && !(options && options.windowBits)) { + opt.windowBits += 32; + } + if (opt.windowBits > 15 && opt.windowBits < 48) { + if ((opt.windowBits & 15) === 0) { + opt.windowBits |= 15; + } + } + this.err = 0; + this.msg = ""; + this.ended = false; + this.chunks = []; + this.strm = new ZStream(); + this.strm.avail_out = 0; + var status = zlib_inflate.inflateInit2( + this.strm, + opt.windowBits + ); + if (status !== c.Z_OK) { + throw new Error(msg[status]); + } + this.header = new GZheader(); + zlib_inflate.inflateGetHeader(this.strm, this.header); + if (opt.dictionary) { + if (typeof opt.dictionary === "string") { + opt.dictionary = strings.string2buf(opt.dictionary); + } else if (toString2.call(opt.dictionary) === "[object ArrayBuffer]") { + opt.dictionary = new Uint8Array(opt.dictionary); + } + if (opt.raw) { + status = zlib_inflate.inflateSetDictionary(this.strm, opt.dictionary); + if (status !== c.Z_OK) { + throw new Error(msg[status]); + } + } + } + } + Inflate.prototype.push = function(data2, mode) { + var strm = this.strm; + var chunkSize = this.options.chunkSize; + var dictionary = this.options.dictionary; + var status, _mode; + var next_out_utf8, tail, utf8str; + var allowBufError = false; + if (this.ended) { + return false; + } + _mode = mode === ~~mode ? mode : mode === true ? c.Z_FINISH : c.Z_NO_FLUSH; + if (typeof data2 === "string") { + strm.input = strings.binstring2buf(data2); + } else if (toString2.call(data2) === "[object ArrayBuffer]") { + strm.input = new Uint8Array(data2); + } else { + strm.input = data2; + } + strm.next_in = 0; + strm.avail_in = strm.input.length; + do { + if (strm.avail_out === 0) { + strm.output = new utils.Buf8(chunkSize); + strm.next_out = 0; + strm.avail_out = chunkSize; + } + status = zlib_inflate.inflate(strm, c.Z_NO_FLUSH); + if (status === c.Z_NEED_DICT && dictionary) { + status = zlib_inflate.inflateSetDictionary(this.strm, dictionary); + } + if (status === c.Z_BUF_ERROR && allowBufError === true) { + status = c.Z_OK; + allowBufError = false; + } + if (status !== c.Z_STREAM_END && status !== c.Z_OK) { + this.onEnd(status); + this.ended = true; + return false; + } + if (strm.next_out) { + if (strm.avail_out === 0 || status === c.Z_STREAM_END || strm.avail_in === 0 && (_mode === c.Z_FINISH || _mode === c.Z_SYNC_FLUSH)) { + if (this.options.to === "string") { + next_out_utf8 = strings.utf8border(strm.output, strm.next_out); + tail = strm.next_out - next_out_utf8; + utf8str = strings.buf2string(strm.output, next_out_utf8); + strm.next_out = tail; + strm.avail_out = chunkSize - tail; + if (tail) { + utils.arraySet(strm.output, strm.output, next_out_utf8, tail, 0); + } + this.onData(utf8str); + } else { + this.onData(utils.shrinkBuf(strm.output, strm.next_out)); + } + } + } + if (strm.avail_in === 0 && strm.avail_out === 0) { + allowBufError = true; + } + } while ((strm.avail_in > 0 || strm.avail_out === 0) && status !== c.Z_STREAM_END); + if (status === c.Z_STREAM_END) { + _mode = c.Z_FINISH; + } + if (_mode === c.Z_FINISH) { + status = zlib_inflate.inflateEnd(this.strm); + this.onEnd(status); + this.ended = true; + return status === c.Z_OK; + } + if (_mode === c.Z_SYNC_FLUSH) { + this.onEnd(c.Z_OK); + strm.avail_out = 0; + return true; + } + return true; + }; + Inflate.prototype.onData = function(chunk) { + this.chunks.push(chunk); + }; + Inflate.prototype.onEnd = function(status) { + if (status === c.Z_OK) { + if (this.options.to === "string") { + this.result = this.chunks.join(""); + } else { + this.result = utils.flattenChunks(this.chunks); + } + } + this.chunks = []; + this.err = status; + this.msg = this.strm.msg; + }; + function inflate(input, options) { + var inflator = new Inflate(options); + inflator.push(input, true); + if (inflator.err) { + throw inflator.msg || msg[inflator.err]; + } + return inflator.result; + } + function inflateRaw(input, options) { + options = options || {}; + options.raw = true; + return inflate(input, options); + } + exports3.Inflate = Inflate; + exports3.inflate = inflate; + exports3.inflateRaw = inflateRaw; + exports3.ungzip = inflate; + }, { "./utils/common": 5, "./utils/strings": 6, "./zlib/constants": 8, "./zlib/gzheader": 10, "./zlib/inflate": 12, "./zlib/messages": 14, "./zlib/zstream": 15 }], 5: [function(require2, module4, exports3) { + "use strict"; + var TYPED_OK = typeof Uint8Array !== "undefined" && typeof Uint16Array !== "undefined" && typeof Int32Array !== "undefined"; + function _has(obj, key) { + return Object.prototype.hasOwnProperty.call(obj, key); + } + exports3.assign = function(obj) { + var sources = Array.prototype.slice.call(arguments, 1); + while (sources.length) { + var source = sources.shift(); + if (!source) { + continue; + } + if (typeof source !== "object") { + throw new TypeError(source + "must be non-object"); + } + for (var p in source) { + if (_has(source, p)) { + obj[p] = source[p]; + } + } + } + return obj; + }; + exports3.shrinkBuf = function(buf, size) { + if (buf.length === size) { + return buf; + } + if (buf.subarray) { + return buf.subarray(0, size); + } + buf.length = size; + return buf; + }; + var fnTyped = { + arraySet: function(dest, src, src_offs, len, dest_offs) { + if (src.subarray && dest.subarray) { + dest.set(src.subarray(src_offs, src_offs + len), dest_offs); + return; + } + for (var i = 0; i < len; i++) { + dest[dest_offs + i] = src[src_offs + i]; + } + }, + flattenChunks: function(chunks) { + var i, l, len, pos, chunk, result; + len = 0; + for (i = 0, l = chunks.length; i < l; i++) { + len += chunks[i].length; + } + result = new Uint8Array(len); + pos = 0; + for (i = 0, l = chunks.length; i < l; i++) { + chunk = chunks[i]; + result.set(chunk, pos); + pos += chunk.length; + } + return result; + } + }; + var fnUntyped = { + arraySet: function(dest, src, src_offs, len, dest_offs) { + for (var i = 0; i < len; i++) { + dest[dest_offs + i] = src[src_offs + i]; + } + }, + flattenChunks: function(chunks) { + return [].concat.apply([], chunks); + } + }; + exports3.setTyped = function(on) { + if (on) { + exports3.Buf8 = Uint8Array; + exports3.Buf16 = Uint16Array; + exports3.Buf32 = Int32Array; + exports3.assign(exports3, fnTyped); + } else { + exports3.Buf8 = Array; + exports3.Buf16 = Array; + exports3.Buf32 = Array; + exports3.assign(exports3, fnUntyped); + } + }; + exports3.setTyped(TYPED_OK); + }, {}], 6: [function(require2, module4, exports3) { + "use strict"; + var utils = require2("./common"); + var STR_APPLY_OK = true; + var STR_APPLY_UIA_OK = true; + try { + String.fromCharCode.apply(null, [0]); + } catch (__) { + STR_APPLY_OK = false; + } + try { + String.fromCharCode.apply(null, new Uint8Array(1)); + } catch (__) { + STR_APPLY_UIA_OK = false; + } + var _utf8len = new utils.Buf8(256); + for (var q = 0; q < 256; q++) { + _utf8len[q] = q >= 252 ? 6 : q >= 248 ? 5 : q >= 240 ? 4 : q >= 224 ? 3 : q >= 192 ? 2 : 1; + } + _utf8len[254] = _utf8len[254] = 1; + exports3.string2buf = function(str) { + var buf, c, c2, m_pos, i, str_len = str.length, buf_len = 0; + for (m_pos = 0; m_pos < str_len; m_pos++) { + c = str.charCodeAt(m_pos); + if ((c & 64512) === 55296 && m_pos + 1 < str_len) { + c2 = str.charCodeAt(m_pos + 1); + if ((c2 & 64512) === 56320) { + c = 65536 + (c - 55296 << 10) + (c2 - 56320); + m_pos++; + } + } + buf_len += c < 128 ? 1 : c < 2048 ? 2 : c < 65536 ? 3 : 4; + } + buf = new utils.Buf8(buf_len); + for (i = 0, m_pos = 0; i < buf_len; m_pos++) { + c = str.charCodeAt(m_pos); + if ((c & 64512) === 55296 && m_pos + 1 < str_len) { + c2 = str.charCodeAt(m_pos + 1); + if ((c2 & 64512) === 56320) { + c = 65536 + (c - 55296 << 10) + (c2 - 56320); + m_pos++; + } + } + if (c < 128) { + buf[i++] = c; + } else if (c < 2048) { + buf[i++] = 192 | c >>> 6; + buf[i++] = 128 | c & 63; + } else if (c < 65536) { + buf[i++] = 224 | c >>> 12; + buf[i++] = 128 | c >>> 6 & 63; + buf[i++] = 128 | c & 63; + } else { + buf[i++] = 240 | c >>> 18; + buf[i++] = 128 | c >>> 12 & 63; + buf[i++] = 128 | c >>> 6 & 63; + buf[i++] = 128 | c & 63; + } + } + return buf; + }; + function buf2binstring(buf, len) { + if (len < 65534) { + if (buf.subarray && STR_APPLY_UIA_OK || !buf.subarray && STR_APPLY_OK) { + return String.fromCharCode.apply(null, utils.shrinkBuf(buf, len)); + } + } + var result = ""; + for (var i = 0; i < len; i++) { + result += String.fromCharCode(buf[i]); + } + return result; + } + exports3.buf2binstring = function(buf) { + return buf2binstring(buf, buf.length); + }; + exports3.binstring2buf = function(str) { + var buf = new utils.Buf8(str.length); + for (var i = 0, len = buf.length; i < len; i++) { + buf[i] = str.charCodeAt(i); + } + return buf; + }; + exports3.buf2string = function(buf, max) { + var i, out, c, c_len; + var len = max || buf.length; + var utf16buf = new Array(len * 2); + for (out = 0, i = 0; i < len; ) { + c = buf[i++]; + if (c < 128) { + utf16buf[out++] = c; + continue; + } + c_len = _utf8len[c]; + if (c_len > 4) { + utf16buf[out++] = 65533; + i += c_len - 1; + continue; + } + c &= c_len === 2 ? 31 : c_len === 3 ? 15 : 7; + while (c_len > 1 && i < len) { + c = c << 6 | buf[i++] & 63; + c_len--; + } + if (c_len > 1) { + utf16buf[out++] = 65533; + continue; + } + if (c < 65536) { + utf16buf[out++] = c; + } else { + c -= 65536; + utf16buf[out++] = 55296 | c >> 10 & 1023; + utf16buf[out++] = 56320 | c & 1023; + } + } + return buf2binstring(utf16buf, out); + }; + exports3.utf8border = function(buf, max) { + var pos; + max = max || buf.length; + if (max > buf.length) { + max = buf.length; + } + pos = max - 1; + while (pos >= 0 && (buf[pos] & 192) === 128) { + pos--; + } + if (pos < 0) { + return max; + } + if (pos === 0) { + return max; + } + return pos + _utf8len[buf[pos]] > max ? pos : max; + }; + }, { "./common": 5 }], 7: [function(require2, module4, exports3) { + "use strict"; + function adler32(adler, buf, len, pos) { + var s1 = adler & 65535 | 0, s2 = adler >>> 16 & 65535 | 0, n = 0; + while (len !== 0) { + n = len > 2e3 ? 2e3 : len; + len -= n; + do { + s1 = s1 + buf[pos++] | 0; + s2 = s2 + s1 | 0; + } while (--n); + s1 %= 65521; + s2 %= 65521; + } + return s1 | s2 << 16 | 0; + } + module4.exports = adler32; + }, {}], 8: [function(require2, module4, exports3) { + "use strict"; + module4.exports = { + Z_NO_FLUSH: 0, + Z_PARTIAL_FLUSH: 1, + Z_SYNC_FLUSH: 2, + Z_FULL_FLUSH: 3, + Z_FINISH: 4, + Z_BLOCK: 5, + Z_TREES: 6, + Z_OK: 0, + Z_STREAM_END: 1, + Z_NEED_DICT: 2, + Z_ERRNO: -1, + Z_STREAM_ERROR: -2, + Z_DATA_ERROR: -3, + Z_BUF_ERROR: -5, + Z_NO_COMPRESSION: 0, + Z_BEST_SPEED: 1, + Z_BEST_COMPRESSION: 9, + Z_DEFAULT_COMPRESSION: -1, + Z_FILTERED: 1, + Z_HUFFMAN_ONLY: 2, + Z_RLE: 3, + Z_FIXED: 4, + Z_DEFAULT_STRATEGY: 0, + Z_BINARY: 0, + Z_TEXT: 1, + Z_UNKNOWN: 2, + Z_DEFLATED: 8 + }; + }, {}], 9: [function(require2, module4, exports3) { + "use strict"; + function makeTable() { + var c, table2 = []; + for (var n = 0; n < 256; n++) { + c = n; + for (var k = 0; k < 8; k++) { + c = c & 1 ? 3988292384 ^ c >>> 1 : c >>> 1; + } + table2[n] = c; + } + return table2; + } + var crcTable = makeTable(); + function crc32(crc, buf, len, pos) { + var t2 = crcTable, end2 = pos + len; + crc ^= -1; + for (var i = pos; i < end2; i++) { + crc = crc >>> 8 ^ t2[(crc ^ buf[i]) & 255]; + } + return crc ^ -1; + } + module4.exports = crc32; + }, {}], 10: [function(require2, module4, exports3) { + "use strict"; + function GZheader() { + this.text = 0; + this.time = 0; + this.xflags = 0; + this.os = 0; + this.extra = null; + this.extra_len = 0; + this.name = ""; + this.comment = ""; + this.hcrc = 0; + this.done = false; + } + module4.exports = GZheader; + }, {}], 11: [function(require2, module4, exports3) { + "use strict"; + var BAD = 30; + var TYPE = 12; + module4.exports = function inflate_fast(strm, start) { + var state; + var _in; + var last2; + var _out; + var beg; + var end2; + var dmax; + var wsize; + var whave; + var wnext; + var s_window; + var hold; + var bits; + var lcode; + var dcode; + var lmask; + var dmask; + var here; + var op; + var len; + var dist; + var from; + var from_source; + var input, output; + state = strm.state; + _in = strm.next_in; + input = strm.input; + last2 = _in + (strm.avail_in - 5); + _out = strm.next_out; + output = strm.output; + beg = _out - (start - strm.avail_out); + end2 = _out + (strm.avail_out - 257); + dmax = state.dmax; + wsize = state.wsize; + whave = state.whave; + wnext = state.wnext; + s_window = state.window; + hold = state.hold; + bits = state.bits; + lcode = state.lencode; + dcode = state.distcode; + lmask = (1 << state.lenbits) - 1; + dmask = (1 << state.distbits) - 1; + top: + do { + if (bits < 15) { + hold += input[_in++] << bits; + bits += 8; + hold += input[_in++] << bits; + bits += 8; + } + here = lcode[hold & lmask]; + dolen: + for (; ; ) { + op = here >>> 24; + hold >>>= op; + bits -= op; + op = here >>> 16 & 255; + if (op === 0) { + output[_out++] = here & 65535; + } else if (op & 16) { + len = here & 65535; + op &= 15; + if (op) { + if (bits < op) { + hold += input[_in++] << bits; + bits += 8; + } + len += hold & (1 << op) - 1; + hold >>>= op; + bits -= op; + } + if (bits < 15) { + hold += input[_in++] << bits; + bits += 8; + hold += input[_in++] << bits; + bits += 8; + } + here = dcode[hold & dmask]; + dodist: + for (; ; ) { + op = here >>> 24; + hold >>>= op; + bits -= op; + op = here >>> 16 & 255; + if (op & 16) { + dist = here & 65535; + op &= 15; + if (bits < op) { + hold += input[_in++] << bits; + bits += 8; + if (bits < op) { + hold += input[_in++] << bits; + bits += 8; + } + } + dist += hold & (1 << op) - 1; + if (dist > dmax) { + strm.msg = "invalid distance too far back"; + state.mode = BAD; + break top; + } + hold >>>= op; + bits -= op; + op = _out - beg; + if (dist > op) { + op = dist - op; + if (op > whave) { + if (state.sane) { + strm.msg = "invalid distance too far back"; + state.mode = BAD; + break top; + } + } + from = 0; + from_source = s_window; + if (wnext === 0) { + from += wsize - op; + if (op < len) { + len -= op; + do { + output[_out++] = s_window[from++]; + } while (--op); + from = _out - dist; + from_source = output; + } + } else if (wnext < op) { + from += wsize + wnext - op; + op -= wnext; + if (op < len) { + len -= op; + do { + output[_out++] = s_window[from++]; + } while (--op); + from = 0; + if (wnext < len) { + op = wnext; + len -= op; + do { + output[_out++] = s_window[from++]; + } while (--op); + from = _out - dist; + from_source = output; + } + } + } else { + from += wnext - op; + if (op < len) { + len -= op; + do { + output[_out++] = s_window[from++]; + } while (--op); + from = _out - dist; + from_source = output; + } + } + while (len > 2) { + output[_out++] = from_source[from++]; + output[_out++] = from_source[from++]; + output[_out++] = from_source[from++]; + len -= 3; + } + if (len) { + output[_out++] = from_source[from++]; + if (len > 1) { + output[_out++] = from_source[from++]; + } + } + } else { + from = _out - dist; + do { + output[_out++] = output[from++]; + output[_out++] = output[from++]; + output[_out++] = output[from++]; + len -= 3; + } while (len > 2); + if (len) { + output[_out++] = output[from++]; + if (len > 1) { + output[_out++] = output[from++]; + } + } + } + } else if ((op & 64) === 0) { + here = dcode[(here & 65535) + (hold & (1 << op) - 1)]; + continue dodist; + } else { + strm.msg = "invalid distance code"; + state.mode = BAD; + break top; + } + break; + } + } else if ((op & 64) === 0) { + here = lcode[(here & 65535) + (hold & (1 << op) - 1)]; + continue dolen; + } else if (op & 32) { + state.mode = TYPE; + break top; + } else { + strm.msg = "invalid literal/length code"; + state.mode = BAD; + break top; + } + break; + } + } while (_in < last2 && _out < end2); + len = bits >> 3; + _in -= len; + bits -= len << 3; + hold &= (1 << bits) - 1; + strm.next_in = _in; + strm.next_out = _out; + strm.avail_in = _in < last2 ? 5 + (last2 - _in) : 5 - (_in - last2); + strm.avail_out = _out < end2 ? 257 + (end2 - _out) : 257 - (_out - end2); + state.hold = hold; + state.bits = bits; + return; + }; + }, {}], 12: [function(require2, module4, exports3) { + "use strict"; + var utils = require2("../utils/common"); + var adler32 = require2("./adler32"); + var crc32 = require2("./crc32"); + var inflate_fast = require2("./inffast"); + var inflate_table = require2("./inftrees"); + var CODES = 0; + var LENS = 1; + var DISTS = 2; + var Z_FINISH = 4; + var Z_BLOCK = 5; + var Z_TREES = 6; + var Z_OK = 0; + var Z_STREAM_END = 1; + var Z_NEED_DICT = 2; + var Z_STREAM_ERROR = -2; + var Z_DATA_ERROR = -3; + var Z_MEM_ERROR = -4; + var Z_BUF_ERROR = -5; + var Z_DEFLATED = 8; + var HEAD = 1; + var FLAGS = 2; + var TIME = 3; + var OS = 4; + var EXLEN = 5; + var EXTRA = 6; + var NAME = 7; + var COMMENT = 8; + var HCRC = 9; + var DICTID = 10; + var DICT = 11; + var TYPE = 12; + var TYPEDO = 13; + var STORED = 14; + var COPY_ = 15; + var COPY = 16; + var TABLE = 17; + var LENLENS = 18; + var CODELENS = 19; + var LEN_ = 20; + var LEN = 21; + var LENEXT = 22; + var DIST = 23; + var DISTEXT = 24; + var MATCH = 25; + var LIT = 26; + var CHECK = 27; + var LENGTH = 28; + var DONE = 29; + var BAD = 30; + var MEM = 31; + var SYNC = 32; + var ENOUGH_LENS = 852; + var ENOUGH_DISTS = 592; + var MAX_WBITS = 15; + var DEF_WBITS = MAX_WBITS; + function zswap32(q) { + return (q >>> 24 & 255) + (q >>> 8 & 65280) + ((q & 65280) << 8) + ((q & 255) << 24); + } + function InflateState() { + this.mode = 0; + this.last = false; + this.wrap = 0; + this.havedict = false; + this.flags = 0; + this.dmax = 0; + this.check = 0; + this.total = 0; + this.head = null; + this.wbits = 0; + this.wsize = 0; + this.whave = 0; + this.wnext = 0; + this.window = null; + this.hold = 0; + this.bits = 0; + this.length = 0; + this.offset = 0; + this.extra = 0; + this.lencode = null; + this.distcode = null; + this.lenbits = 0; + this.distbits = 0; + this.ncode = 0; + this.nlen = 0; + this.ndist = 0; + this.have = 0; + this.next = null; + this.lens = new utils.Buf16(320); + this.work = new utils.Buf16(288); + this.lendyn = null; + this.distdyn = null; + this.sane = 0; + this.back = 0; + this.was = 0; + } + function inflateResetKeep(strm) { + var state; + if (!strm || !strm.state) { + return Z_STREAM_ERROR; + } + state = strm.state; + strm.total_in = strm.total_out = state.total = 0; + strm.msg = ""; + if (state.wrap) { + strm.adler = state.wrap & 1; + } + state.mode = HEAD; + state.last = 0; + state.havedict = 0; + state.dmax = 32768; + state.head = null; + state.hold = 0; + state.bits = 0; + state.lencode = state.lendyn = new utils.Buf32(ENOUGH_LENS); + state.distcode = state.distdyn = new utils.Buf32(ENOUGH_DISTS); + state.sane = 1; + state.back = -1; + return Z_OK; + } + function inflateReset(strm) { + var state; + if (!strm || !strm.state) { + return Z_STREAM_ERROR; + } + state = strm.state; + state.wsize = 0; + state.whave = 0; + state.wnext = 0; + return inflateResetKeep(strm); + } + function inflateReset2(strm, windowBits) { + var wrap2; + var state; + if (!strm || !strm.state) { + return Z_STREAM_ERROR; + } + state = strm.state; + if (windowBits < 0) { + wrap2 = 0; + windowBits = -windowBits; + } else { + wrap2 = (windowBits >> 4) + 1; + if (windowBits < 48) { + windowBits &= 15; + } + } + if (windowBits && (windowBits < 8 || windowBits > 15)) { + return Z_STREAM_ERROR; + } + if (state.window !== null && state.wbits !== windowBits) { + state.window = null; + } + state.wrap = wrap2; + state.wbits = windowBits; + return inflateReset(strm); + } + function inflateInit2(strm, windowBits) { + var ret; + var state; + if (!strm) { + return Z_STREAM_ERROR; + } + state = new InflateState(); + strm.state = state; + state.window = null; + ret = inflateReset2(strm, windowBits); + if (ret !== Z_OK) { + strm.state = null; + } + return ret; + } + function inflateInit(strm) { + return inflateInit2(strm, DEF_WBITS); + } + var virgin = true; + var lenfix, distfix; + function fixedtables(state) { + if (virgin) { + var sym; + lenfix = new utils.Buf32(512); + distfix = new utils.Buf32(32); + sym = 0; + while (sym < 144) { + state.lens[sym++] = 8; + } + while (sym < 256) { + state.lens[sym++] = 9; + } + while (sym < 280) { + state.lens[sym++] = 7; + } + while (sym < 288) { + state.lens[sym++] = 8; + } + inflate_table(LENS, state.lens, 0, 288, lenfix, 0, state.work, { bits: 9 }); + sym = 0; + while (sym < 32) { + state.lens[sym++] = 5; + } + inflate_table(DISTS, state.lens, 0, 32, distfix, 0, state.work, { bits: 5 }); + virgin = false; + } + state.lencode = lenfix; + state.lenbits = 9; + state.distcode = distfix; + state.distbits = 5; + } + function updatewindow(strm, src, end2, copy) { + var dist; + var state = strm.state; + if (state.window === null) { + state.wsize = 1 << state.wbits; + state.wnext = 0; + state.whave = 0; + state.window = new utils.Buf8(state.wsize); + } + if (copy >= state.wsize) { + utils.arraySet(state.window, src, end2 - state.wsize, state.wsize, 0); + state.wnext = 0; + state.whave = state.wsize; + } else { + dist = state.wsize - state.wnext; + if (dist > copy) { + dist = copy; + } + utils.arraySet(state.window, src, end2 - copy, dist, state.wnext); + copy -= dist; + if (copy) { + utils.arraySet(state.window, src, end2 - copy, copy, 0); + state.wnext = copy; + state.whave = state.wsize; + } else { + state.wnext += dist; + if (state.wnext === state.wsize) { + state.wnext = 0; + } + if (state.whave < state.wsize) { + state.whave += dist; + } + } + } + return 0; + } + function inflate(strm, flush) { + var state; + var input, output; + var next2; + var put; + var have, left; + var hold; + var bits; + var _in, _out; + var copy; + var from; + var from_source; + var here = 0; + var here_bits, here_op, here_val; + var last_bits, last_op, last_val; + var len; + var ret; + var hbuf = new utils.Buf8(4); + var opts; + var n; + var order = [16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15]; + if (!strm || !strm.state || !strm.output || !strm.input && strm.avail_in !== 0) { + return Z_STREAM_ERROR; + } + state = strm.state; + if (state.mode === TYPE) { + state.mode = TYPEDO; + } + put = strm.next_out; + output = strm.output; + left = strm.avail_out; + next2 = strm.next_in; + input = strm.input; + have = strm.avail_in; + hold = state.hold; + bits = state.bits; + _in = have; + _out = left; + ret = Z_OK; + inf_leave: + for (; ; ) { + switch (state.mode) { + case HEAD: + if (state.wrap === 0) { + state.mode = TYPEDO; + break; + } + while (bits < 16) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + if (state.wrap & 2 && hold === 35615) { + state.check = 0; + hbuf[0] = hold & 255; + hbuf[1] = hold >>> 8 & 255; + state.check = crc32(state.check, hbuf, 2, 0); + hold = 0; + bits = 0; + state.mode = FLAGS; + break; + } + state.flags = 0; + if (state.head) { + state.head.done = false; + } + if (!(state.wrap & 1) || (((hold & 255) << 8) + (hold >> 8)) % 31) { + strm.msg = "incorrect header check"; + state.mode = BAD; + break; + } + if ((hold & 15) !== Z_DEFLATED) { + strm.msg = "unknown compression method"; + state.mode = BAD; + break; + } + hold >>>= 4; + bits -= 4; + len = (hold & 15) + 8; + if (state.wbits === 0) { + state.wbits = len; + } else if (len > state.wbits) { + strm.msg = "invalid window size"; + state.mode = BAD; + break; + } + state.dmax = 1 << len; + strm.adler = state.check = 1; + state.mode = hold & 512 ? DICTID : TYPE; + hold = 0; + bits = 0; + break; + case FLAGS: + while (bits < 16) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + state.flags = hold; + if ((state.flags & 255) !== Z_DEFLATED) { + strm.msg = "unknown compression method"; + state.mode = BAD; + break; + } + if (state.flags & 57344) { + strm.msg = "unknown header flags set"; + state.mode = BAD; + break; + } + if (state.head) { + state.head.text = hold >> 8 & 1; + } + if (state.flags & 512) { + hbuf[0] = hold & 255; + hbuf[1] = hold >>> 8 & 255; + state.check = crc32(state.check, hbuf, 2, 0); + } + hold = 0; + bits = 0; + state.mode = TIME; + case TIME: + while (bits < 32) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + if (state.head) { + state.head.time = hold; + } + if (state.flags & 512) { + hbuf[0] = hold & 255; + hbuf[1] = hold >>> 8 & 255; + hbuf[2] = hold >>> 16 & 255; + hbuf[3] = hold >>> 24 & 255; + state.check = crc32(state.check, hbuf, 4, 0); + } + hold = 0; + bits = 0; + state.mode = OS; + case OS: + while (bits < 16) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + if (state.head) { + state.head.xflags = hold & 255; + state.head.os = hold >> 8; + } + if (state.flags & 512) { + hbuf[0] = hold & 255; + hbuf[1] = hold >>> 8 & 255; + state.check = crc32(state.check, hbuf, 2, 0); + } + hold = 0; + bits = 0; + state.mode = EXLEN; + case EXLEN: + if (state.flags & 1024) { + while (bits < 16) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + state.length = hold; + if (state.head) { + state.head.extra_len = hold; + } + if (state.flags & 512) { + hbuf[0] = hold & 255; + hbuf[1] = hold >>> 8 & 255; + state.check = crc32(state.check, hbuf, 2, 0); + } + hold = 0; + bits = 0; + } else if (state.head) { + state.head.extra = null; + } + state.mode = EXTRA; + case EXTRA: + if (state.flags & 1024) { + copy = state.length; + if (copy > have) { + copy = have; + } + if (copy) { + if (state.head) { + len = state.head.extra_len - state.length; + if (!state.head.extra) { + state.head.extra = new Array(state.head.extra_len); + } + utils.arraySet( + state.head.extra, + input, + next2, + copy, + len + ); + } + if (state.flags & 512) { + state.check = crc32(state.check, input, copy, next2); + } + have -= copy; + next2 += copy; + state.length -= copy; + } + if (state.length) { + break inf_leave; + } + } + state.length = 0; + state.mode = NAME; + case NAME: + if (state.flags & 2048) { + if (have === 0) { + break inf_leave; + } + copy = 0; + do { + len = input[next2 + copy++]; + if (state.head && len && state.length < 65536) { + state.head.name += String.fromCharCode(len); + } + } while (len && copy < have); + if (state.flags & 512) { + state.check = crc32(state.check, input, copy, next2); + } + have -= copy; + next2 += copy; + if (len) { + break inf_leave; + } + } else if (state.head) { + state.head.name = null; + } + state.length = 0; + state.mode = COMMENT; + case COMMENT: + if (state.flags & 4096) { + if (have === 0) { + break inf_leave; + } + copy = 0; + do { + len = input[next2 + copy++]; + if (state.head && len && state.length < 65536) { + state.head.comment += String.fromCharCode(len); + } + } while (len && copy < have); + if (state.flags & 512) { + state.check = crc32(state.check, input, copy, next2); + } + have -= copy; + next2 += copy; + if (len) { + break inf_leave; + } + } else if (state.head) { + state.head.comment = null; + } + state.mode = HCRC; + case HCRC: + if (state.flags & 512) { + while (bits < 16) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + if (hold !== (state.check & 65535)) { + strm.msg = "header crc mismatch"; + state.mode = BAD; + break; + } + hold = 0; + bits = 0; + } + if (state.head) { + state.head.hcrc = state.flags >> 9 & 1; + state.head.done = true; + } + strm.adler = state.check = 0; + state.mode = TYPE; + break; + case DICTID: + while (bits < 32) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + strm.adler = state.check = zswap32(hold); + hold = 0; + bits = 0; + state.mode = DICT; + case DICT: + if (state.havedict === 0) { + strm.next_out = put; + strm.avail_out = left; + strm.next_in = next2; + strm.avail_in = have; + state.hold = hold; + state.bits = bits; + return Z_NEED_DICT; + } + strm.adler = state.check = 1; + state.mode = TYPE; + case TYPE: + if (flush === Z_BLOCK || flush === Z_TREES) { + break inf_leave; + } + case TYPEDO: + if (state.last) { + hold >>>= bits & 7; + bits -= bits & 7; + state.mode = CHECK; + break; + } + while (bits < 3) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + state.last = hold & 1; + hold >>>= 1; + bits -= 1; + switch (hold & 3) { + case 0: + state.mode = STORED; + break; + case 1: + fixedtables(state); + state.mode = LEN_; + if (flush === Z_TREES) { + hold >>>= 2; + bits -= 2; + break inf_leave; + } + break; + case 2: + state.mode = TABLE; + break; + case 3: + strm.msg = "invalid block type"; + state.mode = BAD; + } + hold >>>= 2; + bits -= 2; + break; + case STORED: + hold >>>= bits & 7; + bits -= bits & 7; + while (bits < 32) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + if ((hold & 65535) !== (hold >>> 16 ^ 65535)) { + strm.msg = "invalid stored block lengths"; + state.mode = BAD; + break; + } + state.length = hold & 65535; + hold = 0; + bits = 0; + state.mode = COPY_; + if (flush === Z_TREES) { + break inf_leave; + } + case COPY_: + state.mode = COPY; + case COPY: + copy = state.length; + if (copy) { + if (copy > have) { + copy = have; + } + if (copy > left) { + copy = left; + } + if (copy === 0) { + break inf_leave; + } + utils.arraySet(output, input, next2, copy, put); + have -= copy; + next2 += copy; + left -= copy; + put += copy; + state.length -= copy; + break; + } + state.mode = TYPE; + break; + case TABLE: + while (bits < 14) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + state.nlen = (hold & 31) + 257; + hold >>>= 5; + bits -= 5; + state.ndist = (hold & 31) + 1; + hold >>>= 5; + bits -= 5; + state.ncode = (hold & 15) + 4; + hold >>>= 4; + bits -= 4; + if (state.nlen > 286 || state.ndist > 30) { + strm.msg = "too many length or distance symbols"; + state.mode = BAD; + break; + } + state.have = 0; + state.mode = LENLENS; + case LENLENS: + while (state.have < state.ncode) { + while (bits < 3) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + state.lens[order[state.have++]] = hold & 7; + hold >>>= 3; + bits -= 3; + } + while (state.have < 19) { + state.lens[order[state.have++]] = 0; + } + state.lencode = state.lendyn; + state.lenbits = 7; + opts = { bits: state.lenbits }; + ret = inflate_table(CODES, state.lens, 0, 19, state.lencode, 0, state.work, opts); + state.lenbits = opts.bits; + if (ret) { + strm.msg = "invalid code lengths set"; + state.mode = BAD; + break; + } + state.have = 0; + state.mode = CODELENS; + case CODELENS: + while (state.have < state.nlen + state.ndist) { + for (; ; ) { + here = state.lencode[hold & (1 << state.lenbits) - 1]; + here_bits = here >>> 24; + here_op = here >>> 16 & 255; + here_val = here & 65535; + if (here_bits <= bits) { + break; + } + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + if (here_val < 16) { + hold >>>= here_bits; + bits -= here_bits; + state.lens[state.have++] = here_val; + } else { + if (here_val === 16) { + n = here_bits + 2; + while (bits < n) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + hold >>>= here_bits; + bits -= here_bits; + if (state.have === 0) { + strm.msg = "invalid bit length repeat"; + state.mode = BAD; + break; + } + len = state.lens[state.have - 1]; + copy = 3 + (hold & 3); + hold >>>= 2; + bits -= 2; + } else if (here_val === 17) { + n = here_bits + 3; + while (bits < n) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + hold >>>= here_bits; + bits -= here_bits; + len = 0; + copy = 3 + (hold & 7); + hold >>>= 3; + bits -= 3; + } else { + n = here_bits + 7; + while (bits < n) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + hold >>>= here_bits; + bits -= here_bits; + len = 0; + copy = 11 + (hold & 127); + hold >>>= 7; + bits -= 7; + } + if (state.have + copy > state.nlen + state.ndist) { + strm.msg = "invalid bit length repeat"; + state.mode = BAD; + break; + } + while (copy--) { + state.lens[state.have++] = len; + } + } + } + if (state.mode === BAD) { + break; + } + if (state.lens[256] === 0) { + strm.msg = "invalid code -- missing end-of-block"; + state.mode = BAD; + break; + } + state.lenbits = 9; + opts = { bits: state.lenbits }; + ret = inflate_table(LENS, state.lens, 0, state.nlen, state.lencode, 0, state.work, opts); + state.lenbits = opts.bits; + if (ret) { + strm.msg = "invalid literal/lengths set"; + state.mode = BAD; + break; + } + state.distbits = 6; + state.distcode = state.distdyn; + opts = { bits: state.distbits }; + ret = inflate_table(DISTS, state.lens, state.nlen, state.ndist, state.distcode, 0, state.work, opts); + state.distbits = opts.bits; + if (ret) { + strm.msg = "invalid distances set"; + state.mode = BAD; + break; + } + state.mode = LEN_; + if (flush === Z_TREES) { + break inf_leave; + } + case LEN_: + state.mode = LEN; + case LEN: + if (have >= 6 && left >= 258) { + strm.next_out = put; + strm.avail_out = left; + strm.next_in = next2; + strm.avail_in = have; + state.hold = hold; + state.bits = bits; + inflate_fast(strm, _out); + put = strm.next_out; + output = strm.output; + left = strm.avail_out; + next2 = strm.next_in; + input = strm.input; + have = strm.avail_in; + hold = state.hold; + bits = state.bits; + if (state.mode === TYPE) { + state.back = -1; + } + break; + } + state.back = 0; + for (; ; ) { + here = state.lencode[hold & (1 << state.lenbits) - 1]; + here_bits = here >>> 24; + here_op = here >>> 16 & 255; + here_val = here & 65535; + if (here_bits <= bits) { + break; + } + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + if (here_op && (here_op & 240) === 0) { + last_bits = here_bits; + last_op = here_op; + last_val = here_val; + for (; ; ) { + here = state.lencode[last_val + ((hold & (1 << last_bits + last_op) - 1) >> last_bits)]; + here_bits = here >>> 24; + here_op = here >>> 16 & 255; + here_val = here & 65535; + if (last_bits + here_bits <= bits) { + break; + } + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + hold >>>= last_bits; + bits -= last_bits; + state.back += last_bits; + } + hold >>>= here_bits; + bits -= here_bits; + state.back += here_bits; + state.length = here_val; + if (here_op === 0) { + state.mode = LIT; + break; + } + if (here_op & 32) { + state.back = -1; + state.mode = TYPE; + break; + } + if (here_op & 64) { + strm.msg = "invalid literal/length code"; + state.mode = BAD; + break; + } + state.extra = here_op & 15; + state.mode = LENEXT; + case LENEXT: + if (state.extra) { + n = state.extra; + while (bits < n) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + state.length += hold & (1 << state.extra) - 1; + hold >>>= state.extra; + bits -= state.extra; + state.back += state.extra; + } + state.was = state.length; + state.mode = DIST; + case DIST: + for (; ; ) { + here = state.distcode[hold & (1 << state.distbits) - 1]; + here_bits = here >>> 24; + here_op = here >>> 16 & 255; + here_val = here & 65535; + if (here_bits <= bits) { + break; + } + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + if ((here_op & 240) === 0) { + last_bits = here_bits; + last_op = here_op; + last_val = here_val; + for (; ; ) { + here = state.distcode[last_val + ((hold & (1 << last_bits + last_op) - 1) >> last_bits)]; + here_bits = here >>> 24; + here_op = here >>> 16 & 255; + here_val = here & 65535; + if (last_bits + here_bits <= bits) { + break; + } + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + hold >>>= last_bits; + bits -= last_bits; + state.back += last_bits; + } + hold >>>= here_bits; + bits -= here_bits; + state.back += here_bits; + if (here_op & 64) { + strm.msg = "invalid distance code"; + state.mode = BAD; + break; + } + state.offset = here_val; + state.extra = here_op & 15; + state.mode = DISTEXT; + case DISTEXT: + if (state.extra) { + n = state.extra; + while (bits < n) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + state.offset += hold & (1 << state.extra) - 1; + hold >>>= state.extra; + bits -= state.extra; + state.back += state.extra; + } + if (state.offset > state.dmax) { + strm.msg = "invalid distance too far back"; + state.mode = BAD; + break; + } + state.mode = MATCH; + case MATCH: + if (left === 0) { + break inf_leave; + } + copy = _out - left; + if (state.offset > copy) { + copy = state.offset - copy; + if (copy > state.whave) { + if (state.sane) { + strm.msg = "invalid distance too far back"; + state.mode = BAD; + break; + } + } + if (copy > state.wnext) { + copy -= state.wnext; + from = state.wsize - copy; + } else { + from = state.wnext - copy; + } + if (copy > state.length) { + copy = state.length; + } + from_source = state.window; + } else { + from_source = output; + from = put - state.offset; + copy = state.length; + } + if (copy > left) { + copy = left; + } + left -= copy; + state.length -= copy; + do { + output[put++] = from_source[from++]; + } while (--copy); + if (state.length === 0) { + state.mode = LEN; + } + break; + case LIT: + if (left === 0) { + break inf_leave; + } + output[put++] = state.length; + left--; + state.mode = LEN; + break; + case CHECK: + if (state.wrap) { + while (bits < 32) { + if (have === 0) { + break inf_leave; + } + have--; + hold |= input[next2++] << bits; + bits += 8; + } + _out -= left; + strm.total_out += _out; + state.total += _out; + if (_out) { + strm.adler = state.check = state.flags ? crc32(state.check, output, _out, put - _out) : adler32(state.check, output, _out, put - _out); + } + _out = left; + if ((state.flags ? hold : zswap32(hold)) !== state.check) { + strm.msg = "incorrect data check"; + state.mode = BAD; + break; + } + hold = 0; + bits = 0; + } + state.mode = LENGTH; + case LENGTH: + if (state.wrap && state.flags) { + while (bits < 32) { + if (have === 0) { + break inf_leave; + } + have--; + hold += input[next2++] << bits; + bits += 8; + } + if (hold !== (state.total & 4294967295)) { + strm.msg = "incorrect length check"; + state.mode = BAD; + break; + } + hold = 0; + bits = 0; + } + state.mode = DONE; + case DONE: + ret = Z_STREAM_END; + break inf_leave; + case BAD: + ret = Z_DATA_ERROR; + break inf_leave; + case MEM: + return Z_MEM_ERROR; + case SYNC: + default: + return Z_STREAM_ERROR; + } + } + strm.next_out = put; + strm.avail_out = left; + strm.next_in = next2; + strm.avail_in = have; + state.hold = hold; + state.bits = bits; + if (state.wsize || _out !== strm.avail_out && state.mode < BAD && (state.mode < CHECK || flush !== Z_FINISH)) { + if (updatewindow(strm, strm.output, strm.next_out, _out - strm.avail_out)) { + state.mode = MEM; + return Z_MEM_ERROR; + } + } + _in -= strm.avail_in; + _out -= strm.avail_out; + strm.total_in += _in; + strm.total_out += _out; + state.total += _out; + if (state.wrap && _out) { + strm.adler = state.check = state.flags ? crc32(state.check, output, _out, strm.next_out - _out) : adler32(state.check, output, _out, strm.next_out - _out); + } + strm.data_type = state.bits + (state.last ? 64 : 0) + (state.mode === TYPE ? 128 : 0) + (state.mode === LEN_ || state.mode === COPY_ ? 256 : 0); + if ((_in === 0 && _out === 0 || flush === Z_FINISH) && ret === Z_OK) { + ret = Z_BUF_ERROR; + } + return ret; + } + function inflateEnd(strm) { + if (!strm || !strm.state) { + return Z_STREAM_ERROR; + } + var state = strm.state; + if (state.window) { + state.window = null; + } + strm.state = null; + return Z_OK; + } + function inflateGetHeader(strm, head) { + var state; + if (!strm || !strm.state) { + return Z_STREAM_ERROR; + } + state = strm.state; + if ((state.wrap & 2) === 0) { + return Z_STREAM_ERROR; + } + state.head = head; + head.done = false; + return Z_OK; + } + function inflateSetDictionary(strm, dictionary) { + var dictLength = dictionary.length; + var state; + var dictid; + var ret; + if (!strm || !strm.state) { + return Z_STREAM_ERROR; + } + state = strm.state; + if (state.wrap !== 0 && state.mode !== DICT) { + return Z_STREAM_ERROR; + } + if (state.mode === DICT) { + dictid = 1; + dictid = adler32(dictid, dictionary, dictLength, 0); + if (dictid !== state.check) { + return Z_DATA_ERROR; + } + } + ret = updatewindow(strm, dictionary, dictLength, dictLength); + if (ret) { + state.mode = MEM; + return Z_MEM_ERROR; + } + state.havedict = 1; + return Z_OK; + } + exports3.inflateReset = inflateReset; + exports3.inflateReset2 = inflateReset2; + exports3.inflateResetKeep = inflateResetKeep; + exports3.inflateInit = inflateInit; + exports3.inflateInit2 = inflateInit2; + exports3.inflate = inflate; + exports3.inflateEnd = inflateEnd; + exports3.inflateGetHeader = inflateGetHeader; + exports3.inflateSetDictionary = inflateSetDictionary; + exports3.inflateInfo = "pako inflate (from Nodeca project)"; + }, { "../utils/common": 5, "./adler32": 7, "./crc32": 9, "./inffast": 11, "./inftrees": 13 }], 13: [function(require2, module4, exports3) { + "use strict"; + var utils = require2("../utils/common"); + var MAXBITS = 15; + var ENOUGH_LENS = 852; + var ENOUGH_DISTS = 592; + var CODES = 0; + var LENS = 1; + var DISTS = 2; + var lbase = [ + 3, + 4, + 5, + 6, + 7, + 8, + 9, + 10, + 11, + 13, + 15, + 17, + 19, + 23, + 27, + 31, + 35, + 43, + 51, + 59, + 67, + 83, + 99, + 115, + 131, + 163, + 195, + 227, + 258, + 0, + 0 + ]; + var lext = [ + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 16, + 17, + 17, + 17, + 17, + 18, + 18, + 18, + 18, + 19, + 19, + 19, + 19, + 20, + 20, + 20, + 20, + 21, + 21, + 21, + 21, + 16, + 72, + 78 + ]; + var dbase = [ + 1, + 2, + 3, + 4, + 5, + 7, + 9, + 13, + 17, + 25, + 33, + 49, + 65, + 97, + 129, + 193, + 257, + 385, + 513, + 769, + 1025, + 1537, + 2049, + 3073, + 4097, + 6145, + 8193, + 12289, + 16385, + 24577, + 0, + 0 + ]; + var dext = [ + 16, + 16, + 16, + 16, + 17, + 17, + 18, + 18, + 19, + 19, + 20, + 20, + 21, + 21, + 22, + 22, + 23, + 23, + 24, + 24, + 25, + 25, + 26, + 26, + 27, + 27, + 28, + 28, + 29, + 29, + 64, + 64 + ]; + module4.exports = function inflate_table(type, lens, lens_index, codes, table2, table_index, work, opts) { + var bits = opts.bits; + var len = 0; + var sym = 0; + var min = 0, max = 0; + var root3 = 0; + var curr = 0; + var drop = 0; + var left = 0; + var used = 0; + var huff = 0; + var incr; + var fill; + var low; + var mask; + var next2; + var base2 = null; + var base_index = 0; + var end2; + var count = new utils.Buf16(MAXBITS + 1); + var offs = new utils.Buf16(MAXBITS + 1); + var extra = null; + var extra_index = 0; + var here_bits, here_op, here_val; + for (len = 0; len <= MAXBITS; len++) { + count[len] = 0; + } + for (sym = 0; sym < codes; sym++) { + count[lens[lens_index + sym]]++; + } + root3 = bits; + for (max = MAXBITS; max >= 1; max--) { + if (count[max] !== 0) { + break; + } + } + if (root3 > max) { + root3 = max; + } + if (max === 0) { + table2[table_index++] = 1 << 24 | 64 << 16 | 0; + table2[table_index++] = 1 << 24 | 64 << 16 | 0; + opts.bits = 1; + return 0; + } + for (min = 1; min < max; min++) { + if (count[min] !== 0) { + break; + } + } + if (root3 < min) { + root3 = min; + } + left = 1; + for (len = 1; len <= MAXBITS; len++) { + left <<= 1; + left -= count[len]; + if (left < 0) { + return -1; + } + } + if (left > 0 && (type === CODES || max !== 1)) { + return -1; + } + offs[1] = 0; + for (len = 1; len < MAXBITS; len++) { + offs[len + 1] = offs[len] + count[len]; + } + for (sym = 0; sym < codes; sym++) { + if (lens[lens_index + sym] !== 0) { + work[offs[lens[lens_index + sym]]++] = sym; + } + } + if (type === CODES) { + base2 = extra = work; + end2 = 19; + } else if (type === LENS) { + base2 = lbase; + base_index -= 257; + extra = lext; + extra_index -= 257; + end2 = 256; + } else { + base2 = dbase; + extra = dext; + end2 = -1; + } + huff = 0; + sym = 0; + len = min; + next2 = table_index; + curr = root3; + drop = 0; + low = -1; + used = 1 << root3; + mask = used - 1; + if (type === LENS && used > ENOUGH_LENS || type === DISTS && used > ENOUGH_DISTS) { + return 1; + } + for (; ; ) { + here_bits = len - drop; + if (work[sym] < end2) { + here_op = 0; + here_val = work[sym]; + } else if (work[sym] > end2) { + here_op = extra[extra_index + work[sym]]; + here_val = base2[base_index + work[sym]]; + } else { + here_op = 32 + 64; + here_val = 0; + } + incr = 1 << len - drop; + fill = 1 << curr; + min = fill; + do { + fill -= incr; + table2[next2 + (huff >> drop) + fill] = here_bits << 24 | here_op << 16 | here_val | 0; + } while (fill !== 0); + incr = 1 << len - 1; + while (huff & incr) { + incr >>= 1; + } + if (incr !== 0) { + huff &= incr - 1; + huff += incr; + } else { + huff = 0; + } + sym++; + if (--count[len] === 0) { + if (len === max) { + break; + } + len = lens[lens_index + work[sym]]; + } + if (len > root3 && (huff & mask) !== low) { + if (drop === 0) { + drop = root3; + } + next2 += min; + curr = len - drop; + left = 1 << curr; + while (curr + drop < max) { + left -= count[curr + drop]; + if (left <= 0) { + break; + } + curr++; + left <<= 1; + } + used += 1 << curr; + if (type === LENS && used > ENOUGH_LENS || type === DISTS && used > ENOUGH_DISTS) { + return 1; + } + low = huff & mask; + table2[low] = root3 << 24 | curr << 16 | next2 - table_index | 0; + } + } + if (huff !== 0) { + table2[next2 + huff] = len - drop << 24 | 64 << 16 | 0; + } + opts.bits = root3; + return 0; + }; + }, { "../utils/common": 5 }], 14: [function(require2, module4, exports3) { + "use strict"; + module4.exports = { + 2: "need dictionary", + 1: "stream end", + 0: "", + "-1": "file error", + "-2": "stream error", + "-3": "data error", + "-4": "insufficient memory", + "-5": "buffer error", + "-6": "incompatible version" + }; + }, {}], 15: [function(require2, module4, exports3) { + "use strict"; + function ZStream() { + this.input = null; + this.next_in = 0; + this.avail_in = 0; + this.total_in = 0; + this.output = null; + this.next_out = 0; + this.avail_out = 0; + this.total_out = 0; + this.msg = ""; + this.state = null; + this.data_type = 2; + this.adler = 0; + } + module4.exports = ZStream; + }, {}] }, {}, [3])(3); + }); + } +}); + +// ../../node_modules/.pnpm/plantuml-encoder@1.4.0/node_modules/plantuml-encoder/browser-index.js +var require_browser_index = __commonJS({ + "../../node_modules/.pnpm/plantuml-encoder@1.4.0/node_modules/plantuml-encoder/browser-index.js"(exports, module2) { + module2.exports = { + encode: require_plantuml_encoder().encode, + decode: require_plantuml_decoder().decode + }; + } +}); + +// ../../node_modules/.pnpm/boolbase@1.0.0/node_modules/boolbase/index.js +var require_boolbase = __commonJS({ + "../../node_modules/.pnpm/boolbase@1.0.0/node_modules/boolbase/index.js"(exports, module2) { + module2.exports = { + trueFunc: function trueFunc2() { + return true; + }, + falseFunc: function falseFunc() { + return false; + } + }; + } +}); + +// ../../node_modules/.pnpm/katex@0.12.0/node_modules/katex/dist/katex.js +var require_katex = __commonJS({ + "../../node_modules/.pnpm/katex@0.12.0/node_modules/katex/dist/katex.js"(exports, module2) { + (function webpackUniversalModuleDefinition(root3, factory) { + if (typeof exports === "object" && typeof module2 === "object") + module2.exports = factory(); + else if (typeof define === "function" && define.amd) + define([], factory); + else if (typeof exports === "object") + exports["katex"] = factory(); + else + root3["katex"] = factory(); + })(typeof self !== "undefined" ? self : exports, function() { + return function(modules) { + var installedModules = {}; + function __webpack_require__(moduleId) { + if (installedModules[moduleId]) { + return installedModules[moduleId].exports; + } + var module3 = installedModules[moduleId] = { + i: moduleId, + l: false, + exports: {} + }; + modules[moduleId].call(module3.exports, module3, module3.exports, __webpack_require__); + module3.l = true; + return module3.exports; + } + __webpack_require__.m = modules; + __webpack_require__.c = installedModules; + __webpack_require__.d = function(exports2, name2, getter) { + if (!__webpack_require__.o(exports2, name2)) { + Object.defineProperty(exports2, name2, { enumerable: true, get: getter }); + } + }; + __webpack_require__.r = function(exports2) { + if (typeof Symbol !== "undefined" && Symbol.toStringTag) { + Object.defineProperty(exports2, Symbol.toStringTag, { value: "Module" }); + } + Object.defineProperty(exports2, "__esModule", { value: true }); + }; + __webpack_require__.t = function(value, mode) { + if (mode & 1) + value = __webpack_require__(value); + if (mode & 8) + return value; + if (mode & 4 && typeof value === "object" && value && value.__esModule) + return value; + var ns = /* @__PURE__ */ Object.create(null); + __webpack_require__.r(ns); + Object.defineProperty(ns, "default", { enumerable: true, value }); + if (mode & 2 && typeof value != "string") + for (var key in value) + __webpack_require__.d(ns, key, function(key2) { + return value[key2]; + }.bind(null, key)); + return ns; + }; + __webpack_require__.n = function(module3) { + var getter = module3 && module3.__esModule ? function getDefault() { + return module3["default"]; + } : function getModuleExports() { + return module3; + }; + __webpack_require__.d(getter, "a", getter); + return getter; + }; + __webpack_require__.o = function(object, property) { + return Object.prototype.hasOwnProperty.call(object, property); + }; + __webpack_require__.p = ""; + return __webpack_require__(__webpack_require__.s = 1); + }([ + function(module3, exports2, __webpack_require__) { + }, + function(module3, __webpack_exports__, __webpack_require__) { + "use strict"; + __webpack_require__.r(__webpack_exports__); + var katex = __webpack_require__(0); + var SourceLocation = /* @__PURE__ */ function() { + function SourceLocation2(lexer, start, end2) { + this.lexer = void 0; + this.start = void 0; + this.end = void 0; + this.lexer = lexer; + this.start = start; + this.end = end2; + } + SourceLocation2.range = function range(first2, second) { + if (!second) { + return first2 && first2.loc; + } else if (!first2 || !first2.loc || !second.loc || first2.loc.lexer !== second.loc.lexer) { + return null; + } else { + return new SourceLocation2(first2.loc.lexer, first2.loc.start, second.loc.end); + } + }; + return SourceLocation2; + }(); + var Token_Token = /* @__PURE__ */ function() { + function Token2(text4, loc) { + this.text = void 0; + this.loc = void 0; + this.noexpand = void 0; + this.treatAsRelax = void 0; + this.text = text4; + this.loc = loc; + } + var _proto = Token2.prototype; + _proto.range = function range(endToken, text4) { + return new Token2(text4, SourceLocation.range(this, endToken)); + }; + return Token2; + }(); + var ParseError = function ParseError2(message, token) { + this.position = void 0; + var error2 = "KaTeX parse error: " + message; + var start; + var loc = token && token.loc; + if (loc && loc.start <= loc.end) { + var input = loc.lexer.input; + start = loc.start; + var end2 = loc.end; + if (start === input.length) { + error2 += " at end of input: "; + } else { + error2 += " at position " + (start + 1) + ": "; + } + var underlined = input.slice(start, end2).replace(/[^]/g, "$&\u0332"); + var left; + if (start > 15) { + left = "\u2026" + input.slice(start - 15, start); + } else { + left = input.slice(0, start); + } + var right; + if (end2 + 15 < input.length) { + right = input.slice(end2, end2 + 15) + "\u2026"; + } else { + right = input.slice(end2); + } + error2 += left + underlined + right; + } + var self2 = new Error(error2); + self2.name = "ParseError"; + self2.__proto__ = ParseError2.prototype; + self2.position = start; + return self2; + }; + ParseError.prototype.__proto__ = Error.prototype; + var src_ParseError = ParseError; + var contains3 = function contains4(list2, elem) { + return list2.indexOf(elem) !== -1; + }; + var deflt = function deflt2(setting, defaultIfUndefined) { + return setting === void 0 ? defaultIfUndefined : setting; + }; + var uppercase = /([A-Z])/g; + var hyphenate = function hyphenate2(str) { + return str.replace(uppercase, "-$1").toLowerCase(); + }; + var ESCAPE_LOOKUP = { + "&": "&", + ">": ">", + "<": "<", + '"': """, + "'": "'" + }; + var ESCAPE_REGEX = /[&><"']/g; + function utils_escape(text4) { + return String(text4).replace(ESCAPE_REGEX, function(match2) { + return ESCAPE_LOOKUP[match2]; + }); + } + var getBaseElem = function getBaseElem2(group) { + if (group.type === "ordgroup") { + if (group.body.length === 1) { + return getBaseElem2(group.body[0]); + } else { + return group; + } + } else if (group.type === "color") { + if (group.body.length === 1) { + return getBaseElem2(group.body[0]); + } else { + return group; + } + } else if (group.type === "font") { + return getBaseElem2(group.body); + } else { + return group; + } + }; + var utils_isCharacterBox = function isCharacterBox(group) { + var baseElem = getBaseElem(group); + return baseElem.type === "mathord" || baseElem.type === "textord" || baseElem.type === "atom"; + }; + var assert = function assert2(value) { + if (!value) { + throw new Error("Expected non-null, but got " + String(value)); + } + return value; + }; + var protocolFromUrl = function protocolFromUrl2(url) { + var protocol = /^\s*([^\\/#]*?)(?::|�*58|�*3a)/i.exec(url); + return protocol != null ? protocol[1] : "_relative"; + }; + var utils = { + contains: contains3, + deflt, + escape: utils_escape, + hyphenate, + getBaseElem, + isCharacterBox: utils_isCharacterBox, + protocolFromUrl + }; + var Settings_Settings = /* @__PURE__ */ function() { + function Settings(options) { + this.displayMode = void 0; + this.output = void 0; + this.leqno = void 0; + this.fleqn = void 0; + this.throwOnError = void 0; + this.errorColor = void 0; + this.macros = void 0; + this.minRuleThickness = void 0; + this.colorIsTextColor = void 0; + this.strict = void 0; + this.trust = void 0; + this.maxSize = void 0; + this.maxExpand = void 0; + this.globalGroup = void 0; + options = options || {}; + this.displayMode = utils.deflt(options.displayMode, false); + this.output = utils.deflt(options.output, "htmlAndMathml"); + this.leqno = utils.deflt(options.leqno, false); + this.fleqn = utils.deflt(options.fleqn, false); + this.throwOnError = utils.deflt(options.throwOnError, true); + this.errorColor = utils.deflt(options.errorColor, "#cc0000"); + this.macros = options.macros || {}; + this.minRuleThickness = Math.max(0, utils.deflt(options.minRuleThickness, 0)); + this.colorIsTextColor = utils.deflt(options.colorIsTextColor, false); + this.strict = utils.deflt(options.strict, "warn"); + this.trust = utils.deflt(options.trust, false); + this.maxSize = Math.max(0, utils.deflt(options.maxSize, Infinity)); + this.maxExpand = Math.max(0, utils.deflt(options.maxExpand, 1e3)); + this.globalGroup = utils.deflt(options.globalGroup, false); + } + var _proto = Settings.prototype; + _proto.reportNonstrict = function reportNonstrict(errorCode, errorMsg, token) { + var strict = this.strict; + if (typeof strict === "function") { + strict = strict(errorCode, errorMsg, token); + } + if (!strict || strict === "ignore") { + return; + } else if (strict === true || strict === "error") { + throw new src_ParseError("LaTeX-incompatible input and strict mode is set to 'error': " + (errorMsg + " [" + errorCode + "]"), token); + } else if (strict === "warn") { + typeof console !== "undefined" && console.warn("LaTeX-incompatible input and strict mode is set to 'warn': " + (errorMsg + " [" + errorCode + "]")); + } else { + typeof console !== "undefined" && console.warn("LaTeX-incompatible input and strict mode is set to " + ("unrecognized '" + strict + "': " + errorMsg + " [" + errorCode + "]")); + } + }; + _proto.useStrictBehavior = function useStrictBehavior(errorCode, errorMsg, token) { + var strict = this.strict; + if (typeof strict === "function") { + try { + strict = strict(errorCode, errorMsg, token); + } catch (error2) { + strict = "error"; + } + } + if (!strict || strict === "ignore") { + return false; + } else if (strict === true || strict === "error") { + return true; + } else if (strict === "warn") { + typeof console !== "undefined" && console.warn("LaTeX-incompatible input and strict mode is set to 'warn': " + (errorMsg + " [" + errorCode + "]")); + return false; + } else { + typeof console !== "undefined" && console.warn("LaTeX-incompatible input and strict mode is set to " + ("unrecognized '" + strict + "': " + errorMsg + " [" + errorCode + "]")); + return false; + } + }; + _proto.isTrusted = function isTrusted(context) { + if (context.url && !context.protocol) { + context.protocol = utils.protocolFromUrl(context.url); + } + var trust = typeof this.trust === "function" ? this.trust(context) : this.trust; + return Boolean(trust); + }; + return Settings; + }(); + var Style2 = /* @__PURE__ */ function() { + function Style3(id, size, cramped) { + this.id = void 0; + this.size = void 0; + this.cramped = void 0; + this.id = id; + this.size = size; + this.cramped = cramped; + } + var _proto = Style3.prototype; + _proto.sup = function sup() { + return Style_styles[_sup[this.id]]; + }; + _proto.sub = function sub() { + return Style_styles[_sub[this.id]]; + }; + _proto.fracNum = function fracNum() { + return Style_styles[_fracNum[this.id]]; + }; + _proto.fracDen = function fracDen() { + return Style_styles[_fracDen[this.id]]; + }; + _proto.cramp = function cramp() { + return Style_styles[_cramp[this.id]]; + }; + _proto.text = function text4() { + return Style_styles[_text[this.id]]; + }; + _proto.isTight = function isTight() { + return this.size >= 2; + }; + return Style3; + }(); + var D = 0; + var Dc = 1; + var T = 2; + var Tc = 3; + var S = 4; + var Sc = 5; + var SS = 6; + var SSc = 7; + var Style_styles = [new Style2(D, 0, false), new Style2(Dc, 0, true), new Style2(T, 1, false), new Style2(Tc, 1, true), new Style2(S, 2, false), new Style2(Sc, 2, true), new Style2(SS, 3, false), new Style2(SSc, 3, true)]; + var _sup = [S, Sc, S, Sc, SS, SSc, SS, SSc]; + var _sub = [Sc, Sc, Sc, Sc, SSc, SSc, SSc, SSc]; + var _fracNum = [T, Tc, S, Sc, SS, SSc, SS, SSc]; + var _fracDen = [Tc, Tc, Sc, Sc, SSc, SSc, SSc, SSc]; + var _cramp = [Dc, Dc, Tc, Tc, Sc, Sc, SSc, SSc]; + var _text = [D, Dc, T, Tc, T, Tc, T, Tc]; + var src_Style = { + DISPLAY: Style_styles[D], + TEXT: Style_styles[T], + SCRIPT: Style_styles[S], + SCRIPTSCRIPT: Style_styles[SS] + }; + var scriptData = [{ + name: "latin", + blocks: [ + [256, 591], + [768, 879] + ] + }, { + name: "cyrillic", + blocks: [[1024, 1279]] + }, { + name: "brahmic", + blocks: [[2304, 4255]] + }, { + name: "georgian", + blocks: [[4256, 4351]] + }, { + name: "cjk", + blocks: [ + [12288, 12543], + [19968, 40879], + [65280, 65376] + ] + }, { + name: "hangul", + blocks: [[44032, 55215]] + }]; + function scriptFromCodepoint(codepoint) { + for (var i = 0; i < scriptData.length; i++) { + var script = scriptData[i]; + for (var _i = 0; _i < script.blocks.length; _i++) { + var block2 = script.blocks[_i]; + if (codepoint >= block2[0] && codepoint <= block2[1]) { + return script.name; + } + } + } + return null; + } + var allBlocks = []; + scriptData.forEach(function(s) { + return s.blocks.forEach(function(b) { + return allBlocks.push.apply(allBlocks, b); + }); + }); + function supportedCodepoint(codepoint) { + for (var i = 0; i < allBlocks.length; i += 2) { + if (codepoint >= allBlocks[i] && codepoint <= allBlocks[i + 1]) { + return true; + } + } + return false; + } + var hLinePad = 80; + var sqrtMain = function sqrtMain2(extraViniculum, hLinePad2) { + return "M95," + (622 + extraViniculum + hLinePad2) + "\nc-2.7,0,-7.17,-2.7,-13.5,-8c-5.8,-5.3,-9.5,-10,-9.5,-14\nc0,-2,0.3,-3.3,1,-4c1.3,-2.7,23.83,-20.7,67.5,-54\nc44.2,-33.3,65.8,-50.3,66.5,-51c1.3,-1.3,3,-2,5,-2c4.7,0,8.7,3.3,12,10\ns173,378,173,378c0.7,0,35.3,-71,104,-213c68.7,-142,137.5,-285,206.5,-429\nc69,-144,104.5,-217.7,106.5,-221\nl" + extraViniculum / 2.075 + " -" + extraViniculum + "\nc5.3,-9.3,12,-14,20,-14\nH400000v" + (40 + extraViniculum) + "H845.2724\ns-225.272,467,-225.272,467s-235,486,-235,486c-2.7,4.7,-9,7,-19,7\nc-6,0,-10,-1,-12,-3s-194,-422,-194,-422s-65,47,-65,47z\nM" + (834 + extraViniculum) + " " + hLinePad2 + "h400000v" + (40 + extraViniculum) + "h-400000z"; + }; + var sqrtSize1 = function sqrtSize12(extraViniculum, hLinePad2) { + return "M263," + (601 + extraViniculum + hLinePad2) + "c0.7,0,18,39.7,52,119\nc34,79.3,68.167,158.7,102.5,238c34.3,79.3,51.8,119.3,52.5,120\nc340,-704.7,510.7,-1060.3,512,-1067\nl" + extraViniculum / 2.084 + " -" + extraViniculum + "\nc4.7,-7.3,11,-11,19,-11\nH40000v" + (40 + extraViniculum) + "H1012.3\ns-271.3,567,-271.3,567c-38.7,80.7,-84,175,-136,283c-52,108,-89.167,185.3,-111.5,232\nc-22.3,46.7,-33.8,70.3,-34.5,71c-4.7,4.7,-12.3,7,-23,7s-12,-1,-12,-1\ns-109,-253,-109,-253c-72.7,-168,-109.3,-252,-110,-252c-10.7,8,-22,16.7,-34,26\nc-22,17.3,-33.3,26,-34,26s-26,-26,-26,-26s76,-59,76,-59s76,-60,76,-60z\nM" + (1001 + extraViniculum) + " " + hLinePad2 + "h400000v" + (40 + extraViniculum) + "h-400000z"; + }; + var sqrtSize2 = function sqrtSize22(extraViniculum, hLinePad2) { + return "M983 " + (10 + extraViniculum + hLinePad2) + "\nl" + extraViniculum / 3.13 + " -" + extraViniculum + "\nc4,-6.7,10,-10,18,-10 H400000v" + (40 + extraViniculum) + "\nH1013.1s-83.4,268,-264.1,840c-180.7,572,-277,876.3,-289,913c-4.7,4.7,-12.7,7,-24,7\ns-12,0,-12,0c-1.3,-3.3,-3.7,-11.7,-7,-25c-35.3,-125.3,-106.7,-373.3,-214,-744\nc-10,12,-21,25,-33,39s-32,39,-32,39c-6,-5.3,-15,-14,-27,-26s25,-30,25,-30\nc26.7,-32.7,52,-63,76,-91s52,-60,52,-60s208,722,208,722\nc56,-175.3,126.3,-397.3,211,-666c84.7,-268.7,153.8,-488.2,207.5,-658.5\nc53.7,-170.3,84.5,-266.8,92.5,-289.5z\nM" + (1001 + extraViniculum) + " " + hLinePad2 + "h400000v" + (40 + extraViniculum) + "h-400000z"; + }; + var sqrtSize3 = function sqrtSize32(extraViniculum, hLinePad2) { + return "M424," + (2398 + extraViniculum + hLinePad2) + "\nc-1.3,-0.7,-38.5,-172,-111.5,-514c-73,-342,-109.8,-513.3,-110.5,-514\nc0,-2,-10.7,14.3,-32,49c-4.7,7.3,-9.8,15.7,-15.5,25c-5.7,9.3,-9.8,16,-12.5,20\ns-5,7,-5,7c-4,-3.3,-8.3,-7.7,-13,-13s-13,-13,-13,-13s76,-122,76,-122s77,-121,77,-121\ns209,968,209,968c0,-2,84.7,-361.7,254,-1079c169.3,-717.3,254.7,-1077.7,256,-1081\nl" + extraViniculum / 4.223 + " -" + extraViniculum + "c4,-6.7,10,-10,18,-10 H400000\nv" + (40 + extraViniculum) + "H1014.6\ns-87.3,378.7,-272.6,1166c-185.3,787.3,-279.3,1182.3,-282,1185\nc-2,6,-10,9,-24,9\nc-8,0,-12,-0.7,-12,-2z M" + (1001 + extraViniculum) + " " + hLinePad2 + "\nh400000v" + (40 + extraViniculum) + "h-400000z"; + }; + var sqrtSize4 = function sqrtSize42(extraViniculum, hLinePad2) { + return "M473," + (2713 + extraViniculum + hLinePad2) + "\nc339.3,-1799.3,509.3,-2700,510,-2702 l" + extraViniculum / 5.298 + " -" + extraViniculum + "\nc3.3,-7.3,9.3,-11,18,-11 H400000v" + (40 + extraViniculum) + "H1017.7\ns-90.5,478,-276.2,1466c-185.7,988,-279.5,1483,-281.5,1485c-2,6,-10,9,-24,9\nc-8,0,-12,-0.7,-12,-2c0,-1.3,-5.3,-32,-16,-92c-50.7,-293.3,-119.7,-693.3,-207,-1200\nc0,-1.3,-5.3,8.7,-16,30c-10.7,21.3,-21.3,42.7,-32,64s-16,33,-16,33s-26,-26,-26,-26\ns76,-153,76,-153s77,-151,77,-151c0.7,0.7,35.7,202,105,604c67.3,400.7,102,602.7,104,\n606zM" + (1001 + extraViniculum) + " " + hLinePad2 + "h400000v" + (40 + extraViniculum) + "H1017.7z"; + }; + var sqrtTall = function sqrtTall2(extraViniculum, hLinePad2, viewBoxHeight) { + var vertSegment = viewBoxHeight - 54 - hLinePad2 - extraViniculum; + return "M702 " + (extraViniculum + hLinePad2) + "H400000" + (40 + extraViniculum) + "\nH742v" + vertSegment + "l-4 4-4 4c-.667.7 -2 1.5-4 2.5s-4.167 1.833-6.5 2.5-5.5 1-9.5 1\nh-12l-28-84c-16.667-52-96.667 -294.333-240-727l-212 -643 -85 170\nc-4-3.333-8.333-7.667-13 -13l-13-13l77-155 77-156c66 199.333 139 419.667\n219 661 l218 661zM702 " + hLinePad2 + "H400000v" + (40 + extraViniculum) + "H742z"; + }; + var sqrtPath = function sqrtPath2(size, extraViniculum, viewBoxHeight) { + extraViniculum = 1e3 * extraViniculum; + var path = ""; + switch (size) { + case "sqrtMain": + path = sqrtMain(extraViniculum, hLinePad); + break; + case "sqrtSize1": + path = sqrtSize1(extraViniculum, hLinePad); + break; + case "sqrtSize2": + path = sqrtSize2(extraViniculum, hLinePad); + break; + case "sqrtSize3": + path = sqrtSize3(extraViniculum, hLinePad); + break; + case "sqrtSize4": + path = sqrtSize4(extraViniculum, hLinePad); + break; + case "sqrtTall": + path = sqrtTall(extraViniculum, hLinePad, viewBoxHeight); + } + return path; + }; + var svgGeometry_path = { + leftParenInner: "M291 0 H417 V300 H291 z", + rightParenInner: "M457 0 H583 V300 H457 z", + doubleleftarrow: "M262 157\nl10-10c34-36 62.7-77 86-123 3.3-8 5-13.3 5-16 0-5.3-6.7-8-20-8-7.3\n 0-12.2.5-14.5 1.5-2.3 1-4.8 4.5-7.5 10.5-49.3 97.3-121.7 169.3-217 216-28\n 14-57.3 25-88 33-6.7 2-11 3.8-13 5.5-2 1.7-3 4.2-3 7.5s1 5.8 3 7.5\nc2 1.7 6.3 3.5 13 5.5 68 17.3 128.2 47.8 180.5 91.5 52.3 43.7 93.8 96.2 124.5\n 157.5 9.3 8 15.3 12.3 18 13h6c12-.7 18-4 18-10 0-2-1.7-7-5-15-23.3-46-52-87\n-86-123l-10-10h399738v-40H218c328 0 0 0 0 0l-10-8c-26.7-20-65.7-43-117-69 2.7\n-2 6-3.7 10-5 36.7-16 72.3-37.3 107-64l10-8h399782v-40z\nm8 0v40h399730v-40zm0 194v40h399730v-40z", + doublerightarrow: "M399738 392l\n-10 10c-34 36-62.7 77-86 123-3.3 8-5 13.3-5 16 0 5.3 6.7 8 20 8 7.3 0 12.2-.5\n 14.5-1.5 2.3-1 4.8-4.5 7.5-10.5 49.3-97.3 121.7-169.3 217-216 28-14 57.3-25 88\n-33 6.7-2 11-3.8 13-5.5 2-1.7 3-4.2 3-7.5s-1-5.8-3-7.5c-2-1.7-6.3-3.5-13-5.5-68\n-17.3-128.2-47.8-180.5-91.5-52.3-43.7-93.8-96.2-124.5-157.5-9.3-8-15.3-12.3-18\n-13h-6c-12 .7-18 4-18 10 0 2 1.7 7 5 15 23.3 46 52 87 86 123l10 10H0v40h399782\nc-328 0 0 0 0 0l10 8c26.7 20 65.7 43 117 69-2.7 2-6 3.7-10 5-36.7 16-72.3 37.3\n-107 64l-10 8H0v40zM0 157v40h399730v-40zm0 194v40h399730v-40z", + leftarrow: "M400000 241H110l3-3c68.7-52.7 113.7-120\n 135-202 4-14.7 6-23 6-25 0-7.3-7-11-21-11-8 0-13.2.8-15.5 2.5-2.3 1.7-4.2 5.8\n-5.5 12.5-1.3 4.7-2.7 10.3-4 17-12 48.7-34.8 92-68.5 130S65.3 228.3 18 247\nc-10 4-16 7.7-18 11 0 8.7 6 14.3 18 17 47.3 18.7 87.8 47 121.5 85S196 441.3 208\n 490c.7 2 1.3 5 2 9s1.2 6.7 1.5 8c.3 1.3 1 3.3 2 6s2.2 4.5 3.5 5.5c1.3 1 3.3\n 1.8 6 2.5s6 1 10 1c14 0 21-3.7 21-11 0-2-2-10.3-6-25-20-79.3-65-146.7-135-202\n l-3-3h399890zM100 241v40h399900v-40z", + leftbrace: "M6 548l-6-6v-35l6-11c56-104 135.3-181.3 238-232 57.3-28.7 117\n-45 179-50h399577v120H403c-43.3 7-81 15-113 26-100.7 33-179.7 91-237 174-2.7\n 5-6 9-10 13-.7 1-7.3 1-20 1H6z", + leftbraceunder: "M0 6l6-6h17c12.688 0 19.313.3 20 1 4 4 7.313 8.3 10 13\n 35.313 51.3 80.813 93.8 136.5 127.5 55.688 33.7 117.188 55.8 184.5 66.5.688\n 0 2 .3 4 1 18.688 2.7 76 4.3 172 5h399450v120H429l-6-1c-124.688-8-235-61.7\n-331-161C60.687 138.7 32.312 99.3 7 54L0 41V6z", + leftgroup: "M400000 80\nH435C64 80 168.3 229.4 21 260c-5.9 1.2-18 0-18 0-2 0-3-1-3-3v-38C76 61 257 0\n 435 0h399565z", + leftgroupunder: "M400000 262\nH435C64 262 168.3 112.6 21 82c-5.9-1.2-18 0-18 0-2 0-3 1-3 3v38c76 158 257 219\n 435 219h399565z", + leftharpoon: "M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3\n-3.3 10.2-9.5 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5\n-18.3 3-21-1.3-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7\n-196 228-6.7 4.7-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40z", + leftharpoonplus: "M0 267c.7 5.3 3 10 7 14h399993v-40H93c3.3-3.3 10.2-9.5\n 20.5-18.5s17.8-15.8 22.5-20.5c50.7-52 88-110.3 112-175 4-11.3 5-18.3 3-21-1.3\n-4-7.3-6-18-6-8 0-13 .7-15 2s-4.7 6.7-8 16c-42 98.7-107.3 174.7-196 228-6.7 4.7\n-10.7 8-12 10-1.3 2-2 5.7-2 11zm100-26v40h399900v-40zM0 435v40h400000v-40z\nm0 0v40h400000v-40z", + leftharpoondown: "M7 241c-4 4-6.333 8.667-7 14 0 5.333.667 9 2 11s5.333\n 5.333 12 10c90.667 54 156 130 196 228 3.333 10.667 6.333 16.333 9 17 2 .667 5\n 1 9 1h5c10.667 0 16.667-2 18-6 2-2.667 1-9.667-3-21-32-87.333-82.667-157.667\n-152-211l-3-3h399907v-40zM93 281 H400000 v-40L7 241z", + leftharpoondownplus: "M7 435c-4 4-6.3 8.7-7 14 0 5.3.7 9 2 11s5.3 5.3 12\n 10c90.7 54 156 130 196 228 3.3 10.7 6.3 16.3 9 17 2 .7 5 1 9 1h5c10.7 0 16.7\n-2 18-6 2-2.7 1-9.7-3-21-32-87.3-82.7-157.7-152-211l-3-3h399907v-40H7zm93 0\nv40h399900v-40zM0 241v40h399900v-40zm0 0v40h399900v-40z", + lefthook: "M400000 281 H103s-33-11.2-61-33.5S0 197.3 0 164s14.2-61.2 42.5\n-83.5C70.8 58.2 104 47 142 47 c16.7 0 25 6.7 25 20 0 12-8.7 18.7-26 20-40 3.3\n-68.7 15.7-86 37-10 12-15 25.3-15 40 0 22.7 9.8 40.7 29.5 54 19.7 13.3 43.5 21\n 71.5 23h399859zM103 281v-40h399897v40z", + leftlinesegment: "M40 281 V428 H0 V94 H40 V241 H400000 v40z\nM40 281 V428 H0 V94 H40 V241 H400000 v40z", + leftmapsto: "M40 281 V448H0V74H40V241H400000v40z\nM40 281 V448H0V74H40V241H400000v40z", + leftToFrom: "M0 147h400000v40H0zm0 214c68 40 115.7 95.7 143 167h22c15.3 0 23\n-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69-70-101l-7-8h399905v-40H95l7-8\nc28.7-32 52-65.7 70-101 10.7-23.3 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 265.3\n 68 321 0 361zm0-174v-40h399900v40zm100 154v40h399900v-40z", + longequal: "M0 50 h400000 v40H0z m0 194h40000v40H0z\nM0 50 h400000 v40H0z m0 194h40000v40H0z", + midbrace: "M200428 334\nc-100.7-8.3-195.3-44-280-108-55.3-42-101.7-93-139-153l-9-14c-2.7 4-5.7 8.7-9 14\n-53.3 86.7-123.7 153-211 199-66.7 36-137.3 56.3-212 62H0V214h199568c178.3-11.7\n 311.7-78.3 403-201 6-8 9.7-12 11-12 .7-.7 6.7-1 18-1s17.3.3 18 1c1.3 0 5 4 11\n 12 44.7 59.3 101.3 106.3 170 141s145.3 54.3 229 60h199572v120z", + midbraceunder: "M199572 214\nc100.7 8.3 195.3 44 280 108 55.3 42 101.7 93 139 153l9 14c2.7-4 5.7-8.7 9-14\n 53.3-86.7 123.7-153 211-199 66.7-36 137.3-56.3 212-62h199568v120H200432c-178.3\n 11.7-311.7 78.3-403 201-6 8-9.7 12-11 12-.7.7-6.7 1-18 1s-17.3-.3-18-1c-1.3 0\n-5-4-11-12-44.7-59.3-101.3-106.3-170-141s-145.3-54.3-229-60H0V214z", + oiintSize1: "M512.6 71.6c272.6 0 320.3 106.8 320.3 178.2 0 70.8-47.7 177.6\n-320.3 177.6S193.1 320.6 193.1 249.8c0-71.4 46.9-178.2 319.5-178.2z\nm368.1 178.2c0-86.4-60.9-215.4-368.1-215.4-306.4 0-367.3 129-367.3 215.4 0 85.8\n60.9 214.8 367.3 214.8 307.2 0 368.1-129 368.1-214.8z", + oiintSize2: "M757.8 100.1c384.7 0 451.1 137.6 451.1 230 0 91.3-66.4 228.8\n-451.1 228.8-386.3 0-452.7-137.5-452.7-228.8 0-92.4 66.4-230 452.7-230z\nm502.4 230c0-111.2-82.4-277.2-502.4-277.2s-504 166-504 277.2\nc0 110 84 276 504 276s502.4-166 502.4-276z", + oiiintSize1: "M681.4 71.6c408.9 0 480.5 106.8 480.5 178.2 0 70.8-71.6 177.6\n-480.5 177.6S202.1 320.6 202.1 249.8c0-71.4 70.5-178.2 479.3-178.2z\nm525.8 178.2c0-86.4-86.8-215.4-525.7-215.4-437.9 0-524.7 129-524.7 215.4 0\n85.8 86.8 214.8 524.7 214.8 438.9 0 525.7-129 525.7-214.8z", + oiiintSize2: "M1021.2 53c603.6 0 707.8 165.8 707.8 277.2 0 110-104.2 275.8\n-707.8 275.8-606 0-710.2-165.8-710.2-275.8C311 218.8 415.2 53 1021.2 53z\nm770.4 277.1c0-131.2-126.4-327.6-770.5-327.6S248.4 198.9 248.4 330.1\nc0 130 128.8 326.4 772.7 326.4s770.5-196.4 770.5-326.4z", + rightarrow: "M0 241v40h399891c-47.3 35.3-84 78-110 128\n-16.7 32-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20\n 11 8 0 13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7\n 39-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85\n-40.5-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5\n-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67\n 151.7 139 205zm0 0v40h399900v-40z", + rightbrace: "M400000 542l\n-6 6h-17c-12.7 0-19.3-.3-20-1-4-4-7.3-8.3-10-13-35.3-51.3-80.8-93.8-136.5-127.5\ns-117.2-55.8-184.5-66.5c-.7 0-2-.3-4-1-18.7-2.7-76-4.3-172-5H0V214h399571l6 1\nc124.7 8 235 61.7 331 161 31.3 33.3 59.7 72.7 85 118l7 13v35z", + rightbraceunder: "M399994 0l6 6v35l-6 11c-56 104-135.3 181.3-238 232-57.3\n 28.7-117 45-179 50H-300V214h399897c43.3-7 81-15 113-26 100.7-33 179.7-91 237\n-174 2.7-5 6-9 10-13 .7-1 7.3-1 20-1h17z", + rightgroup: "M0 80h399565c371 0 266.7 149.4 414 180 5.9 1.2 18 0 18 0 2 0\n 3-1 3-3v-38c-76-158-257-219-435-219H0z", + rightgroupunder: "M0 262h399565c371 0 266.7-149.4 414-180 5.9-1.2 18 0 18\n 0 2 0 3 1 3 3v38c-76 158-257 219-435 219H0z", + rightharpoon: "M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3\n-3.7-15.3-11-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2\n-10.7 0-16.7 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58\n 69.2 92 94.5zm0 0v40h399900v-40z", + rightharpoonplus: "M0 241v40h399993c4.7-4.7 7-9.3 7-14 0-9.3-3.7-15.3-11\n-18-92.7-56.7-159-133.7-199-231-3.3-9.3-6-14.7-8-16-2-1.3-7-2-15-2-10.7 0-16.7\n 2-18 6-2 2.7-1 9.7 3 21 15.3 42 36.7 81.8 64 119.5 27.3 37.7 58 69.2 92 94.5z\nm0 0v40h399900v-40z m100 194v40h399900v-40zm0 0v40h399900v-40z", + rightharpoondown: "M399747 511c0 7.3 6.7 11 20 11 8 0 13-.8 15-2.5s4.7-6.8\n 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3 8.5-5.8 9.5\n-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3-64.7 57-92 95\n-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 241v40h399900v-40z", + rightharpoondownplus: "M399747 705c0 7.3 6.7 11 20 11 8 0 13-.8\n 15-2.5s4.7-6.8 8-15.5c40-94 99.3-166.3 178-217 13.3-8 20.3-12.3 21-13 5.3-3.3\n 8.5-5.8 9.5-7.5 1-1.7 1.5-5.2 1.5-10.5s-2.3-10.3-7-15H0v40h399908c-34 25.3\n-64.7 57-92 95-27.3 38-48.7 77.7-64 119-3.3 8.7-5 14-5 16zM0 435v40h399900v-40z\nm0-194v40h400000v-40zm0 0v40h400000v-40z", + righthook: "M399859 241c-764 0 0 0 0 0 40-3.3 68.7-15.7 86-37 10-12 15-25.3\n 15-40 0-22.7-9.8-40.7-29.5-54-19.7-13.3-43.5-21-71.5-23-17.3-1.3-26-8-26-20 0\n-13.3 8.7-20 26-20 38 0 71 11.2 99 33.5 0 0 7 5.6 21 16.7 14 11.2 21 33.5 21\n 66.8s-14 61.2-42 83.5c-28 22.3-61 33.5-99 33.5L0 241z M0 281v-40h399859v40z", + rightlinesegment: "M399960 241 V94 h40 V428 h-40 V281 H0 v-40z\nM399960 241 V94 h40 V428 h-40 V281 H0 v-40z", + rightToFrom: "M400000 167c-70.7-42-118-97.7-142-167h-23c-15.3 0-23 .3-23\n 1 0 1.3 5.3 13.7 16 37 18 35.3 41.3 69 70 101l7 8H0v40h399905l-7 8c-28.7 32\n-52 65.7-70 101-10.7 23.3-16 35.7-16 37 0 .7 7.7 1 23 1h23c24-69.3 71.3-125 142\n-167z M100 147v40h399900v-40zM0 341v40h399900v-40z", + twoheadleftarrow: "M0 167c68 40\n 115.7 95.7 143 167h22c15.3 0 23-.3 23-1 0-1.3-5.3-13.7-16-37-18-35.3-41.3-69\n-70-101l-7-8h125l9 7c50.7 39.3 85 86 103 140h46c0-4.7-6.3-18.7-19-42-18-35.3\n-40-67.3-66-96l-9-9h399716v-40H284l9-9c26-28.7 48-60.7 66-96 12.7-23.333 19\n-37.333 19-42h-46c-18 54-52.3 100.7-103 140l-9 7H95l7-8c28.7-32 52-65.7 70-101\n 10.7-23.333 16-35.7 16-37 0-.7-7.7-1-23-1h-22C115.7 71.3 68 127 0 167z", + twoheadrightarrow: "M400000 167\nc-68-40-115.7-95.7-143-167h-22c-15.3 0-23 .3-23 1 0 1.3 5.3 13.7 16 37 18 35.3\n 41.3 69 70 101l7 8h-125l-9-7c-50.7-39.3-85-86-103-140h-46c0 4.7 6.3 18.7 19 42\n 18 35.3 40 67.3 66 96l9 9H0v40h399716l-9 9c-26 28.7-48 60.7-66 96-12.7 23.333\n-19 37.333-19 42h46c18-54 52.3-100.7 103-140l9-7h125l-7 8c-28.7 32-52 65.7-70\n 101-10.7 23.333-16 35.7-16 37 0 .7 7.7 1 23 1h22c27.3-71.3 75-127 143-167z", + tilde1: "M200 55.538c-77 0-168 73.953-177 73.953-3 0-7\n-2.175-9-5.437L2 97c-1-2-2-4-2-6 0-4 2-7 5-9l20-12C116 12 171 0 207 0c86 0\n 114 68 191 68 78 0 168-68 177-68 4 0 7 2 9 5l12 19c1 2.175 2 4.35 2 6.525 0\n 4.35-2 7.613-5 9.788l-19 13.05c-92 63.077-116.937 75.308-183 76.128\n-68.267.847-113-73.952-191-73.952z", + tilde2: "M344 55.266c-142 0-300.638 81.316-311.5 86.418\n-8.01 3.762-22.5 10.91-23.5 5.562L1 120c-1-2-1-3-1-4 0-5 3-9 8-10l18.4-9C160.9\n 31.9 283 0 358 0c148 0 188 122 331 122s314-97 326-97c4 0 8 2 10 7l7 21.114\nc1 2.14 1 3.21 1 4.28 0 5.347-3 9.626-7 10.696l-22.3 12.622C852.6 158.372 751\n 181.476 676 181.476c-149 0-189-126.21-332-126.21z", + tilde3: "M786 59C457 59 32 175.242 13 175.242c-6 0-10-3.457\n-11-10.37L.15 138c-1-7 3-12 10-13l19.2-6.4C378.4 40.7 634.3 0 804.3 0c337 0\n 411.8 157 746.8 157 328 0 754-112 773-112 5 0 10 3 11 9l1 14.075c1 8.066-.697\n 16.595-6.697 17.492l-21.052 7.31c-367.9 98.146-609.15 122.696-778.15 122.696\n -338 0-409-156.573-744-156.573z", + tilde4: "M786 58C457 58 32 177.487 13 177.487c-6 0-10-3.345\n-11-10.035L.15 143c-1-7 3-12 10-13l22-6.7C381.2 35 637.15 0 807.15 0c337 0 409\n 177 744 177 328 0 754-127 773-127 5 0 10 3 11 9l1 14.794c1 7.805-3 13.38-9\n 14.495l-20.7 5.574c-366.85 99.79-607.3 139.372-776.3 139.372-338 0-409\n -175.236-744-175.236z", + vec: "M377 20c0-5.333 1.833-10 5.5-14S391 0 397 0c4.667 0 8.667 1.667 12 5\n3.333 2.667 6.667 9 10 19 6.667 24.667 20.333 43.667 41 57 7.333 4.667 11\n10.667 11 18 0 6-1 10-3 12s-6.667 5-14 9c-28.667 14.667-53.667 35.667-75 63\n-1.333 1.333-3.167 3.5-5.5 6.5s-4 4.833-5 5.5c-1 .667-2.5 1.333-4.5 2s-4.333 1\n-7 1c-4.667 0-9.167-1.833-13.5-5.5S337 184 337 178c0-12.667 15.667-32.333 47-59\nH213l-171-1c-8.667-6-13-12.333-13-19 0-4.667 4.333-11.333 13-20h359\nc-16-25.333-24-45-24-59z", + widehat1: "M529 0h5l519 115c5 1 9 5 9 10 0 1-1 2-1 3l-4 22\nc-1 5-5 9-11 9h-2L532 67 19 159h-2c-5 0-9-4-11-9l-5-22c-1-6 2-12 8-13z", + widehat2: "M1181 0h2l1171 176c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 220h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z", + widehat3: "M1181 0h2l1171 236c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 280h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z", + widehat4: "M1181 0h2l1171 296c6 0 10 5 10 11l-2 23c-1 6-5 10\n-11 10h-1L1182 67 15 340h-1c-6 0-10-4-11-10l-2-23c-1-6 4-11 10-11z", + widecheck1: "M529,159h5l519,-115c5,-1,9,-5,9,-10c0,-1,-1,-2,-1,-3l-4,-22c-1,\n-5,-5,-9,-11,-9h-2l-512,92l-513,-92h-2c-5,0,-9,4,-11,9l-5,22c-1,6,2,12,8,13z", + widecheck2: "M1181,220h2l1171,-176c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,153l-1167,-153h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z", + widecheck3: "M1181,280h2l1171,-236c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,213l-1167,-213h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z", + widecheck4: "M1181,340h2l1171,-296c6,0,10,-5,10,-11l-2,-23c-1,-6,-5,-10,\n-11,-10h-1l-1168,273l-1167,-273h-1c-6,0,-10,4,-11,10l-2,23c-1,6,4,11,10,11z", + baraboveleftarrow: "M400000 620h-399890l3 -3c68.7 -52.7 113.7 -120 135 -202\nc4 -14.7 6 -23 6 -25c0 -7.3 -7 -11 -21 -11c-8 0 -13.2 0.8 -15.5 2.5\nc-2.3 1.7 -4.2 5.8 -5.5 12.5c-1.3 4.7 -2.7 10.3 -4 17c-12 48.7 -34.8 92 -68.5 130\ns-74.2 66.3 -121.5 85c-10 4 -16 7.7 -18 11c0 8.7 6 14.3 18 17c47.3 18.7 87.8 47\n121.5 85s56.5 81.3 68.5 130c0.7 2 1.3 5 2 9s1.2 6.7 1.5 8c0.3 1.3 1 3.3 2 6\ns2.2 4.5 3.5 5.5c1.3 1 3.3 1.8 6 2.5s6 1 10 1c14 0 21 -3.7 21 -11\nc0 -2 -2 -10.3 -6 -25c-20 -79.3 -65 -146.7 -135 -202l-3 -3h399890z\nM100 620v40h399900v-40z M0 241v40h399900v-40zM0 241v40h399900v-40z", + rightarrowabovebar: "M0 241v40h399891c-47.3 35.3-84 78-110 128-16.7 32\n-27.7 63.7-33 95 0 1.3-.2 2.7-.5 4-.3 1.3-.5 2.3-.5 3 0 7.3 6.7 11 20 11 8 0\n13.2-.8 15.5-2.5 2.3-1.7 4.2-5.5 5.5-11.5 2-13.3 5.7-27 11-41 14.7-44.7 39\n-84.5 73-119.5s73.7-60.2 119-75.5c6-2 9-5.7 9-11s-3-9-9-11c-45.3-15.3-85-40.5\n-119-75.5s-58.3-74.8-73-119.5c-4.7-14-8.3-27.3-11-40-1.3-6.7-3.2-10.8-5.5\n-12.5-2.3-1.7-7.5-2.5-15.5-2.5-14 0-21 3.7-21 11 0 2 2 10.3 6 25 20.7 83.3 67\n151.7 139 205zm96 379h399894v40H0zm0 0h399904v40H0z", + baraboveshortleftharpoon: "M507,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11\nc1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17\nc2,0.7,5,1,9,1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21\nc-32,-87.3,-82.7,-157.7,-152,-211c0,0,-3,-3,-3,-3l399351,0l0,-40\nc-398570,0,-399437,0,-399437,0z M593 435 v40 H399500 v-40z\nM0 281 v-40 H399908 v40z M0 281 v-40 H399908 v40z", + rightharpoonaboveshortbar: "M0,241 l0,40c399126,0,399993,0,399993,0\nc4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,\n-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6\nc-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z\nM0 241 v40 H399908 v-40z M0 475 v-40 H399500 v40z M0 475 v-40 H399500 v40z", + shortbaraboveleftharpoon: "M7,435c-4,4,-6.3,8.7,-7,14c0,5.3,0.7,9,2,11\nc1.3,2,5.3,5.3,12,10c90.7,54,156,130,196,228c3.3,10.7,6.3,16.3,9,17c2,0.7,5,1,9,\n1c0,0,5,0,5,0c10.7,0,16.7,-2,18,-6c2,-2.7,1,-9.7,-3,-21c-32,-87.3,-82.7,-157.7,\n-152,-211c0,0,-3,-3,-3,-3l399907,0l0,-40c-399126,0,-399993,0,-399993,0z\nM93 435 v40 H400000 v-40z M500 241 v40 H400000 v-40z M500 241 v40 H400000 v-40z", + shortrightharpoonabovebar: "M53,241l0,40c398570,0,399437,0,399437,0\nc4.7,-4.7,7,-9.3,7,-14c0,-9.3,-3.7,-15.3,-11,-18c-92.7,-56.7,-159,-133.7,-199,\n-231c-3.3,-9.3,-6,-14.7,-8,-16c-2,-1.3,-7,-2,-15,-2c-10.7,0,-16.7,2,-18,6\nc-2,2.7,-1,9.7,3,21c15.3,42,36.7,81.8,64,119.5c27.3,37.7,58,69.2,92,94.5z\nM500 241 v40 H399408 v-40z M500 435 v40 H400000 v-40z" + }; + var tree_DocumentFragment = /* @__PURE__ */ function() { + function DocumentFragment(children2) { + this.children = void 0; + this.classes = void 0; + this.height = void 0; + this.depth = void 0; + this.maxFontSize = void 0; + this.style = void 0; + this.children = children2; + this.classes = []; + this.height = 0; + this.depth = 0; + this.maxFontSize = 0; + this.style = {}; + } + var _proto = DocumentFragment.prototype; + _proto.hasClass = function hasClass2(className) { + return utils.contains(this.classes, className); + }; + _proto.toNode = function toNode() { + var frag = document.createDocumentFragment(); + for (var i = 0; i < this.children.length; i++) { + frag.appendChild(this.children[i].toNode()); + } + return frag; + }; + _proto.toMarkup = function toMarkup() { + var markup = ""; + for (var i = 0; i < this.children.length; i++) { + markup += this.children[i].toMarkup(); + } + return markup; + }; + _proto.toText = function toText() { + var toText2 = function toText3(child) { + return child.toText(); + }; + return this.children.map(toText2).join(""); + }; + return DocumentFragment; + }(); + var createClass = function createClass2(classes) { + return classes.filter(function(cls) { + return cls; + }).join(" "); + }; + var initNode = function initNode2(classes, options, style) { + this.classes = classes || []; + this.attributes = {}; + this.height = 0; + this.depth = 0; + this.maxFontSize = 0; + this.style = style || {}; + if (options) { + if (options.style.isTight()) { + this.classes.push("mtight"); + } + var color = options.getColor(); + if (color) { + this.style.color = color; + } + } + }; + var _toNode = function toNode(tagName) { + var node = document.createElement(tagName); + node.className = createClass(this.classes); + for (var style in this.style) { + if (this.style.hasOwnProperty(style)) { + node.style[style] = this.style[style]; + } + } + for (var attr2 in this.attributes) { + if (this.attributes.hasOwnProperty(attr2)) { + node.setAttribute(attr2, this.attributes[attr2]); + } + } + for (var i = 0; i < this.children.length; i++) { + node.appendChild(this.children[i].toNode()); + } + return node; + }; + var _toMarkup = function toMarkup(tagName) { + var markup = "<" + tagName; + if (this.classes.length) { + markup += ' class="' + utils.escape(createClass(this.classes)) + '"'; + } + var styles2 = ""; + for (var style in this.style) { + if (this.style.hasOwnProperty(style)) { + styles2 += utils.hyphenate(style) + ":" + this.style[style] + ";"; + } + } + if (styles2) { + markup += ' style="' + utils.escape(styles2) + '"'; + } + for (var attr2 in this.attributes) { + if (this.attributes.hasOwnProperty(attr2)) { + markup += " " + attr2 + '="' + utils.escape(this.attributes[attr2]) + '"'; + } + } + markup += ">"; + for (var i = 0; i < this.children.length; i++) { + markup += this.children[i].toMarkup(); + } + markup += ""; + return markup; + }; + var domTree_Span = /* @__PURE__ */ function() { + function Span(classes, children2, options, style) { + this.children = void 0; + this.attributes = void 0; + this.classes = void 0; + this.height = void 0; + this.depth = void 0; + this.width = void 0; + this.maxFontSize = void 0; + this.style = void 0; + initNode.call(this, classes, options, style); + this.children = children2 || []; + } + var _proto = Span.prototype; + _proto.setAttribute = function setAttribute(attribute2, value) { + this.attributes[attribute2] = value; + }; + _proto.hasClass = function hasClass2(className) { + return utils.contains(this.classes, className); + }; + _proto.toNode = function toNode() { + return _toNode.call(this, "span"); + }; + _proto.toMarkup = function toMarkup() { + return _toMarkup.call(this, "span"); + }; + return Span; + }(); + var domTree_Anchor = /* @__PURE__ */ function() { + function Anchor(href, classes, children2, options) { + this.children = void 0; + this.attributes = void 0; + this.classes = void 0; + this.height = void 0; + this.depth = void 0; + this.maxFontSize = void 0; + this.style = void 0; + initNode.call(this, classes, options); + this.children = children2 || []; + this.setAttribute("href", href); + } + var _proto2 = Anchor.prototype; + _proto2.setAttribute = function setAttribute(attribute2, value) { + this.attributes[attribute2] = value; + }; + _proto2.hasClass = function hasClass2(className) { + return utils.contains(this.classes, className); + }; + _proto2.toNode = function toNode() { + return _toNode.call(this, "a"); + }; + _proto2.toMarkup = function toMarkup() { + return _toMarkup.call(this, "a"); + }; + return Anchor; + }(); + var domTree_Img = /* @__PURE__ */ function() { + function Img(src, alt, style) { + this.src = void 0; + this.alt = void 0; + this.classes = void 0; + this.height = void 0; + this.depth = void 0; + this.maxFontSize = void 0; + this.style = void 0; + this.alt = alt; + this.src = src; + this.classes = ["mord"]; + this.style = style; + } + var _proto3 = Img.prototype; + _proto3.hasClass = function hasClass2(className) { + return utils.contains(this.classes, className); + }; + _proto3.toNode = function toNode() { + var node = document.createElement("img"); + node.src = this.src; + node.alt = this.alt; + node.className = "mord"; + for (var style in this.style) { + if (this.style.hasOwnProperty(style)) { + node.style[style] = this.style[style]; + } + } + return node; + }; + _proto3.toMarkup = function toMarkup() { + var markup = "" + this.alt + " 0) { + span = document.createElement("span"); + span.style.marginRight = this.italic + "em"; + } + if (this.classes.length > 0) { + span = span || document.createElement("span"); + span.className = createClass(this.classes); + } + for (var style in this.style) { + if (this.style.hasOwnProperty(style)) { + span = span || document.createElement("span"); + span.style[style] = this.style[style]; + } + } + if (span) { + span.appendChild(node); + return span; + } else { + return node; + } + }; + _proto4.toMarkup = function toMarkup() { + var needsSpan = false; + var markup = " 0) { + styles2 += "margin-right:" + this.italic + "em;"; + } + for (var style in this.style) { + if (this.style.hasOwnProperty(style)) { + styles2 += utils.hyphenate(style) + ":" + this.style[style] + ";"; + } + } + if (styles2) { + needsSpan = true; + markup += ' style="' + utils.escape(styles2) + '"'; + } + var escaped = utils.escape(this.text); + if (needsSpan) { + markup += ">"; + markup += escaped; + markup += ""; + return markup; + } else { + return escaped; + } + }; + return SymbolNode; + }(); + var SvgNode = /* @__PURE__ */ function() { + function SvgNode2(children2, attributes2) { + this.children = void 0; + this.attributes = void 0; + this.children = children2 || []; + this.attributes = attributes2 || {}; + } + var _proto5 = SvgNode2.prototype; + _proto5.toNode = function toNode() { + var svgNS = "http://www.w3.org/2000/svg"; + var node = document.createElementNS(svgNS, "svg"); + for (var attr2 in this.attributes) { + if (Object.prototype.hasOwnProperty.call(this.attributes, attr2)) { + node.setAttribute(attr2, this.attributes[attr2]); + } + } + for (var i = 0; i < this.children.length; i++) { + node.appendChild(this.children[i].toNode()); + } + return node; + }; + _proto5.toMarkup = function toMarkup() { + var markup = ""; + } else { + return ""; + } + }; + return PathNode; + }(); + var LineNode = /* @__PURE__ */ function() { + function LineNode2(attributes2) { + this.attributes = void 0; + this.attributes = attributes2 || {}; + } + var _proto7 = LineNode2.prototype; + _proto7.toNode = function toNode() { + var svgNS = "http://www.w3.org/2000/svg"; + var node = document.createElementNS(svgNS, "line"); + for (var attr2 in this.attributes) { + if (Object.prototype.hasOwnProperty.call(this.attributes, attr2)) { + node.setAttribute(attr2, this.attributes[attr2]); + } + } + return node; + }; + _proto7.toMarkup = function toMarkup() { + var markup = " but got " + String(group) + "."); + } + } + var fontMetricsData = { + "AMS-Regular": { + "32": [0, 0, 0, 0, 0.25], + "65": [0, 0.68889, 0, 0, 0.72222], + "66": [0, 0.68889, 0, 0, 0.66667], + "67": [0, 0.68889, 0, 0, 0.72222], + "68": [0, 0.68889, 0, 0, 0.72222], + "69": [0, 0.68889, 0, 0, 0.66667], + "70": [0, 0.68889, 0, 0, 0.61111], + "71": [0, 0.68889, 0, 0, 0.77778], + "72": [0, 0.68889, 0, 0, 0.77778], + "73": [0, 0.68889, 0, 0, 0.38889], + "74": [0.16667, 0.68889, 0, 0, 0.5], + "75": [0, 0.68889, 0, 0, 0.77778], + "76": [0, 0.68889, 0, 0, 0.66667], + "77": [0, 0.68889, 0, 0, 0.94445], + "78": [0, 0.68889, 0, 0, 0.72222], + "79": [0.16667, 0.68889, 0, 0, 0.77778], + "80": [0, 0.68889, 0, 0, 0.61111], + "81": [0.16667, 0.68889, 0, 0, 0.77778], + "82": [0, 0.68889, 0, 0, 0.72222], + "83": [0, 0.68889, 0, 0, 0.55556], + "84": [0, 0.68889, 0, 0, 0.66667], + "85": [0, 0.68889, 0, 0, 0.72222], + "86": [0, 0.68889, 0, 0, 0.72222], + "87": [0, 0.68889, 0, 0, 1], + "88": [0, 0.68889, 0, 0, 0.72222], + "89": [0, 0.68889, 0, 0, 0.72222], + "90": [0, 0.68889, 0, 0, 0.66667], + "107": [0, 0.68889, 0, 0, 0.55556], + "160": [0, 0, 0, 0, 0.25], + "165": [0, 0.675, 0.025, 0, 0.75], + "174": [0.15559, 0.69224, 0, 0, 0.94666], + "240": [0, 0.68889, 0, 0, 0.55556], + "295": [0, 0.68889, 0, 0, 0.54028], + "710": [0, 0.825, 0, 0, 2.33334], + "732": [0, 0.9, 0, 0, 2.33334], + "770": [0, 0.825, 0, 0, 2.33334], + "771": [0, 0.9, 0, 0, 2.33334], + "989": [0.08167, 0.58167, 0, 0, 0.77778], + "1008": [0, 0.43056, 0.04028, 0, 0.66667], + "8245": [0, 0.54986, 0, 0, 0.275], + "8463": [0, 0.68889, 0, 0, 0.54028], + "8487": [0, 0.68889, 0, 0, 0.72222], + "8498": [0, 0.68889, 0, 0, 0.55556], + "8502": [0, 0.68889, 0, 0, 0.66667], + "8503": [0, 0.68889, 0, 0, 0.44445], + "8504": [0, 0.68889, 0, 0, 0.66667], + "8513": [0, 0.68889, 0, 0, 0.63889], + "8592": [-0.03598, 0.46402, 0, 0, 0.5], + "8594": [-0.03598, 0.46402, 0, 0, 0.5], + "8602": [-0.13313, 0.36687, 0, 0, 1], + "8603": [-0.13313, 0.36687, 0, 0, 1], + "8606": [0.01354, 0.52239, 0, 0, 1], + "8608": [0.01354, 0.52239, 0, 0, 1], + "8610": [0.01354, 0.52239, 0, 0, 1.11111], + "8611": [0.01354, 0.52239, 0, 0, 1.11111], + "8619": [0, 0.54986, 0, 0, 1], + "8620": [0, 0.54986, 0, 0, 1], + "8621": [-0.13313, 0.37788, 0, 0, 1.38889], + "8622": [-0.13313, 0.36687, 0, 0, 1], + "8624": [0, 0.69224, 0, 0, 0.5], + "8625": [0, 0.69224, 0, 0, 0.5], + "8630": [0, 0.43056, 0, 0, 1], + "8631": [0, 0.43056, 0, 0, 1], + "8634": [0.08198, 0.58198, 0, 0, 0.77778], + "8635": [0.08198, 0.58198, 0, 0, 0.77778], + "8638": [0.19444, 0.69224, 0, 0, 0.41667], + "8639": [0.19444, 0.69224, 0, 0, 0.41667], + "8642": [0.19444, 0.69224, 0, 0, 0.41667], + "8643": [0.19444, 0.69224, 0, 0, 0.41667], + "8644": [0.1808, 0.675, 0, 0, 1], + "8646": [0.1808, 0.675, 0, 0, 1], + "8647": [0.1808, 0.675, 0, 0, 1], + "8648": [0.19444, 0.69224, 0, 0, 0.83334], + "8649": [0.1808, 0.675, 0, 0, 1], + "8650": [0.19444, 0.69224, 0, 0, 0.83334], + "8651": [0.01354, 0.52239, 0, 0, 1], + "8652": [0.01354, 0.52239, 0, 0, 1], + "8653": [-0.13313, 0.36687, 0, 0, 1], + "8654": [-0.13313, 0.36687, 0, 0, 1], + "8655": [-0.13313, 0.36687, 0, 0, 1], + "8666": [0.13667, 0.63667, 0, 0, 1], + "8667": [0.13667, 0.63667, 0, 0, 1], + "8669": [-0.13313, 0.37788, 0, 0, 1], + "8672": [-0.064, 0.437, 0, 0, 1.334], + "8674": [-0.064, 0.437, 0, 0, 1.334], + "8705": [0, 0.825, 0, 0, 0.5], + "8708": [0, 0.68889, 0, 0, 0.55556], + "8709": [0.08167, 0.58167, 0, 0, 0.77778], + "8717": [0, 0.43056, 0, 0, 0.42917], + "8722": [-0.03598, 0.46402, 0, 0, 0.5], + "8724": [0.08198, 0.69224, 0, 0, 0.77778], + "8726": [0.08167, 0.58167, 0, 0, 0.77778], + "8733": [0, 0.69224, 0, 0, 0.77778], + "8736": [0, 0.69224, 0, 0, 0.72222], + "8737": [0, 0.69224, 0, 0, 0.72222], + "8738": [0.03517, 0.52239, 0, 0, 0.72222], + "8739": [0.08167, 0.58167, 0, 0, 0.22222], + "8740": [0.25142, 0.74111, 0, 0, 0.27778], + "8741": [0.08167, 0.58167, 0, 0, 0.38889], + "8742": [0.25142, 0.74111, 0, 0, 0.5], + "8756": [0, 0.69224, 0, 0, 0.66667], + "8757": [0, 0.69224, 0, 0, 0.66667], + "8764": [-0.13313, 0.36687, 0, 0, 0.77778], + "8765": [-0.13313, 0.37788, 0, 0, 0.77778], + "8769": [-0.13313, 0.36687, 0, 0, 0.77778], + "8770": [-0.03625, 0.46375, 0, 0, 0.77778], + "8774": [0.30274, 0.79383, 0, 0, 0.77778], + "8776": [-0.01688, 0.48312, 0, 0, 0.77778], + "8778": [0.08167, 0.58167, 0, 0, 0.77778], + "8782": [0.06062, 0.54986, 0, 0, 0.77778], + "8783": [0.06062, 0.54986, 0, 0, 0.77778], + "8785": [0.08198, 0.58198, 0, 0, 0.77778], + "8786": [0.08198, 0.58198, 0, 0, 0.77778], + "8787": [0.08198, 0.58198, 0, 0, 0.77778], + "8790": [0, 0.69224, 0, 0, 0.77778], + "8791": [0.22958, 0.72958, 0, 0, 0.77778], + "8796": [0.08198, 0.91667, 0, 0, 0.77778], + "8806": [0.25583, 0.75583, 0, 0, 0.77778], + "8807": [0.25583, 0.75583, 0, 0, 0.77778], + "8808": [0.25142, 0.75726, 0, 0, 0.77778], + "8809": [0.25142, 0.75726, 0, 0, 0.77778], + "8812": [0.25583, 0.75583, 0, 0, 0.5], + "8814": [0.20576, 0.70576, 0, 0, 0.77778], + "8815": [0.20576, 0.70576, 0, 0, 0.77778], + "8816": [0.30274, 0.79383, 0, 0, 0.77778], + "8817": [0.30274, 0.79383, 0, 0, 0.77778], + "8818": [0.22958, 0.72958, 0, 0, 0.77778], + "8819": [0.22958, 0.72958, 0, 0, 0.77778], + "8822": [0.1808, 0.675, 0, 0, 0.77778], + "8823": [0.1808, 0.675, 0, 0, 0.77778], + "8828": [0.13667, 0.63667, 0, 0, 0.77778], + "8829": [0.13667, 0.63667, 0, 0, 0.77778], + "8830": [0.22958, 0.72958, 0, 0, 0.77778], + "8831": [0.22958, 0.72958, 0, 0, 0.77778], + "8832": [0.20576, 0.70576, 0, 0, 0.77778], + "8833": [0.20576, 0.70576, 0, 0, 0.77778], + "8840": [0.30274, 0.79383, 0, 0, 0.77778], + "8841": [0.30274, 0.79383, 0, 0, 0.77778], + "8842": [0.13597, 0.63597, 0, 0, 0.77778], + "8843": [0.13597, 0.63597, 0, 0, 0.77778], + "8847": [0.03517, 0.54986, 0, 0, 0.77778], + "8848": [0.03517, 0.54986, 0, 0, 0.77778], + "8858": [0.08198, 0.58198, 0, 0, 0.77778], + "8859": [0.08198, 0.58198, 0, 0, 0.77778], + "8861": [0.08198, 0.58198, 0, 0, 0.77778], + "8862": [0, 0.675, 0, 0, 0.77778], + "8863": [0, 0.675, 0, 0, 0.77778], + "8864": [0, 0.675, 0, 0, 0.77778], + "8865": [0, 0.675, 0, 0, 0.77778], + "8872": [0, 0.69224, 0, 0, 0.61111], + "8873": [0, 0.69224, 0, 0, 0.72222], + "8874": [0, 0.69224, 0, 0, 0.88889], + "8876": [0, 0.68889, 0, 0, 0.61111], + "8877": [0, 0.68889, 0, 0, 0.61111], + "8878": [0, 0.68889, 0, 0, 0.72222], + "8879": [0, 0.68889, 0, 0, 0.72222], + "8882": [0.03517, 0.54986, 0, 0, 0.77778], + "8883": [0.03517, 0.54986, 0, 0, 0.77778], + "8884": [0.13667, 0.63667, 0, 0, 0.77778], + "8885": [0.13667, 0.63667, 0, 0, 0.77778], + "8888": [0, 0.54986, 0, 0, 1.11111], + "8890": [0.19444, 0.43056, 0, 0, 0.55556], + "8891": [0.19444, 0.69224, 0, 0, 0.61111], + "8892": [0.19444, 0.69224, 0, 0, 0.61111], + "8901": [0, 0.54986, 0, 0, 0.27778], + "8903": [0.08167, 0.58167, 0, 0, 0.77778], + "8905": [0.08167, 0.58167, 0, 0, 0.77778], + "8906": [0.08167, 0.58167, 0, 0, 0.77778], + "8907": [0, 0.69224, 0, 0, 0.77778], + "8908": [0, 0.69224, 0, 0, 0.77778], + "8909": [-0.03598, 0.46402, 0, 0, 0.77778], + "8910": [0, 0.54986, 0, 0, 0.76042], + "8911": [0, 0.54986, 0, 0, 0.76042], + "8912": [0.03517, 0.54986, 0, 0, 0.77778], + "8913": [0.03517, 0.54986, 0, 0, 0.77778], + "8914": [0, 0.54986, 0, 0, 0.66667], + "8915": [0, 0.54986, 0, 0, 0.66667], + "8916": [0, 0.69224, 0, 0, 0.66667], + "8918": [0.0391, 0.5391, 0, 0, 0.77778], + "8919": [0.0391, 0.5391, 0, 0, 0.77778], + "8920": [0.03517, 0.54986, 0, 0, 1.33334], + "8921": [0.03517, 0.54986, 0, 0, 1.33334], + "8922": [0.38569, 0.88569, 0, 0, 0.77778], + "8923": [0.38569, 0.88569, 0, 0, 0.77778], + "8926": [0.13667, 0.63667, 0, 0, 0.77778], + "8927": [0.13667, 0.63667, 0, 0, 0.77778], + "8928": [0.30274, 0.79383, 0, 0, 0.77778], + "8929": [0.30274, 0.79383, 0, 0, 0.77778], + "8934": [0.23222, 0.74111, 0, 0, 0.77778], + "8935": [0.23222, 0.74111, 0, 0, 0.77778], + "8936": [0.23222, 0.74111, 0, 0, 0.77778], + "8937": [0.23222, 0.74111, 0, 0, 0.77778], + "8938": [0.20576, 0.70576, 0, 0, 0.77778], + "8939": [0.20576, 0.70576, 0, 0, 0.77778], + "8940": [0.30274, 0.79383, 0, 0, 0.77778], + "8941": [0.30274, 0.79383, 0, 0, 0.77778], + "8994": [0.19444, 0.69224, 0, 0, 0.77778], + "8995": [0.19444, 0.69224, 0, 0, 0.77778], + "9416": [0.15559, 0.69224, 0, 0, 0.90222], + "9484": [0, 0.69224, 0, 0, 0.5], + "9488": [0, 0.69224, 0, 0, 0.5], + "9492": [0, 0.37788, 0, 0, 0.5], + "9496": [0, 0.37788, 0, 0, 0.5], + "9585": [0.19444, 0.68889, 0, 0, 0.88889], + "9586": [0.19444, 0.74111, 0, 0, 0.88889], + "9632": [0, 0.675, 0, 0, 0.77778], + "9633": [0, 0.675, 0, 0, 0.77778], + "9650": [0, 0.54986, 0, 0, 0.72222], + "9651": [0, 0.54986, 0, 0, 0.72222], + "9654": [0.03517, 0.54986, 0, 0, 0.77778], + "9660": [0, 0.54986, 0, 0, 0.72222], + "9661": [0, 0.54986, 0, 0, 0.72222], + "9664": [0.03517, 0.54986, 0, 0, 0.77778], + "9674": [0.11111, 0.69224, 0, 0, 0.66667], + "9733": [0.19444, 0.69224, 0, 0, 0.94445], + "10003": [0, 0.69224, 0, 0, 0.83334], + "10016": [0, 0.69224, 0, 0, 0.83334], + "10731": [0.11111, 0.69224, 0, 0, 0.66667], + "10846": [0.19444, 0.75583, 0, 0, 0.61111], + "10877": [0.13667, 0.63667, 0, 0, 0.77778], + "10878": [0.13667, 0.63667, 0, 0, 0.77778], + "10885": [0.25583, 0.75583, 0, 0, 0.77778], + "10886": [0.25583, 0.75583, 0, 0, 0.77778], + "10887": [0.13597, 0.63597, 0, 0, 0.77778], + "10888": [0.13597, 0.63597, 0, 0, 0.77778], + "10889": [0.26167, 0.75726, 0, 0, 0.77778], + "10890": [0.26167, 0.75726, 0, 0, 0.77778], + "10891": [0.48256, 0.98256, 0, 0, 0.77778], + "10892": [0.48256, 0.98256, 0, 0, 0.77778], + "10901": [0.13667, 0.63667, 0, 0, 0.77778], + "10902": [0.13667, 0.63667, 0, 0, 0.77778], + "10933": [0.25142, 0.75726, 0, 0, 0.77778], + "10934": [0.25142, 0.75726, 0, 0, 0.77778], + "10935": [0.26167, 0.75726, 0, 0, 0.77778], + "10936": [0.26167, 0.75726, 0, 0, 0.77778], + "10937": [0.26167, 0.75726, 0, 0, 0.77778], + "10938": [0.26167, 0.75726, 0, 0, 0.77778], + "10949": [0.25583, 0.75583, 0, 0, 0.77778], + "10950": [0.25583, 0.75583, 0, 0, 0.77778], + "10955": [0.28481, 0.79383, 0, 0, 0.77778], + "10956": [0.28481, 0.79383, 0, 0, 0.77778], + "57350": [0.08167, 0.58167, 0, 0, 0.22222], + "57351": [0.08167, 0.58167, 0, 0, 0.38889], + "57352": [0.08167, 0.58167, 0, 0, 0.77778], + "57353": [0, 0.43056, 0.04028, 0, 0.66667], + "57356": [0.25142, 0.75726, 0, 0, 0.77778], + "57357": [0.25142, 0.75726, 0, 0, 0.77778], + "57358": [0.41951, 0.91951, 0, 0, 0.77778], + "57359": [0.30274, 0.79383, 0, 0, 0.77778], + "57360": [0.30274, 0.79383, 0, 0, 0.77778], + "57361": [0.41951, 0.91951, 0, 0, 0.77778], + "57366": [0.25142, 0.75726, 0, 0, 0.77778], + "57367": [0.25142, 0.75726, 0, 0, 0.77778], + "57368": [0.25142, 0.75726, 0, 0, 0.77778], + "57369": [0.25142, 0.75726, 0, 0, 0.77778], + "57370": [0.13597, 0.63597, 0, 0, 0.77778], + "57371": [0.13597, 0.63597, 0, 0, 0.77778] + }, + "Caligraphic-Regular": { + "32": [0, 0, 0, 0, 0.25], + "65": [0, 0.68333, 0, 0.19445, 0.79847], + "66": [0, 0.68333, 0.03041, 0.13889, 0.65681], + "67": [0, 0.68333, 0.05834, 0.13889, 0.52653], + "68": [0, 0.68333, 0.02778, 0.08334, 0.77139], + "69": [0, 0.68333, 0.08944, 0.11111, 0.52778], + "70": [0, 0.68333, 0.09931, 0.11111, 0.71875], + "71": [0.09722, 0.68333, 0.0593, 0.11111, 0.59487], + "72": [0, 0.68333, 965e-5, 0.11111, 0.84452], + "73": [0, 0.68333, 0.07382, 0, 0.54452], + "74": [0.09722, 0.68333, 0.18472, 0.16667, 0.67778], + "75": [0, 0.68333, 0.01445, 0.05556, 0.76195], + "76": [0, 0.68333, 0, 0.13889, 0.68972], + "77": [0, 0.68333, 0, 0.13889, 1.2009], + "78": [0, 0.68333, 0.14736, 0.08334, 0.82049], + "79": [0, 0.68333, 0.02778, 0.11111, 0.79611], + "80": [0, 0.68333, 0.08222, 0.08334, 0.69556], + "81": [0.09722, 0.68333, 0, 0.11111, 0.81667], + "82": [0, 0.68333, 0, 0.08334, 0.8475], + "83": [0, 0.68333, 0.075, 0.13889, 0.60556], + "84": [0, 0.68333, 0.25417, 0, 0.54464], + "85": [0, 0.68333, 0.09931, 0.08334, 0.62583], + "86": [0, 0.68333, 0.08222, 0, 0.61278], + "87": [0, 0.68333, 0.08222, 0.08334, 0.98778], + "88": [0, 0.68333, 0.14643, 0.13889, 0.7133], + "89": [0.09722, 0.68333, 0.08222, 0.08334, 0.66834], + "90": [0, 0.68333, 0.07944, 0.13889, 0.72473], + "160": [0, 0, 0, 0, 0.25] + }, + "Fraktur-Regular": { + "32": [0, 0, 0, 0, 0.25], + "33": [0, 0.69141, 0, 0, 0.29574], + "34": [0, 0.69141, 0, 0, 0.21471], + "38": [0, 0.69141, 0, 0, 0.73786], + "39": [0, 0.69141, 0, 0, 0.21201], + "40": [0.24982, 0.74947, 0, 0, 0.38865], + "41": [0.24982, 0.74947, 0, 0, 0.38865], + "42": [0, 0.62119, 0, 0, 0.27764], + "43": [0.08319, 0.58283, 0, 0, 0.75623], + "44": [0, 0.10803, 0, 0, 0.27764], + "45": [0.08319, 0.58283, 0, 0, 0.75623], + "46": [0, 0.10803, 0, 0, 0.27764], + "47": [0.24982, 0.74947, 0, 0, 0.50181], + "48": [0, 0.47534, 0, 0, 0.50181], + "49": [0, 0.47534, 0, 0, 0.50181], + "50": [0, 0.47534, 0, 0, 0.50181], + "51": [0.18906, 0.47534, 0, 0, 0.50181], + "52": [0.18906, 0.47534, 0, 0, 0.50181], + "53": [0.18906, 0.47534, 0, 0, 0.50181], + "54": [0, 0.69141, 0, 0, 0.50181], + "55": [0.18906, 0.47534, 0, 0, 0.50181], + "56": [0, 0.69141, 0, 0, 0.50181], + "57": [0.18906, 0.47534, 0, 0, 0.50181], + "58": [0, 0.47534, 0, 0, 0.21606], + "59": [0.12604, 0.47534, 0, 0, 0.21606], + "61": [-0.13099, 0.36866, 0, 0, 0.75623], + "63": [0, 0.69141, 0, 0, 0.36245], + "65": [0, 0.69141, 0, 0, 0.7176], + "66": [0, 0.69141, 0, 0, 0.88397], + "67": [0, 0.69141, 0, 0, 0.61254], + "68": [0, 0.69141, 0, 0, 0.83158], + "69": [0, 0.69141, 0, 0, 0.66278], + "70": [0.12604, 0.69141, 0, 0, 0.61119], + "71": [0, 0.69141, 0, 0, 0.78539], + "72": [0.06302, 0.69141, 0, 0, 0.7203], + "73": [0, 0.69141, 0, 0, 0.55448], + "74": [0.12604, 0.69141, 0, 0, 0.55231], + "75": [0, 0.69141, 0, 0, 0.66845], + "76": [0, 0.69141, 0, 0, 0.66602], + "77": [0, 0.69141, 0, 0, 1.04953], + "78": [0, 0.69141, 0, 0, 0.83212], + "79": [0, 0.69141, 0, 0, 0.82699], + "80": [0.18906, 0.69141, 0, 0, 0.82753], + "81": [0.03781, 0.69141, 0, 0, 0.82699], + "82": [0, 0.69141, 0, 0, 0.82807], + "83": [0, 0.69141, 0, 0, 0.82861], + "84": [0, 0.69141, 0, 0, 0.66899], + "85": [0, 0.69141, 0, 0, 0.64576], + "86": [0, 0.69141, 0, 0, 0.83131], + "87": [0, 0.69141, 0, 0, 1.04602], + "88": [0, 0.69141, 0, 0, 0.71922], + "89": [0.18906, 0.69141, 0, 0, 0.83293], + "90": [0.12604, 0.69141, 0, 0, 0.60201], + "91": [0.24982, 0.74947, 0, 0, 0.27764], + "93": [0.24982, 0.74947, 0, 0, 0.27764], + "94": [0, 0.69141, 0, 0, 0.49965], + "97": [0, 0.47534, 0, 0, 0.50046], + "98": [0, 0.69141, 0, 0, 0.51315], + "99": [0, 0.47534, 0, 0, 0.38946], + "100": [0, 0.62119, 0, 0, 0.49857], + "101": [0, 0.47534, 0, 0, 0.40053], + "102": [0.18906, 0.69141, 0, 0, 0.32626], + "103": [0.18906, 0.47534, 0, 0, 0.5037], + "104": [0.18906, 0.69141, 0, 0, 0.52126], + "105": [0, 0.69141, 0, 0, 0.27899], + "106": [0, 0.69141, 0, 0, 0.28088], + "107": [0, 0.69141, 0, 0, 0.38946], + "108": [0, 0.69141, 0, 0, 0.27953], + "109": [0, 0.47534, 0, 0, 0.76676], + "110": [0, 0.47534, 0, 0, 0.52666], + "111": [0, 0.47534, 0, 0, 0.48885], + "112": [0.18906, 0.52396, 0, 0, 0.50046], + "113": [0.18906, 0.47534, 0, 0, 0.48912], + "114": [0, 0.47534, 0, 0, 0.38919], + "115": [0, 0.47534, 0, 0, 0.44266], + "116": [0, 0.62119, 0, 0, 0.33301], + "117": [0, 0.47534, 0, 0, 0.5172], + "118": [0, 0.52396, 0, 0, 0.5118], + "119": [0, 0.52396, 0, 0, 0.77351], + "120": [0.18906, 0.47534, 0, 0, 0.38865], + "121": [0.18906, 0.47534, 0, 0, 0.49884], + "122": [0.18906, 0.47534, 0, 0, 0.39054], + "160": [0, 0, 0, 0, 0.25], + "8216": [0, 0.69141, 0, 0, 0.21471], + "8217": [0, 0.69141, 0, 0, 0.21471], + "58112": [0, 0.62119, 0, 0, 0.49749], + "58113": [0, 0.62119, 0, 0, 0.4983], + "58114": [0.18906, 0.69141, 0, 0, 0.33328], + "58115": [0.18906, 0.69141, 0, 0, 0.32923], + "58116": [0.18906, 0.47534, 0, 0, 0.50343], + "58117": [0, 0.69141, 0, 0, 0.33301], + "58118": [0, 0.62119, 0, 0, 0.33409], + "58119": [0, 0.47534, 0, 0, 0.50073] + }, + "Main-Bold": { + "32": [0, 0, 0, 0, 0.25], + "33": [0, 0.69444, 0, 0, 0.35], + "34": [0, 0.69444, 0, 0, 0.60278], + "35": [0.19444, 0.69444, 0, 0, 0.95833], + "36": [0.05556, 0.75, 0, 0, 0.575], + "37": [0.05556, 0.75, 0, 0, 0.95833], + "38": [0, 0.69444, 0, 0, 0.89444], + "39": [0, 0.69444, 0, 0, 0.31944], + "40": [0.25, 0.75, 0, 0, 0.44722], + "41": [0.25, 0.75, 0, 0, 0.44722], + "42": [0, 0.75, 0, 0, 0.575], + "43": [0.13333, 0.63333, 0, 0, 0.89444], + "44": [0.19444, 0.15556, 0, 0, 0.31944], + "45": [0, 0.44444, 0, 0, 0.38333], + "46": [0, 0.15556, 0, 0, 0.31944], + "47": [0.25, 0.75, 0, 0, 0.575], + "48": [0, 0.64444, 0, 0, 0.575], + "49": [0, 0.64444, 0, 0, 0.575], + "50": [0, 0.64444, 0, 0, 0.575], + "51": [0, 0.64444, 0, 0, 0.575], + "52": [0, 0.64444, 0, 0, 0.575], + "53": [0, 0.64444, 0, 0, 0.575], + "54": [0, 0.64444, 0, 0, 0.575], + "55": [0, 0.64444, 0, 0, 0.575], + "56": [0, 0.64444, 0, 0, 0.575], + "57": [0, 0.64444, 0, 0, 0.575], + "58": [0, 0.44444, 0, 0, 0.31944], + "59": [0.19444, 0.44444, 0, 0, 0.31944], + "60": [0.08556, 0.58556, 0, 0, 0.89444], + "61": [-0.10889, 0.39111, 0, 0, 0.89444], + "62": [0.08556, 0.58556, 0, 0, 0.89444], + "63": [0, 0.69444, 0, 0, 0.54305], + "64": [0, 0.69444, 0, 0, 0.89444], + "65": [0, 0.68611, 0, 0, 0.86944], + "66": [0, 0.68611, 0, 0, 0.81805], + "67": [0, 0.68611, 0, 0, 0.83055], + "68": [0, 0.68611, 0, 0, 0.88194], + "69": [0, 0.68611, 0, 0, 0.75555], + "70": [0, 0.68611, 0, 0, 0.72361], + "71": [0, 0.68611, 0, 0, 0.90416], + "72": [0, 0.68611, 0, 0, 0.9], + "73": [0, 0.68611, 0, 0, 0.43611], + "74": [0, 0.68611, 0, 0, 0.59444], + "75": [0, 0.68611, 0, 0, 0.90138], + "76": [0, 0.68611, 0, 0, 0.69166], + "77": [0, 0.68611, 0, 0, 1.09166], + "78": [0, 0.68611, 0, 0, 0.9], + "79": [0, 0.68611, 0, 0, 0.86388], + "80": [0, 0.68611, 0, 0, 0.78611], + "81": [0.19444, 0.68611, 0, 0, 0.86388], + "82": [0, 0.68611, 0, 0, 0.8625], + "83": [0, 0.68611, 0, 0, 0.63889], + "84": [0, 0.68611, 0, 0, 0.8], + "85": [0, 0.68611, 0, 0, 0.88472], + "86": [0, 0.68611, 0.01597, 0, 0.86944], + "87": [0, 0.68611, 0.01597, 0, 1.18888], + "88": [0, 0.68611, 0, 0, 0.86944], + "89": [0, 0.68611, 0.02875, 0, 0.86944], + "90": [0, 0.68611, 0, 0, 0.70277], + "91": [0.25, 0.75, 0, 0, 0.31944], + "92": [0.25, 0.75, 0, 0, 0.575], + "93": [0.25, 0.75, 0, 0, 0.31944], + "94": [0, 0.69444, 0, 0, 0.575], + "95": [0.31, 0.13444, 0.03194, 0, 0.575], + "97": [0, 0.44444, 0, 0, 0.55902], + "98": [0, 0.69444, 0, 0, 0.63889], + "99": [0, 0.44444, 0, 0, 0.51111], + "100": [0, 0.69444, 0, 0, 0.63889], + "101": [0, 0.44444, 0, 0, 0.52708], + "102": [0, 0.69444, 0.10903, 0, 0.35139], + "103": [0.19444, 0.44444, 0.01597, 0, 0.575], + "104": [0, 0.69444, 0, 0, 0.63889], + "105": [0, 0.69444, 0, 0, 0.31944], + "106": [0.19444, 0.69444, 0, 0, 0.35139], + "107": [0, 0.69444, 0, 0, 0.60694], + "108": [0, 0.69444, 0, 0, 0.31944], + "109": [0, 0.44444, 0, 0, 0.95833], + "110": [0, 0.44444, 0, 0, 0.63889], + "111": [0, 0.44444, 0, 0, 0.575], + "112": [0.19444, 0.44444, 0, 0, 0.63889], + "113": [0.19444, 0.44444, 0, 0, 0.60694], + "114": [0, 0.44444, 0, 0, 0.47361], + "115": [0, 0.44444, 0, 0, 0.45361], + "116": [0, 0.63492, 0, 0, 0.44722], + "117": [0, 0.44444, 0, 0, 0.63889], + "118": [0, 0.44444, 0.01597, 0, 0.60694], + "119": [0, 0.44444, 0.01597, 0, 0.83055], + "120": [0, 0.44444, 0, 0, 0.60694], + "121": [0.19444, 0.44444, 0.01597, 0, 0.60694], + "122": [0, 0.44444, 0, 0, 0.51111], + "123": [0.25, 0.75, 0, 0, 0.575], + "124": [0.25, 0.75, 0, 0, 0.31944], + "125": [0.25, 0.75, 0, 0, 0.575], + "126": [0.35, 0.34444, 0, 0, 0.575], + "160": [0, 0, 0, 0, 0.25], + "163": [0, 0.69444, 0, 0, 0.86853], + "168": [0, 0.69444, 0, 0, 0.575], + "172": [0, 0.44444, 0, 0, 0.76666], + "176": [0, 0.69444, 0, 0, 0.86944], + "177": [0.13333, 0.63333, 0, 0, 0.89444], + "184": [0.17014, 0, 0, 0, 0.51111], + "198": [0, 0.68611, 0, 0, 1.04166], + "215": [0.13333, 0.63333, 0, 0, 0.89444], + "216": [0.04861, 0.73472, 0, 0, 0.89444], + "223": [0, 0.69444, 0, 0, 0.59722], + "230": [0, 0.44444, 0, 0, 0.83055], + "247": [0.13333, 0.63333, 0, 0, 0.89444], + "248": [0.09722, 0.54167, 0, 0, 0.575], + "305": [0, 0.44444, 0, 0, 0.31944], + "338": [0, 0.68611, 0, 0, 1.16944], + "339": [0, 0.44444, 0, 0, 0.89444], + "567": [0.19444, 0.44444, 0, 0, 0.35139], + "710": [0, 0.69444, 0, 0, 0.575], + "711": [0, 0.63194, 0, 0, 0.575], + "713": [0, 0.59611, 0, 0, 0.575], + "714": [0, 0.69444, 0, 0, 0.575], + "715": [0, 0.69444, 0, 0, 0.575], + "728": [0, 0.69444, 0, 0, 0.575], + "729": [0, 0.69444, 0, 0, 0.31944], + "730": [0, 0.69444, 0, 0, 0.86944], + "732": [0, 0.69444, 0, 0, 0.575], + "733": [0, 0.69444, 0, 0, 0.575], + "915": [0, 0.68611, 0, 0, 0.69166], + "916": [0, 0.68611, 0, 0, 0.95833], + "920": [0, 0.68611, 0, 0, 0.89444], + "923": [0, 0.68611, 0, 0, 0.80555], + "926": [0, 0.68611, 0, 0, 0.76666], + "928": [0, 0.68611, 0, 0, 0.9], + "931": [0, 0.68611, 0, 0, 0.83055], + "933": [0, 0.68611, 0, 0, 0.89444], + "934": [0, 0.68611, 0, 0, 0.83055], + "936": [0, 0.68611, 0, 0, 0.89444], + "937": [0, 0.68611, 0, 0, 0.83055], + "8211": [0, 0.44444, 0.03194, 0, 0.575], + "8212": [0, 0.44444, 0.03194, 0, 1.14999], + "8216": [0, 0.69444, 0, 0, 0.31944], + "8217": [0, 0.69444, 0, 0, 0.31944], + "8220": [0, 0.69444, 0, 0, 0.60278], + "8221": [0, 0.69444, 0, 0, 0.60278], + "8224": [0.19444, 0.69444, 0, 0, 0.51111], + "8225": [0.19444, 0.69444, 0, 0, 0.51111], + "8242": [0, 0.55556, 0, 0, 0.34444], + "8407": [0, 0.72444, 0.15486, 0, 0.575], + "8463": [0, 0.69444, 0, 0, 0.66759], + "8465": [0, 0.69444, 0, 0, 0.83055], + "8467": [0, 0.69444, 0, 0, 0.47361], + "8472": [0.19444, 0.44444, 0, 0, 0.74027], + "8476": [0, 0.69444, 0, 0, 0.83055], + "8501": [0, 0.69444, 0, 0, 0.70277], + "8592": [-0.10889, 0.39111, 0, 0, 1.14999], + "8593": [0.19444, 0.69444, 0, 0, 0.575], + "8594": [-0.10889, 0.39111, 0, 0, 1.14999], + "8595": [0.19444, 0.69444, 0, 0, 0.575], + "8596": [-0.10889, 0.39111, 0, 0, 1.14999], + "8597": [0.25, 0.75, 0, 0, 0.575], + "8598": [0.19444, 0.69444, 0, 0, 1.14999], + "8599": [0.19444, 0.69444, 0, 0, 1.14999], + "8600": [0.19444, 0.69444, 0, 0, 1.14999], + "8601": [0.19444, 0.69444, 0, 0, 1.14999], + "8636": [-0.10889, 0.39111, 0, 0, 1.14999], + "8637": [-0.10889, 0.39111, 0, 0, 1.14999], + "8640": [-0.10889, 0.39111, 0, 0, 1.14999], + "8641": [-0.10889, 0.39111, 0, 0, 1.14999], + "8656": [-0.10889, 0.39111, 0, 0, 1.14999], + "8657": [0.19444, 0.69444, 0, 0, 0.70277], + "8658": [-0.10889, 0.39111, 0, 0, 1.14999], + "8659": [0.19444, 0.69444, 0, 0, 0.70277], + "8660": [-0.10889, 0.39111, 0, 0, 1.14999], + "8661": [0.25, 0.75, 0, 0, 0.70277], + "8704": [0, 0.69444, 0, 0, 0.63889], + "8706": [0, 0.69444, 0.06389, 0, 0.62847], + "8707": [0, 0.69444, 0, 0, 0.63889], + "8709": [0.05556, 0.75, 0, 0, 0.575], + "8711": [0, 0.68611, 0, 0, 0.95833], + "8712": [0.08556, 0.58556, 0, 0, 0.76666], + "8715": [0.08556, 0.58556, 0, 0, 0.76666], + "8722": [0.13333, 0.63333, 0, 0, 0.89444], + "8723": [0.13333, 0.63333, 0, 0, 0.89444], + "8725": [0.25, 0.75, 0, 0, 0.575], + "8726": [0.25, 0.75, 0, 0, 0.575], + "8727": [-0.02778, 0.47222, 0, 0, 0.575], + "8728": [-0.02639, 0.47361, 0, 0, 0.575], + "8729": [-0.02639, 0.47361, 0, 0, 0.575], + "8730": [0.18, 0.82, 0, 0, 0.95833], + "8733": [0, 0.44444, 0, 0, 0.89444], + "8734": [0, 0.44444, 0, 0, 1.14999], + "8736": [0, 0.69224, 0, 0, 0.72222], + "8739": [0.25, 0.75, 0, 0, 0.31944], + "8741": [0.25, 0.75, 0, 0, 0.575], + "8743": [0, 0.55556, 0, 0, 0.76666], + "8744": [0, 0.55556, 0, 0, 0.76666], + "8745": [0, 0.55556, 0, 0, 0.76666], + "8746": [0, 0.55556, 0, 0, 0.76666], + "8747": [0.19444, 0.69444, 0.12778, 0, 0.56875], + "8764": [-0.10889, 0.39111, 0, 0, 0.89444], + "8768": [0.19444, 0.69444, 0, 0, 0.31944], + "8771": [222e-5, 0.50222, 0, 0, 0.89444], + "8776": [0.02444, 0.52444, 0, 0, 0.89444], + "8781": [222e-5, 0.50222, 0, 0, 0.89444], + "8801": [222e-5, 0.50222, 0, 0, 0.89444], + "8804": [0.19667, 0.69667, 0, 0, 0.89444], + "8805": [0.19667, 0.69667, 0, 0, 0.89444], + "8810": [0.08556, 0.58556, 0, 0, 1.14999], + "8811": [0.08556, 0.58556, 0, 0, 1.14999], + "8826": [0.08556, 0.58556, 0, 0, 0.89444], + "8827": [0.08556, 0.58556, 0, 0, 0.89444], + "8834": [0.08556, 0.58556, 0, 0, 0.89444], + "8835": [0.08556, 0.58556, 0, 0, 0.89444], + "8838": [0.19667, 0.69667, 0, 0, 0.89444], + "8839": [0.19667, 0.69667, 0, 0, 0.89444], + "8846": [0, 0.55556, 0, 0, 0.76666], + "8849": [0.19667, 0.69667, 0, 0, 0.89444], + "8850": [0.19667, 0.69667, 0, 0, 0.89444], + "8851": [0, 0.55556, 0, 0, 0.76666], + "8852": [0, 0.55556, 0, 0, 0.76666], + "8853": [0.13333, 0.63333, 0, 0, 0.89444], + "8854": [0.13333, 0.63333, 0, 0, 0.89444], + "8855": [0.13333, 0.63333, 0, 0, 0.89444], + "8856": [0.13333, 0.63333, 0, 0, 0.89444], + "8857": [0.13333, 0.63333, 0, 0, 0.89444], + "8866": [0, 0.69444, 0, 0, 0.70277], + "8867": [0, 0.69444, 0, 0, 0.70277], + "8868": [0, 0.69444, 0, 0, 0.89444], + "8869": [0, 0.69444, 0, 0, 0.89444], + "8900": [-0.02639, 0.47361, 0, 0, 0.575], + "8901": [-0.02639, 0.47361, 0, 0, 0.31944], + "8902": [-0.02778, 0.47222, 0, 0, 0.575], + "8968": [0.25, 0.75, 0, 0, 0.51111], + "8969": [0.25, 0.75, 0, 0, 0.51111], + "8970": [0.25, 0.75, 0, 0, 0.51111], + "8971": [0.25, 0.75, 0, 0, 0.51111], + "8994": [-0.13889, 0.36111, 0, 0, 1.14999], + "8995": [-0.13889, 0.36111, 0, 0, 1.14999], + "9651": [0.19444, 0.69444, 0, 0, 1.02222], + "9657": [-0.02778, 0.47222, 0, 0, 0.575], + "9661": [0.19444, 0.69444, 0, 0, 1.02222], + "9667": [-0.02778, 0.47222, 0, 0, 0.575], + "9711": [0.19444, 0.69444, 0, 0, 1.14999], + "9824": [0.12963, 0.69444, 0, 0, 0.89444], + "9825": [0.12963, 0.69444, 0, 0, 0.89444], + "9826": [0.12963, 0.69444, 0, 0, 0.89444], + "9827": [0.12963, 0.69444, 0, 0, 0.89444], + "9837": [0, 0.75, 0, 0, 0.44722], + "9838": [0.19444, 0.69444, 0, 0, 0.44722], + "9839": [0.19444, 0.69444, 0, 0, 0.44722], + "10216": [0.25, 0.75, 0, 0, 0.44722], + "10217": [0.25, 0.75, 0, 0, 0.44722], + "10815": [0, 0.68611, 0, 0, 0.9], + "10927": [0.19667, 0.69667, 0, 0, 0.89444], + "10928": [0.19667, 0.69667, 0, 0, 0.89444], + "57376": [0.19444, 0.69444, 0, 0, 0] + }, + "Main-BoldItalic": { + "32": [0, 0, 0, 0, 0.25], + "33": [0, 0.69444, 0.11417, 0, 0.38611], + "34": [0, 0.69444, 0.07939, 0, 0.62055], + "35": [0.19444, 0.69444, 0.06833, 0, 0.94444], + "37": [0.05556, 0.75, 0.12861, 0, 0.94444], + "38": [0, 0.69444, 0.08528, 0, 0.88555], + "39": [0, 0.69444, 0.12945, 0, 0.35555], + "40": [0.25, 0.75, 0.15806, 0, 0.47333], + "41": [0.25, 0.75, 0.03306, 0, 0.47333], + "42": [0, 0.75, 0.14333, 0, 0.59111], + "43": [0.10333, 0.60333, 0.03306, 0, 0.88555], + "44": [0.19444, 0.14722, 0, 0, 0.35555], + "45": [0, 0.44444, 0.02611, 0, 0.41444], + "46": [0, 0.14722, 0, 0, 0.35555], + "47": [0.25, 0.75, 0.15806, 0, 0.59111], + "48": [0, 0.64444, 0.13167, 0, 0.59111], + "49": [0, 0.64444, 0.13167, 0, 0.59111], + "50": [0, 0.64444, 0.13167, 0, 0.59111], + "51": [0, 0.64444, 0.13167, 0, 0.59111], + "52": [0.19444, 0.64444, 0.13167, 0, 0.59111], + "53": [0, 0.64444, 0.13167, 0, 0.59111], + "54": [0, 0.64444, 0.13167, 0, 0.59111], + "55": [0.19444, 0.64444, 0.13167, 0, 0.59111], + "56": [0, 0.64444, 0.13167, 0, 0.59111], + "57": [0, 0.64444, 0.13167, 0, 0.59111], + "58": [0, 0.44444, 0.06695, 0, 0.35555], + "59": [0.19444, 0.44444, 0.06695, 0, 0.35555], + "61": [-0.10889, 0.39111, 0.06833, 0, 0.88555], + "63": [0, 0.69444, 0.11472, 0, 0.59111], + "64": [0, 0.69444, 0.09208, 0, 0.88555], + "65": [0, 0.68611, 0, 0, 0.86555], + "66": [0, 0.68611, 0.0992, 0, 0.81666], + "67": [0, 0.68611, 0.14208, 0, 0.82666], + "68": [0, 0.68611, 0.09062, 0, 0.87555], + "69": [0, 0.68611, 0.11431, 0, 0.75666], + "70": [0, 0.68611, 0.12903, 0, 0.72722], + "71": [0, 0.68611, 0.07347, 0, 0.89527], + "72": [0, 0.68611, 0.17208, 0, 0.8961], + "73": [0, 0.68611, 0.15681, 0, 0.47166], + "74": [0, 0.68611, 0.145, 0, 0.61055], + "75": [0, 0.68611, 0.14208, 0, 0.89499], + "76": [0, 0.68611, 0, 0, 0.69777], + "77": [0, 0.68611, 0.17208, 0, 1.07277], + "78": [0, 0.68611, 0.17208, 0, 0.8961], + "79": [0, 0.68611, 0.09062, 0, 0.85499], + "80": [0, 0.68611, 0.0992, 0, 0.78721], + "81": [0.19444, 0.68611, 0.09062, 0, 0.85499], + "82": [0, 0.68611, 0.02559, 0, 0.85944], + "83": [0, 0.68611, 0.11264, 0, 0.64999], + "84": [0, 0.68611, 0.12903, 0, 0.7961], + "85": [0, 0.68611, 0.17208, 0, 0.88083], + "86": [0, 0.68611, 0.18625, 0, 0.86555], + "87": [0, 0.68611, 0.18625, 0, 1.15999], + "88": [0, 0.68611, 0.15681, 0, 0.86555], + "89": [0, 0.68611, 0.19803, 0, 0.86555], + "90": [0, 0.68611, 0.14208, 0, 0.70888], + "91": [0.25, 0.75, 0.1875, 0, 0.35611], + "93": [0.25, 0.75, 0.09972, 0, 0.35611], + "94": [0, 0.69444, 0.06709, 0, 0.59111], + "95": [0.31, 0.13444, 0.09811, 0, 0.59111], + "97": [0, 0.44444, 0.09426, 0, 0.59111], + "98": [0, 0.69444, 0.07861, 0, 0.53222], + "99": [0, 0.44444, 0.05222, 0, 0.53222], + "100": [0, 0.69444, 0.10861, 0, 0.59111], + "101": [0, 0.44444, 0.085, 0, 0.53222], + "102": [0.19444, 0.69444, 0.21778, 0, 0.4], + "103": [0.19444, 0.44444, 0.105, 0, 0.53222], + "104": [0, 0.69444, 0.09426, 0, 0.59111], + "105": [0, 0.69326, 0.11387, 0, 0.35555], + "106": [0.19444, 0.69326, 0.1672, 0, 0.35555], + "107": [0, 0.69444, 0.11111, 0, 0.53222], + "108": [0, 0.69444, 0.10861, 0, 0.29666], + "109": [0, 0.44444, 0.09426, 0, 0.94444], + "110": [0, 0.44444, 0.09426, 0, 0.64999], + "111": [0, 0.44444, 0.07861, 0, 0.59111], + "112": [0.19444, 0.44444, 0.07861, 0, 0.59111], + "113": [0.19444, 0.44444, 0.105, 0, 0.53222], + "114": [0, 0.44444, 0.11111, 0, 0.50167], + "115": [0, 0.44444, 0.08167, 0, 0.48694], + "116": [0, 0.63492, 0.09639, 0, 0.385], + "117": [0, 0.44444, 0.09426, 0, 0.62055], + "118": [0, 0.44444, 0.11111, 0, 0.53222], + "119": [0, 0.44444, 0.11111, 0, 0.76777], + "120": [0, 0.44444, 0.12583, 0, 0.56055], + "121": [0.19444, 0.44444, 0.105, 0, 0.56166], + "122": [0, 0.44444, 0.13889, 0, 0.49055], + "126": [0.35, 0.34444, 0.11472, 0, 0.59111], + "160": [0, 0, 0, 0, 0.25], + "168": [0, 0.69444, 0.11473, 0, 0.59111], + "176": [0, 0.69444, 0, 0, 0.94888], + "184": [0.17014, 0, 0, 0, 0.53222], + "198": [0, 0.68611, 0.11431, 0, 1.02277], + "216": [0.04861, 0.73472, 0.09062, 0, 0.88555], + "223": [0.19444, 0.69444, 0.09736, 0, 0.665], + "230": [0, 0.44444, 0.085, 0, 0.82666], + "248": [0.09722, 0.54167, 0.09458, 0, 0.59111], + "305": [0, 0.44444, 0.09426, 0, 0.35555], + "338": [0, 0.68611, 0.11431, 0, 1.14054], + "339": [0, 0.44444, 0.085, 0, 0.82666], + "567": [0.19444, 0.44444, 0.04611, 0, 0.385], + "710": [0, 0.69444, 0.06709, 0, 0.59111], + "711": [0, 0.63194, 0.08271, 0, 0.59111], + "713": [0, 0.59444, 0.10444, 0, 0.59111], + "714": [0, 0.69444, 0.08528, 0, 0.59111], + "715": [0, 0.69444, 0, 0, 0.59111], + "728": [0, 0.69444, 0.10333, 0, 0.59111], + "729": [0, 0.69444, 0.12945, 0, 0.35555], + "730": [0, 0.69444, 0, 0, 0.94888], + "732": [0, 0.69444, 0.11472, 0, 0.59111], + "733": [0, 0.69444, 0.11472, 0, 0.59111], + "915": [0, 0.68611, 0.12903, 0, 0.69777], + "916": [0, 0.68611, 0, 0, 0.94444], + "920": [0, 0.68611, 0.09062, 0, 0.88555], + "923": [0, 0.68611, 0, 0, 0.80666], + "926": [0, 0.68611, 0.15092, 0, 0.76777], + "928": [0, 0.68611, 0.17208, 0, 0.8961], + "931": [0, 0.68611, 0.11431, 0, 0.82666], + "933": [0, 0.68611, 0.10778, 0, 0.88555], + "934": [0, 0.68611, 0.05632, 0, 0.82666], + "936": [0, 0.68611, 0.10778, 0, 0.88555], + "937": [0, 0.68611, 0.0992, 0, 0.82666], + "8211": [0, 0.44444, 0.09811, 0, 0.59111], + "8212": [0, 0.44444, 0.09811, 0, 1.18221], + "8216": [0, 0.69444, 0.12945, 0, 0.35555], + "8217": [0, 0.69444, 0.12945, 0, 0.35555], + "8220": [0, 0.69444, 0.16772, 0, 0.62055], + "8221": [0, 0.69444, 0.07939, 0, 0.62055] + }, + "Main-Italic": { + "32": [0, 0, 0, 0, 0.25], + "33": [0, 0.69444, 0.12417, 0, 0.30667], + "34": [0, 0.69444, 0.06961, 0, 0.51444], + "35": [0.19444, 0.69444, 0.06616, 0, 0.81777], + "37": [0.05556, 0.75, 0.13639, 0, 0.81777], + "38": [0, 0.69444, 0.09694, 0, 0.76666], + "39": [0, 0.69444, 0.12417, 0, 0.30667], + "40": [0.25, 0.75, 0.16194, 0, 0.40889], + "41": [0.25, 0.75, 0.03694, 0, 0.40889], + "42": [0, 0.75, 0.14917, 0, 0.51111], + "43": [0.05667, 0.56167, 0.03694, 0, 0.76666], + "44": [0.19444, 0.10556, 0, 0, 0.30667], + "45": [0, 0.43056, 0.02826, 0, 0.35778], + "46": [0, 0.10556, 0, 0, 0.30667], + "47": [0.25, 0.75, 0.16194, 0, 0.51111], + "48": [0, 0.64444, 0.13556, 0, 0.51111], + "49": [0, 0.64444, 0.13556, 0, 0.51111], + "50": [0, 0.64444, 0.13556, 0, 0.51111], + "51": [0, 0.64444, 0.13556, 0, 0.51111], + "52": [0.19444, 0.64444, 0.13556, 0, 0.51111], + "53": [0, 0.64444, 0.13556, 0, 0.51111], + "54": [0, 0.64444, 0.13556, 0, 0.51111], + "55": [0.19444, 0.64444, 0.13556, 0, 0.51111], + "56": [0, 0.64444, 0.13556, 0, 0.51111], + "57": [0, 0.64444, 0.13556, 0, 0.51111], + "58": [0, 0.43056, 0.0582, 0, 0.30667], + "59": [0.19444, 0.43056, 0.0582, 0, 0.30667], + "61": [-0.13313, 0.36687, 0.06616, 0, 0.76666], + "63": [0, 0.69444, 0.1225, 0, 0.51111], + "64": [0, 0.69444, 0.09597, 0, 0.76666], + "65": [0, 0.68333, 0, 0, 0.74333], + "66": [0, 0.68333, 0.10257, 0, 0.70389], + "67": [0, 0.68333, 0.14528, 0, 0.71555], + "68": [0, 0.68333, 0.09403, 0, 0.755], + "69": [0, 0.68333, 0.12028, 0, 0.67833], + "70": [0, 0.68333, 0.13305, 0, 0.65277], + "71": [0, 0.68333, 0.08722, 0, 0.77361], + "72": [0, 0.68333, 0.16389, 0, 0.74333], + "73": [0, 0.68333, 0.15806, 0, 0.38555], + "74": [0, 0.68333, 0.14028, 0, 0.525], + "75": [0, 0.68333, 0.14528, 0, 0.76888], + "76": [0, 0.68333, 0, 0, 0.62722], + "77": [0, 0.68333, 0.16389, 0, 0.89666], + "78": [0, 0.68333, 0.16389, 0, 0.74333], + "79": [0, 0.68333, 0.09403, 0, 0.76666], + "80": [0, 0.68333, 0.10257, 0, 0.67833], + "81": [0.19444, 0.68333, 0.09403, 0, 0.76666], + "82": [0, 0.68333, 0.03868, 0, 0.72944], + "83": [0, 0.68333, 0.11972, 0, 0.56222], + "84": [0, 0.68333, 0.13305, 0, 0.71555], + "85": [0, 0.68333, 0.16389, 0, 0.74333], + "86": [0, 0.68333, 0.18361, 0, 0.74333], + "87": [0, 0.68333, 0.18361, 0, 0.99888], + "88": [0, 0.68333, 0.15806, 0, 0.74333], + "89": [0, 0.68333, 0.19383, 0, 0.74333], + "90": [0, 0.68333, 0.14528, 0, 0.61333], + "91": [0.25, 0.75, 0.1875, 0, 0.30667], + "93": [0.25, 0.75, 0.10528, 0, 0.30667], + "94": [0, 0.69444, 0.06646, 0, 0.51111], + "95": [0.31, 0.12056, 0.09208, 0, 0.51111], + "97": [0, 0.43056, 0.07671, 0, 0.51111], + "98": [0, 0.69444, 0.06312, 0, 0.46], + "99": [0, 0.43056, 0.05653, 0, 0.46], + "100": [0, 0.69444, 0.10333, 0, 0.51111], + "101": [0, 0.43056, 0.07514, 0, 0.46], + "102": [0.19444, 0.69444, 0.21194, 0, 0.30667], + "103": [0.19444, 0.43056, 0.08847, 0, 0.46], + "104": [0, 0.69444, 0.07671, 0, 0.51111], + "105": [0, 0.65536, 0.1019, 0, 0.30667], + "106": [0.19444, 0.65536, 0.14467, 0, 0.30667], + "107": [0, 0.69444, 0.10764, 0, 0.46], + "108": [0, 0.69444, 0.10333, 0, 0.25555], + "109": [0, 0.43056, 0.07671, 0, 0.81777], + "110": [0, 0.43056, 0.07671, 0, 0.56222], + "111": [0, 0.43056, 0.06312, 0, 0.51111], + "112": [0.19444, 0.43056, 0.06312, 0, 0.51111], + "113": [0.19444, 0.43056, 0.08847, 0, 0.46], + "114": [0, 0.43056, 0.10764, 0, 0.42166], + "115": [0, 0.43056, 0.08208, 0, 0.40889], + "116": [0, 0.61508, 0.09486, 0, 0.33222], + "117": [0, 0.43056, 0.07671, 0, 0.53666], + "118": [0, 0.43056, 0.10764, 0, 0.46], + "119": [0, 0.43056, 0.10764, 0, 0.66444], + "120": [0, 0.43056, 0.12042, 0, 0.46389], + "121": [0.19444, 0.43056, 0.08847, 0, 0.48555], + "122": [0, 0.43056, 0.12292, 0, 0.40889], + "126": [0.35, 0.31786, 0.11585, 0, 0.51111], + "160": [0, 0, 0, 0, 0.25], + "168": [0, 0.66786, 0.10474, 0, 0.51111], + "176": [0, 0.69444, 0, 0, 0.83129], + "184": [0.17014, 0, 0, 0, 0.46], + "198": [0, 0.68333, 0.12028, 0, 0.88277], + "216": [0.04861, 0.73194, 0.09403, 0, 0.76666], + "223": [0.19444, 0.69444, 0.10514, 0, 0.53666], + "230": [0, 0.43056, 0.07514, 0, 0.71555], + "248": [0.09722, 0.52778, 0.09194, 0, 0.51111], + "338": [0, 0.68333, 0.12028, 0, 0.98499], + "339": [0, 0.43056, 0.07514, 0, 0.71555], + "710": [0, 0.69444, 0.06646, 0, 0.51111], + "711": [0, 0.62847, 0.08295, 0, 0.51111], + "713": [0, 0.56167, 0.10333, 0, 0.51111], + "714": [0, 0.69444, 0.09694, 0, 0.51111], + "715": [0, 0.69444, 0, 0, 0.51111], + "728": [0, 0.69444, 0.10806, 0, 0.51111], + "729": [0, 0.66786, 0.11752, 0, 0.30667], + "730": [0, 0.69444, 0, 0, 0.83129], + "732": [0, 0.66786, 0.11585, 0, 0.51111], + "733": [0, 0.69444, 0.1225, 0, 0.51111], + "915": [0, 0.68333, 0.13305, 0, 0.62722], + "916": [0, 0.68333, 0, 0, 0.81777], + "920": [0, 0.68333, 0.09403, 0, 0.76666], + "923": [0, 0.68333, 0, 0, 0.69222], + "926": [0, 0.68333, 0.15294, 0, 0.66444], + "928": [0, 0.68333, 0.16389, 0, 0.74333], + "931": [0, 0.68333, 0.12028, 0, 0.71555], + "933": [0, 0.68333, 0.11111, 0, 0.76666], + "934": [0, 0.68333, 0.05986, 0, 0.71555], + "936": [0, 0.68333, 0.11111, 0, 0.76666], + "937": [0, 0.68333, 0.10257, 0, 0.71555], + "8211": [0, 0.43056, 0.09208, 0, 0.51111], + "8212": [0, 0.43056, 0.09208, 0, 1.02222], + "8216": [0, 0.69444, 0.12417, 0, 0.30667], + "8217": [0, 0.69444, 0.12417, 0, 0.30667], + "8220": [0, 0.69444, 0.1685, 0, 0.51444], + "8221": [0, 0.69444, 0.06961, 0, 0.51444], + "8463": [0, 0.68889, 0, 0, 0.54028] + }, + "Main-Regular": { + "32": [0, 0, 0, 0, 0.25], + "33": [0, 0.69444, 0, 0, 0.27778], + "34": [0, 0.69444, 0, 0, 0.5], + "35": [0.19444, 0.69444, 0, 0, 0.83334], + "36": [0.05556, 0.75, 0, 0, 0.5], + "37": [0.05556, 0.75, 0, 0, 0.83334], + "38": [0, 0.69444, 0, 0, 0.77778], + "39": [0, 0.69444, 0, 0, 0.27778], + "40": [0.25, 0.75, 0, 0, 0.38889], + "41": [0.25, 0.75, 0, 0, 0.38889], + "42": [0, 0.75, 0, 0, 0.5], + "43": [0.08333, 0.58333, 0, 0, 0.77778], + "44": [0.19444, 0.10556, 0, 0, 0.27778], + "45": [0, 0.43056, 0, 0, 0.33333], + "46": [0, 0.10556, 0, 0, 0.27778], + "47": [0.25, 0.75, 0, 0, 0.5], + "48": [0, 0.64444, 0, 0, 0.5], + "49": [0, 0.64444, 0, 0, 0.5], + "50": [0, 0.64444, 0, 0, 0.5], + "51": [0, 0.64444, 0, 0, 0.5], + "52": [0, 0.64444, 0, 0, 0.5], + "53": [0, 0.64444, 0, 0, 0.5], + "54": [0, 0.64444, 0, 0, 0.5], + "55": [0, 0.64444, 0, 0, 0.5], + "56": [0, 0.64444, 0, 0, 0.5], + "57": [0, 0.64444, 0, 0, 0.5], + "58": [0, 0.43056, 0, 0, 0.27778], + "59": [0.19444, 0.43056, 0, 0, 0.27778], + "60": [0.0391, 0.5391, 0, 0, 0.77778], + "61": [-0.13313, 0.36687, 0, 0, 0.77778], + "62": [0.0391, 0.5391, 0, 0, 0.77778], + "63": [0, 0.69444, 0, 0, 0.47222], + "64": [0, 0.69444, 0, 0, 0.77778], + "65": [0, 0.68333, 0, 0, 0.75], + "66": [0, 0.68333, 0, 0, 0.70834], + "67": [0, 0.68333, 0, 0, 0.72222], + "68": [0, 0.68333, 0, 0, 0.76389], + "69": [0, 0.68333, 0, 0, 0.68056], + "70": [0, 0.68333, 0, 0, 0.65278], + "71": [0, 0.68333, 0, 0, 0.78472], + "72": [0, 0.68333, 0, 0, 0.75], + "73": [0, 0.68333, 0, 0, 0.36111], + "74": [0, 0.68333, 0, 0, 0.51389], + "75": [0, 0.68333, 0, 0, 0.77778], + "76": [0, 0.68333, 0, 0, 0.625], + "77": [0, 0.68333, 0, 0, 0.91667], + "78": [0, 0.68333, 0, 0, 0.75], + "79": [0, 0.68333, 0, 0, 0.77778], + "80": [0, 0.68333, 0, 0, 0.68056], + "81": [0.19444, 0.68333, 0, 0, 0.77778], + "82": [0, 0.68333, 0, 0, 0.73611], + "83": [0, 0.68333, 0, 0, 0.55556], + "84": [0, 0.68333, 0, 0, 0.72222], + "85": [0, 0.68333, 0, 0, 0.75], + "86": [0, 0.68333, 0.01389, 0, 0.75], + "87": [0, 0.68333, 0.01389, 0, 1.02778], + "88": [0, 0.68333, 0, 0, 0.75], + "89": [0, 0.68333, 0.025, 0, 0.75], + "90": [0, 0.68333, 0, 0, 0.61111], + "91": [0.25, 0.75, 0, 0, 0.27778], + "92": [0.25, 0.75, 0, 0, 0.5], + "93": [0.25, 0.75, 0, 0, 0.27778], + "94": [0, 0.69444, 0, 0, 0.5], + "95": [0.31, 0.12056, 0.02778, 0, 0.5], + "97": [0, 0.43056, 0, 0, 0.5], + "98": [0, 0.69444, 0, 0, 0.55556], + "99": [0, 0.43056, 0, 0, 0.44445], + "100": [0, 0.69444, 0, 0, 0.55556], + "101": [0, 0.43056, 0, 0, 0.44445], + "102": [0, 0.69444, 0.07778, 0, 0.30556], + "103": [0.19444, 0.43056, 0.01389, 0, 0.5], + "104": [0, 0.69444, 0, 0, 0.55556], + "105": [0, 0.66786, 0, 0, 0.27778], + "106": [0.19444, 0.66786, 0, 0, 0.30556], + "107": [0, 0.69444, 0, 0, 0.52778], + "108": [0, 0.69444, 0, 0, 0.27778], + "109": [0, 0.43056, 0, 0, 0.83334], + "110": [0, 0.43056, 0, 0, 0.55556], + "111": [0, 0.43056, 0, 0, 0.5], + "112": [0.19444, 0.43056, 0, 0, 0.55556], + "113": [0.19444, 0.43056, 0, 0, 0.52778], + "114": [0, 0.43056, 0, 0, 0.39167], + "115": [0, 0.43056, 0, 0, 0.39445], + "116": [0, 0.61508, 0, 0, 0.38889], + "117": [0, 0.43056, 0, 0, 0.55556], + "118": [0, 0.43056, 0.01389, 0, 0.52778], + "119": [0, 0.43056, 0.01389, 0, 0.72222], + "120": [0, 0.43056, 0, 0, 0.52778], + "121": [0.19444, 0.43056, 0.01389, 0, 0.52778], + "122": [0, 0.43056, 0, 0, 0.44445], + "123": [0.25, 0.75, 0, 0, 0.5], + "124": [0.25, 0.75, 0, 0, 0.27778], + "125": [0.25, 0.75, 0, 0, 0.5], + "126": [0.35, 0.31786, 0, 0, 0.5], + "160": [0, 0, 0, 0, 0.25], + "163": [0, 0.69444, 0, 0, 0.76909], + "167": [0.19444, 0.69444, 0, 0, 0.44445], + "168": [0, 0.66786, 0, 0, 0.5], + "172": [0, 0.43056, 0, 0, 0.66667], + "176": [0, 0.69444, 0, 0, 0.75], + "177": [0.08333, 0.58333, 0, 0, 0.77778], + "182": [0.19444, 0.69444, 0, 0, 0.61111], + "184": [0.17014, 0, 0, 0, 0.44445], + "198": [0, 0.68333, 0, 0, 0.90278], + "215": [0.08333, 0.58333, 0, 0, 0.77778], + "216": [0.04861, 0.73194, 0, 0, 0.77778], + "223": [0, 0.69444, 0, 0, 0.5], + "230": [0, 0.43056, 0, 0, 0.72222], + "247": [0.08333, 0.58333, 0, 0, 0.77778], + "248": [0.09722, 0.52778, 0, 0, 0.5], + "305": [0, 0.43056, 0, 0, 0.27778], + "338": [0, 0.68333, 0, 0, 1.01389], + "339": [0, 0.43056, 0, 0, 0.77778], + "567": [0.19444, 0.43056, 0, 0, 0.30556], + "710": [0, 0.69444, 0, 0, 0.5], + "711": [0, 0.62847, 0, 0, 0.5], + "713": [0, 0.56778, 0, 0, 0.5], + "714": [0, 0.69444, 0, 0, 0.5], + "715": [0, 0.69444, 0, 0, 0.5], + "728": [0, 0.69444, 0, 0, 0.5], + "729": [0, 0.66786, 0, 0, 0.27778], + "730": [0, 0.69444, 0, 0, 0.75], + "732": [0, 0.66786, 0, 0, 0.5], + "733": [0, 0.69444, 0, 0, 0.5], + "915": [0, 0.68333, 0, 0, 0.625], + "916": [0, 0.68333, 0, 0, 0.83334], + "920": [0, 0.68333, 0, 0, 0.77778], + "923": [0, 0.68333, 0, 0, 0.69445], + "926": [0, 0.68333, 0, 0, 0.66667], + "928": [0, 0.68333, 0, 0, 0.75], + "931": [0, 0.68333, 0, 0, 0.72222], + "933": [0, 0.68333, 0, 0, 0.77778], + "934": [0, 0.68333, 0, 0, 0.72222], + "936": [0, 0.68333, 0, 0, 0.77778], + "937": [0, 0.68333, 0, 0, 0.72222], + "8211": [0, 0.43056, 0.02778, 0, 0.5], + "8212": [0, 0.43056, 0.02778, 0, 1], + "8216": [0, 0.69444, 0, 0, 0.27778], + "8217": [0, 0.69444, 0, 0, 0.27778], + "8220": [0, 0.69444, 0, 0, 0.5], + "8221": [0, 0.69444, 0, 0, 0.5], + "8224": [0.19444, 0.69444, 0, 0, 0.44445], + "8225": [0.19444, 0.69444, 0, 0, 0.44445], + "8230": [0, 0.12, 0, 0, 1.172], + "8242": [0, 0.55556, 0, 0, 0.275], + "8407": [0, 0.71444, 0.15382, 0, 0.5], + "8463": [0, 0.68889, 0, 0, 0.54028], + "8465": [0, 0.69444, 0, 0, 0.72222], + "8467": [0, 0.69444, 0, 0.11111, 0.41667], + "8472": [0.19444, 0.43056, 0, 0.11111, 0.63646], + "8476": [0, 0.69444, 0, 0, 0.72222], + "8501": [0, 0.69444, 0, 0, 0.61111], + "8592": [-0.13313, 0.36687, 0, 0, 1], + "8593": [0.19444, 0.69444, 0, 0, 0.5], + "8594": [-0.13313, 0.36687, 0, 0, 1], + "8595": [0.19444, 0.69444, 0, 0, 0.5], + "8596": [-0.13313, 0.36687, 0, 0, 1], + "8597": [0.25, 0.75, 0, 0, 0.5], + "8598": [0.19444, 0.69444, 0, 0, 1], + "8599": [0.19444, 0.69444, 0, 0, 1], + "8600": [0.19444, 0.69444, 0, 0, 1], + "8601": [0.19444, 0.69444, 0, 0, 1], + "8614": [0.011, 0.511, 0, 0, 1], + "8617": [0.011, 0.511, 0, 0, 1.126], + "8618": [0.011, 0.511, 0, 0, 1.126], + "8636": [-0.13313, 0.36687, 0, 0, 1], + "8637": [-0.13313, 0.36687, 0, 0, 1], + "8640": [-0.13313, 0.36687, 0, 0, 1], + "8641": [-0.13313, 0.36687, 0, 0, 1], + "8652": [0.011, 0.671, 0, 0, 1], + "8656": [-0.13313, 0.36687, 0, 0, 1], + "8657": [0.19444, 0.69444, 0, 0, 0.61111], + "8658": [-0.13313, 0.36687, 0, 0, 1], + "8659": [0.19444, 0.69444, 0, 0, 0.61111], + "8660": [-0.13313, 0.36687, 0, 0, 1], + "8661": [0.25, 0.75, 0, 0, 0.61111], + "8704": [0, 0.69444, 0, 0, 0.55556], + "8706": [0, 0.69444, 0.05556, 0.08334, 0.5309], + "8707": [0, 0.69444, 0, 0, 0.55556], + "8709": [0.05556, 0.75, 0, 0, 0.5], + "8711": [0, 0.68333, 0, 0, 0.83334], + "8712": [0.0391, 0.5391, 0, 0, 0.66667], + "8715": [0.0391, 0.5391, 0, 0, 0.66667], + "8722": [0.08333, 0.58333, 0, 0, 0.77778], + "8723": [0.08333, 0.58333, 0, 0, 0.77778], + "8725": [0.25, 0.75, 0, 0, 0.5], + "8726": [0.25, 0.75, 0, 0, 0.5], + "8727": [-0.03472, 0.46528, 0, 0, 0.5], + "8728": [-0.05555, 0.44445, 0, 0, 0.5], + "8729": [-0.05555, 0.44445, 0, 0, 0.5], + "8730": [0.2, 0.8, 0, 0, 0.83334], + "8733": [0, 0.43056, 0, 0, 0.77778], + "8734": [0, 0.43056, 0, 0, 1], + "8736": [0, 0.69224, 0, 0, 0.72222], + "8739": [0.25, 0.75, 0, 0, 0.27778], + "8741": [0.25, 0.75, 0, 0, 0.5], + "8743": [0, 0.55556, 0, 0, 0.66667], + "8744": [0, 0.55556, 0, 0, 0.66667], + "8745": [0, 0.55556, 0, 0, 0.66667], + "8746": [0, 0.55556, 0, 0, 0.66667], + "8747": [0.19444, 0.69444, 0.11111, 0, 0.41667], + "8764": [-0.13313, 0.36687, 0, 0, 0.77778], + "8768": [0.19444, 0.69444, 0, 0, 0.27778], + "8771": [-0.03625, 0.46375, 0, 0, 0.77778], + "8773": [-0.022, 0.589, 0, 0, 1], + "8776": [-0.01688, 0.48312, 0, 0, 0.77778], + "8781": [-0.03625, 0.46375, 0, 0, 0.77778], + "8784": [-0.133, 0.67, 0, 0, 0.778], + "8801": [-0.03625, 0.46375, 0, 0, 0.77778], + "8804": [0.13597, 0.63597, 0, 0, 0.77778], + "8805": [0.13597, 0.63597, 0, 0, 0.77778], + "8810": [0.0391, 0.5391, 0, 0, 1], + "8811": [0.0391, 0.5391, 0, 0, 1], + "8826": [0.0391, 0.5391, 0, 0, 0.77778], + "8827": [0.0391, 0.5391, 0, 0, 0.77778], + "8834": [0.0391, 0.5391, 0, 0, 0.77778], + "8835": [0.0391, 0.5391, 0, 0, 0.77778], + "8838": [0.13597, 0.63597, 0, 0, 0.77778], + "8839": [0.13597, 0.63597, 0, 0, 0.77778], + "8846": [0, 0.55556, 0, 0, 0.66667], + "8849": [0.13597, 0.63597, 0, 0, 0.77778], + "8850": [0.13597, 0.63597, 0, 0, 0.77778], + "8851": [0, 0.55556, 0, 0, 0.66667], + "8852": [0, 0.55556, 0, 0, 0.66667], + "8853": [0.08333, 0.58333, 0, 0, 0.77778], + "8854": [0.08333, 0.58333, 0, 0, 0.77778], + "8855": [0.08333, 0.58333, 0, 0, 0.77778], + "8856": [0.08333, 0.58333, 0, 0, 0.77778], + "8857": [0.08333, 0.58333, 0, 0, 0.77778], + "8866": [0, 0.69444, 0, 0, 0.61111], + "8867": [0, 0.69444, 0, 0, 0.61111], + "8868": [0, 0.69444, 0, 0, 0.77778], + "8869": [0, 0.69444, 0, 0, 0.77778], + "8872": [0.249, 0.75, 0, 0, 0.867], + "8900": [-0.05555, 0.44445, 0, 0, 0.5], + "8901": [-0.05555, 0.44445, 0, 0, 0.27778], + "8902": [-0.03472, 0.46528, 0, 0, 0.5], + "8904": [5e-3, 0.505, 0, 0, 0.9], + "8942": [0.03, 0.9, 0, 0, 0.278], + "8943": [-0.19, 0.31, 0, 0, 1.172], + "8945": [-0.1, 0.82, 0, 0, 1.282], + "8968": [0.25, 0.75, 0, 0, 0.44445], + "8969": [0.25, 0.75, 0, 0, 0.44445], + "8970": [0.25, 0.75, 0, 0, 0.44445], + "8971": [0.25, 0.75, 0, 0, 0.44445], + "8994": [-0.14236, 0.35764, 0, 0, 1], + "8995": [-0.14236, 0.35764, 0, 0, 1], + "9136": [0.244, 0.744, 0, 0, 0.412], + "9137": [0.244, 0.744, 0, 0, 0.412], + "9651": [0.19444, 0.69444, 0, 0, 0.88889], + "9657": [-0.03472, 0.46528, 0, 0, 0.5], + "9661": [0.19444, 0.69444, 0, 0, 0.88889], + "9667": [-0.03472, 0.46528, 0, 0, 0.5], + "9711": [0.19444, 0.69444, 0, 0, 1], + "9824": [0.12963, 0.69444, 0, 0, 0.77778], + "9825": [0.12963, 0.69444, 0, 0, 0.77778], + "9826": [0.12963, 0.69444, 0, 0, 0.77778], + "9827": [0.12963, 0.69444, 0, 0, 0.77778], + "9837": [0, 0.75, 0, 0, 0.38889], + "9838": [0.19444, 0.69444, 0, 0, 0.38889], + "9839": [0.19444, 0.69444, 0, 0, 0.38889], + "10216": [0.25, 0.75, 0, 0, 0.38889], + "10217": [0.25, 0.75, 0, 0, 0.38889], + "10222": [0.244, 0.744, 0, 0, 0.412], + "10223": [0.244, 0.744, 0, 0, 0.412], + "10229": [0.011, 0.511, 0, 0, 1.609], + "10230": [0.011, 0.511, 0, 0, 1.638], + "10231": [0.011, 0.511, 0, 0, 1.859], + "10232": [0.024, 0.525, 0, 0, 1.609], + "10233": [0.024, 0.525, 0, 0, 1.638], + "10234": [0.024, 0.525, 0, 0, 1.858], + "10236": [0.011, 0.511, 0, 0, 1.638], + "10815": [0, 0.68333, 0, 0, 0.75], + "10927": [0.13597, 0.63597, 0, 0, 0.77778], + "10928": [0.13597, 0.63597, 0, 0, 0.77778], + "57376": [0.19444, 0.69444, 0, 0, 0] + }, + "Math-BoldItalic": { + "32": [0, 0, 0, 0, 0.25], + "48": [0, 0.44444, 0, 0, 0.575], + "49": [0, 0.44444, 0, 0, 0.575], + "50": [0, 0.44444, 0, 0, 0.575], + "51": [0.19444, 0.44444, 0, 0, 0.575], + "52": [0.19444, 0.44444, 0, 0, 0.575], + "53": [0.19444, 0.44444, 0, 0, 0.575], + "54": [0, 0.64444, 0, 0, 0.575], + "55": [0.19444, 0.44444, 0, 0, 0.575], + "56": [0, 0.64444, 0, 0, 0.575], + "57": [0.19444, 0.44444, 0, 0, 0.575], + "65": [0, 0.68611, 0, 0, 0.86944], + "66": [0, 0.68611, 0.04835, 0, 0.8664], + "67": [0, 0.68611, 0.06979, 0, 0.81694], + "68": [0, 0.68611, 0.03194, 0, 0.93812], + "69": [0, 0.68611, 0.05451, 0, 0.81007], + "70": [0, 0.68611, 0.15972, 0, 0.68889], + "71": [0, 0.68611, 0, 0, 0.88673], + "72": [0, 0.68611, 0.08229, 0, 0.98229], + "73": [0, 0.68611, 0.07778, 0, 0.51111], + "74": [0, 0.68611, 0.10069, 0, 0.63125], + "75": [0, 0.68611, 0.06979, 0, 0.97118], + "76": [0, 0.68611, 0, 0, 0.75555], + "77": [0, 0.68611, 0.11424, 0, 1.14201], + "78": [0, 0.68611, 0.11424, 0, 0.95034], + "79": [0, 0.68611, 0.03194, 0, 0.83666], + "80": [0, 0.68611, 0.15972, 0, 0.72309], + "81": [0.19444, 0.68611, 0, 0, 0.86861], + "82": [0, 0.68611, 421e-5, 0, 0.87235], + "83": [0, 0.68611, 0.05382, 0, 0.69271], + "84": [0, 0.68611, 0.15972, 0, 0.63663], + "85": [0, 0.68611, 0.11424, 0, 0.80027], + "86": [0, 0.68611, 0.25555, 0, 0.67778], + "87": [0, 0.68611, 0.15972, 0, 1.09305], + "88": [0, 0.68611, 0.07778, 0, 0.94722], + "89": [0, 0.68611, 0.25555, 0, 0.67458], + "90": [0, 0.68611, 0.06979, 0, 0.77257], + "97": [0, 0.44444, 0, 0, 0.63287], + "98": [0, 0.69444, 0, 0, 0.52083], + "99": [0, 0.44444, 0, 0, 0.51342], + "100": [0, 0.69444, 0, 0, 0.60972], + "101": [0, 0.44444, 0, 0, 0.55361], + "102": [0.19444, 0.69444, 0.11042, 0, 0.56806], + "103": [0.19444, 0.44444, 0.03704, 0, 0.5449], + "104": [0, 0.69444, 0, 0, 0.66759], + "105": [0, 0.69326, 0, 0, 0.4048], + "106": [0.19444, 0.69326, 0.0622, 0, 0.47083], + "107": [0, 0.69444, 0.01852, 0, 0.6037], + "108": [0, 0.69444, 88e-4, 0, 0.34815], + "109": [0, 0.44444, 0, 0, 1.0324], + "110": [0, 0.44444, 0, 0, 0.71296], + "111": [0, 0.44444, 0, 0, 0.58472], + "112": [0.19444, 0.44444, 0, 0, 0.60092], + "113": [0.19444, 0.44444, 0.03704, 0, 0.54213], + "114": [0, 0.44444, 0.03194, 0, 0.5287], + "115": [0, 0.44444, 0, 0, 0.53125], + "116": [0, 0.63492, 0, 0, 0.41528], + "117": [0, 0.44444, 0, 0, 0.68102], + "118": [0, 0.44444, 0.03704, 0, 0.56666], + "119": [0, 0.44444, 0.02778, 0, 0.83148], + "120": [0, 0.44444, 0, 0, 0.65903], + "121": [0.19444, 0.44444, 0.03704, 0, 0.59028], + "122": [0, 0.44444, 0.04213, 0, 0.55509], + "160": [0, 0, 0, 0, 0.25], + "915": [0, 0.68611, 0.15972, 0, 0.65694], + "916": [0, 0.68611, 0, 0, 0.95833], + "920": [0, 0.68611, 0.03194, 0, 0.86722], + "923": [0, 0.68611, 0, 0, 0.80555], + "926": [0, 0.68611, 0.07458, 0, 0.84125], + "928": [0, 0.68611, 0.08229, 0, 0.98229], + "931": [0, 0.68611, 0.05451, 0, 0.88507], + "933": [0, 0.68611, 0.15972, 0, 0.67083], + "934": [0, 0.68611, 0, 0, 0.76666], + "936": [0, 0.68611, 0.11653, 0, 0.71402], + "937": [0, 0.68611, 0.04835, 0, 0.8789], + "945": [0, 0.44444, 0, 0, 0.76064], + "946": [0.19444, 0.69444, 0.03403, 0, 0.65972], + "947": [0.19444, 0.44444, 0.06389, 0, 0.59003], + "948": [0, 0.69444, 0.03819, 0, 0.52222], + "949": [0, 0.44444, 0, 0, 0.52882], + "950": [0.19444, 0.69444, 0.06215, 0, 0.50833], + "951": [0.19444, 0.44444, 0.03704, 0, 0.6], + "952": [0, 0.69444, 0.03194, 0, 0.5618], + "953": [0, 0.44444, 0, 0, 0.41204], + "954": [0, 0.44444, 0, 0, 0.66759], + "955": [0, 0.69444, 0, 0, 0.67083], + "956": [0.19444, 0.44444, 0, 0, 0.70787], + "957": [0, 0.44444, 0.06898, 0, 0.57685], + "958": [0.19444, 0.69444, 0.03021, 0, 0.50833], + "959": [0, 0.44444, 0, 0, 0.58472], + "960": [0, 0.44444, 0.03704, 0, 0.68241], + "961": [0.19444, 0.44444, 0, 0, 0.6118], + "962": [0.09722, 0.44444, 0.07917, 0, 0.42361], + "963": [0, 0.44444, 0.03704, 0, 0.68588], + "964": [0, 0.44444, 0.13472, 0, 0.52083], + "965": [0, 0.44444, 0.03704, 0, 0.63055], + "966": [0.19444, 0.44444, 0, 0, 0.74722], + "967": [0.19444, 0.44444, 0, 0, 0.71805], + "968": [0.19444, 0.69444, 0.03704, 0, 0.75833], + "969": [0, 0.44444, 0.03704, 0, 0.71782], + "977": [0, 0.69444, 0, 0, 0.69155], + "981": [0.19444, 0.69444, 0, 0, 0.7125], + "982": [0, 0.44444, 0.03194, 0, 0.975], + "1009": [0.19444, 0.44444, 0, 0, 0.6118], + "1013": [0, 0.44444, 0, 0, 0.48333], + "57649": [0, 0.44444, 0, 0, 0.39352], + "57911": [0.19444, 0.44444, 0, 0, 0.43889] + }, + "Math-Italic": { + "32": [0, 0, 0, 0, 0.25], + "48": [0, 0.43056, 0, 0, 0.5], + "49": [0, 0.43056, 0, 0, 0.5], + "50": [0, 0.43056, 0, 0, 0.5], + "51": [0.19444, 0.43056, 0, 0, 0.5], + "52": [0.19444, 0.43056, 0, 0, 0.5], + "53": [0.19444, 0.43056, 0, 0, 0.5], + "54": [0, 0.64444, 0, 0, 0.5], + "55": [0.19444, 0.43056, 0, 0, 0.5], + "56": [0, 0.64444, 0, 0, 0.5], + "57": [0.19444, 0.43056, 0, 0, 0.5], + "65": [0, 0.68333, 0, 0.13889, 0.75], + "66": [0, 0.68333, 0.05017, 0.08334, 0.75851], + "67": [0, 0.68333, 0.07153, 0.08334, 0.71472], + "68": [0, 0.68333, 0.02778, 0.05556, 0.82792], + "69": [0, 0.68333, 0.05764, 0.08334, 0.7382], + "70": [0, 0.68333, 0.13889, 0.08334, 0.64306], + "71": [0, 0.68333, 0, 0.08334, 0.78625], + "72": [0, 0.68333, 0.08125, 0.05556, 0.83125], + "73": [0, 0.68333, 0.07847, 0.11111, 0.43958], + "74": [0, 0.68333, 0.09618, 0.16667, 0.55451], + "75": [0, 0.68333, 0.07153, 0.05556, 0.84931], + "76": [0, 0.68333, 0, 0.02778, 0.68056], + "77": [0, 0.68333, 0.10903, 0.08334, 0.97014], + "78": [0, 0.68333, 0.10903, 0.08334, 0.80347], + "79": [0, 0.68333, 0.02778, 0.08334, 0.76278], + "80": [0, 0.68333, 0.13889, 0.08334, 0.64201], + "81": [0.19444, 0.68333, 0, 0.08334, 0.79056], + "82": [0, 0.68333, 773e-5, 0.08334, 0.75929], + "83": [0, 0.68333, 0.05764, 0.08334, 0.6132], + "84": [0, 0.68333, 0.13889, 0.08334, 0.58438], + "85": [0, 0.68333, 0.10903, 0.02778, 0.68278], + "86": [0, 0.68333, 0.22222, 0, 0.58333], + "87": [0, 0.68333, 0.13889, 0, 0.94445], + "88": [0, 0.68333, 0.07847, 0.08334, 0.82847], + "89": [0, 0.68333, 0.22222, 0, 0.58056], + "90": [0, 0.68333, 0.07153, 0.08334, 0.68264], + "97": [0, 0.43056, 0, 0, 0.52859], + "98": [0, 0.69444, 0, 0, 0.42917], + "99": [0, 0.43056, 0, 0.05556, 0.43276], + "100": [0, 0.69444, 0, 0.16667, 0.52049], + "101": [0, 0.43056, 0, 0.05556, 0.46563], + "102": [0.19444, 0.69444, 0.10764, 0.16667, 0.48959], + "103": [0.19444, 0.43056, 0.03588, 0.02778, 0.47697], + "104": [0, 0.69444, 0, 0, 0.57616], + "105": [0, 0.65952, 0, 0, 0.34451], + "106": [0.19444, 0.65952, 0.05724, 0, 0.41181], + "107": [0, 0.69444, 0.03148, 0, 0.5206], + "108": [0, 0.69444, 0.01968, 0.08334, 0.29838], + "109": [0, 0.43056, 0, 0, 0.87801], + "110": [0, 0.43056, 0, 0, 0.60023], + "111": [0, 0.43056, 0, 0.05556, 0.48472], + "112": [0.19444, 0.43056, 0, 0.08334, 0.50313], + "113": [0.19444, 0.43056, 0.03588, 0.08334, 0.44641], + "114": [0, 0.43056, 0.02778, 0.05556, 0.45116], + "115": [0, 0.43056, 0, 0.05556, 0.46875], + "116": [0, 0.61508, 0, 0.08334, 0.36111], + "117": [0, 0.43056, 0, 0.02778, 0.57246], + "118": [0, 0.43056, 0.03588, 0.02778, 0.48472], + "119": [0, 0.43056, 0.02691, 0.08334, 0.71592], + "120": [0, 0.43056, 0, 0.02778, 0.57153], + "121": [0.19444, 0.43056, 0.03588, 0.05556, 0.49028], + "122": [0, 0.43056, 0.04398, 0.05556, 0.46505], + "160": [0, 0, 0, 0, 0.25], + "915": [0, 0.68333, 0.13889, 0.08334, 0.61528], + "916": [0, 0.68333, 0, 0.16667, 0.83334], + "920": [0, 0.68333, 0.02778, 0.08334, 0.76278], + "923": [0, 0.68333, 0, 0.16667, 0.69445], + "926": [0, 0.68333, 0.07569, 0.08334, 0.74236], + "928": [0, 0.68333, 0.08125, 0.05556, 0.83125], + "931": [0, 0.68333, 0.05764, 0.08334, 0.77986], + "933": [0, 0.68333, 0.13889, 0.05556, 0.58333], + "934": [0, 0.68333, 0, 0.08334, 0.66667], + "936": [0, 0.68333, 0.11, 0.05556, 0.61222], + "937": [0, 0.68333, 0.05017, 0.08334, 0.7724], + "945": [0, 0.43056, 37e-4, 0.02778, 0.6397], + "946": [0.19444, 0.69444, 0.05278, 0.08334, 0.56563], + "947": [0.19444, 0.43056, 0.05556, 0, 0.51773], + "948": [0, 0.69444, 0.03785, 0.05556, 0.44444], + "949": [0, 0.43056, 0, 0.08334, 0.46632], + "950": [0.19444, 0.69444, 0.07378, 0.08334, 0.4375], + "951": [0.19444, 0.43056, 0.03588, 0.05556, 0.49653], + "952": [0, 0.69444, 0.02778, 0.08334, 0.46944], + "953": [0, 0.43056, 0, 0.05556, 0.35394], + "954": [0, 0.43056, 0, 0, 0.57616], + "955": [0, 0.69444, 0, 0, 0.58334], + "956": [0.19444, 0.43056, 0, 0.02778, 0.60255], + "957": [0, 0.43056, 0.06366, 0.02778, 0.49398], + "958": [0.19444, 0.69444, 0.04601, 0.11111, 0.4375], + "959": [0, 0.43056, 0, 0.05556, 0.48472], + "960": [0, 0.43056, 0.03588, 0, 0.57003], + "961": [0.19444, 0.43056, 0, 0.08334, 0.51702], + "962": [0.09722, 0.43056, 0.07986, 0.08334, 0.36285], + "963": [0, 0.43056, 0.03588, 0, 0.57141], + "964": [0, 0.43056, 0.1132, 0.02778, 0.43715], + "965": [0, 0.43056, 0.03588, 0.02778, 0.54028], + "966": [0.19444, 0.43056, 0, 0.08334, 0.65417], + "967": [0.19444, 0.43056, 0, 0.05556, 0.62569], + "968": [0.19444, 0.69444, 0.03588, 0.11111, 0.65139], + "969": [0, 0.43056, 0.03588, 0, 0.62245], + "977": [0, 0.69444, 0, 0.08334, 0.59144], + "981": [0.19444, 0.69444, 0, 0.08334, 0.59583], + "982": [0, 0.43056, 0.02778, 0, 0.82813], + "1009": [0.19444, 0.43056, 0, 0.08334, 0.51702], + "1013": [0, 0.43056, 0, 0.05556, 0.4059], + "57649": [0, 0.43056, 0, 0.02778, 0.32246], + "57911": [0.19444, 0.43056, 0, 0.08334, 0.38403] + }, + "SansSerif-Bold": { + "32": [0, 0, 0, 0, 0.25], + "33": [0, 0.69444, 0, 0, 0.36667], + "34": [0, 0.69444, 0, 0, 0.55834], + "35": [0.19444, 0.69444, 0, 0, 0.91667], + "36": [0.05556, 0.75, 0, 0, 0.55], + "37": [0.05556, 0.75, 0, 0, 1.02912], + "38": [0, 0.69444, 0, 0, 0.83056], + "39": [0, 0.69444, 0, 0, 0.30556], + "40": [0.25, 0.75, 0, 0, 0.42778], + "41": [0.25, 0.75, 0, 0, 0.42778], + "42": [0, 0.75, 0, 0, 0.55], + "43": [0.11667, 0.61667, 0, 0, 0.85556], + "44": [0.10556, 0.13056, 0, 0, 0.30556], + "45": [0, 0.45833, 0, 0, 0.36667], + "46": [0, 0.13056, 0, 0, 0.30556], + "47": [0.25, 0.75, 0, 0, 0.55], + "48": [0, 0.69444, 0, 0, 0.55], + "49": [0, 0.69444, 0, 0, 0.55], + "50": [0, 0.69444, 0, 0, 0.55], + "51": [0, 0.69444, 0, 0, 0.55], + "52": [0, 0.69444, 0, 0, 0.55], + "53": [0, 0.69444, 0, 0, 0.55], + "54": [0, 0.69444, 0, 0, 0.55], + "55": [0, 0.69444, 0, 0, 0.55], + "56": [0, 0.69444, 0, 0, 0.55], + "57": [0, 0.69444, 0, 0, 0.55], + "58": [0, 0.45833, 0, 0, 0.30556], + "59": [0.10556, 0.45833, 0, 0, 0.30556], + "61": [-0.09375, 0.40625, 0, 0, 0.85556], + "63": [0, 0.69444, 0, 0, 0.51945], + "64": [0, 0.69444, 0, 0, 0.73334], + "65": [0, 0.69444, 0, 0, 0.73334], + "66": [0, 0.69444, 0, 0, 0.73334], + "67": [0, 0.69444, 0, 0, 0.70278], + "68": [0, 0.69444, 0, 0, 0.79445], + "69": [0, 0.69444, 0, 0, 0.64167], + "70": [0, 0.69444, 0, 0, 0.61111], + "71": [0, 0.69444, 0, 0, 0.73334], + "72": [0, 0.69444, 0, 0, 0.79445], + "73": [0, 0.69444, 0, 0, 0.33056], + "74": [0, 0.69444, 0, 0, 0.51945], + "75": [0, 0.69444, 0, 0, 0.76389], + "76": [0, 0.69444, 0, 0, 0.58056], + "77": [0, 0.69444, 0, 0, 0.97778], + "78": [0, 0.69444, 0, 0, 0.79445], + "79": [0, 0.69444, 0, 0, 0.79445], + "80": [0, 0.69444, 0, 0, 0.70278], + "81": [0.10556, 0.69444, 0, 0, 0.79445], + "82": [0, 0.69444, 0, 0, 0.70278], + "83": [0, 0.69444, 0, 0, 0.61111], + "84": [0, 0.69444, 0, 0, 0.73334], + "85": [0, 0.69444, 0, 0, 0.76389], + "86": [0, 0.69444, 0.01528, 0, 0.73334], + "87": [0, 0.69444, 0.01528, 0, 1.03889], + "88": [0, 0.69444, 0, 0, 0.73334], + "89": [0, 0.69444, 0.0275, 0, 0.73334], + "90": [0, 0.69444, 0, 0, 0.67223], + "91": [0.25, 0.75, 0, 0, 0.34306], + "93": [0.25, 0.75, 0, 0, 0.34306], + "94": [0, 0.69444, 0, 0, 0.55], + "95": [0.35, 0.10833, 0.03056, 0, 0.55], + "97": [0, 0.45833, 0, 0, 0.525], + "98": [0, 0.69444, 0, 0, 0.56111], + "99": [0, 0.45833, 0, 0, 0.48889], + "100": [0, 0.69444, 0, 0, 0.56111], + "101": [0, 0.45833, 0, 0, 0.51111], + "102": [0, 0.69444, 0.07639, 0, 0.33611], + "103": [0.19444, 0.45833, 0.01528, 0, 0.55], + "104": [0, 0.69444, 0, 0, 0.56111], + "105": [0, 0.69444, 0, 0, 0.25556], + "106": [0.19444, 0.69444, 0, 0, 0.28611], + "107": [0, 0.69444, 0, 0, 0.53056], + "108": [0, 0.69444, 0, 0, 0.25556], + "109": [0, 0.45833, 0, 0, 0.86667], + "110": [0, 0.45833, 0, 0, 0.56111], + "111": [0, 0.45833, 0, 0, 0.55], + "112": [0.19444, 0.45833, 0, 0, 0.56111], + "113": [0.19444, 0.45833, 0, 0, 0.56111], + "114": [0, 0.45833, 0.01528, 0, 0.37222], + "115": [0, 0.45833, 0, 0, 0.42167], + "116": [0, 0.58929, 0, 0, 0.40417], + "117": [0, 0.45833, 0, 0, 0.56111], + "118": [0, 0.45833, 0.01528, 0, 0.5], + "119": [0, 0.45833, 0.01528, 0, 0.74445], + "120": [0, 0.45833, 0, 0, 0.5], + "121": [0.19444, 0.45833, 0.01528, 0, 0.5], + "122": [0, 0.45833, 0, 0, 0.47639], + "126": [0.35, 0.34444, 0, 0, 0.55], + "160": [0, 0, 0, 0, 0.25], + "168": [0, 0.69444, 0, 0, 0.55], + "176": [0, 0.69444, 0, 0, 0.73334], + "180": [0, 0.69444, 0, 0, 0.55], + "184": [0.17014, 0, 0, 0, 0.48889], + "305": [0, 0.45833, 0, 0, 0.25556], + "567": [0.19444, 0.45833, 0, 0, 0.28611], + "710": [0, 0.69444, 0, 0, 0.55], + "711": [0, 0.63542, 0, 0, 0.55], + "713": [0, 0.63778, 0, 0, 0.55], + "728": [0, 0.69444, 0, 0, 0.55], + "729": [0, 0.69444, 0, 0, 0.30556], + "730": [0, 0.69444, 0, 0, 0.73334], + "732": [0, 0.69444, 0, 0, 0.55], + "733": [0, 0.69444, 0, 0, 0.55], + "915": [0, 0.69444, 0, 0, 0.58056], + "916": [0, 0.69444, 0, 0, 0.91667], + "920": [0, 0.69444, 0, 0, 0.85556], + "923": [0, 0.69444, 0, 0, 0.67223], + "926": [0, 0.69444, 0, 0, 0.73334], + "928": [0, 0.69444, 0, 0, 0.79445], + "931": [0, 0.69444, 0, 0, 0.79445], + "933": [0, 0.69444, 0, 0, 0.85556], + "934": [0, 0.69444, 0, 0, 0.79445], + "936": [0, 0.69444, 0, 0, 0.85556], + "937": [0, 0.69444, 0, 0, 0.79445], + "8211": [0, 0.45833, 0.03056, 0, 0.55], + "8212": [0, 0.45833, 0.03056, 0, 1.10001], + "8216": [0, 0.69444, 0, 0, 0.30556], + "8217": [0, 0.69444, 0, 0, 0.30556], + "8220": [0, 0.69444, 0, 0, 0.55834], + "8221": [0, 0.69444, 0, 0, 0.55834] + }, + "SansSerif-Italic": { + "32": [0, 0, 0, 0, 0.25], + "33": [0, 0.69444, 0.05733, 0, 0.31945], + "34": [0, 0.69444, 316e-5, 0, 0.5], + "35": [0.19444, 0.69444, 0.05087, 0, 0.83334], + "36": [0.05556, 0.75, 0.11156, 0, 0.5], + "37": [0.05556, 0.75, 0.03126, 0, 0.83334], + "38": [0, 0.69444, 0.03058, 0, 0.75834], + "39": [0, 0.69444, 0.07816, 0, 0.27778], + "40": [0.25, 0.75, 0.13164, 0, 0.38889], + "41": [0.25, 0.75, 0.02536, 0, 0.38889], + "42": [0, 0.75, 0.11775, 0, 0.5], + "43": [0.08333, 0.58333, 0.02536, 0, 0.77778], + "44": [0.125, 0.08333, 0, 0, 0.27778], + "45": [0, 0.44444, 0.01946, 0, 0.33333], + "46": [0, 0.08333, 0, 0, 0.27778], + "47": [0.25, 0.75, 0.13164, 0, 0.5], + "48": [0, 0.65556, 0.11156, 0, 0.5], + "49": [0, 0.65556, 0.11156, 0, 0.5], + "50": [0, 0.65556, 0.11156, 0, 0.5], + "51": [0, 0.65556, 0.11156, 0, 0.5], + "52": [0, 0.65556, 0.11156, 0, 0.5], + "53": [0, 0.65556, 0.11156, 0, 0.5], + "54": [0, 0.65556, 0.11156, 0, 0.5], + "55": [0, 0.65556, 0.11156, 0, 0.5], + "56": [0, 0.65556, 0.11156, 0, 0.5], + "57": [0, 0.65556, 0.11156, 0, 0.5], + "58": [0, 0.44444, 0.02502, 0, 0.27778], + "59": [0.125, 0.44444, 0.02502, 0, 0.27778], + "61": [-0.13, 0.37, 0.05087, 0, 0.77778], + "63": [0, 0.69444, 0.11809, 0, 0.47222], + "64": [0, 0.69444, 0.07555, 0, 0.66667], + "65": [0, 0.69444, 0, 0, 0.66667], + "66": [0, 0.69444, 0.08293, 0, 0.66667], + "67": [0, 0.69444, 0.11983, 0, 0.63889], + "68": [0, 0.69444, 0.07555, 0, 0.72223], + "69": [0, 0.69444, 0.11983, 0, 0.59722], + "70": [0, 0.69444, 0.13372, 0, 0.56945], + "71": [0, 0.69444, 0.11983, 0, 0.66667], + "72": [0, 0.69444, 0.08094, 0, 0.70834], + "73": [0, 0.69444, 0.13372, 0, 0.27778], + "74": [0, 0.69444, 0.08094, 0, 0.47222], + "75": [0, 0.69444, 0.11983, 0, 0.69445], + "76": [0, 0.69444, 0, 0, 0.54167], + "77": [0, 0.69444, 0.08094, 0, 0.875], + "78": [0, 0.69444, 0.08094, 0, 0.70834], + "79": [0, 0.69444, 0.07555, 0, 0.73611], + "80": [0, 0.69444, 0.08293, 0, 0.63889], + "81": [0.125, 0.69444, 0.07555, 0, 0.73611], + "82": [0, 0.69444, 0.08293, 0, 0.64584], + "83": [0, 0.69444, 0.09205, 0, 0.55556], + "84": [0, 0.69444, 0.13372, 0, 0.68056], + "85": [0, 0.69444, 0.08094, 0, 0.6875], + "86": [0, 0.69444, 0.1615, 0, 0.66667], + "87": [0, 0.69444, 0.1615, 0, 0.94445], + "88": [0, 0.69444, 0.13372, 0, 0.66667], + "89": [0, 0.69444, 0.17261, 0, 0.66667], + "90": [0, 0.69444, 0.11983, 0, 0.61111], + "91": [0.25, 0.75, 0.15942, 0, 0.28889], + "93": [0.25, 0.75, 0.08719, 0, 0.28889], + "94": [0, 0.69444, 0.0799, 0, 0.5], + "95": [0.35, 0.09444, 0.08616, 0, 0.5], + "97": [0, 0.44444, 981e-5, 0, 0.48056], + "98": [0, 0.69444, 0.03057, 0, 0.51667], + "99": [0, 0.44444, 0.08336, 0, 0.44445], + "100": [0, 0.69444, 0.09483, 0, 0.51667], + "101": [0, 0.44444, 0.06778, 0, 0.44445], + "102": [0, 0.69444, 0.21705, 0, 0.30556], + "103": [0.19444, 0.44444, 0.10836, 0, 0.5], + "104": [0, 0.69444, 0.01778, 0, 0.51667], + "105": [0, 0.67937, 0.09718, 0, 0.23889], + "106": [0.19444, 0.67937, 0.09162, 0, 0.26667], + "107": [0, 0.69444, 0.08336, 0, 0.48889], + "108": [0, 0.69444, 0.09483, 0, 0.23889], + "109": [0, 0.44444, 0.01778, 0, 0.79445], + "110": [0, 0.44444, 0.01778, 0, 0.51667], + "111": [0, 0.44444, 0.06613, 0, 0.5], + "112": [0.19444, 0.44444, 0.0389, 0, 0.51667], + "113": [0.19444, 0.44444, 0.04169, 0, 0.51667], + "114": [0, 0.44444, 0.10836, 0, 0.34167], + "115": [0, 0.44444, 0.0778, 0, 0.38333], + "116": [0, 0.57143, 0.07225, 0, 0.36111], + "117": [0, 0.44444, 0.04169, 0, 0.51667], + "118": [0, 0.44444, 0.10836, 0, 0.46111], + "119": [0, 0.44444, 0.10836, 0, 0.68334], + "120": [0, 0.44444, 0.09169, 0, 0.46111], + "121": [0.19444, 0.44444, 0.10836, 0, 0.46111], + "122": [0, 0.44444, 0.08752, 0, 0.43472], + "126": [0.35, 0.32659, 0.08826, 0, 0.5], + "160": [0, 0, 0, 0, 0.25], + "168": [0, 0.67937, 0.06385, 0, 0.5], + "176": [0, 0.69444, 0, 0, 0.73752], + "184": [0.17014, 0, 0, 0, 0.44445], + "305": [0, 0.44444, 0.04169, 0, 0.23889], + "567": [0.19444, 0.44444, 0.04169, 0, 0.26667], + "710": [0, 0.69444, 0.0799, 0, 0.5], + "711": [0, 0.63194, 0.08432, 0, 0.5], + "713": [0, 0.60889, 0.08776, 0, 0.5], + "714": [0, 0.69444, 0.09205, 0, 0.5], + "715": [0, 0.69444, 0, 0, 0.5], + "728": [0, 0.69444, 0.09483, 0, 0.5], + "729": [0, 0.67937, 0.07774, 0, 0.27778], + "730": [0, 0.69444, 0, 0, 0.73752], + "732": [0, 0.67659, 0.08826, 0, 0.5], + "733": [0, 0.69444, 0.09205, 0, 0.5], + "915": [0, 0.69444, 0.13372, 0, 0.54167], + "916": [0, 0.69444, 0, 0, 0.83334], + "920": [0, 0.69444, 0.07555, 0, 0.77778], + "923": [0, 0.69444, 0, 0, 0.61111], + "926": [0, 0.69444, 0.12816, 0, 0.66667], + "928": [0, 0.69444, 0.08094, 0, 0.70834], + "931": [0, 0.69444, 0.11983, 0, 0.72222], + "933": [0, 0.69444, 0.09031, 0, 0.77778], + "934": [0, 0.69444, 0.04603, 0, 0.72222], + "936": [0, 0.69444, 0.09031, 0, 0.77778], + "937": [0, 0.69444, 0.08293, 0, 0.72222], + "8211": [0, 0.44444, 0.08616, 0, 0.5], + "8212": [0, 0.44444, 0.08616, 0, 1], + "8216": [0, 0.69444, 0.07816, 0, 0.27778], + "8217": [0, 0.69444, 0.07816, 0, 0.27778], + "8220": [0, 0.69444, 0.14205, 0, 0.5], + "8221": [0, 0.69444, 316e-5, 0, 0.5] + }, + "SansSerif-Regular": { + "32": [0, 0, 0, 0, 0.25], + "33": [0, 0.69444, 0, 0, 0.31945], + "34": [0, 0.69444, 0, 0, 0.5], + "35": [0.19444, 0.69444, 0, 0, 0.83334], + "36": [0.05556, 0.75, 0, 0, 0.5], + "37": [0.05556, 0.75, 0, 0, 0.83334], + "38": [0, 0.69444, 0, 0, 0.75834], + "39": [0, 0.69444, 0, 0, 0.27778], + "40": [0.25, 0.75, 0, 0, 0.38889], + "41": [0.25, 0.75, 0, 0, 0.38889], + "42": [0, 0.75, 0, 0, 0.5], + "43": [0.08333, 0.58333, 0, 0, 0.77778], + "44": [0.125, 0.08333, 0, 0, 0.27778], + "45": [0, 0.44444, 0, 0, 0.33333], + "46": [0, 0.08333, 0, 0, 0.27778], + "47": [0.25, 0.75, 0, 0, 0.5], + "48": [0, 0.65556, 0, 0, 0.5], + "49": [0, 0.65556, 0, 0, 0.5], + "50": [0, 0.65556, 0, 0, 0.5], + "51": [0, 0.65556, 0, 0, 0.5], + "52": [0, 0.65556, 0, 0, 0.5], + "53": [0, 0.65556, 0, 0, 0.5], + "54": [0, 0.65556, 0, 0, 0.5], + "55": [0, 0.65556, 0, 0, 0.5], + "56": [0, 0.65556, 0, 0, 0.5], + "57": [0, 0.65556, 0, 0, 0.5], + "58": [0, 0.44444, 0, 0, 0.27778], + "59": [0.125, 0.44444, 0, 0, 0.27778], + "61": [-0.13, 0.37, 0, 0, 0.77778], + "63": [0, 0.69444, 0, 0, 0.47222], + "64": [0, 0.69444, 0, 0, 0.66667], + "65": [0, 0.69444, 0, 0, 0.66667], + "66": [0, 0.69444, 0, 0, 0.66667], + "67": [0, 0.69444, 0, 0, 0.63889], + "68": [0, 0.69444, 0, 0, 0.72223], + "69": [0, 0.69444, 0, 0, 0.59722], + "70": [0, 0.69444, 0, 0, 0.56945], + "71": [0, 0.69444, 0, 0, 0.66667], + "72": [0, 0.69444, 0, 0, 0.70834], + "73": [0, 0.69444, 0, 0, 0.27778], + "74": [0, 0.69444, 0, 0, 0.47222], + "75": [0, 0.69444, 0, 0, 0.69445], + "76": [0, 0.69444, 0, 0, 0.54167], + "77": [0, 0.69444, 0, 0, 0.875], + "78": [0, 0.69444, 0, 0, 0.70834], + "79": [0, 0.69444, 0, 0, 0.73611], + "80": [0, 0.69444, 0, 0, 0.63889], + "81": [0.125, 0.69444, 0, 0, 0.73611], + "82": [0, 0.69444, 0, 0, 0.64584], + "83": [0, 0.69444, 0, 0, 0.55556], + "84": [0, 0.69444, 0, 0, 0.68056], + "85": [0, 0.69444, 0, 0, 0.6875], + "86": [0, 0.69444, 0.01389, 0, 0.66667], + "87": [0, 0.69444, 0.01389, 0, 0.94445], + "88": [0, 0.69444, 0, 0, 0.66667], + "89": [0, 0.69444, 0.025, 0, 0.66667], + "90": [0, 0.69444, 0, 0, 0.61111], + "91": [0.25, 0.75, 0, 0, 0.28889], + "93": [0.25, 0.75, 0, 0, 0.28889], + "94": [0, 0.69444, 0, 0, 0.5], + "95": [0.35, 0.09444, 0.02778, 0, 0.5], + "97": [0, 0.44444, 0, 0, 0.48056], + "98": [0, 0.69444, 0, 0, 0.51667], + "99": [0, 0.44444, 0, 0, 0.44445], + "100": [0, 0.69444, 0, 0, 0.51667], + "101": [0, 0.44444, 0, 0, 0.44445], + "102": [0, 0.69444, 0.06944, 0, 0.30556], + "103": [0.19444, 0.44444, 0.01389, 0, 0.5], + "104": [0, 0.69444, 0, 0, 0.51667], + "105": [0, 0.67937, 0, 0, 0.23889], + "106": [0.19444, 0.67937, 0, 0, 0.26667], + "107": [0, 0.69444, 0, 0, 0.48889], + "108": [0, 0.69444, 0, 0, 0.23889], + "109": [0, 0.44444, 0, 0, 0.79445], + "110": [0, 0.44444, 0, 0, 0.51667], + "111": [0, 0.44444, 0, 0, 0.5], + "112": [0.19444, 0.44444, 0, 0, 0.51667], + "113": [0.19444, 0.44444, 0, 0, 0.51667], + "114": [0, 0.44444, 0.01389, 0, 0.34167], + "115": [0, 0.44444, 0, 0, 0.38333], + "116": [0, 0.57143, 0, 0, 0.36111], + "117": [0, 0.44444, 0, 0, 0.51667], + "118": [0, 0.44444, 0.01389, 0, 0.46111], + "119": [0, 0.44444, 0.01389, 0, 0.68334], + "120": [0, 0.44444, 0, 0, 0.46111], + "121": [0.19444, 0.44444, 0.01389, 0, 0.46111], + "122": [0, 0.44444, 0, 0, 0.43472], + "126": [0.35, 0.32659, 0, 0, 0.5], + "160": [0, 0, 0, 0, 0.25], + "168": [0, 0.67937, 0, 0, 0.5], + "176": [0, 0.69444, 0, 0, 0.66667], + "184": [0.17014, 0, 0, 0, 0.44445], + "305": [0, 0.44444, 0, 0, 0.23889], + "567": [0.19444, 0.44444, 0, 0, 0.26667], + "710": [0, 0.69444, 0, 0, 0.5], + "711": [0, 0.63194, 0, 0, 0.5], + "713": [0, 0.60889, 0, 0, 0.5], + "714": [0, 0.69444, 0, 0, 0.5], + "715": [0, 0.69444, 0, 0, 0.5], + "728": [0, 0.69444, 0, 0, 0.5], + "729": [0, 0.67937, 0, 0, 0.27778], + "730": [0, 0.69444, 0, 0, 0.66667], + "732": [0, 0.67659, 0, 0, 0.5], + "733": [0, 0.69444, 0, 0, 0.5], + "915": [0, 0.69444, 0, 0, 0.54167], + "916": [0, 0.69444, 0, 0, 0.83334], + "920": [0, 0.69444, 0, 0, 0.77778], + "923": [0, 0.69444, 0, 0, 0.61111], + "926": [0, 0.69444, 0, 0, 0.66667], + "928": [0, 0.69444, 0, 0, 0.70834], + "931": [0, 0.69444, 0, 0, 0.72222], + "933": [0, 0.69444, 0, 0, 0.77778], + "934": [0, 0.69444, 0, 0, 0.72222], + "936": [0, 0.69444, 0, 0, 0.77778], + "937": [0, 0.69444, 0, 0, 0.72222], + "8211": [0, 0.44444, 0.02778, 0, 0.5], + "8212": [0, 0.44444, 0.02778, 0, 1], + "8216": [0, 0.69444, 0, 0, 0.27778], + "8217": [0, 0.69444, 0, 0, 0.27778], + "8220": [0, 0.69444, 0, 0, 0.5], + "8221": [0, 0.69444, 0, 0, 0.5] + }, + "Script-Regular": { + "32": [0, 0, 0, 0, 0.25], + "65": [0, 0.7, 0.22925, 0, 0.80253], + "66": [0, 0.7, 0.04087, 0, 0.90757], + "67": [0, 0.7, 0.1689, 0, 0.66619], + "68": [0, 0.7, 0.09371, 0, 0.77443], + "69": [0, 0.7, 0.18583, 0, 0.56162], + "70": [0, 0.7, 0.13634, 0, 0.89544], + "71": [0, 0.7, 0.17322, 0, 0.60961], + "72": [0, 0.7, 0.29694, 0, 0.96919], + "73": [0, 0.7, 0.19189, 0, 0.80907], + "74": [0.27778, 0.7, 0.19189, 0, 1.05159], + "75": [0, 0.7, 0.31259, 0, 0.91364], + "76": [0, 0.7, 0.19189, 0, 0.87373], + "77": [0, 0.7, 0.15981, 0, 1.08031], + "78": [0, 0.7, 0.3525, 0, 0.9015], + "79": [0, 0.7, 0.08078, 0, 0.73787], + "80": [0, 0.7, 0.08078, 0, 1.01262], + "81": [0, 0.7, 0.03305, 0, 0.88282], + "82": [0, 0.7, 0.06259, 0, 0.85], + "83": [0, 0.7, 0.19189, 0, 0.86767], + "84": [0, 0.7, 0.29087, 0, 0.74697], + "85": [0, 0.7, 0.25815, 0, 0.79996], + "86": [0, 0.7, 0.27523, 0, 0.62204], + "87": [0, 0.7, 0.27523, 0, 0.80532], + "88": [0, 0.7, 0.26006, 0, 0.94445], + "89": [0, 0.7, 0.2939, 0, 0.70961], + "90": [0, 0.7, 0.24037, 0, 0.8212], + "160": [0, 0, 0, 0, 0.25] + }, + "Size1-Regular": { + "32": [0, 0, 0, 0, 0.25], + "40": [0.35001, 0.85, 0, 0, 0.45834], + "41": [0.35001, 0.85, 0, 0, 0.45834], + "47": [0.35001, 0.85, 0, 0, 0.57778], + "91": [0.35001, 0.85, 0, 0, 0.41667], + "92": [0.35001, 0.85, 0, 0, 0.57778], + "93": [0.35001, 0.85, 0, 0, 0.41667], + "123": [0.35001, 0.85, 0, 0, 0.58334], + "125": [0.35001, 0.85, 0, 0, 0.58334], + "160": [0, 0, 0, 0, 0.25], + "710": [0, 0.72222, 0, 0, 0.55556], + "732": [0, 0.72222, 0, 0, 0.55556], + "770": [0, 0.72222, 0, 0, 0.55556], + "771": [0, 0.72222, 0, 0, 0.55556], + "8214": [-99e-5, 0.601, 0, 0, 0.77778], + "8593": [1e-5, 0.6, 0, 0, 0.66667], + "8595": [1e-5, 0.6, 0, 0, 0.66667], + "8657": [1e-5, 0.6, 0, 0, 0.77778], + "8659": [1e-5, 0.6, 0, 0, 0.77778], + "8719": [0.25001, 0.75, 0, 0, 0.94445], + "8720": [0.25001, 0.75, 0, 0, 0.94445], + "8721": [0.25001, 0.75, 0, 0, 1.05556], + "8730": [0.35001, 0.85, 0, 0, 1], + "8739": [-599e-5, 0.606, 0, 0, 0.33333], + "8741": [-599e-5, 0.606, 0, 0, 0.55556], + "8747": [0.30612, 0.805, 0.19445, 0, 0.47222], + "8748": [0.306, 0.805, 0.19445, 0, 0.47222], + "8749": [0.306, 0.805, 0.19445, 0, 0.47222], + "8750": [0.30612, 0.805, 0.19445, 0, 0.47222], + "8896": [0.25001, 0.75, 0, 0, 0.83334], + "8897": [0.25001, 0.75, 0, 0, 0.83334], + "8898": [0.25001, 0.75, 0, 0, 0.83334], + "8899": [0.25001, 0.75, 0, 0, 0.83334], + "8968": [0.35001, 0.85, 0, 0, 0.47222], + "8969": [0.35001, 0.85, 0, 0, 0.47222], + "8970": [0.35001, 0.85, 0, 0, 0.47222], + "8971": [0.35001, 0.85, 0, 0, 0.47222], + "9168": [-99e-5, 0.601, 0, 0, 0.66667], + "10216": [0.35001, 0.85, 0, 0, 0.47222], + "10217": [0.35001, 0.85, 0, 0, 0.47222], + "10752": [0.25001, 0.75, 0, 0, 1.11111], + "10753": [0.25001, 0.75, 0, 0, 1.11111], + "10754": [0.25001, 0.75, 0, 0, 1.11111], + "10756": [0.25001, 0.75, 0, 0, 0.83334], + "10758": [0.25001, 0.75, 0, 0, 0.83334] + }, + "Size2-Regular": { + "32": [0, 0, 0, 0, 0.25], + "40": [0.65002, 1.15, 0, 0, 0.59722], + "41": [0.65002, 1.15, 0, 0, 0.59722], + "47": [0.65002, 1.15, 0, 0, 0.81111], + "91": [0.65002, 1.15, 0, 0, 0.47222], + "92": [0.65002, 1.15, 0, 0, 0.81111], + "93": [0.65002, 1.15, 0, 0, 0.47222], + "123": [0.65002, 1.15, 0, 0, 0.66667], + "125": [0.65002, 1.15, 0, 0, 0.66667], + "160": [0, 0, 0, 0, 0.25], + "710": [0, 0.75, 0, 0, 1], + "732": [0, 0.75, 0, 0, 1], + "770": [0, 0.75, 0, 0, 1], + "771": [0, 0.75, 0, 0, 1], + "8719": [0.55001, 1.05, 0, 0, 1.27778], + "8720": [0.55001, 1.05, 0, 0, 1.27778], + "8721": [0.55001, 1.05, 0, 0, 1.44445], + "8730": [0.65002, 1.15, 0, 0, 1], + "8747": [0.86225, 1.36, 0.44445, 0, 0.55556], + "8748": [0.862, 1.36, 0.44445, 0, 0.55556], + "8749": [0.862, 1.36, 0.44445, 0, 0.55556], + "8750": [0.86225, 1.36, 0.44445, 0, 0.55556], + "8896": [0.55001, 1.05, 0, 0, 1.11111], + "8897": [0.55001, 1.05, 0, 0, 1.11111], + "8898": [0.55001, 1.05, 0, 0, 1.11111], + "8899": [0.55001, 1.05, 0, 0, 1.11111], + "8968": [0.65002, 1.15, 0, 0, 0.52778], + "8969": [0.65002, 1.15, 0, 0, 0.52778], + "8970": [0.65002, 1.15, 0, 0, 0.52778], + "8971": [0.65002, 1.15, 0, 0, 0.52778], + "10216": [0.65002, 1.15, 0, 0, 0.61111], + "10217": [0.65002, 1.15, 0, 0, 0.61111], + "10752": [0.55001, 1.05, 0, 0, 1.51112], + "10753": [0.55001, 1.05, 0, 0, 1.51112], + "10754": [0.55001, 1.05, 0, 0, 1.51112], + "10756": [0.55001, 1.05, 0, 0, 1.11111], + "10758": [0.55001, 1.05, 0, 0, 1.11111] + }, + "Size3-Regular": { + "32": [0, 0, 0, 0, 0.25], + "40": [0.95003, 1.45, 0, 0, 0.73611], + "41": [0.95003, 1.45, 0, 0, 0.73611], + "47": [0.95003, 1.45, 0, 0, 1.04445], + "91": [0.95003, 1.45, 0, 0, 0.52778], + "92": [0.95003, 1.45, 0, 0, 1.04445], + "93": [0.95003, 1.45, 0, 0, 0.52778], + "123": [0.95003, 1.45, 0, 0, 0.75], + "125": [0.95003, 1.45, 0, 0, 0.75], + "160": [0, 0, 0, 0, 0.25], + "710": [0, 0.75, 0, 0, 1.44445], + "732": [0, 0.75, 0, 0, 1.44445], + "770": [0, 0.75, 0, 0, 1.44445], + "771": [0, 0.75, 0, 0, 1.44445], + "8730": [0.95003, 1.45, 0, 0, 1], + "8968": [0.95003, 1.45, 0, 0, 0.58334], + "8969": [0.95003, 1.45, 0, 0, 0.58334], + "8970": [0.95003, 1.45, 0, 0, 0.58334], + "8971": [0.95003, 1.45, 0, 0, 0.58334], + "10216": [0.95003, 1.45, 0, 0, 0.75], + "10217": [0.95003, 1.45, 0, 0, 0.75] + }, + "Size4-Regular": { + "32": [0, 0, 0, 0, 0.25], + "40": [1.25003, 1.75, 0, 0, 0.79167], + "41": [1.25003, 1.75, 0, 0, 0.79167], + "47": [1.25003, 1.75, 0, 0, 1.27778], + "91": [1.25003, 1.75, 0, 0, 0.58334], + "92": [1.25003, 1.75, 0, 0, 1.27778], + "93": [1.25003, 1.75, 0, 0, 0.58334], + "123": [1.25003, 1.75, 0, 0, 0.80556], + "125": [1.25003, 1.75, 0, 0, 0.80556], + "160": [0, 0, 0, 0, 0.25], + "710": [0, 0.825, 0, 0, 1.8889], + "732": [0, 0.825, 0, 0, 1.8889], + "770": [0, 0.825, 0, 0, 1.8889], + "771": [0, 0.825, 0, 0, 1.8889], + "8730": [1.25003, 1.75, 0, 0, 1], + "8968": [1.25003, 1.75, 0, 0, 0.63889], + "8969": [1.25003, 1.75, 0, 0, 0.63889], + "8970": [1.25003, 1.75, 0, 0, 0.63889], + "8971": [1.25003, 1.75, 0, 0, 0.63889], + "9115": [0.64502, 1.155, 0, 0, 0.875], + "9116": [1e-5, 0.6, 0, 0, 0.875], + "9117": [0.64502, 1.155, 0, 0, 0.875], + "9118": [0.64502, 1.155, 0, 0, 0.875], + "9119": [1e-5, 0.6, 0, 0, 0.875], + "9120": [0.64502, 1.155, 0, 0, 0.875], + "9121": [0.64502, 1.155, 0, 0, 0.66667], + "9122": [-99e-5, 0.601, 0, 0, 0.66667], + "9123": [0.64502, 1.155, 0, 0, 0.66667], + "9124": [0.64502, 1.155, 0, 0, 0.66667], + "9125": [-99e-5, 0.601, 0, 0, 0.66667], + "9126": [0.64502, 1.155, 0, 0, 0.66667], + "9127": [1e-5, 0.9, 0, 0, 0.88889], + "9128": [0.65002, 1.15, 0, 0, 0.88889], + "9129": [0.90001, 0, 0, 0, 0.88889], + "9130": [0, 0.3, 0, 0, 0.88889], + "9131": [1e-5, 0.9, 0, 0, 0.88889], + "9132": [0.65002, 1.15, 0, 0, 0.88889], + "9133": [0.90001, 0, 0, 0, 0.88889], + "9143": [0.88502, 0.915, 0, 0, 1.05556], + "10216": [1.25003, 1.75, 0, 0, 0.80556], + "10217": [1.25003, 1.75, 0, 0, 0.80556], + "57344": [-499e-5, 0.605, 0, 0, 1.05556], + "57345": [-499e-5, 0.605, 0, 0, 1.05556], + "57680": [0, 0.12, 0, 0, 0.45], + "57681": [0, 0.12, 0, 0, 0.45], + "57682": [0, 0.12, 0, 0, 0.45], + "57683": [0, 0.12, 0, 0, 0.45] + }, + "Typewriter-Regular": { + "32": [0, 0, 0, 0, 0.525], + "33": [0, 0.61111, 0, 0, 0.525], + "34": [0, 0.61111, 0, 0, 0.525], + "35": [0, 0.61111, 0, 0, 0.525], + "36": [0.08333, 0.69444, 0, 0, 0.525], + "37": [0.08333, 0.69444, 0, 0, 0.525], + "38": [0, 0.61111, 0, 0, 0.525], + "39": [0, 0.61111, 0, 0, 0.525], + "40": [0.08333, 0.69444, 0, 0, 0.525], + "41": [0.08333, 0.69444, 0, 0, 0.525], + "42": [0, 0.52083, 0, 0, 0.525], + "43": [-0.08056, 0.53055, 0, 0, 0.525], + "44": [0.13889, 0.125, 0, 0, 0.525], + "45": [-0.08056, 0.53055, 0, 0, 0.525], + "46": [0, 0.125, 0, 0, 0.525], + "47": [0.08333, 0.69444, 0, 0, 0.525], + "48": [0, 0.61111, 0, 0, 0.525], + "49": [0, 0.61111, 0, 0, 0.525], + "50": [0, 0.61111, 0, 0, 0.525], + "51": [0, 0.61111, 0, 0, 0.525], + "52": [0, 0.61111, 0, 0, 0.525], + "53": [0, 0.61111, 0, 0, 0.525], + "54": [0, 0.61111, 0, 0, 0.525], + "55": [0, 0.61111, 0, 0, 0.525], + "56": [0, 0.61111, 0, 0, 0.525], + "57": [0, 0.61111, 0, 0, 0.525], + "58": [0, 0.43056, 0, 0, 0.525], + "59": [0.13889, 0.43056, 0, 0, 0.525], + "60": [-0.05556, 0.55556, 0, 0, 0.525], + "61": [-0.19549, 0.41562, 0, 0, 0.525], + "62": [-0.05556, 0.55556, 0, 0, 0.525], + "63": [0, 0.61111, 0, 0, 0.525], + "64": [0, 0.61111, 0, 0, 0.525], + "65": [0, 0.61111, 0, 0, 0.525], + "66": [0, 0.61111, 0, 0, 0.525], + "67": [0, 0.61111, 0, 0, 0.525], + "68": [0, 0.61111, 0, 0, 0.525], + "69": [0, 0.61111, 0, 0, 0.525], + "70": [0, 0.61111, 0, 0, 0.525], + "71": [0, 0.61111, 0, 0, 0.525], + "72": [0, 0.61111, 0, 0, 0.525], + "73": [0, 0.61111, 0, 0, 0.525], + "74": [0, 0.61111, 0, 0, 0.525], + "75": [0, 0.61111, 0, 0, 0.525], + "76": [0, 0.61111, 0, 0, 0.525], + "77": [0, 0.61111, 0, 0, 0.525], + "78": [0, 0.61111, 0, 0, 0.525], + "79": [0, 0.61111, 0, 0, 0.525], + "80": [0, 0.61111, 0, 0, 0.525], + "81": [0.13889, 0.61111, 0, 0, 0.525], + "82": [0, 0.61111, 0, 0, 0.525], + "83": [0, 0.61111, 0, 0, 0.525], + "84": [0, 0.61111, 0, 0, 0.525], + "85": [0, 0.61111, 0, 0, 0.525], + "86": [0, 0.61111, 0, 0, 0.525], + "87": [0, 0.61111, 0, 0, 0.525], + "88": [0, 0.61111, 0, 0, 0.525], + "89": [0, 0.61111, 0, 0, 0.525], + "90": [0, 0.61111, 0, 0, 0.525], + "91": [0.08333, 0.69444, 0, 0, 0.525], + "92": [0.08333, 0.69444, 0, 0, 0.525], + "93": [0.08333, 0.69444, 0, 0, 0.525], + "94": [0, 0.61111, 0, 0, 0.525], + "95": [0.09514, 0, 0, 0, 0.525], + "96": [0, 0.61111, 0, 0, 0.525], + "97": [0, 0.43056, 0, 0, 0.525], + "98": [0, 0.61111, 0, 0, 0.525], + "99": [0, 0.43056, 0, 0, 0.525], + "100": [0, 0.61111, 0, 0, 0.525], + "101": [0, 0.43056, 0, 0, 0.525], + "102": [0, 0.61111, 0, 0, 0.525], + "103": [0.22222, 0.43056, 0, 0, 0.525], + "104": [0, 0.61111, 0, 0, 0.525], + "105": [0, 0.61111, 0, 0, 0.525], + "106": [0.22222, 0.61111, 0, 0, 0.525], + "107": [0, 0.61111, 0, 0, 0.525], + "108": [0, 0.61111, 0, 0, 0.525], + "109": [0, 0.43056, 0, 0, 0.525], + "110": [0, 0.43056, 0, 0, 0.525], + "111": [0, 0.43056, 0, 0, 0.525], + "112": [0.22222, 0.43056, 0, 0, 0.525], + "113": [0.22222, 0.43056, 0, 0, 0.525], + "114": [0, 0.43056, 0, 0, 0.525], + "115": [0, 0.43056, 0, 0, 0.525], + "116": [0, 0.55358, 0, 0, 0.525], + "117": [0, 0.43056, 0, 0, 0.525], + "118": [0, 0.43056, 0, 0, 0.525], + "119": [0, 0.43056, 0, 0, 0.525], + "120": [0, 0.43056, 0, 0, 0.525], + "121": [0.22222, 0.43056, 0, 0, 0.525], + "122": [0, 0.43056, 0, 0, 0.525], + "123": [0.08333, 0.69444, 0, 0, 0.525], + "124": [0.08333, 0.69444, 0, 0, 0.525], + "125": [0.08333, 0.69444, 0, 0, 0.525], + "126": [0, 0.61111, 0, 0, 0.525], + "127": [0, 0.61111, 0, 0, 0.525], + "160": [0, 0, 0, 0, 0.525], + "176": [0, 0.61111, 0, 0, 0.525], + "184": [0.19445, 0, 0, 0, 0.525], + "305": [0, 0.43056, 0, 0, 0.525], + "567": [0.22222, 0.43056, 0, 0, 0.525], + "711": [0, 0.56597, 0, 0, 0.525], + "713": [0, 0.56555, 0, 0, 0.525], + "714": [0, 0.61111, 0, 0, 0.525], + "715": [0, 0.61111, 0, 0, 0.525], + "728": [0, 0.61111, 0, 0, 0.525], + "730": [0, 0.61111, 0, 0, 0.525], + "770": [0, 0.61111, 0, 0, 0.525], + "771": [0, 0.61111, 0, 0, 0.525], + "776": [0, 0.61111, 0, 0, 0.525], + "915": [0, 0.61111, 0, 0, 0.525], + "916": [0, 0.61111, 0, 0, 0.525], + "920": [0, 0.61111, 0, 0, 0.525], + "923": [0, 0.61111, 0, 0, 0.525], + "926": [0, 0.61111, 0, 0, 0.525], + "928": [0, 0.61111, 0, 0, 0.525], + "931": [0, 0.61111, 0, 0, 0.525], + "933": [0, 0.61111, 0, 0, 0.525], + "934": [0, 0.61111, 0, 0, 0.525], + "936": [0, 0.61111, 0, 0, 0.525], + "937": [0, 0.61111, 0, 0, 0.525], + "8216": [0, 0.61111, 0, 0, 0.525], + "8217": [0, 0.61111, 0, 0, 0.525], + "8242": [0, 0.61111, 0, 0, 0.525], + "9251": [0.11111, 0.21944, 0, 0, 0.525] + } + }; + var sigmasAndXis = { + slant: [0.25, 0.25, 0.25], + space: [0, 0, 0], + stretch: [0, 0, 0], + shrink: [0, 0, 0], + xHeight: [0.431, 0.431, 0.431], + quad: [1, 1.171, 1.472], + extraSpace: [0, 0, 0], + num1: [0.677, 0.732, 0.925], + num2: [0.394, 0.384, 0.387], + num3: [0.444, 0.471, 0.504], + denom1: [0.686, 0.752, 1.025], + denom2: [0.345, 0.344, 0.532], + sup1: [0.413, 0.503, 0.504], + sup2: [0.363, 0.431, 0.404], + sup3: [0.289, 0.286, 0.294], + sub1: [0.15, 0.143, 0.2], + sub2: [0.247, 0.286, 0.4], + supDrop: [0.386, 0.353, 0.494], + subDrop: [0.05, 0.071, 0.1], + delim1: [2.39, 1.7, 1.98], + delim2: [1.01, 1.157, 1.42], + axisHeight: [0.25, 0.25, 0.25], + defaultRuleThickness: [0.04, 0.049, 0.049], + bigOpSpacing1: [0.111, 0.111, 0.111], + bigOpSpacing2: [0.166, 0.166, 0.166], + bigOpSpacing3: [0.2, 0.2, 0.2], + bigOpSpacing4: [0.6, 0.611, 0.611], + bigOpSpacing5: [0.1, 0.143, 0.143], + sqrtRuleThickness: [0.04, 0.04, 0.04], + ptPerEm: [10, 10, 10], + doubleRuleSep: [0.2, 0.2, 0.2], + arrayRuleWidth: [0.04, 0.04, 0.04], + fboxsep: [0.3, 0.3, 0.3], + fboxrule: [0.04, 0.04, 0.04] + }; + var extraCharacterMap = { + "\xC5": "A", + "\xC7": "C", + "\xD0": "D", + "\xDE": "o", + "\xE5": "a", + "\xE7": "c", + "\xF0": "d", + "\xFE": "o", + "\u0410": "A", + "\u0411": "B", + "\u0412": "B", + "\u0413": "F", + "\u0414": "A", + "\u0415": "E", + "\u0416": "K", + "\u0417": "3", + "\u0418": "N", + "\u0419": "N", + "\u041A": "K", + "\u041B": "N", + "\u041C": "M", + "\u041D": "H", + "\u041E": "O", + "\u041F": "N", + "\u0420": "P", + "\u0421": "C", + "\u0422": "T", + "\u0423": "y", + "\u0424": "O", + "\u0425": "X", + "\u0426": "U", + "\u0427": "h", + "\u0428": "W", + "\u0429": "W", + "\u042A": "B", + "\u042B": "X", + "\u042C": "B", + "\u042D": "3", + "\u042E": "X", + "\u042F": "R", + "\u0430": "a", + "\u0431": "b", + "\u0432": "a", + "\u0433": "r", + "\u0434": "y", + "\u0435": "e", + "\u0436": "m", + "\u0437": "e", + "\u0438": "n", + "\u0439": "n", + "\u043A": "n", + "\u043B": "n", + "\u043C": "m", + "\u043D": "n", + "\u043E": "o", + "\u043F": "n", + "\u0440": "p", + "\u0441": "c", + "\u0442": "o", + "\u0443": "y", + "\u0444": "b", + "\u0445": "x", + "\u0446": "n", + "\u0447": "n", + "\u0448": "w", + "\u0449": "w", + "\u044A": "a", + "\u044B": "m", + "\u044C": "a", + "\u044D": "e", + "\u044E": "m", + "\u044F": "r" + }; + function setFontMetrics(fontName, metrics) { + fontMetricsData[fontName] = metrics; + } + function getCharacterMetrics(character, font, mode) { + if (!fontMetricsData[font]) { + throw new Error("Font metrics not found for font: " + font + "."); + } + var ch = character.charCodeAt(0); + var metrics = fontMetricsData[font][ch]; + if (!metrics && character[0] in extraCharacterMap) { + ch = extraCharacterMap[character[0]].charCodeAt(0); + metrics = fontMetricsData[font][ch]; + } + if (!metrics && mode === "text") { + if (supportedCodepoint(ch)) { + metrics = fontMetricsData[font][77]; + } + } + if (metrics) { + return { + depth: metrics[0], + height: metrics[1], + italic: metrics[2], + skew: metrics[3], + width: metrics[4] + }; + } + } + var fontMetricsBySizeIndex = {}; + function getGlobalMetrics(size) { + var sizeIndex; + if (size >= 5) { + sizeIndex = 0; + } else if (size >= 3) { + sizeIndex = 1; + } else { + sizeIndex = 2; + } + if (!fontMetricsBySizeIndex[sizeIndex]) { + var metrics = fontMetricsBySizeIndex[sizeIndex] = { + cssEmPerMu: sigmasAndXis.quad[sizeIndex] / 18 + }; + for (var key in sigmasAndXis) { + if (sigmasAndXis.hasOwnProperty(key)) { + metrics[key] = sigmasAndXis[key][sizeIndex]; + } + } + } + return fontMetricsBySizeIndex[sizeIndex]; + } + var ATOMS = { + "bin": 1, + "close": 1, + "inner": 1, + "open": 1, + "punct": 1, + "rel": 1 + }; + var NON_ATOMS = { + "accent-token": 1, + "mathord": 1, + "op-token": 1, + "spacing": 1, + "textord": 1 + }; + var symbols = { + "math": {}, + "text": {} + }; + var src_symbols = symbols; + function defineSymbol(mode, font, group, replace2, name2, acceptUnicodeChar) { + symbols[mode][name2] = { + font, + group, + replace: replace2 + }; + if (acceptUnicodeChar && replace2) { + symbols[mode][replace2] = symbols[mode][name2]; + } + } + var symbols_math = "math"; + var symbols_text = "text"; + var main = "main"; + var ams = "ams"; + var symbols_accent = "accent-token"; + var bin = "bin"; + var symbols_close = "close"; + var symbols_inner = "inner"; + var mathord = "mathord"; + var op = "op-token"; + var symbols_open = "open"; + var punct = "punct"; + var rel = "rel"; + var symbols_spacing = "spacing"; + var symbols_textord = "textord"; + defineSymbol(symbols_math, main, rel, "\u2261", "\\equiv", true); + defineSymbol(symbols_math, main, rel, "\u227A", "\\prec", true); + defineSymbol(symbols_math, main, rel, "\u227B", "\\succ", true); + defineSymbol(symbols_math, main, rel, "\u223C", "\\sim", true); + defineSymbol(symbols_math, main, rel, "\u22A5", "\\perp"); + defineSymbol(symbols_math, main, rel, "\u2AAF", "\\preceq", true); + defineSymbol(symbols_math, main, rel, "\u2AB0", "\\succeq", true); + defineSymbol(symbols_math, main, rel, "\u2243", "\\simeq", true); + defineSymbol(symbols_math, main, rel, "\u2223", "\\mid", true); + defineSymbol(symbols_math, main, rel, "\u226A", "\\ll", true); + defineSymbol(symbols_math, main, rel, "\u226B", "\\gg", true); + defineSymbol(symbols_math, main, rel, "\u224D", "\\asymp", true); + defineSymbol(symbols_math, main, rel, "\u2225", "\\parallel"); + defineSymbol(symbols_math, main, rel, "\u22C8", "\\bowtie", true); + defineSymbol(symbols_math, main, rel, "\u2323", "\\smile", true); + defineSymbol(symbols_math, main, rel, "\u2291", "\\sqsubseteq", true); + defineSymbol(symbols_math, main, rel, "\u2292", "\\sqsupseteq", true); + defineSymbol(symbols_math, main, rel, "\u2250", "\\doteq", true); + defineSymbol(symbols_math, main, rel, "\u2322", "\\frown", true); + defineSymbol(symbols_math, main, rel, "\u220B", "\\ni", true); + defineSymbol(symbols_math, main, rel, "\u221D", "\\propto", true); + defineSymbol(symbols_math, main, rel, "\u22A2", "\\vdash", true); + defineSymbol(symbols_math, main, rel, "\u22A3", "\\dashv", true); + defineSymbol(symbols_math, main, rel, "\u220B", "\\owns"); + defineSymbol(symbols_math, main, punct, ".", "\\ldotp"); + defineSymbol(symbols_math, main, punct, "\u22C5", "\\cdotp"); + defineSymbol(symbols_math, main, symbols_textord, "#", "\\#"); + defineSymbol(symbols_text, main, symbols_textord, "#", "\\#"); + defineSymbol(symbols_math, main, symbols_textord, "&", "\\&"); + defineSymbol(symbols_text, main, symbols_textord, "&", "\\&"); + defineSymbol(symbols_math, main, symbols_textord, "\u2135", "\\aleph", true); + defineSymbol(symbols_math, main, symbols_textord, "\u2200", "\\forall", true); + defineSymbol(symbols_math, main, symbols_textord, "\u210F", "\\hbar", true); + defineSymbol(symbols_math, main, symbols_textord, "\u2203", "\\exists", true); + defineSymbol(symbols_math, main, symbols_textord, "\u2207", "\\nabla", true); + defineSymbol(symbols_math, main, symbols_textord, "\u266D", "\\flat", true); + defineSymbol(symbols_math, main, symbols_textord, "\u2113", "\\ell", true); + defineSymbol(symbols_math, main, symbols_textord, "\u266E", "\\natural", true); + defineSymbol(symbols_math, main, symbols_textord, "\u2663", "\\clubsuit", true); + defineSymbol(symbols_math, main, symbols_textord, "\u2118", "\\wp", true); + defineSymbol(symbols_math, main, symbols_textord, "\u266F", "\\sharp", true); + defineSymbol(symbols_math, main, symbols_textord, "\u2662", "\\diamondsuit", true); + defineSymbol(symbols_math, main, symbols_textord, "\u211C", "\\Re", true); + defineSymbol(symbols_math, main, symbols_textord, "\u2661", "\\heartsuit", true); + defineSymbol(symbols_math, main, symbols_textord, "\u2111", "\\Im", true); + defineSymbol(symbols_math, main, symbols_textord, "\u2660", "\\spadesuit", true); + defineSymbol(symbols_text, main, symbols_textord, "\xA7", "\\S", true); + defineSymbol(symbols_text, main, symbols_textord, "\xB6", "\\P", true); + defineSymbol(symbols_math, main, symbols_textord, "\u2020", "\\dag"); + defineSymbol(symbols_text, main, symbols_textord, "\u2020", "\\dag"); + defineSymbol(symbols_text, main, symbols_textord, "\u2020", "\\textdagger"); + defineSymbol(symbols_math, main, symbols_textord, "\u2021", "\\ddag"); + defineSymbol(symbols_text, main, symbols_textord, "\u2021", "\\ddag"); + defineSymbol(symbols_text, main, symbols_textord, "\u2021", "\\textdaggerdbl"); + defineSymbol(symbols_math, main, symbols_close, "\u23B1", "\\rmoustache", true); + defineSymbol(symbols_math, main, symbols_open, "\u23B0", "\\lmoustache", true); + defineSymbol(symbols_math, main, symbols_close, "\u27EF", "\\rgroup", true); + defineSymbol(symbols_math, main, symbols_open, "\u27EE", "\\lgroup", true); + defineSymbol(symbols_math, main, bin, "\u2213", "\\mp", true); + defineSymbol(symbols_math, main, bin, "\u2296", "\\ominus", true); + defineSymbol(symbols_math, main, bin, "\u228E", "\\uplus", true); + defineSymbol(symbols_math, main, bin, "\u2293", "\\sqcap", true); + defineSymbol(symbols_math, main, bin, "\u2217", "\\ast"); + defineSymbol(symbols_math, main, bin, "\u2294", "\\sqcup", true); + defineSymbol(symbols_math, main, bin, "\u25EF", "\\bigcirc"); + defineSymbol(symbols_math, main, bin, "\u2219", "\\bullet"); + defineSymbol(symbols_math, main, bin, "\u2021", "\\ddagger"); + defineSymbol(symbols_math, main, bin, "\u2240", "\\wr", true); + defineSymbol(symbols_math, main, bin, "\u2A3F", "\\amalg"); + defineSymbol(symbols_math, main, bin, "&", "\\And"); + defineSymbol(symbols_math, main, rel, "\u27F5", "\\longleftarrow", true); + defineSymbol(symbols_math, main, rel, "\u21D0", "\\Leftarrow", true); + defineSymbol(symbols_math, main, rel, "\u27F8", "\\Longleftarrow", true); + defineSymbol(symbols_math, main, rel, "\u27F6", "\\longrightarrow", true); + defineSymbol(symbols_math, main, rel, "\u21D2", "\\Rightarrow", true); + defineSymbol(symbols_math, main, rel, "\u27F9", "\\Longrightarrow", true); + defineSymbol(symbols_math, main, rel, "\u2194", "\\leftrightarrow", true); + defineSymbol(symbols_math, main, rel, "\u27F7", "\\longleftrightarrow", true); + defineSymbol(symbols_math, main, rel, "\u21D4", "\\Leftrightarrow", true); + defineSymbol(symbols_math, main, rel, "\u27FA", "\\Longleftrightarrow", true); + defineSymbol(symbols_math, main, rel, "\u21A6", "\\mapsto", true); + defineSymbol(symbols_math, main, rel, "\u27FC", "\\longmapsto", true); + defineSymbol(symbols_math, main, rel, "\u2197", "\\nearrow", true); + defineSymbol(symbols_math, main, rel, "\u21A9", "\\hookleftarrow", true); + defineSymbol(symbols_math, main, rel, "\u21AA", "\\hookrightarrow", true); + defineSymbol(symbols_math, main, rel, "\u2198", "\\searrow", true); + defineSymbol(symbols_math, main, rel, "\u21BC", "\\leftharpoonup", true); + defineSymbol(symbols_math, main, rel, "\u21C0", "\\rightharpoonup", true); + defineSymbol(symbols_math, main, rel, "\u2199", "\\swarrow", true); + defineSymbol(symbols_math, main, rel, "\u21BD", "\\leftharpoondown", true); + defineSymbol(symbols_math, main, rel, "\u21C1", "\\rightharpoondown", true); + defineSymbol(symbols_math, main, rel, "\u2196", "\\nwarrow", true); + defineSymbol(symbols_math, main, rel, "\u21CC", "\\rightleftharpoons", true); + defineSymbol(symbols_math, ams, rel, "\u226E", "\\nless", true); + defineSymbol(symbols_math, ams, rel, "\uE010", "\\@nleqslant"); + defineSymbol(symbols_math, ams, rel, "\uE011", "\\@nleqq"); + defineSymbol(symbols_math, ams, rel, "\u2A87", "\\lneq", true); + defineSymbol(symbols_math, ams, rel, "\u2268", "\\lneqq", true); + defineSymbol(symbols_math, ams, rel, "\uE00C", "\\@lvertneqq"); + defineSymbol(symbols_math, ams, rel, "\u22E6", "\\lnsim", true); + defineSymbol(symbols_math, ams, rel, "\u2A89", "\\lnapprox", true); + defineSymbol(symbols_math, ams, rel, "\u2280", "\\nprec", true); + defineSymbol(symbols_math, ams, rel, "\u22E0", "\\npreceq", true); + defineSymbol(symbols_math, ams, rel, "\u22E8", "\\precnsim", true); + defineSymbol(symbols_math, ams, rel, "\u2AB9", "\\precnapprox", true); + defineSymbol(symbols_math, ams, rel, "\u2241", "\\nsim", true); + defineSymbol(symbols_math, ams, rel, "\uE006", "\\@nshortmid"); + defineSymbol(symbols_math, ams, rel, "\u2224", "\\nmid", true); + defineSymbol(symbols_math, ams, rel, "\u22AC", "\\nvdash", true); + defineSymbol(symbols_math, ams, rel, "\u22AD", "\\nvDash", true); + defineSymbol(symbols_math, ams, rel, "\u22EA", "\\ntriangleleft"); + defineSymbol(symbols_math, ams, rel, "\u22EC", "\\ntrianglelefteq", true); + defineSymbol(symbols_math, ams, rel, "\u228A", "\\subsetneq", true); + defineSymbol(symbols_math, ams, rel, "\uE01A", "\\@varsubsetneq"); + defineSymbol(symbols_math, ams, rel, "\u2ACB", "\\subsetneqq", true); + defineSymbol(symbols_math, ams, rel, "\uE017", "\\@varsubsetneqq"); + defineSymbol(symbols_math, ams, rel, "\u226F", "\\ngtr", true); + defineSymbol(symbols_math, ams, rel, "\uE00F", "\\@ngeqslant"); + defineSymbol(symbols_math, ams, rel, "\uE00E", "\\@ngeqq"); + defineSymbol(symbols_math, ams, rel, "\u2A88", "\\gneq", true); + defineSymbol(symbols_math, ams, rel, "\u2269", "\\gneqq", true); + defineSymbol(symbols_math, ams, rel, "\uE00D", "\\@gvertneqq"); + defineSymbol(symbols_math, ams, rel, "\u22E7", "\\gnsim", true); + defineSymbol(symbols_math, ams, rel, "\u2A8A", "\\gnapprox", true); + defineSymbol(symbols_math, ams, rel, "\u2281", "\\nsucc", true); + defineSymbol(symbols_math, ams, rel, "\u22E1", "\\nsucceq", true); + defineSymbol(symbols_math, ams, rel, "\u22E9", "\\succnsim", true); + defineSymbol(symbols_math, ams, rel, "\u2ABA", "\\succnapprox", true); + defineSymbol(symbols_math, ams, rel, "\u2246", "\\ncong", true); + defineSymbol(symbols_math, ams, rel, "\uE007", "\\@nshortparallel"); + defineSymbol(symbols_math, ams, rel, "\u2226", "\\nparallel", true); + defineSymbol(symbols_math, ams, rel, "\u22AF", "\\nVDash", true); + defineSymbol(symbols_math, ams, rel, "\u22EB", "\\ntriangleright"); + defineSymbol(symbols_math, ams, rel, "\u22ED", "\\ntrianglerighteq", true); + defineSymbol(symbols_math, ams, rel, "\uE018", "\\@nsupseteqq"); + defineSymbol(symbols_math, ams, rel, "\u228B", "\\supsetneq", true); + defineSymbol(symbols_math, ams, rel, "\uE01B", "\\@varsupsetneq"); + defineSymbol(symbols_math, ams, rel, "\u2ACC", "\\supsetneqq", true); + defineSymbol(symbols_math, ams, rel, "\uE019", "\\@varsupsetneqq"); + defineSymbol(symbols_math, ams, rel, "\u22AE", "\\nVdash", true); + defineSymbol(symbols_math, ams, rel, "\u2AB5", "\\precneqq", true); + defineSymbol(symbols_math, ams, rel, "\u2AB6", "\\succneqq", true); + defineSymbol(symbols_math, ams, rel, "\uE016", "\\@nsubseteqq"); + defineSymbol(symbols_math, ams, bin, "\u22B4", "\\unlhd"); + defineSymbol(symbols_math, ams, bin, "\u22B5", "\\unrhd"); + defineSymbol(symbols_math, ams, rel, "\u219A", "\\nleftarrow", true); + defineSymbol(symbols_math, ams, rel, "\u219B", "\\nrightarrow", true); + defineSymbol(symbols_math, ams, rel, "\u21CD", "\\nLeftarrow", true); + defineSymbol(symbols_math, ams, rel, "\u21CF", "\\nRightarrow", true); + defineSymbol(symbols_math, ams, rel, "\u21AE", "\\nleftrightarrow", true); + defineSymbol(symbols_math, ams, rel, "\u21CE", "\\nLeftrightarrow", true); + defineSymbol(symbols_math, ams, rel, "\u25B3", "\\vartriangle"); + defineSymbol(symbols_math, ams, symbols_textord, "\u210F", "\\hslash"); + defineSymbol(symbols_math, ams, symbols_textord, "\u25BD", "\\triangledown"); + defineSymbol(symbols_math, ams, symbols_textord, "\u25CA", "\\lozenge"); + defineSymbol(symbols_math, ams, symbols_textord, "\u24C8", "\\circledS"); + defineSymbol(symbols_math, ams, symbols_textord, "\xAE", "\\circledR"); + defineSymbol(symbols_text, ams, symbols_textord, "\xAE", "\\circledR"); + defineSymbol(symbols_math, ams, symbols_textord, "\u2221", "\\measuredangle", true); + defineSymbol(symbols_math, ams, symbols_textord, "\u2204", "\\nexists"); + defineSymbol(symbols_math, ams, symbols_textord, "\u2127", "\\mho"); + defineSymbol(symbols_math, ams, symbols_textord, "\u2132", "\\Finv", true); + defineSymbol(symbols_math, ams, symbols_textord, "\u2141", "\\Game", true); + defineSymbol(symbols_math, ams, symbols_textord, "\u2035", "\\backprime"); + defineSymbol(symbols_math, ams, symbols_textord, "\u25B2", "\\blacktriangle"); + defineSymbol(symbols_math, ams, symbols_textord, "\u25BC", "\\blacktriangledown"); + defineSymbol(symbols_math, ams, symbols_textord, "\u25A0", "\\blacksquare"); + defineSymbol(symbols_math, ams, symbols_textord, "\u29EB", "\\blacklozenge"); + defineSymbol(symbols_math, ams, symbols_textord, "\u2605", "\\bigstar"); + defineSymbol(symbols_math, ams, symbols_textord, "\u2222", "\\sphericalangle", true); + defineSymbol(symbols_math, ams, symbols_textord, "\u2201", "\\complement", true); + defineSymbol(symbols_math, ams, symbols_textord, "\xF0", "\\eth", true); + defineSymbol(symbols_text, main, symbols_textord, "\xF0", "\xF0"); + defineSymbol(symbols_math, ams, symbols_textord, "\u2571", "\\diagup"); + defineSymbol(symbols_math, ams, symbols_textord, "\u2572", "\\diagdown"); + defineSymbol(symbols_math, ams, symbols_textord, "\u25A1", "\\square"); + defineSymbol(symbols_math, ams, symbols_textord, "\u25A1", "\\Box"); + defineSymbol(symbols_math, ams, symbols_textord, "\u25CA", "\\Diamond"); + defineSymbol(symbols_math, ams, symbols_textord, "\xA5", "\\yen", true); + defineSymbol(symbols_text, ams, symbols_textord, "\xA5", "\\yen", true); + defineSymbol(symbols_math, ams, symbols_textord, "\u2713", "\\checkmark", true); + defineSymbol(symbols_text, ams, symbols_textord, "\u2713", "\\checkmark"); + defineSymbol(symbols_math, ams, symbols_textord, "\u2136", "\\beth", true); + defineSymbol(symbols_math, ams, symbols_textord, "\u2138", "\\daleth", true); + defineSymbol(symbols_math, ams, symbols_textord, "\u2137", "\\gimel", true); + defineSymbol(symbols_math, ams, symbols_textord, "\u03DD", "\\digamma", true); + defineSymbol(symbols_math, ams, symbols_textord, "\u03F0", "\\varkappa"); + defineSymbol(symbols_math, ams, symbols_open, "\u250C", "\\@ulcorner", true); + defineSymbol(symbols_math, ams, symbols_close, "\u2510", "\\@urcorner", true); + defineSymbol(symbols_math, ams, symbols_open, "\u2514", "\\@llcorner", true); + defineSymbol(symbols_math, ams, symbols_close, "\u2518", "\\@lrcorner", true); + defineSymbol(symbols_math, ams, rel, "\u2266", "\\leqq", true); + defineSymbol(symbols_math, ams, rel, "\u2A7D", "\\leqslant", true); + defineSymbol(symbols_math, ams, rel, "\u2A95", "\\eqslantless", true); + defineSymbol(symbols_math, ams, rel, "\u2272", "\\lesssim", true); + defineSymbol(symbols_math, ams, rel, "\u2A85", "\\lessapprox", true); + defineSymbol(symbols_math, ams, rel, "\u224A", "\\approxeq", true); + defineSymbol(symbols_math, ams, bin, "\u22D6", "\\lessdot"); + defineSymbol(symbols_math, ams, rel, "\u22D8", "\\lll", true); + defineSymbol(symbols_math, ams, rel, "\u2276", "\\lessgtr", true); + defineSymbol(symbols_math, ams, rel, "\u22DA", "\\lesseqgtr", true); + defineSymbol(symbols_math, ams, rel, "\u2A8B", "\\lesseqqgtr", true); + defineSymbol(symbols_math, ams, rel, "\u2251", "\\doteqdot"); + defineSymbol(symbols_math, ams, rel, "\u2253", "\\risingdotseq", true); + defineSymbol(symbols_math, ams, rel, "\u2252", "\\fallingdotseq", true); + defineSymbol(symbols_math, ams, rel, "\u223D", "\\backsim", true); + defineSymbol(symbols_math, ams, rel, "\u22CD", "\\backsimeq", true); + defineSymbol(symbols_math, ams, rel, "\u2AC5", "\\subseteqq", true); + defineSymbol(symbols_math, ams, rel, "\u22D0", "\\Subset", true); + defineSymbol(symbols_math, ams, rel, "\u228F", "\\sqsubset", true); + defineSymbol(symbols_math, ams, rel, "\u227C", "\\preccurlyeq", true); + defineSymbol(symbols_math, ams, rel, "\u22DE", "\\curlyeqprec", true); + defineSymbol(symbols_math, ams, rel, "\u227E", "\\precsim", true); + defineSymbol(symbols_math, ams, rel, "\u2AB7", "\\precapprox", true); + defineSymbol(symbols_math, ams, rel, "\u22B2", "\\vartriangleleft"); + defineSymbol(symbols_math, ams, rel, "\u22B4", "\\trianglelefteq"); + defineSymbol(symbols_math, ams, rel, "\u22A8", "\\vDash", true); + defineSymbol(symbols_math, ams, rel, "\u22AA", "\\Vvdash", true); + defineSymbol(symbols_math, ams, rel, "\u2323", "\\smallsmile"); + defineSymbol(symbols_math, ams, rel, "\u2322", "\\smallfrown"); + defineSymbol(symbols_math, ams, rel, "\u224F", "\\bumpeq", true); + defineSymbol(symbols_math, ams, rel, "\u224E", "\\Bumpeq", true); + defineSymbol(symbols_math, ams, rel, "\u2267", "\\geqq", true); + defineSymbol(symbols_math, ams, rel, "\u2A7E", "\\geqslant", true); + defineSymbol(symbols_math, ams, rel, "\u2A96", "\\eqslantgtr", true); + defineSymbol(symbols_math, ams, rel, "\u2273", "\\gtrsim", true); + defineSymbol(symbols_math, ams, rel, "\u2A86", "\\gtrapprox", true); + defineSymbol(symbols_math, ams, bin, "\u22D7", "\\gtrdot"); + defineSymbol(symbols_math, ams, rel, "\u22D9", "\\ggg", true); + defineSymbol(symbols_math, ams, rel, "\u2277", "\\gtrless", true); + defineSymbol(symbols_math, ams, rel, "\u22DB", "\\gtreqless", true); + defineSymbol(symbols_math, ams, rel, "\u2A8C", "\\gtreqqless", true); + defineSymbol(symbols_math, ams, rel, "\u2256", "\\eqcirc", true); + defineSymbol(symbols_math, ams, rel, "\u2257", "\\circeq", true); + defineSymbol(symbols_math, ams, rel, "\u225C", "\\triangleq", true); + defineSymbol(symbols_math, ams, rel, "\u223C", "\\thicksim"); + defineSymbol(symbols_math, ams, rel, "\u2248", "\\thickapprox"); + defineSymbol(symbols_math, ams, rel, "\u2AC6", "\\supseteqq", true); + defineSymbol(symbols_math, ams, rel, "\u22D1", "\\Supset", true); + defineSymbol(symbols_math, ams, rel, "\u2290", "\\sqsupset", true); + defineSymbol(symbols_math, ams, rel, "\u227D", "\\succcurlyeq", true); + defineSymbol(symbols_math, ams, rel, "\u22DF", "\\curlyeqsucc", true); + defineSymbol(symbols_math, ams, rel, "\u227F", "\\succsim", true); + defineSymbol(symbols_math, ams, rel, "\u2AB8", "\\succapprox", true); + defineSymbol(symbols_math, ams, rel, "\u22B3", "\\vartriangleright"); + defineSymbol(symbols_math, ams, rel, "\u22B5", "\\trianglerighteq"); + defineSymbol(symbols_math, ams, rel, "\u22A9", "\\Vdash", true); + defineSymbol(symbols_math, ams, rel, "\u2223", "\\shortmid"); + defineSymbol(symbols_math, ams, rel, "\u2225", "\\shortparallel"); + defineSymbol(symbols_math, ams, rel, "\u226C", "\\between", true); + defineSymbol(symbols_math, ams, rel, "\u22D4", "\\pitchfork", true); + defineSymbol(symbols_math, ams, rel, "\u221D", "\\varpropto"); + defineSymbol(symbols_math, ams, rel, "\u25C0", "\\blacktriangleleft"); + defineSymbol(symbols_math, ams, rel, "\u2234", "\\therefore", true); + defineSymbol(symbols_math, ams, rel, "\u220D", "\\backepsilon"); + defineSymbol(symbols_math, ams, rel, "\u25B6", "\\blacktriangleright"); + defineSymbol(symbols_math, ams, rel, "\u2235", "\\because", true); + defineSymbol(symbols_math, ams, rel, "\u22D8", "\\llless"); + defineSymbol(symbols_math, ams, rel, "\u22D9", "\\gggtr"); + defineSymbol(symbols_math, ams, bin, "\u22B2", "\\lhd"); + defineSymbol(symbols_math, ams, bin, "\u22B3", "\\rhd"); + defineSymbol(symbols_math, ams, rel, "\u2242", "\\eqsim", true); + defineSymbol(symbols_math, main, rel, "\u22C8", "\\Join"); + defineSymbol(symbols_math, ams, rel, "\u2251", "\\Doteq", true); + defineSymbol(symbols_math, ams, bin, "\u2214", "\\dotplus", true); + defineSymbol(symbols_math, ams, bin, "\u2216", "\\smallsetminus"); + defineSymbol(symbols_math, ams, bin, "\u22D2", "\\Cap", true); + defineSymbol(symbols_math, ams, bin, "\u22D3", "\\Cup", true); + defineSymbol(symbols_math, ams, bin, "\u2A5E", "\\doublebarwedge", true); + defineSymbol(symbols_math, ams, bin, "\u229F", "\\boxminus", true); + defineSymbol(symbols_math, ams, bin, "\u229E", "\\boxplus", true); + defineSymbol(symbols_math, ams, bin, "\u22C7", "\\divideontimes", true); + defineSymbol(symbols_math, ams, bin, "\u22C9", "\\ltimes", true); + defineSymbol(symbols_math, ams, bin, "\u22CA", "\\rtimes", true); + defineSymbol(symbols_math, ams, bin, "\u22CB", "\\leftthreetimes", true); + defineSymbol(symbols_math, ams, bin, "\u22CC", "\\rightthreetimes", true); + defineSymbol(symbols_math, ams, bin, "\u22CF", "\\curlywedge", true); + defineSymbol(symbols_math, ams, bin, "\u22CE", "\\curlyvee", true); + defineSymbol(symbols_math, ams, bin, "\u229D", "\\circleddash", true); + defineSymbol(symbols_math, ams, bin, "\u229B", "\\circledast", true); + defineSymbol(symbols_math, ams, bin, "\u22C5", "\\centerdot"); + defineSymbol(symbols_math, ams, bin, "\u22BA", "\\intercal", true); + defineSymbol(symbols_math, ams, bin, "\u22D2", "\\doublecap"); + defineSymbol(symbols_math, ams, bin, "\u22D3", "\\doublecup"); + defineSymbol(symbols_math, ams, bin, "\u22A0", "\\boxtimes", true); + defineSymbol(symbols_math, ams, rel, "\u21E2", "\\dashrightarrow", true); + defineSymbol(symbols_math, ams, rel, "\u21E0", "\\dashleftarrow", true); + defineSymbol(symbols_math, ams, rel, "\u21C7", "\\leftleftarrows", true); + defineSymbol(symbols_math, ams, rel, "\u21C6", "\\leftrightarrows", true); + defineSymbol(symbols_math, ams, rel, "\u21DA", "\\Lleftarrow", true); + defineSymbol(symbols_math, ams, rel, "\u219E", "\\twoheadleftarrow", true); + defineSymbol(symbols_math, ams, rel, "\u21A2", "\\leftarrowtail", true); + defineSymbol(symbols_math, ams, rel, "\u21AB", "\\looparrowleft", true); + defineSymbol(symbols_math, ams, rel, "\u21CB", "\\leftrightharpoons", true); + defineSymbol(symbols_math, ams, rel, "\u21B6", "\\curvearrowleft", true); + defineSymbol(symbols_math, ams, rel, "\u21BA", "\\circlearrowleft", true); + defineSymbol(symbols_math, ams, rel, "\u21B0", "\\Lsh", true); + defineSymbol(symbols_math, ams, rel, "\u21C8", "\\upuparrows", true); + defineSymbol(symbols_math, ams, rel, "\u21BF", "\\upharpoonleft", true); + defineSymbol(symbols_math, ams, rel, "\u21C3", "\\downharpoonleft", true); + defineSymbol(symbols_math, ams, rel, "\u22B8", "\\multimap", true); + defineSymbol(symbols_math, ams, rel, "\u21AD", "\\leftrightsquigarrow", true); + defineSymbol(symbols_math, ams, rel, "\u21C9", "\\rightrightarrows", true); + defineSymbol(symbols_math, ams, rel, "\u21C4", "\\rightleftarrows", true); + defineSymbol(symbols_math, ams, rel, "\u21A0", "\\twoheadrightarrow", true); + defineSymbol(symbols_math, ams, rel, "\u21A3", "\\rightarrowtail", true); + defineSymbol(symbols_math, ams, rel, "\u21AC", "\\looparrowright", true); + defineSymbol(symbols_math, ams, rel, "\u21B7", "\\curvearrowright", true); + defineSymbol(symbols_math, ams, rel, "\u21BB", "\\circlearrowright", true); + defineSymbol(symbols_math, ams, rel, "\u21B1", "\\Rsh", true); + defineSymbol(symbols_math, ams, rel, "\u21CA", "\\downdownarrows", true); + defineSymbol(symbols_math, ams, rel, "\u21BE", "\\upharpoonright", true); + defineSymbol(symbols_math, ams, rel, "\u21C2", "\\downharpoonright", true); + defineSymbol(symbols_math, ams, rel, "\u21DD", "\\rightsquigarrow", true); + defineSymbol(symbols_math, ams, rel, "\u21DD", "\\leadsto"); + defineSymbol(symbols_math, ams, rel, "\u21DB", "\\Rrightarrow", true); + defineSymbol(symbols_math, ams, rel, "\u21BE", "\\restriction"); + defineSymbol(symbols_math, main, symbols_textord, "\u2018", "`"); + defineSymbol(symbols_math, main, symbols_textord, "$", "\\$"); + defineSymbol(symbols_text, main, symbols_textord, "$", "\\$"); + defineSymbol(symbols_text, main, symbols_textord, "$", "\\textdollar"); + defineSymbol(symbols_math, main, symbols_textord, "%", "\\%"); + defineSymbol(symbols_text, main, symbols_textord, "%", "\\%"); + defineSymbol(symbols_math, main, symbols_textord, "_", "\\_"); + defineSymbol(symbols_text, main, symbols_textord, "_", "\\_"); + defineSymbol(symbols_text, main, symbols_textord, "_", "\\textunderscore"); + defineSymbol(symbols_math, main, symbols_textord, "\u2220", "\\angle", true); + defineSymbol(symbols_math, main, symbols_textord, "\u221E", "\\infty", true); + defineSymbol(symbols_math, main, symbols_textord, "\u2032", "\\prime"); + defineSymbol(symbols_math, main, symbols_textord, "\u25B3", "\\triangle"); + defineSymbol(symbols_math, main, symbols_textord, "\u0393", "\\Gamma", true); + defineSymbol(symbols_math, main, symbols_textord, "\u0394", "\\Delta", true); + defineSymbol(symbols_math, main, symbols_textord, "\u0398", "\\Theta", true); + defineSymbol(symbols_math, main, symbols_textord, "\u039B", "\\Lambda", true); + defineSymbol(symbols_math, main, symbols_textord, "\u039E", "\\Xi", true); + defineSymbol(symbols_math, main, symbols_textord, "\u03A0", "\\Pi", true); + defineSymbol(symbols_math, main, symbols_textord, "\u03A3", "\\Sigma", true); + defineSymbol(symbols_math, main, symbols_textord, "\u03A5", "\\Upsilon", true); + defineSymbol(symbols_math, main, symbols_textord, "\u03A6", "\\Phi", true); + defineSymbol(symbols_math, main, symbols_textord, "\u03A8", "\\Psi", true); + defineSymbol(symbols_math, main, symbols_textord, "\u03A9", "\\Omega", true); + defineSymbol(symbols_math, main, symbols_textord, "A", "\u0391"); + defineSymbol(symbols_math, main, symbols_textord, "B", "\u0392"); + defineSymbol(symbols_math, main, symbols_textord, "E", "\u0395"); + defineSymbol(symbols_math, main, symbols_textord, "Z", "\u0396"); + defineSymbol(symbols_math, main, symbols_textord, "H", "\u0397"); + defineSymbol(symbols_math, main, symbols_textord, "I", "\u0399"); + defineSymbol(symbols_math, main, symbols_textord, "K", "\u039A"); + defineSymbol(symbols_math, main, symbols_textord, "M", "\u039C"); + defineSymbol(symbols_math, main, symbols_textord, "N", "\u039D"); + defineSymbol(symbols_math, main, symbols_textord, "O", "\u039F"); + defineSymbol(symbols_math, main, symbols_textord, "P", "\u03A1"); + defineSymbol(symbols_math, main, symbols_textord, "T", "\u03A4"); + defineSymbol(symbols_math, main, symbols_textord, "X", "\u03A7"); + defineSymbol(symbols_math, main, symbols_textord, "\xAC", "\\neg", true); + defineSymbol(symbols_math, main, symbols_textord, "\xAC", "\\lnot"); + defineSymbol(symbols_math, main, symbols_textord, "\u22A4", "\\top"); + defineSymbol(symbols_math, main, symbols_textord, "\u22A5", "\\bot"); + defineSymbol(symbols_math, main, symbols_textord, "\u2205", "\\emptyset"); + defineSymbol(symbols_math, ams, symbols_textord, "\u2205", "\\varnothing"); + defineSymbol(symbols_math, main, mathord, "\u03B1", "\\alpha", true); + defineSymbol(symbols_math, main, mathord, "\u03B2", "\\beta", true); + defineSymbol(symbols_math, main, mathord, "\u03B3", "\\gamma", true); + defineSymbol(symbols_math, main, mathord, "\u03B4", "\\delta", true); + defineSymbol(symbols_math, main, mathord, "\u03F5", "\\epsilon", true); + defineSymbol(symbols_math, main, mathord, "\u03B6", "\\zeta", true); + defineSymbol(symbols_math, main, mathord, "\u03B7", "\\eta", true); + defineSymbol(symbols_math, main, mathord, "\u03B8", "\\theta", true); + defineSymbol(symbols_math, main, mathord, "\u03B9", "\\iota", true); + defineSymbol(symbols_math, main, mathord, "\u03BA", "\\kappa", true); + defineSymbol(symbols_math, main, mathord, "\u03BB", "\\lambda", true); + defineSymbol(symbols_math, main, mathord, "\u03BC", "\\mu", true); + defineSymbol(symbols_math, main, mathord, "\u03BD", "\\nu", true); + defineSymbol(symbols_math, main, mathord, "\u03BE", "\\xi", true); + defineSymbol(symbols_math, main, mathord, "\u03BF", "\\omicron", true); + defineSymbol(symbols_math, main, mathord, "\u03C0", "\\pi", true); + defineSymbol(symbols_math, main, mathord, "\u03C1", "\\rho", true); + defineSymbol(symbols_math, main, mathord, "\u03C3", "\\sigma", true); + defineSymbol(symbols_math, main, mathord, "\u03C4", "\\tau", true); + defineSymbol(symbols_math, main, mathord, "\u03C5", "\\upsilon", true); + defineSymbol(symbols_math, main, mathord, "\u03D5", "\\phi", true); + defineSymbol(symbols_math, main, mathord, "\u03C7", "\\chi", true); + defineSymbol(symbols_math, main, mathord, "\u03C8", "\\psi", true); + defineSymbol(symbols_math, main, mathord, "\u03C9", "\\omega", true); + defineSymbol(symbols_math, main, mathord, "\u03B5", "\\varepsilon", true); + defineSymbol(symbols_math, main, mathord, "\u03D1", "\\vartheta", true); + defineSymbol(symbols_math, main, mathord, "\u03D6", "\\varpi", true); + defineSymbol(symbols_math, main, mathord, "\u03F1", "\\varrho", true); + defineSymbol(symbols_math, main, mathord, "\u03C2", "\\varsigma", true); + defineSymbol(symbols_math, main, mathord, "\u03C6", "\\varphi", true); + defineSymbol(symbols_math, main, bin, "\u2217", "*"); + defineSymbol(symbols_math, main, bin, "+", "+"); + defineSymbol(symbols_math, main, bin, "\u2212", "-"); + defineSymbol(symbols_math, main, bin, "\u22C5", "\\cdot", true); + defineSymbol(symbols_math, main, bin, "\u2218", "\\circ"); + defineSymbol(symbols_math, main, bin, "\xF7", "\\div", true); + defineSymbol(symbols_math, main, bin, "\xB1", "\\pm", true); + defineSymbol(symbols_math, main, bin, "\xD7", "\\times", true); + defineSymbol(symbols_math, main, bin, "\u2229", "\\cap", true); + defineSymbol(symbols_math, main, bin, "\u222A", "\\cup", true); + defineSymbol(symbols_math, main, bin, "\u2216", "\\setminus"); + defineSymbol(symbols_math, main, bin, "\u2227", "\\land"); + defineSymbol(symbols_math, main, bin, "\u2228", "\\lor"); + defineSymbol(symbols_math, main, bin, "\u2227", "\\wedge", true); + defineSymbol(symbols_math, main, bin, "\u2228", "\\vee", true); + defineSymbol(symbols_math, main, symbols_textord, "\u221A", "\\surd"); + defineSymbol(symbols_math, main, symbols_open, "\u27E8", "\\langle", true); + defineSymbol(symbols_math, main, symbols_open, "\u2223", "\\lvert"); + defineSymbol(symbols_math, main, symbols_open, "\u2225", "\\lVert"); + defineSymbol(symbols_math, main, symbols_close, "?", "?"); + defineSymbol(symbols_math, main, symbols_close, "!", "!"); + defineSymbol(symbols_math, main, symbols_close, "\u27E9", "\\rangle", true); + defineSymbol(symbols_math, main, symbols_close, "\u2223", "\\rvert"); + defineSymbol(symbols_math, main, symbols_close, "\u2225", "\\rVert"); + defineSymbol(symbols_math, main, rel, "=", "="); + defineSymbol(symbols_math, main, rel, ":", ":"); + defineSymbol(symbols_math, main, rel, "\u2248", "\\approx", true); + defineSymbol(symbols_math, main, rel, "\u2245", "\\cong", true); + defineSymbol(symbols_math, main, rel, "\u2265", "\\ge"); + defineSymbol(symbols_math, main, rel, "\u2265", "\\geq", true); + defineSymbol(symbols_math, main, rel, "\u2190", "\\gets"); + defineSymbol(symbols_math, main, rel, ">", "\\gt", true); + defineSymbol(symbols_math, main, rel, "\u2208", "\\in", true); + defineSymbol(symbols_math, main, rel, "\uE020", "\\@not"); + defineSymbol(symbols_math, main, rel, "\u2282", "\\subset", true); + defineSymbol(symbols_math, main, rel, "\u2283", "\\supset", true); + defineSymbol(symbols_math, main, rel, "\u2286", "\\subseteq", true); + defineSymbol(symbols_math, main, rel, "\u2287", "\\supseteq", true); + defineSymbol(symbols_math, ams, rel, "\u2288", "\\nsubseteq", true); + defineSymbol(symbols_math, ams, rel, "\u2289", "\\nsupseteq", true); + defineSymbol(symbols_math, main, rel, "\u22A8", "\\models"); + defineSymbol(symbols_math, main, rel, "\u2190", "\\leftarrow", true); + defineSymbol(symbols_math, main, rel, "\u2264", "\\le"); + defineSymbol(symbols_math, main, rel, "\u2264", "\\leq", true); + defineSymbol(symbols_math, main, rel, "<", "\\lt", true); + defineSymbol(symbols_math, main, rel, "\u2192", "\\rightarrow", true); + defineSymbol(symbols_math, main, rel, "\u2192", "\\to"); + defineSymbol(symbols_math, ams, rel, "\u2271", "\\ngeq", true); + defineSymbol(symbols_math, ams, rel, "\u2270", "\\nleq", true); + defineSymbol(symbols_math, main, symbols_spacing, "\xA0", "\\ "); + defineSymbol(symbols_math, main, symbols_spacing, "\xA0", "~"); + defineSymbol(symbols_math, main, symbols_spacing, "\xA0", "\\space"); + defineSymbol(symbols_math, main, symbols_spacing, "\xA0", "\\nobreakspace"); + defineSymbol(symbols_text, main, symbols_spacing, "\xA0", "\\ "); + defineSymbol(symbols_text, main, symbols_spacing, "\xA0", " "); + defineSymbol(symbols_text, main, symbols_spacing, "\xA0", "~"); + defineSymbol(symbols_text, main, symbols_spacing, "\xA0", "\\space"); + defineSymbol(symbols_text, main, symbols_spacing, "\xA0", "\\nobreakspace"); + defineSymbol(symbols_math, main, symbols_spacing, null, "\\nobreak"); + defineSymbol(symbols_math, main, symbols_spacing, null, "\\allowbreak"); + defineSymbol(symbols_math, main, punct, ",", ","); + defineSymbol(symbols_math, main, punct, ";", ";"); + defineSymbol(symbols_math, ams, bin, "\u22BC", "\\barwedge", true); + defineSymbol(symbols_math, ams, bin, "\u22BB", "\\veebar", true); + defineSymbol(symbols_math, main, bin, "\u2299", "\\odot", true); + defineSymbol(symbols_math, main, bin, "\u2295", "\\oplus", true); + defineSymbol(symbols_math, main, bin, "\u2297", "\\otimes", true); + defineSymbol(symbols_math, main, symbols_textord, "\u2202", "\\partial", true); + defineSymbol(symbols_math, main, bin, "\u2298", "\\oslash", true); + defineSymbol(symbols_math, ams, bin, "\u229A", "\\circledcirc", true); + defineSymbol(symbols_math, ams, bin, "\u22A1", "\\boxdot", true); + defineSymbol(symbols_math, main, bin, "\u25B3", "\\bigtriangleup"); + defineSymbol(symbols_math, main, bin, "\u25BD", "\\bigtriangledown"); + defineSymbol(symbols_math, main, bin, "\u2020", "\\dagger"); + defineSymbol(symbols_math, main, bin, "\u22C4", "\\diamond"); + defineSymbol(symbols_math, main, bin, "\u22C6", "\\star"); + defineSymbol(symbols_math, main, bin, "\u25C3", "\\triangleleft"); + defineSymbol(symbols_math, main, bin, "\u25B9", "\\triangleright"); + defineSymbol(symbols_math, main, symbols_open, "{", "\\{"); + defineSymbol(symbols_text, main, symbols_textord, "{", "\\{"); + defineSymbol(symbols_text, main, symbols_textord, "{", "\\textbraceleft"); + defineSymbol(symbols_math, main, symbols_close, "}", "\\}"); + defineSymbol(symbols_text, main, symbols_textord, "}", "\\}"); + defineSymbol(symbols_text, main, symbols_textord, "}", "\\textbraceright"); + defineSymbol(symbols_math, main, symbols_open, "{", "\\lbrace"); + defineSymbol(symbols_math, main, symbols_close, "}", "\\rbrace"); + defineSymbol(symbols_math, main, symbols_open, "[", "\\lbrack", true); + defineSymbol(symbols_text, main, symbols_textord, "[", "\\lbrack", true); + defineSymbol(symbols_math, main, symbols_close, "]", "\\rbrack", true); + defineSymbol(symbols_text, main, symbols_textord, "]", "\\rbrack", true); + defineSymbol(symbols_math, main, symbols_open, "(", "\\lparen", true); + defineSymbol(symbols_math, main, symbols_close, ")", "\\rparen", true); + defineSymbol(symbols_text, main, symbols_textord, "<", "\\textless", true); + defineSymbol(symbols_text, main, symbols_textord, ">", "\\textgreater", true); + defineSymbol(symbols_math, main, symbols_open, "\u230A", "\\lfloor", true); + defineSymbol(symbols_math, main, symbols_close, "\u230B", "\\rfloor", true); + defineSymbol(symbols_math, main, symbols_open, "\u2308", "\\lceil", true); + defineSymbol(symbols_math, main, symbols_close, "\u2309", "\\rceil", true); + defineSymbol(symbols_math, main, symbols_textord, "\\", "\\backslash"); + defineSymbol(symbols_math, main, symbols_textord, "\u2223", "|"); + defineSymbol(symbols_math, main, symbols_textord, "\u2223", "\\vert"); + defineSymbol(symbols_text, main, symbols_textord, "|", "\\textbar", true); + defineSymbol(symbols_math, main, symbols_textord, "\u2225", "\\|"); + defineSymbol(symbols_math, main, symbols_textord, "\u2225", "\\Vert"); + defineSymbol(symbols_text, main, symbols_textord, "\u2225", "\\textbardbl"); + defineSymbol(symbols_text, main, symbols_textord, "~", "\\textasciitilde"); + defineSymbol(symbols_text, main, symbols_textord, "\\", "\\textbackslash"); + defineSymbol(symbols_text, main, symbols_textord, "^", "\\textasciicircum"); + defineSymbol(symbols_math, main, rel, "\u2191", "\\uparrow", true); + defineSymbol(symbols_math, main, rel, "\u21D1", "\\Uparrow", true); + defineSymbol(symbols_math, main, rel, "\u2193", "\\downarrow", true); + defineSymbol(symbols_math, main, rel, "\u21D3", "\\Downarrow", true); + defineSymbol(symbols_math, main, rel, "\u2195", "\\updownarrow", true); + defineSymbol(symbols_math, main, rel, "\u21D5", "\\Updownarrow", true); + defineSymbol(symbols_math, main, op, "\u2210", "\\coprod"); + defineSymbol(symbols_math, main, op, "\u22C1", "\\bigvee"); + defineSymbol(symbols_math, main, op, "\u22C0", "\\bigwedge"); + defineSymbol(symbols_math, main, op, "\u2A04", "\\biguplus"); + defineSymbol(symbols_math, main, op, "\u22C2", "\\bigcap"); + defineSymbol(symbols_math, main, op, "\u22C3", "\\bigcup"); + defineSymbol(symbols_math, main, op, "\u222B", "\\int"); + defineSymbol(symbols_math, main, op, "\u222B", "\\intop"); + defineSymbol(symbols_math, main, op, "\u222C", "\\iint"); + defineSymbol(symbols_math, main, op, "\u222D", "\\iiint"); + defineSymbol(symbols_math, main, op, "\u220F", "\\prod"); + defineSymbol(symbols_math, main, op, "\u2211", "\\sum"); + defineSymbol(symbols_math, main, op, "\u2A02", "\\bigotimes"); + defineSymbol(symbols_math, main, op, "\u2A01", "\\bigoplus"); + defineSymbol(symbols_math, main, op, "\u2A00", "\\bigodot"); + defineSymbol(symbols_math, main, op, "\u222E", "\\oint"); + defineSymbol(symbols_math, main, op, "\u2A06", "\\bigsqcup"); + defineSymbol(symbols_math, main, op, "\u222B", "\\smallint"); + defineSymbol(symbols_text, main, symbols_inner, "\u2026", "\\textellipsis"); + defineSymbol(symbols_math, main, symbols_inner, "\u2026", "\\mathellipsis"); + defineSymbol(symbols_text, main, symbols_inner, "\u2026", "\\ldots", true); + defineSymbol(symbols_math, main, symbols_inner, "\u2026", "\\ldots", true); + defineSymbol(symbols_math, main, symbols_inner, "\u22EF", "\\@cdots", true); + defineSymbol(symbols_math, main, symbols_inner, "\u22F1", "\\ddots", true); + defineSymbol(symbols_math, main, symbols_textord, "\u22EE", "\\varvdots"); + defineSymbol(symbols_math, main, symbols_accent, "\u02CA", "\\acute"); + defineSymbol(symbols_math, main, symbols_accent, "\u02CB", "\\grave"); + defineSymbol(symbols_math, main, symbols_accent, "\xA8", "\\ddot"); + defineSymbol(symbols_math, main, symbols_accent, "~", "\\tilde"); + defineSymbol(symbols_math, main, symbols_accent, "\u02C9", "\\bar"); + defineSymbol(symbols_math, main, symbols_accent, "\u02D8", "\\breve"); + defineSymbol(symbols_math, main, symbols_accent, "\u02C7", "\\check"); + defineSymbol(symbols_math, main, symbols_accent, "^", "\\hat"); + defineSymbol(symbols_math, main, symbols_accent, "\u20D7", "\\vec"); + defineSymbol(symbols_math, main, symbols_accent, "\u02D9", "\\dot"); + defineSymbol(symbols_math, main, symbols_accent, "\u02DA", "\\mathring"); + defineSymbol(symbols_math, main, mathord, "\uE131", "\\@imath"); + defineSymbol(symbols_math, main, mathord, "\uE237", "\\@jmath"); + defineSymbol(symbols_math, main, symbols_textord, "\u0131", "\u0131"); + defineSymbol(symbols_math, main, symbols_textord, "\u0237", "\u0237"); + defineSymbol(symbols_text, main, symbols_textord, "\u0131", "\\i", true); + defineSymbol(symbols_text, main, symbols_textord, "\u0237", "\\j", true); + defineSymbol(symbols_text, main, symbols_textord, "\xDF", "\\ss", true); + defineSymbol(symbols_text, main, symbols_textord, "\xE6", "\\ae", true); + defineSymbol(symbols_text, main, symbols_textord, "\u0153", "\\oe", true); + defineSymbol(symbols_text, main, symbols_textord, "\xF8", "\\o", true); + defineSymbol(symbols_text, main, symbols_textord, "\xC6", "\\AE", true); + defineSymbol(symbols_text, main, symbols_textord, "\u0152", "\\OE", true); + defineSymbol(symbols_text, main, symbols_textord, "\xD8", "\\O", true); + defineSymbol(symbols_text, main, symbols_accent, "\u02CA", "\\'"); + defineSymbol(symbols_text, main, symbols_accent, "\u02CB", "\\`"); + defineSymbol(symbols_text, main, symbols_accent, "\u02C6", "\\^"); + defineSymbol(symbols_text, main, symbols_accent, "\u02DC", "\\~"); + defineSymbol(symbols_text, main, symbols_accent, "\u02C9", "\\="); + defineSymbol(symbols_text, main, symbols_accent, "\u02D8", "\\u"); + defineSymbol(symbols_text, main, symbols_accent, "\u02D9", "\\."); + defineSymbol(symbols_text, main, symbols_accent, "\u02DA", "\\r"); + defineSymbol(symbols_text, main, symbols_accent, "\u02C7", "\\v"); + defineSymbol(symbols_text, main, symbols_accent, "\xA8", '\\"'); + defineSymbol(symbols_text, main, symbols_accent, "\u02DD", "\\H"); + defineSymbol(symbols_text, main, symbols_accent, "\u25EF", "\\textcircled"); + var ligatures = { + "--": true, + "---": true, + "``": true, + "''": true + }; + defineSymbol(symbols_text, main, symbols_textord, "\u2013", "--", true); + defineSymbol(symbols_text, main, symbols_textord, "\u2013", "\\textendash"); + defineSymbol(symbols_text, main, symbols_textord, "\u2014", "---", true); + defineSymbol(symbols_text, main, symbols_textord, "\u2014", "\\textemdash"); + defineSymbol(symbols_text, main, symbols_textord, "\u2018", "`", true); + defineSymbol(symbols_text, main, symbols_textord, "\u2018", "\\textquoteleft"); + defineSymbol(symbols_text, main, symbols_textord, "\u2019", "'", true); + defineSymbol(symbols_text, main, symbols_textord, "\u2019", "\\textquoteright"); + defineSymbol(symbols_text, main, symbols_textord, "\u201C", "``", true); + defineSymbol(symbols_text, main, symbols_textord, "\u201C", "\\textquotedblleft"); + defineSymbol(symbols_text, main, symbols_textord, "\u201D", "''", true); + defineSymbol(symbols_text, main, symbols_textord, "\u201D", "\\textquotedblright"); + defineSymbol(symbols_math, main, symbols_textord, "\xB0", "\\degree", true); + defineSymbol(symbols_text, main, symbols_textord, "\xB0", "\\degree"); + defineSymbol(symbols_text, main, symbols_textord, "\xB0", "\\textdegree", true); + defineSymbol(symbols_math, main, symbols_textord, "\xA3", "\\pounds"); + defineSymbol(symbols_math, main, symbols_textord, "\xA3", "\\mathsterling", true); + defineSymbol(symbols_text, main, symbols_textord, "\xA3", "\\pounds"); + defineSymbol(symbols_text, main, symbols_textord, "\xA3", "\\textsterling", true); + defineSymbol(symbols_math, ams, symbols_textord, "\u2720", "\\maltese"); + defineSymbol(symbols_text, ams, symbols_textord, "\u2720", "\\maltese"); + var mathTextSymbols = '0123456789/@."'; + for (var symbols_i = 0; symbols_i < mathTextSymbols.length; symbols_i++) { + var symbols_ch = mathTextSymbols.charAt(symbols_i); + defineSymbol(symbols_math, main, symbols_textord, symbols_ch, symbols_ch); + } + var textSymbols = '0123456789!@*()-=+";:?/.,'; + for (var src_symbols_i = 0; src_symbols_i < textSymbols.length; src_symbols_i++) { + var _ch = textSymbols.charAt(src_symbols_i); + defineSymbol(symbols_text, main, symbols_textord, _ch, _ch); + } + var letters = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz"; + for (var symbols_i2 = 0; symbols_i2 < letters.length; symbols_i2++) { + var _ch2 = letters.charAt(symbols_i2); + defineSymbol(symbols_math, main, mathord, _ch2, _ch2); + defineSymbol(symbols_text, main, symbols_textord, _ch2, _ch2); + } + defineSymbol(symbols_math, ams, symbols_textord, "C", "\u2102"); + defineSymbol(symbols_text, ams, symbols_textord, "C", "\u2102"); + defineSymbol(symbols_math, ams, symbols_textord, "H", "\u210D"); + defineSymbol(symbols_text, ams, symbols_textord, "H", "\u210D"); + defineSymbol(symbols_math, ams, symbols_textord, "N", "\u2115"); + defineSymbol(symbols_text, ams, symbols_textord, "N", "\u2115"); + defineSymbol(symbols_math, ams, symbols_textord, "P", "\u2119"); + defineSymbol(symbols_text, ams, symbols_textord, "P", "\u2119"); + defineSymbol(symbols_math, ams, symbols_textord, "Q", "\u211A"); + defineSymbol(symbols_text, ams, symbols_textord, "Q", "\u211A"); + defineSymbol(symbols_math, ams, symbols_textord, "R", "\u211D"); + defineSymbol(symbols_text, ams, symbols_textord, "R", "\u211D"); + defineSymbol(symbols_math, ams, symbols_textord, "Z", "\u2124"); + defineSymbol(symbols_text, ams, symbols_textord, "Z", "\u2124"); + defineSymbol(symbols_math, main, mathord, "h", "\u210E"); + defineSymbol(symbols_text, main, mathord, "h", "\u210E"); + var symbols_wideChar = ""; + for (var symbols_i3 = 0; symbols_i3 < letters.length; symbols_i3++) { + var _ch3 = letters.charAt(symbols_i3); + symbols_wideChar = String.fromCharCode(55349, 56320 + symbols_i3); + defineSymbol(symbols_math, main, mathord, _ch3, symbols_wideChar); + defineSymbol(symbols_text, main, symbols_textord, _ch3, symbols_wideChar); + symbols_wideChar = String.fromCharCode(55349, 56372 + symbols_i3); + defineSymbol(symbols_math, main, mathord, _ch3, symbols_wideChar); + defineSymbol(symbols_text, main, symbols_textord, _ch3, symbols_wideChar); + symbols_wideChar = String.fromCharCode(55349, 56424 + symbols_i3); + defineSymbol(symbols_math, main, mathord, _ch3, symbols_wideChar); + defineSymbol(symbols_text, main, symbols_textord, _ch3, symbols_wideChar); + symbols_wideChar = String.fromCharCode(55349, 56580 + symbols_i3); + defineSymbol(symbols_math, main, mathord, _ch3, symbols_wideChar); + defineSymbol(symbols_text, main, symbols_textord, _ch3, symbols_wideChar); + symbols_wideChar = String.fromCharCode(55349, 56736 + symbols_i3); + defineSymbol(symbols_math, main, mathord, _ch3, symbols_wideChar); + defineSymbol(symbols_text, main, symbols_textord, _ch3, symbols_wideChar); + symbols_wideChar = String.fromCharCode(55349, 56788 + symbols_i3); + defineSymbol(symbols_math, main, mathord, _ch3, symbols_wideChar); + defineSymbol(symbols_text, main, symbols_textord, _ch3, symbols_wideChar); + symbols_wideChar = String.fromCharCode(55349, 56840 + symbols_i3); + defineSymbol(symbols_math, main, mathord, _ch3, symbols_wideChar); + defineSymbol(symbols_text, main, symbols_textord, _ch3, symbols_wideChar); + symbols_wideChar = String.fromCharCode(55349, 56944 + symbols_i3); + defineSymbol(symbols_math, main, mathord, _ch3, symbols_wideChar); + defineSymbol(symbols_text, main, symbols_textord, _ch3, symbols_wideChar); + if (symbols_i3 < 26) { + symbols_wideChar = String.fromCharCode(55349, 56632 + symbols_i3); + defineSymbol(symbols_math, main, mathord, _ch3, symbols_wideChar); + defineSymbol(symbols_text, main, symbols_textord, _ch3, symbols_wideChar); + symbols_wideChar = String.fromCharCode(55349, 56476 + symbols_i3); + defineSymbol(symbols_math, main, mathord, _ch3, symbols_wideChar); + defineSymbol(symbols_text, main, symbols_textord, _ch3, symbols_wideChar); + } + } + symbols_wideChar = String.fromCharCode(55349, 56668); + defineSymbol(symbols_math, main, mathord, "k", symbols_wideChar); + defineSymbol(symbols_text, main, symbols_textord, "k", symbols_wideChar); + for (var symbols_i4 = 0; symbols_i4 < 10; symbols_i4++) { + var _ch4 = symbols_i4.toString(); + symbols_wideChar = String.fromCharCode(55349, 57294 + symbols_i4); + defineSymbol(symbols_math, main, mathord, _ch4, symbols_wideChar); + defineSymbol(symbols_text, main, symbols_textord, _ch4, symbols_wideChar); + symbols_wideChar = String.fromCharCode(55349, 57314 + symbols_i4); + defineSymbol(symbols_math, main, mathord, _ch4, symbols_wideChar); + defineSymbol(symbols_text, main, symbols_textord, _ch4, symbols_wideChar); + symbols_wideChar = String.fromCharCode(55349, 57324 + symbols_i4); + defineSymbol(symbols_math, main, mathord, _ch4, symbols_wideChar); + defineSymbol(symbols_text, main, symbols_textord, _ch4, symbols_wideChar); + symbols_wideChar = String.fromCharCode(55349, 57334 + symbols_i4); + defineSymbol(symbols_math, main, mathord, _ch4, symbols_wideChar); + defineSymbol(symbols_text, main, symbols_textord, _ch4, symbols_wideChar); + } + var extraLatin = "\xC7\xD0\xDE\xE7\xFE"; + for (var _i5 = 0; _i5 < extraLatin.length; _i5++) { + var _ch5 = extraLatin.charAt(_i5); + defineSymbol(symbols_math, main, mathord, _ch5, _ch5); + defineSymbol(symbols_text, main, symbols_textord, _ch5, _ch5); + } + var wideLatinLetterData = [ + ["mathbf", "textbf", "Main-Bold"], + ["mathbf", "textbf", "Main-Bold"], + ["mathnormal", "textit", "Math-Italic"], + ["mathnormal", "textit", "Math-Italic"], + ["boldsymbol", "boldsymbol", "Main-BoldItalic"], + ["boldsymbol", "boldsymbol", "Main-BoldItalic"], + ["mathscr", "textscr", "Script-Regular"], + ["", "", ""], + ["", "", ""], + ["", "", ""], + ["mathfrak", "textfrak", "Fraktur-Regular"], + ["mathfrak", "textfrak", "Fraktur-Regular"], + ["mathbb", "textbb", "AMS-Regular"], + ["mathbb", "textbb", "AMS-Regular"], + ["", "", ""], + ["", "", ""], + ["mathsf", "textsf", "SansSerif-Regular"], + ["mathsf", "textsf", "SansSerif-Regular"], + ["mathboldsf", "textboldsf", "SansSerif-Bold"], + ["mathboldsf", "textboldsf", "SansSerif-Bold"], + ["mathitsf", "textitsf", "SansSerif-Italic"], + ["mathitsf", "textitsf", "SansSerif-Italic"], + ["", "", ""], + ["", "", ""], + ["mathtt", "texttt", "Typewriter-Regular"], + ["mathtt", "texttt", "Typewriter-Regular"] + ]; + var wideNumeralData = [ + ["mathbf", "textbf", "Main-Bold"], + ["", "", ""], + ["mathsf", "textsf", "SansSerif-Regular"], + ["mathboldsf", "textboldsf", "SansSerif-Bold"], + ["mathtt", "texttt", "Typewriter-Regular"] + ]; + var wide_character_wideCharacterFont = function wideCharacterFont(wideChar, mode) { + var H = wideChar.charCodeAt(0); + var L = wideChar.charCodeAt(1); + var codePoint = (H - 55296) * 1024 + (L - 56320) + 65536; + var j = mode === "math" ? 0 : 1; + if (119808 <= codePoint && codePoint < 120484) { + var i = Math.floor((codePoint - 119808) / 26); + return [wideLatinLetterData[i][2], wideLatinLetterData[i][j]]; + } else if (120782 <= codePoint && codePoint <= 120831) { + var _i = Math.floor((codePoint - 120782) / 10); + return [wideNumeralData[_i][2], wideNumeralData[_i][j]]; + } else if (codePoint === 120485 || codePoint === 120486) { + return [wideLatinLetterData[0][2], wideLatinLetterData[0][j]]; + } else if (120486 < codePoint && codePoint < 120782) { + return ["", ""]; + } else { + throw new src_ParseError("Unsupported character: " + wideChar); + } + }; + var sizeStyleMap = [ + [1, 1, 1], + [2, 1, 1], + [3, 1, 1], + [4, 2, 1], + [5, 2, 1], + [6, 3, 1], + [7, 4, 2], + [8, 6, 3], + [9, 7, 6], + [10, 8, 7], + [11, 10, 9] + ]; + var sizeMultipliers = [ + 0.5, + 0.6, + 0.7, + 0.8, + 0.9, + 1, + 1.2, + 1.44, + 1.728, + 2.074, + 2.488 + ]; + var sizeAtStyle = function sizeAtStyle2(size, style) { + return style.size < 2 ? size : sizeStyleMap[size - 1][style.size - 1]; + }; + var Options_Options = /* @__PURE__ */ function() { + function Options(data2) { + this.style = void 0; + this.color = void 0; + this.size = void 0; + this.textSize = void 0; + this.phantom = void 0; + this.font = void 0; + this.fontFamily = void 0; + this.fontWeight = void 0; + this.fontShape = void 0; + this.sizeMultiplier = void 0; + this.maxSize = void 0; + this.minRuleThickness = void 0; + this._fontMetrics = void 0; + this.style = data2.style; + this.color = data2.color; + this.size = data2.size || Options.BASESIZE; + this.textSize = data2.textSize || this.size; + this.phantom = !!data2.phantom; + this.font = data2.font || ""; + this.fontFamily = data2.fontFamily || ""; + this.fontWeight = data2.fontWeight || ""; + this.fontShape = data2.fontShape || ""; + this.sizeMultiplier = sizeMultipliers[this.size - 1]; + this.maxSize = data2.maxSize; + this.minRuleThickness = data2.minRuleThickness; + this._fontMetrics = void 0; + } + var _proto = Options.prototype; + _proto.extend = function extend(extension) { + var data2 = { + style: this.style, + size: this.size, + textSize: this.textSize, + color: this.color, + phantom: this.phantom, + font: this.font, + fontFamily: this.fontFamily, + fontWeight: this.fontWeight, + fontShape: this.fontShape, + maxSize: this.maxSize, + minRuleThickness: this.minRuleThickness + }; + for (var key in extension) { + if (extension.hasOwnProperty(key)) { + data2[key] = extension[key]; + } + } + return new Options(data2); + }; + _proto.havingStyle = function havingStyle(style) { + if (this.style === style) { + return this; + } else { + return this.extend({ + style, + size: sizeAtStyle(this.textSize, style) + }); + } + }; + _proto.havingCrampedStyle = function havingCrampedStyle() { + return this.havingStyle(this.style.cramp()); + }; + _proto.havingSize = function havingSize(size) { + if (this.size === size && this.textSize === size) { + return this; + } else { + return this.extend({ + style: this.style.text(), + size, + textSize: size, + sizeMultiplier: sizeMultipliers[size - 1] + }); + } + }; + _proto.havingBaseStyle = function havingBaseStyle(style) { + style = style || this.style.text(); + var wantSize = sizeAtStyle(Options.BASESIZE, style); + if (this.size === wantSize && this.textSize === Options.BASESIZE && this.style === style) { + return this; + } else { + return this.extend({ + style, + size: wantSize + }); + } + }; + _proto.havingBaseSizing = function havingBaseSizing() { + var size; + switch (this.style.id) { + case 4: + case 5: + size = 3; + break; + case 6: + case 7: + size = 1; + break; + default: + size = 6; + } + return this.extend({ + style: this.style.text(), + size + }); + }; + _proto.withColor = function withColor(color) { + return this.extend({ + color + }); + }; + _proto.withPhantom = function withPhantom() { + return this.extend({ + phantom: true + }); + }; + _proto.withFont = function withFont(font) { + return this.extend({ + font + }); + }; + _proto.withTextFontFamily = function withTextFontFamily(fontFamily) { + return this.extend({ + fontFamily, + font: "" + }); + }; + _proto.withTextFontWeight = function withTextFontWeight(fontWeight) { + return this.extend({ + fontWeight, + font: "" + }); + }; + _proto.withTextFontShape = function withTextFontShape(fontShape) { + return this.extend({ + fontShape, + font: "" + }); + }; + _proto.sizingClasses = function sizingClasses(oldOptions) { + if (oldOptions.size !== this.size) { + return ["sizing", "reset-size" + oldOptions.size, "size" + this.size]; + } else { + return []; + } + }; + _proto.baseSizingClasses = function baseSizingClasses() { + if (this.size !== Options.BASESIZE) { + return ["sizing", "reset-size" + this.size, "size" + Options.BASESIZE]; + } else { + return []; + } + }; + _proto.fontMetrics = function fontMetrics() { + if (!this._fontMetrics) { + this._fontMetrics = getGlobalMetrics(this.size); + } + return this._fontMetrics; + }; + _proto.getColor = function getColor() { + if (this.phantom) { + return "transparent"; + } else { + return this.color; + } + }; + return Options; + }(); + Options_Options.BASESIZE = 6; + var src_Options = Options_Options; + var ptPerUnit = { + "pt": 1, + "mm": 7227 / 2540, + "cm": 7227 / 254, + "in": 72.27, + "bp": 803 / 800, + "pc": 12, + "dd": 1238 / 1157, + "cc": 14856 / 1157, + "nd": 685 / 642, + "nc": 1370 / 107, + "sp": 1 / 65536, + "px": 803 / 800 + }; + var relativeUnit = { + "ex": true, + "em": true, + "mu": true + }; + var validUnit = function validUnit2(unit) { + if (typeof unit !== "string") { + unit = unit.unit; + } + return unit in ptPerUnit || unit in relativeUnit || unit === "ex"; + }; + var units_calculateSize = function calculateSize(sizeValue, options) { + var scale; + if (sizeValue.unit in ptPerUnit) { + scale = ptPerUnit[sizeValue.unit] / options.fontMetrics().ptPerEm / options.sizeMultiplier; + } else if (sizeValue.unit === "mu") { + scale = options.fontMetrics().cssEmPerMu; + } else { + var unitOptions; + if (options.style.isTight()) { + unitOptions = options.havingStyle(options.style.text()); + } else { + unitOptions = options; + } + if (sizeValue.unit === "ex") { + scale = unitOptions.fontMetrics().xHeight; + } else if (sizeValue.unit === "em") { + scale = unitOptions.fontMetrics().quad; + } else { + throw new src_ParseError("Invalid unit: '" + sizeValue.unit + "'"); + } + if (unitOptions !== options) { + scale *= unitOptions.sizeMultiplier / options.sizeMultiplier; + } + } + return Math.min(sizeValue.number * scale, options.maxSize); + }; + var buildCommon_lookupSymbol = function lookupSymbol(value, fontName, mode) { + if (src_symbols[mode][value] && src_symbols[mode][value].replace) { + value = src_symbols[mode][value].replace; + } + return { + value, + metrics: getCharacterMetrics(value, fontName, mode) + }; + }; + var buildCommon_makeSymbol = function makeSymbol(value, fontName, mode, options, classes) { + var lookup = buildCommon_lookupSymbol(value, fontName, mode); + var metrics = lookup.metrics; + value = lookup.value; + var symbolNode; + if (metrics) { + var italic = metrics.italic; + if (mode === "text" || options && options.font === "mathit") { + italic = 0; + } + symbolNode = new domTree_SymbolNode(value, metrics.height, metrics.depth, italic, metrics.skew, metrics.width, classes); + } else { + typeof console !== "undefined" && console.warn("No character metrics " + ("for '" + value + "' in style '" + fontName + "' and mode '" + mode + "'")); + symbolNode = new domTree_SymbolNode(value, 0, 0, 0, 0, 0, classes); + } + if (options) { + symbolNode.maxFontSize = options.sizeMultiplier; + if (options.style.isTight()) { + symbolNode.classes.push("mtight"); + } + var color = options.getColor(); + if (color) { + symbolNode.style.color = color; + } + } + return symbolNode; + }; + var buildCommon_mathsym = function mathsym(value, mode, options, classes) { + if (classes === void 0) { + classes = []; + } + if (options.font === "boldsymbol" && buildCommon_lookupSymbol(value, "Main-Bold", mode).metrics) { + return buildCommon_makeSymbol(value, "Main-Bold", mode, options, classes.concat(["mathbf"])); + } else if (value === "\\" || src_symbols[mode][value].font === "main") { + return buildCommon_makeSymbol(value, "Main-Regular", mode, options, classes); + } else { + return buildCommon_makeSymbol(value, "AMS-Regular", mode, options, classes.concat(["amsrm"])); + } + }; + var boldsymbol = function boldsymbol2(value, mode, options, classes, type) { + if (type !== "textord" && buildCommon_lookupSymbol(value, "Math-BoldItalic", mode).metrics) { + return { + fontName: "Math-BoldItalic", + fontClass: "boldsymbol" + }; + } else { + return { + fontName: "Main-Bold", + fontClass: "mathbf" + }; + } + }; + var buildCommon_makeOrd = function makeOrd(group, options, type) { + var mode = group.mode; + var text4 = group.text; + var classes = ["mord"]; + var isFont = mode === "math" || mode === "text" && options.font; + var fontOrFamily = isFont ? options.font : options.fontFamily; + if (text4.charCodeAt(0) === 55349) { + var _wideCharacterFont = wide_character_wideCharacterFont(text4, mode), wideFontName = _wideCharacterFont[0], wideFontClass = _wideCharacterFont[1]; + return buildCommon_makeSymbol(text4, wideFontName, mode, options, classes.concat(wideFontClass)); + } else if (fontOrFamily) { + var fontName; + var fontClasses; + if (fontOrFamily === "boldsymbol") { + var fontData = boldsymbol(text4, mode, options, classes, type); + fontName = fontData.fontName; + fontClasses = [fontData.fontClass]; + } else if (isFont) { + fontName = fontMap[fontOrFamily].fontName; + fontClasses = [fontOrFamily]; + } else { + fontName = retrieveTextFontName(fontOrFamily, options.fontWeight, options.fontShape); + fontClasses = [fontOrFamily, options.fontWeight, options.fontShape]; + } + if (buildCommon_lookupSymbol(text4, fontName, mode).metrics) { + return buildCommon_makeSymbol(text4, fontName, mode, options, classes.concat(fontClasses)); + } else if (ligatures.hasOwnProperty(text4) && fontName.substr(0, 10) === "Typewriter") { + var parts = []; + for (var i = 0; i < text4.length; i++) { + parts.push(buildCommon_makeSymbol(text4[i], fontName, mode, options, classes.concat(fontClasses))); + } + return buildCommon_makeFragment(parts); + } + } + if (type === "mathord") { + return buildCommon_makeSymbol(text4, "Math-Italic", mode, options, classes.concat(["mathnormal"])); + } else if (type === "textord") { + var font = src_symbols[mode][text4] && src_symbols[mode][text4].font; + if (font === "ams") { + var _fontName = retrieveTextFontName("amsrm", options.fontWeight, options.fontShape); + return buildCommon_makeSymbol(text4, _fontName, mode, options, classes.concat("amsrm", options.fontWeight, options.fontShape)); + } else if (font === "main" || !font) { + var _fontName2 = retrieveTextFontName("textrm", options.fontWeight, options.fontShape); + return buildCommon_makeSymbol(text4, _fontName2, mode, options, classes.concat(options.fontWeight, options.fontShape)); + } else { + var _fontName3 = retrieveTextFontName(font, options.fontWeight, options.fontShape); + return buildCommon_makeSymbol(text4, _fontName3, mode, options, classes.concat(_fontName3, options.fontWeight, options.fontShape)); + } + } else { + throw new Error("unexpected type: " + type + " in makeOrd"); + } + }; + var buildCommon_canCombine = function canCombine(prev2, next2) { + if (createClass(prev2.classes) !== createClass(next2.classes) || prev2.skew !== next2.skew || prev2.maxFontSize !== next2.maxFontSize) { + return false; + } + for (var style in prev2.style) { + if (prev2.style.hasOwnProperty(style) && prev2.style[style] !== next2.style[style]) { + return false; + } + } + for (var _style in next2.style) { + if (next2.style.hasOwnProperty(_style) && prev2.style[_style] !== next2.style[_style]) { + return false; + } + } + return true; + }; + var buildCommon_tryCombineChars = function tryCombineChars(chars) { + for (var i = 0; i < chars.length - 1; i++) { + var prev2 = chars[i]; + var next2 = chars[i + 1]; + if (prev2 instanceof domTree_SymbolNode && next2 instanceof domTree_SymbolNode && buildCommon_canCombine(prev2, next2)) { + prev2.text += next2.text; + prev2.height = Math.max(prev2.height, next2.height); + prev2.depth = Math.max(prev2.depth, next2.depth); + prev2.italic = next2.italic; + chars.splice(i + 1, 1); + i--; + } + } + return chars; + }; + var sizeElementFromChildren = function sizeElementFromChildren2(elem) { + var height = 0; + var depth = 0; + var maxFontSize = 0; + for (var i = 0; i < elem.children.length; i++) { + var child = elem.children[i]; + if (child.height > height) { + height = child.height; + } + if (child.depth > depth) { + depth = child.depth; + } + if (child.maxFontSize > maxFontSize) { + maxFontSize = child.maxFontSize; + } + } + elem.height = height; + elem.depth = depth; + elem.maxFontSize = maxFontSize; + }; + var buildCommon_makeSpan = function makeSpan(classes, children2, options, style) { + var span = new domTree_Span(classes, children2, options, style); + sizeElementFromChildren(span); + return span; + }; + var buildCommon_makeSvgSpan = function makeSvgSpan(classes, children2, options, style) { + return new domTree_Span(classes, children2, options, style); + }; + var makeLineSpan = function makeLineSpan2(className, options, thickness) { + var line = buildCommon_makeSpan([className], [], options); + line.height = Math.max(thickness || options.fontMetrics().defaultRuleThickness, options.minRuleThickness); + line.style.borderBottomWidth = line.height + "em"; + line.maxFontSize = 1; + return line; + }; + var buildCommon_makeAnchor = function makeAnchor(href, classes, children2, options) { + var anchor = new domTree_Anchor(href, classes, children2, options); + sizeElementFromChildren(anchor); + return anchor; + }; + var buildCommon_makeFragment = function makeFragment(children2) { + var fragment = new tree_DocumentFragment(children2); + sizeElementFromChildren(fragment); + return fragment; + }; + var buildCommon_wrapFragment = function wrapFragment(group, options) { + if (group instanceof tree_DocumentFragment) { + return buildCommon_makeSpan([], [group], options); + } + return group; + }; + var getVListChildrenAndDepth = function getVListChildrenAndDepth2(params) { + if (params.positionType === "individualShift") { + var oldChildren = params.children; + var children2 = [oldChildren[0]]; + var _depth = -oldChildren[0].shift - oldChildren[0].elem.depth; + var currPos = _depth; + for (var i = 1; i < oldChildren.length; i++) { + var diff = -oldChildren[i].shift - currPos - oldChildren[i].elem.depth; + var size = diff - (oldChildren[i - 1].elem.height + oldChildren[i - 1].elem.depth); + currPos = currPos + diff; + children2.push({ + type: "kern", + size + }); + children2.push(oldChildren[i]); + } + return { + children: children2, + depth: _depth + }; + } + var depth; + if (params.positionType === "top") { + var bottom = params.positionData; + for (var _i = 0; _i < params.children.length; _i++) { + var child = params.children[_i]; + bottom -= child.type === "kern" ? child.size : child.elem.height + child.elem.depth; + } + depth = bottom; + } else if (params.positionType === "bottom") { + depth = -params.positionData; + } else { + var firstChild = params.children[0]; + if (firstChild.type !== "elem") { + throw new Error('First child must have type "elem".'); + } + if (params.positionType === "shift") { + depth = -firstChild.elem.depth - params.positionData; + } else if (params.positionType === "firstBaseline") { + depth = -firstChild.elem.depth; + } else { + throw new Error("Invalid positionType " + params.positionType + "."); + } + } + return { + children: params.children, + depth + }; + }; + var buildCommon_makeVList = function makeVList(params, options) { + var _getVListChildrenAndD = getVListChildrenAndDepth(params), children2 = _getVListChildrenAndD.children, depth = _getVListChildrenAndD.depth; + var pstrutSize = 0; + for (var i = 0; i < children2.length; i++) { + var child = children2[i]; + if (child.type === "elem") { + var elem = child.elem; + pstrutSize = Math.max(pstrutSize, elem.maxFontSize, elem.height); + } + } + pstrutSize += 2; + var pstrut = buildCommon_makeSpan(["pstrut"], []); + pstrut.style.height = pstrutSize + "em"; + var realChildren = []; + var minPos = depth; + var maxPos = depth; + var currPos = depth; + for (var _i2 = 0; _i2 < children2.length; _i2++) { + var _child = children2[_i2]; + if (_child.type === "kern") { + currPos += _child.size; + } else { + var _elem = _child.elem; + var classes = _child.wrapperClasses || []; + var style = _child.wrapperStyle || {}; + var childWrap = buildCommon_makeSpan(classes, [pstrut, _elem], void 0, style); + childWrap.style.top = -pstrutSize - currPos - _elem.depth + "em"; + if (_child.marginLeft) { + childWrap.style.marginLeft = _child.marginLeft; + } + if (_child.marginRight) { + childWrap.style.marginRight = _child.marginRight; + } + realChildren.push(childWrap); + currPos += _elem.height + _elem.depth; + } + minPos = Math.min(minPos, currPos); + maxPos = Math.max(maxPos, currPos); + } + var vlist = buildCommon_makeSpan(["vlist"], realChildren); + vlist.style.height = maxPos + "em"; + var rows; + if (minPos < 0) { + var emptySpan = buildCommon_makeSpan([], []); + var depthStrut = buildCommon_makeSpan(["vlist"], [emptySpan]); + depthStrut.style.height = -minPos + "em"; + var topStrut = buildCommon_makeSpan(["vlist-s"], [new domTree_SymbolNode("\u200B")]); + rows = [buildCommon_makeSpan(["vlist-r"], [vlist, topStrut]), buildCommon_makeSpan(["vlist-r"], [depthStrut])]; + } else { + rows = [buildCommon_makeSpan(["vlist-r"], [vlist])]; + } + var vtable = buildCommon_makeSpan(["vlist-t"], rows); + if (rows.length === 2) { + vtable.classes.push("vlist-t2"); + } + vtable.height = maxPos; + vtable.depth = -minPos; + return vtable; + }; + var buildCommon_makeGlue = function makeGlue(measurement, options) { + var rule = buildCommon_makeSpan(["mspace"], [], options); + var size = units_calculateSize(measurement, options); + rule.style.marginRight = size + "em"; + return rule; + }; + var retrieveTextFontName = function retrieveTextFontName2(fontFamily, fontWeight, fontShape) { + var baseFontName = ""; + switch (fontFamily) { + case "amsrm": + baseFontName = "AMS"; + break; + case "textrm": + baseFontName = "Main"; + break; + case "textsf": + baseFontName = "SansSerif"; + break; + case "texttt": + baseFontName = "Typewriter"; + break; + default: + baseFontName = fontFamily; + } + var fontStylesName; + if (fontWeight === "textbf" && fontShape === "textit") { + fontStylesName = "BoldItalic"; + } else if (fontWeight === "textbf") { + fontStylesName = "Bold"; + } else if (fontWeight === "textit") { + fontStylesName = "Italic"; + } else { + fontStylesName = "Regular"; + } + return baseFontName + "-" + fontStylesName; + }; + var fontMap = { + "mathbf": { + variant: "bold", + fontName: "Main-Bold" + }, + "mathrm": { + variant: "normal", + fontName: "Main-Regular" + }, + "textit": { + variant: "italic", + fontName: "Main-Italic" + }, + "mathit": { + variant: "italic", + fontName: "Main-Italic" + }, + "mathnormal": { + variant: "italic", + fontName: "Math-Italic" + }, + "mathbb": { + variant: "double-struck", + fontName: "AMS-Regular" + }, + "mathcal": { + variant: "script", + fontName: "Caligraphic-Regular" + }, + "mathfrak": { + variant: "fraktur", + fontName: "Fraktur-Regular" + }, + "mathscr": { + variant: "script", + fontName: "Script-Regular" + }, + "mathsf": { + variant: "sans-serif", + fontName: "SansSerif-Regular" + }, + "mathtt": { + variant: "monospace", + fontName: "Typewriter-Regular" + } + }; + var svgData = { + vec: ["vec", 0.471, 0.714], + oiintSize1: ["oiintSize1", 0.957, 0.499], + oiintSize2: ["oiintSize2", 1.472, 0.659], + oiiintSize1: ["oiiintSize1", 1.304, 0.499], + oiiintSize2: ["oiiintSize2", 1.98, 0.659], + leftParenInner: ["leftParenInner", 0.875, 0.3], + rightParenInner: ["rightParenInner", 0.875, 0.3] + }; + var buildCommon_staticSvg = function staticSvg(value, options) { + var _svgData$value = svgData[value], pathName = _svgData$value[0], width = _svgData$value[1], height = _svgData$value[2]; + var path = new domTree_PathNode(pathName); + var svgNode = new SvgNode([path], { + "width": width + "em", + "height": height + "em", + "style": "width:" + width + "em", + "viewBox": "0 0 " + 1e3 * width + " " + 1e3 * height, + "preserveAspectRatio": "xMinYMin" + }); + var span = buildCommon_makeSvgSpan(["overlay"], [svgNode], options); + span.height = height; + span.style.height = height + "em"; + span.style.width = width + "em"; + return span; + }; + var buildCommon = { + fontMap, + makeSymbol: buildCommon_makeSymbol, + mathsym: buildCommon_mathsym, + makeSpan: buildCommon_makeSpan, + makeSvgSpan: buildCommon_makeSvgSpan, + makeLineSpan, + makeAnchor: buildCommon_makeAnchor, + makeFragment: buildCommon_makeFragment, + wrapFragment: buildCommon_wrapFragment, + makeVList: buildCommon_makeVList, + makeOrd: buildCommon_makeOrd, + makeGlue: buildCommon_makeGlue, + staticSvg: buildCommon_staticSvg, + svgData, + tryCombineChars: buildCommon_tryCombineChars + }; + var thinspace = { + number: 3, + unit: "mu" + }; + var mediumspace = { + number: 4, + unit: "mu" + }; + var thickspace = { + number: 5, + unit: "mu" + }; + var spacings = { + mord: { + mop: thinspace, + mbin: mediumspace, + mrel: thickspace, + minner: thinspace + }, + mop: { + mord: thinspace, + mop: thinspace, + mrel: thickspace, + minner: thinspace + }, + mbin: { + mord: mediumspace, + mop: mediumspace, + mopen: mediumspace, + minner: mediumspace + }, + mrel: { + mord: thickspace, + mop: thickspace, + mopen: thickspace, + minner: thickspace + }, + mopen: {}, + mclose: { + mop: thinspace, + mbin: mediumspace, + mrel: thickspace, + minner: thinspace + }, + mpunct: { + mord: thinspace, + mop: thinspace, + mrel: thickspace, + mopen: thinspace, + mclose: thinspace, + mpunct: thinspace, + minner: thinspace + }, + minner: { + mord: thinspace, + mop: thinspace, + mbin: mediumspace, + mrel: thickspace, + mopen: thinspace, + mpunct: thinspace, + minner: thinspace + } + }; + var tightSpacings = { + mord: { + mop: thinspace + }, + mop: { + mord: thinspace, + mop: thinspace + }, + mbin: {}, + mrel: {}, + mopen: {}, + mclose: { + mop: thinspace + }, + mpunct: {}, + minner: { + mop: thinspace + } + }; + var _functions = {}; + var _htmlGroupBuilders = {}; + var _mathmlGroupBuilders = {}; + function defineFunction(_ref) { + var type = _ref.type, names = _ref.names, props = _ref.props, handler = _ref.handler, htmlBuilder = _ref.htmlBuilder, mathmlBuilder = _ref.mathmlBuilder; + var data2 = { + type, + numArgs: props.numArgs, + argTypes: props.argTypes, + greediness: props.greediness === void 0 ? 1 : props.greediness, + allowedInText: !!props.allowedInText, + allowedInMath: props.allowedInMath === void 0 ? true : props.allowedInMath, + numOptionalArgs: props.numOptionalArgs || 0, + infix: !!props.infix, + handler + }; + for (var i = 0; i < names.length; ++i) { + _functions[names[i]] = data2; + } + if (type) { + if (htmlBuilder) { + _htmlGroupBuilders[type] = htmlBuilder; + } + if (mathmlBuilder) { + _mathmlGroupBuilders[type] = mathmlBuilder; + } + } + } + function defineFunctionBuilders(_ref2) { + var type = _ref2.type, htmlBuilder = _ref2.htmlBuilder, mathmlBuilder = _ref2.mathmlBuilder; + defineFunction({ + type, + names: [], + props: { + numArgs: 0 + }, + handler: function handler() { + throw new Error("Should never be called."); + }, + htmlBuilder, + mathmlBuilder + }); + } + var ordargument = function ordargument2(arg) { + return arg.type === "ordgroup" ? arg.body : [arg]; + }; + var buildHTML_makeSpan = buildCommon.makeSpan; + var binLeftCanceller = ["leftmost", "mbin", "mopen", "mrel", "mop", "mpunct"]; + var binRightCanceller = ["rightmost", "mrel", "mclose", "mpunct"]; + var styleMap = { + "display": src_Style.DISPLAY, + "text": src_Style.TEXT, + "script": src_Style.SCRIPT, + "scriptscript": src_Style.SCRIPTSCRIPT + }; + var DomEnum = { + mord: "mord", + mop: "mop", + mbin: "mbin", + mrel: "mrel", + mopen: "mopen", + mclose: "mclose", + mpunct: "mpunct", + minner: "minner" + }; + var buildHTML_buildExpression = function buildExpression(expression, options, isRealGroup, surrounding) { + if (surrounding === void 0) { + surrounding = [null, null]; + } + var groups = []; + for (var i = 0; i < expression.length; i++) { + var output = buildHTML_buildGroup(expression[i], options); + if (output instanceof tree_DocumentFragment) { + var children2 = output.children; + groups.push.apply(groups, children2); + } else { + groups.push(output); + } + } + if (!isRealGroup) { + return groups; + } + var glueOptions = options; + if (expression.length === 1) { + var node = expression[0]; + if (node.type === "sizing") { + glueOptions = options.havingSize(node.size); + } else if (node.type === "styling") { + glueOptions = options.havingStyle(styleMap[node.style]); + } + } + var dummyPrev = buildHTML_makeSpan([surrounding[0] || "leftmost"], [], options); + var dummyNext = buildHTML_makeSpan([surrounding[1] || "rightmost"], [], options); + var isRoot = isRealGroup === "root"; + traverseNonSpaceNodes(groups, function(node2, prev2) { + var prevType = prev2.classes[0]; + var type = node2.classes[0]; + if (prevType === "mbin" && utils.contains(binRightCanceller, type)) { + prev2.classes[0] = "mord"; + } else if (type === "mbin" && utils.contains(binLeftCanceller, prevType)) { + node2.classes[0] = "mord"; + } + }, { + node: dummyPrev + }, dummyNext, isRoot); + traverseNonSpaceNodes(groups, function(node2, prev2) { + var prevType = getTypeOfDomTree(prev2); + var type = getTypeOfDomTree(node2); + var space = prevType && type ? node2.hasClass("mtight") ? tightSpacings[prevType][type] : spacings[prevType][type] : null; + if (space) { + return buildCommon.makeGlue(space, glueOptions); + } + }, { + node: dummyPrev + }, dummyNext, isRoot); + return groups; + }; + var traverseNonSpaceNodes = function traverseNonSpaceNodes2(nodes, callback, prev2, next2, isRoot) { + if (next2) { + nodes.push(next2); + } + var i = 0; + for (; i < nodes.length; i++) { + var node = nodes[i]; + var partialGroup = buildHTML_checkPartialGroup(node); + if (partialGroup) { + traverseNonSpaceNodes2(partialGroup.children, callback, prev2, null, isRoot); + continue; + } + var nonspace = !node.hasClass("mspace"); + if (nonspace) { + var result = callback(node, prev2.node); + if (result) { + if (prev2.insertAfter) { + prev2.insertAfter(result); + } else { + nodes.unshift(result); + i++; + } + } + } + if (nonspace) { + prev2.node = node; + } else if (isRoot && node.hasClass("newline")) { + prev2.node = buildHTML_makeSpan(["leftmost"]); + } + prev2.insertAfter = function(index2) { + return function(n) { + nodes.splice(index2 + 1, 0, n); + i++; + }; + }(i); + } + if (next2) { + nodes.pop(); + } + }; + var buildHTML_checkPartialGroup = function checkPartialGroup(node) { + if (node instanceof tree_DocumentFragment || node instanceof domTree_Anchor || node instanceof domTree_Span && node.hasClass("enclosing")) { + return node; + } + return null; + }; + var getOutermostNode = function getOutermostNode2(node, side) { + var partialGroup = buildHTML_checkPartialGroup(node); + if (partialGroup) { + var children2 = partialGroup.children; + if (children2.length) { + if (side === "right") { + return getOutermostNode2(children2[children2.length - 1], "right"); + } else if (side === "left") { + return getOutermostNode2(children2[0], "left"); + } + } + } + return node; + }; + var getTypeOfDomTree = function getTypeOfDomTree2(node, side) { + if (!node) { + return null; + } + if (side) { + node = getOutermostNode(node, side); + } + return DomEnum[node.classes[0]] || null; + }; + var makeNullDelimiter = function makeNullDelimiter2(options, classes) { + var moreClasses = ["nulldelimiter"].concat(options.baseSizingClasses()); + return buildHTML_makeSpan(classes.concat(moreClasses)); + }; + var buildHTML_buildGroup = function buildGroup(group, options, baseOptions) { + if (!group) { + return buildHTML_makeSpan(); + } + if (_htmlGroupBuilders[group.type]) { + var groupNode = _htmlGroupBuilders[group.type](group, options); + if (baseOptions && options.size !== baseOptions.size) { + groupNode = buildHTML_makeSpan(options.sizingClasses(baseOptions), [groupNode], options); + var multiplier = options.sizeMultiplier / baseOptions.sizeMultiplier; + groupNode.height *= multiplier; + groupNode.depth *= multiplier; + } + return groupNode; + } else { + throw new src_ParseError("Got group of unknown type: '" + group.type + "'"); + } + }; + function buildHTMLUnbreakable(children2, options) { + var body = buildHTML_makeSpan(["base"], children2, options); + var strut = buildHTML_makeSpan(["strut"]); + strut.style.height = body.height + body.depth + "em"; + strut.style.verticalAlign = -body.depth + "em"; + body.children.unshift(strut); + return body; + } + function buildHTML(tree, options) { + var tag = null; + if (tree.length === 1 && tree[0].type === "tag") { + tag = tree[0].tag; + tree = tree[0].body; + } + var expression = buildHTML_buildExpression(tree, options, "root"); + var children2 = []; + var parts = []; + for (var i = 0; i < expression.length; i++) { + parts.push(expression[i]); + if (expression[i].hasClass("mbin") || expression[i].hasClass("mrel") || expression[i].hasClass("allowbreak")) { + var nobreak = false; + while (i < expression.length - 1 && expression[i + 1].hasClass("mspace") && !expression[i + 1].hasClass("newline")) { + i++; + parts.push(expression[i]); + if (expression[i].hasClass("nobreak")) { + nobreak = true; + } + } + if (!nobreak) { + children2.push(buildHTMLUnbreakable(parts, options)); + parts = []; + } + } else if (expression[i].hasClass("newline")) { + parts.pop(); + if (parts.length > 0) { + children2.push(buildHTMLUnbreakable(parts, options)); + parts = []; + } + children2.push(expression[i]); + } + } + if (parts.length > 0) { + children2.push(buildHTMLUnbreakable(parts, options)); + } + var tagChild; + if (tag) { + tagChild = buildHTMLUnbreakable(buildHTML_buildExpression(tag, options, true)); + tagChild.classes = ["tag"]; + children2.push(tagChild); + } + var htmlNode = buildHTML_makeSpan(["katex-html"], children2); + htmlNode.setAttribute("aria-hidden", "true"); + if (tagChild) { + var strut = tagChild.children[0]; + strut.style.height = htmlNode.height + htmlNode.depth + "em"; + strut.style.verticalAlign = -htmlNode.depth + "em"; + } + return htmlNode; + } + function newDocumentFragment(children2) { + return new tree_DocumentFragment(children2); + } + var mathMLTree_MathNode = /* @__PURE__ */ function() { + function MathNode(type, children2) { + this.type = void 0; + this.attributes = void 0; + this.children = void 0; + this.type = type; + this.attributes = {}; + this.children = children2 || []; + } + var _proto = MathNode.prototype; + _proto.setAttribute = function setAttribute(name2, value) { + this.attributes[name2] = value; + }; + _proto.getAttribute = function getAttribute(name2) { + return this.attributes[name2]; + }; + _proto.toNode = function toNode() { + var node = document.createElementNS("http://www.w3.org/1998/Math/MathML", this.type); + for (var attr2 in this.attributes) { + if (Object.prototype.hasOwnProperty.call(this.attributes, attr2)) { + node.setAttribute(attr2, this.attributes[attr2]); + } + } + for (var i = 0; i < this.children.length; i++) { + node.appendChild(this.children[i].toNode()); + } + return node; + }; + _proto.toMarkup = function toMarkup() { + var markup = "<" + this.type; + for (var attr2 in this.attributes) { + if (Object.prototype.hasOwnProperty.call(this.attributes, attr2)) { + markup += " " + attr2 + '="'; + markup += utils.escape(this.attributes[attr2]); + markup += '"'; + } + } + markup += ">"; + for (var i = 0; i < this.children.length; i++) { + markup += this.children[i].toMarkup(); + } + markup += ""; + return markup; + }; + _proto.toText = function toText() { + return this.children.map(function(child) { + return child.toText(); + }).join(""); + }; + return MathNode; + }(); + var mathMLTree_TextNode = /* @__PURE__ */ function() { + function TextNode(text4) { + this.text = void 0; + this.text = text4; + } + var _proto2 = TextNode.prototype; + _proto2.toNode = function toNode() { + return document.createTextNode(this.text); + }; + _proto2.toMarkup = function toMarkup() { + return utils.escape(this.toText()); + }; + _proto2.toText = function toText() { + return this.text; + }; + return TextNode; + }(); + var SpaceNode = /* @__PURE__ */ function() { + function SpaceNode2(width) { + this.width = void 0; + this.character = void 0; + this.width = width; + if (width >= 0.05555 && width <= 0.05556) { + this.character = "\u200A"; + } else if (width >= 0.1666 && width <= 0.1667) { + this.character = "\u2009"; + } else if (width >= 0.2222 && width <= 0.2223) { + this.character = "\u2005"; + } else if (width >= 0.2777 && width <= 0.2778) { + this.character = "\u2005\u200A"; + } else if (width >= -0.05556 && width <= -0.05555) { + this.character = "\u200A\u2063"; + } else if (width >= -0.1667 && width <= -0.1666) { + this.character = "\u2009\u2063"; + } else if (width >= -0.2223 && width <= -0.2222) { + this.character = "\u205F\u2063"; + } else if (width >= -0.2778 && width <= -0.2777) { + this.character = "\u2005\u2063"; + } else { + this.character = null; + } + } + var _proto3 = SpaceNode2.prototype; + _proto3.toNode = function toNode() { + if (this.character) { + return document.createTextNode(this.character); + } else { + var node = document.createElementNS("http://www.w3.org/1998/Math/MathML", "mspace"); + node.setAttribute("width", this.width + "em"); + return node; + } + }; + _proto3.toMarkup = function toMarkup() { + if (this.character) { + return "" + this.character + ""; + } else { + return ''; + } + }; + _proto3.toText = function toText() { + if (this.character) { + return this.character; + } else { + return " "; + } + }; + return SpaceNode2; + }(); + var mathMLTree = { + MathNode: mathMLTree_MathNode, + TextNode: mathMLTree_TextNode, + SpaceNode, + newDocumentFragment + }; + var buildMathML_makeText = function makeText(text4, mode, options) { + if (src_symbols[mode][text4] && src_symbols[mode][text4].replace && text4.charCodeAt(0) !== 55349 && !(ligatures.hasOwnProperty(text4) && options && (options.fontFamily && options.fontFamily.substr(4, 2) === "tt" || options.font && options.font.substr(4, 2) === "tt"))) { + text4 = src_symbols[mode][text4].replace; + } + return new mathMLTree.TextNode(text4); + }; + var buildMathML_makeRow = function makeRow(body) { + if (body.length === 1) { + return body[0]; + } else { + return new mathMLTree.MathNode("mrow", body); + } + }; + var buildMathML_getVariant = function getVariant(group, options) { + if (options.fontFamily === "texttt") { + return "monospace"; + } else if (options.fontFamily === "textsf") { + if (options.fontShape === "textit" && options.fontWeight === "textbf") { + return "sans-serif-bold-italic"; + } else if (options.fontShape === "textit") { + return "sans-serif-italic"; + } else if (options.fontWeight === "textbf") { + return "bold-sans-serif"; + } else { + return "sans-serif"; + } + } else if (options.fontShape === "textit" && options.fontWeight === "textbf") { + return "bold-italic"; + } else if (options.fontShape === "textit") { + return "italic"; + } else if (options.fontWeight === "textbf") { + return "bold"; + } + var font = options.font; + if (!font || font === "mathnormal") { + return null; + } + var mode = group.mode; + if (font === "mathit") { + return "italic"; + } else if (font === "boldsymbol") { + return group.type === "textord" ? "bold" : "bold-italic"; + } else if (font === "mathbf") { + return "bold"; + } else if (font === "mathbb") { + return "double-struck"; + } else if (font === "mathfrak") { + return "fraktur"; + } else if (font === "mathscr" || font === "mathcal") { + return "script"; + } else if (font === "mathsf") { + return "sans-serif"; + } else if (font === "mathtt") { + return "monospace"; + } + var text4 = group.text; + if (utils.contains(["\\imath", "\\jmath"], text4)) { + return null; + } + if (src_symbols[mode][text4] && src_symbols[mode][text4].replace) { + text4 = src_symbols[mode][text4].replace; + } + var fontName = buildCommon.fontMap[font].fontName; + if (getCharacterMetrics(text4, fontName, mode)) { + return buildCommon.fontMap[font].variant; + } + return null; + }; + var buildMathML_buildExpression = function buildExpression(expression, options, isOrdgroup) { + if (expression.length === 1) { + var group = buildMathML_buildGroup(expression[0], options); + if (isOrdgroup && group instanceof mathMLTree_MathNode && group.type === "mo") { + group.setAttribute("lspace", "0em"); + group.setAttribute("rspace", "0em"); + } + return [group]; + } + var groups = []; + var lastGroup; + for (var i = 0; i < expression.length; i++) { + var _group = buildMathML_buildGroup(expression[i], options); + if (_group instanceof mathMLTree_MathNode && lastGroup instanceof mathMLTree_MathNode) { + if (_group.type === "mtext" && lastGroup.type === "mtext" && _group.getAttribute("mathvariant") === lastGroup.getAttribute("mathvariant")) { + var _lastGroup$children; + (_lastGroup$children = lastGroup.children).push.apply(_lastGroup$children, _group.children); + continue; + } else if (_group.type === "mn" && lastGroup.type === "mn") { + var _lastGroup$children2; + (_lastGroup$children2 = lastGroup.children).push.apply(_lastGroup$children2, _group.children); + continue; + } else if (_group.type === "mi" && _group.children.length === 1 && lastGroup.type === "mn") { + var child = _group.children[0]; + if (child instanceof mathMLTree_TextNode && child.text === ".") { + var _lastGroup$children3; + (_lastGroup$children3 = lastGroup.children).push.apply(_lastGroup$children3, _group.children); + continue; + } + } else if (lastGroup.type === "mi" && lastGroup.children.length === 1) { + var lastChild = lastGroup.children[0]; + if (lastChild instanceof mathMLTree_TextNode && lastChild.text === "\u0338" && (_group.type === "mo" || _group.type === "mi" || _group.type === "mn")) { + var _child = _group.children[0]; + if (_child instanceof mathMLTree_TextNode && _child.text.length > 0) { + _child.text = _child.text.slice(0, 1) + "\u0338" + _child.text.slice(1); + groups.pop(); + } + } + } + } + groups.push(_group); + lastGroup = _group; + } + return groups; + }; + var buildExpressionRow = function buildExpressionRow2(expression, options, isOrdgroup) { + return buildMathML_makeRow(buildMathML_buildExpression(expression, options, isOrdgroup)); + }; + var buildMathML_buildGroup = function buildGroup(group, options) { + if (!group) { + return new mathMLTree.MathNode("mrow"); + } + if (_mathmlGroupBuilders[group.type]) { + var result = _mathmlGroupBuilders[group.type](group, options); + return result; + } else { + throw new src_ParseError("Got group of unknown type: '" + group.type + "'"); + } + }; + function buildMathML(tree, texExpression, options, isDisplayMode, forMathmlOnly) { + var expression = buildMathML_buildExpression(tree, options); + var wrapper; + if (expression.length === 1 && expression[0] instanceof mathMLTree_MathNode && utils.contains(["mrow", "mtable"], expression[0].type)) { + wrapper = expression[0]; + } else { + wrapper = new mathMLTree.MathNode("mrow", expression); + } + var annotation = new mathMLTree.MathNode("annotation", [new mathMLTree.TextNode(texExpression)]); + annotation.setAttribute("encoding", "application/x-tex"); + var semantics = new mathMLTree.MathNode("semantics", [wrapper, annotation]); + var math = new mathMLTree.MathNode("math", [semantics]); + math.setAttribute("xmlns", "http://www.w3.org/1998/Math/MathML"); + if (isDisplayMode) { + math.setAttribute("display", "block"); + } + var wrapperClass = forMathmlOnly ? "katex" : "katex-mathml"; + return buildCommon.makeSpan([wrapperClass], [math]); + } + var buildTree_optionsFromSettings = function optionsFromSettings(settings) { + return new src_Options({ + style: settings.displayMode ? src_Style.DISPLAY : src_Style.TEXT, + maxSize: settings.maxSize, + minRuleThickness: settings.minRuleThickness + }); + }; + var buildTree_displayWrap = function displayWrap(node, settings) { + if (settings.displayMode) { + var classes = ["katex-display"]; + if (settings.leqno) { + classes.push("leqno"); + } + if (settings.fleqn) { + classes.push("fleqn"); + } + node = buildCommon.makeSpan(classes, [node]); + } + return node; + }; + var buildTree_buildTree = function buildTree2(tree, expression, settings) { + var options = buildTree_optionsFromSettings(settings); + var katexNode; + if (settings.output === "mathml") { + return buildMathML(tree, expression, options, settings.displayMode, true); + } else if (settings.output === "html") { + var htmlNode = buildHTML(tree, options); + katexNode = buildCommon.makeSpan(["katex"], [htmlNode]); + } else { + var mathMLNode = buildMathML(tree, expression, options, settings.displayMode, false); + var _htmlNode = buildHTML(tree, options); + katexNode = buildCommon.makeSpan(["katex"], [mathMLNode, _htmlNode]); + } + return buildTree_displayWrap(katexNode, settings); + }; + var buildTree_buildHTMLTree = function buildHTMLTree(tree, expression, settings) { + var options = buildTree_optionsFromSettings(settings); + var htmlNode = buildHTML(tree, options); + var katexNode = buildCommon.makeSpan(["katex"], [htmlNode]); + return buildTree_displayWrap(katexNode, settings); + }; + var src_buildTree = buildTree_buildTree; + var stretchyCodePoint = { + widehat: "^", + widecheck: "\u02C7", + widetilde: "~", + utilde: "~", + overleftarrow: "\u2190", + underleftarrow: "\u2190", + xleftarrow: "\u2190", + overrightarrow: "\u2192", + underrightarrow: "\u2192", + xrightarrow: "\u2192", + underbrace: "\u23DF", + overbrace: "\u23DE", + overgroup: "\u23E0", + undergroup: "\u23E1", + overleftrightarrow: "\u2194", + underleftrightarrow: "\u2194", + xleftrightarrow: "\u2194", + Overrightarrow: "\u21D2", + xRightarrow: "\u21D2", + overleftharpoon: "\u21BC", + xleftharpoonup: "\u21BC", + overrightharpoon: "\u21C0", + xrightharpoonup: "\u21C0", + xLeftarrow: "\u21D0", + xLeftrightarrow: "\u21D4", + xhookleftarrow: "\u21A9", + xhookrightarrow: "\u21AA", + xmapsto: "\u21A6", + xrightharpoondown: "\u21C1", + xleftharpoondown: "\u21BD", + xrightleftharpoons: "\u21CC", + xleftrightharpoons: "\u21CB", + xtwoheadleftarrow: "\u219E", + xtwoheadrightarrow: "\u21A0", + xlongequal: "=", + xtofrom: "\u21C4", + xrightleftarrows: "\u21C4", + xrightequilibrium: "\u21CC", + xleftequilibrium: "\u21CB" + }; + var stretchy_mathMLnode = function mathMLnode(label) { + var node = new mathMLTree.MathNode("mo", [new mathMLTree.TextNode(stretchyCodePoint[label.substr(1)])]); + node.setAttribute("stretchy", "true"); + return node; + }; + var katexImagesData = { + overrightarrow: [["rightarrow"], 0.888, 522, "xMaxYMin"], + overleftarrow: [["leftarrow"], 0.888, 522, "xMinYMin"], + underrightarrow: [["rightarrow"], 0.888, 522, "xMaxYMin"], + underleftarrow: [["leftarrow"], 0.888, 522, "xMinYMin"], + xrightarrow: [["rightarrow"], 1.469, 522, "xMaxYMin"], + xleftarrow: [["leftarrow"], 1.469, 522, "xMinYMin"], + Overrightarrow: [["doublerightarrow"], 0.888, 560, "xMaxYMin"], + xRightarrow: [["doublerightarrow"], 1.526, 560, "xMaxYMin"], + xLeftarrow: [["doubleleftarrow"], 1.526, 560, "xMinYMin"], + overleftharpoon: [["leftharpoon"], 0.888, 522, "xMinYMin"], + xleftharpoonup: [["leftharpoon"], 0.888, 522, "xMinYMin"], + xleftharpoondown: [["leftharpoondown"], 0.888, 522, "xMinYMin"], + overrightharpoon: [["rightharpoon"], 0.888, 522, "xMaxYMin"], + xrightharpoonup: [["rightharpoon"], 0.888, 522, "xMaxYMin"], + xrightharpoondown: [["rightharpoondown"], 0.888, 522, "xMaxYMin"], + xlongequal: [["longequal"], 0.888, 334, "xMinYMin"], + xtwoheadleftarrow: [["twoheadleftarrow"], 0.888, 334, "xMinYMin"], + xtwoheadrightarrow: [["twoheadrightarrow"], 0.888, 334, "xMaxYMin"], + overleftrightarrow: [["leftarrow", "rightarrow"], 0.888, 522], + overbrace: [["leftbrace", "midbrace", "rightbrace"], 1.6, 548], + underbrace: [["leftbraceunder", "midbraceunder", "rightbraceunder"], 1.6, 548], + underleftrightarrow: [["leftarrow", "rightarrow"], 0.888, 522], + xleftrightarrow: [["leftarrow", "rightarrow"], 1.75, 522], + xLeftrightarrow: [["doubleleftarrow", "doublerightarrow"], 1.75, 560], + xrightleftharpoons: [["leftharpoondownplus", "rightharpoonplus"], 1.75, 716], + xleftrightharpoons: [["leftharpoonplus", "rightharpoondownplus"], 1.75, 716], + xhookleftarrow: [["leftarrow", "righthook"], 1.08, 522], + xhookrightarrow: [["lefthook", "rightarrow"], 1.08, 522], + overlinesegment: [["leftlinesegment", "rightlinesegment"], 0.888, 522], + underlinesegment: [["leftlinesegment", "rightlinesegment"], 0.888, 522], + overgroup: [["leftgroup", "rightgroup"], 0.888, 342], + undergroup: [["leftgroupunder", "rightgroupunder"], 0.888, 342], + xmapsto: [["leftmapsto", "rightarrow"], 1.5, 522], + xtofrom: [["leftToFrom", "rightToFrom"], 1.75, 528], + xrightleftarrows: [["baraboveleftarrow", "rightarrowabovebar"], 1.75, 901], + xrightequilibrium: [["baraboveshortleftharpoon", "rightharpoonaboveshortbar"], 1.75, 716], + xleftequilibrium: [["shortbaraboveleftharpoon", "shortrightharpoonabovebar"], 1.75, 716] + }; + var groupLength = function groupLength2(arg) { + if (arg.type === "ordgroup") { + return arg.body.length; + } else { + return 1; + } + }; + var stretchy_svgSpan = function svgSpan(group, options) { + function buildSvgSpan_() { + var viewBoxWidth = 4e5; + var label = group.label.substr(1); + if (utils.contains(["widehat", "widecheck", "widetilde", "utilde"], label)) { + var grp = group; + var numChars = groupLength(grp.base); + var viewBoxHeight; + var pathName; + var _height; + if (numChars > 5) { + if (label === "widehat" || label === "widecheck") { + viewBoxHeight = 420; + viewBoxWidth = 2364; + _height = 0.42; + pathName = label + "4"; + } else { + viewBoxHeight = 312; + viewBoxWidth = 2340; + _height = 0.34; + pathName = "tilde4"; + } + } else { + var imgIndex = [1, 1, 2, 2, 3, 3][numChars]; + if (label === "widehat" || label === "widecheck") { + viewBoxWidth = [0, 1062, 2364, 2364, 2364][imgIndex]; + viewBoxHeight = [0, 239, 300, 360, 420][imgIndex]; + _height = [0, 0.24, 0.3, 0.3, 0.36, 0.42][imgIndex]; + pathName = label + imgIndex; + } else { + viewBoxWidth = [0, 600, 1033, 2339, 2340][imgIndex]; + viewBoxHeight = [0, 260, 286, 306, 312][imgIndex]; + _height = [0, 0.26, 0.286, 0.3, 0.306, 0.34][imgIndex]; + pathName = "tilde" + imgIndex; + } + } + var path = new domTree_PathNode(pathName); + var svgNode = new SvgNode([path], { + "width": "100%", + "height": _height + "em", + "viewBox": "0 0 " + viewBoxWidth + " " + viewBoxHeight, + "preserveAspectRatio": "none" + }); + return { + span: buildCommon.makeSvgSpan([], [svgNode], options), + minWidth: 0, + height: _height + }; + } else { + var spans = []; + var data2 = katexImagesData[label]; + var paths = data2[0], _minWidth = data2[1], _viewBoxHeight = data2[2]; + var _height2 = _viewBoxHeight / 1e3; + var numSvgChildren = paths.length; + var widthClasses; + var aligns; + if (numSvgChildren === 1) { + var align1 = data2[3]; + widthClasses = ["hide-tail"]; + aligns = [align1]; + } else if (numSvgChildren === 2) { + widthClasses = ["halfarrow-left", "halfarrow-right"]; + aligns = ["xMinYMin", "xMaxYMin"]; + } else if (numSvgChildren === 3) { + widthClasses = ["brace-left", "brace-center", "brace-right"]; + aligns = ["xMinYMin", "xMidYMin", "xMaxYMin"]; + } else { + throw new Error("Correct katexImagesData or update code here to support\n " + numSvgChildren + " children."); + } + for (var i = 0; i < numSvgChildren; i++) { + var _path = new domTree_PathNode(paths[i]); + var _svgNode = new SvgNode([_path], { + "width": "400em", + "height": _height2 + "em", + "viewBox": "0 0 " + viewBoxWidth + " " + _viewBoxHeight, + "preserveAspectRatio": aligns[i] + " slice" + }); + var _span = buildCommon.makeSvgSpan([widthClasses[i]], [_svgNode], options); + if (numSvgChildren === 1) { + return { + span: _span, + minWidth: _minWidth, + height: _height2 + }; + } else { + _span.style.height = _height2 + "em"; + spans.push(_span); + } + } + return { + span: buildCommon.makeSpan(["stretchy"], spans, options), + minWidth: _minWidth, + height: _height2 + }; + } + } + var _buildSvgSpan_ = buildSvgSpan_(), span = _buildSvgSpan_.span, minWidth = _buildSvgSpan_.minWidth, height = _buildSvgSpan_.height; + span.height = height; + span.style.height = height + "em"; + if (minWidth > 0) { + span.style.minWidth = minWidth + "em"; + } + return span; + }; + var stretchy_encloseSpan = function encloseSpan(inner, label, pad, options) { + var img; + var totalHeight = inner.height + inner.depth + 2 * pad; + if (/fbox|color/.test(label)) { + img = buildCommon.makeSpan(["stretchy", label], [], options); + if (label === "fbox") { + var color = options.color && options.getColor(); + if (color) { + img.style.borderColor = color; + } + } + } else { + var lines = []; + if (/^[bx]cancel$/.test(label)) { + lines.push(new LineNode({ + "x1": "0", + "y1": "0", + "x2": "100%", + "y2": "100%", + "stroke-width": "0.046em" + })); + } + if (/^x?cancel$/.test(label)) { + lines.push(new LineNode({ + "x1": "0", + "y1": "100%", + "x2": "100%", + "y2": "0", + "stroke-width": "0.046em" + })); + } + var svgNode = new SvgNode(lines, { + "width": "100%", + "height": totalHeight + "em" + }); + img = buildCommon.makeSvgSpan([], [svgNode], options); + } + img.height = totalHeight; + img.style.height = totalHeight + "em"; + return img; + }; + var stretchy = { + encloseSpan: stretchy_encloseSpan, + mathMLnode: stretchy_mathMLnode, + svgSpan: stretchy_svgSpan + }; + function assertNodeType(node, type) { + if (!node || node.type !== type) { + throw new Error("Expected node of type " + type + ", but got " + (node ? "node of type " + node.type : String(node))); + } + return node; + } + function assertSymbolNodeType(node) { + var typedNode = checkSymbolNodeType(node); + if (!typedNode) { + throw new Error("Expected node of symbol group type, but got " + (node ? "node of type " + node.type : String(node))); + } + return typedNode; + } + function checkSymbolNodeType(node) { + if (node && (node.type === "atom" || NON_ATOMS.hasOwnProperty(node.type))) { + return node; + } + return null; + } + var accent_htmlBuilder = function htmlBuilder(grp, options) { + var base2; + var group; + var supSubGroup; + if (grp && grp.type === "supsub") { + group = assertNodeType(grp.base, "accent"); + base2 = group.base; + grp.base = base2; + supSubGroup = assertSpan(buildHTML_buildGroup(grp, options)); + grp.base = group; + } else { + group = assertNodeType(grp, "accent"); + base2 = group.base; + } + var body = buildHTML_buildGroup(base2, options.havingCrampedStyle()); + var mustShift = group.isShifty && utils.isCharacterBox(base2); + var skew2 = 0; + if (mustShift) { + var baseChar = utils.getBaseElem(base2); + var baseGroup = buildHTML_buildGroup(baseChar, options.havingCrampedStyle()); + skew2 = assertSymbolDomNode(baseGroup).skew; + } + var clearance = Math.min(body.height, options.fontMetrics().xHeight); + var accentBody; + if (!group.isStretchy) { + var accent; + var width; + if (group.label === "\\vec") { + accent = buildCommon.staticSvg("vec", options); + width = buildCommon.svgData.vec[1]; + } else { + accent = buildCommon.makeOrd({ + mode: group.mode, + text: group.label + }, options, "textord"); + accent = assertSymbolDomNode(accent); + accent.italic = 0; + width = accent.width; + } + accentBody = buildCommon.makeSpan(["accent-body"], [accent]); + var accentFull = group.label === "\\textcircled"; + if (accentFull) { + accentBody.classes.push("accent-full"); + clearance = body.height; + } + var left = skew2; + if (!accentFull) { + left -= width / 2; + } + accentBody.style.left = left + "em"; + if (group.label === "\\textcircled") { + accentBody.style.top = ".2em"; + } + accentBody = buildCommon.makeVList({ + positionType: "firstBaseline", + children: [{ + type: "elem", + elem: body + }, { + type: "kern", + size: -clearance + }, { + type: "elem", + elem: accentBody + }] + }, options); + } else { + accentBody = stretchy.svgSpan(group, options); + accentBody = buildCommon.makeVList({ + positionType: "firstBaseline", + children: [{ + type: "elem", + elem: body + }, { + type: "elem", + elem: accentBody, + wrapperClasses: ["svg-align"], + wrapperStyle: skew2 > 0 ? { + width: "calc(100% - " + 2 * skew2 + "em)", + marginLeft: 2 * skew2 + "em" + } : void 0 + }] + }, options); + } + var accentWrap = buildCommon.makeSpan(["mord", "accent"], [accentBody], options); + if (supSubGroup) { + supSubGroup.children[0] = accentWrap; + supSubGroup.height = Math.max(accentWrap.height, supSubGroup.height); + supSubGroup.classes[0] = "mord"; + return supSubGroup; + } else { + return accentWrap; + } + }; + var accent_mathmlBuilder = function mathmlBuilder(group, options) { + var accentNode = group.isStretchy ? stretchy.mathMLnode(group.label) : new mathMLTree.MathNode("mo", [buildMathML_makeText(group.label, group.mode)]); + var node = new mathMLTree.MathNode("mover", [buildMathML_buildGroup(group.base, options), accentNode]); + node.setAttribute("accent", "true"); + return node; + }; + var NON_STRETCHY_ACCENT_REGEX = new RegExp(["\\acute", "\\grave", "\\ddot", "\\tilde", "\\bar", "\\breve", "\\check", "\\hat", "\\vec", "\\dot", "\\mathring"].map(function(accent) { + return "\\" + accent; + }).join("|")); + defineFunction({ + type: "accent", + names: ["\\acute", "\\grave", "\\ddot", "\\tilde", "\\bar", "\\breve", "\\check", "\\hat", "\\vec", "\\dot", "\\mathring", "\\widecheck", "\\widehat", "\\widetilde", "\\overrightarrow", "\\overleftarrow", "\\Overrightarrow", "\\overleftrightarrow", "\\overgroup", "\\overlinesegment", "\\overleftharpoon", "\\overrightharpoon"], + props: { + numArgs: 1 + }, + handler: function handler(context, args) { + var base2 = args[0]; + var isStretchy = !NON_STRETCHY_ACCENT_REGEX.test(context.funcName); + var isShifty = !isStretchy || context.funcName === "\\widehat" || context.funcName === "\\widetilde" || context.funcName === "\\widecheck"; + return { + type: "accent", + mode: context.parser.mode, + label: context.funcName, + isStretchy, + isShifty, + base: base2 + }; + }, + htmlBuilder: accent_htmlBuilder, + mathmlBuilder: accent_mathmlBuilder + }); + defineFunction({ + type: "accent", + names: ["\\'", "\\`", "\\^", "\\~", "\\=", "\\u", "\\.", '\\"', "\\r", "\\H", "\\v", "\\textcircled"], + props: { + numArgs: 1, + allowedInText: true, + allowedInMath: false + }, + handler: function handler(context, args) { + var base2 = args[0]; + return { + type: "accent", + mode: context.parser.mode, + label: context.funcName, + isStretchy: false, + isShifty: true, + base: base2 + }; + }, + htmlBuilder: accent_htmlBuilder, + mathmlBuilder: accent_mathmlBuilder + }); + defineFunction({ + type: "accentUnder", + names: ["\\underleftarrow", "\\underrightarrow", "\\underleftrightarrow", "\\undergroup", "\\underlinesegment", "\\utilde"], + props: { + numArgs: 1 + }, + handler: function handler(_ref, args) { + var parser = _ref.parser, funcName = _ref.funcName; + var base2 = args[0]; + return { + type: "accentUnder", + mode: parser.mode, + label: funcName, + base: base2 + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var innerGroup = buildHTML_buildGroup(group.base, options); + var accentBody = stretchy.svgSpan(group, options); + var kern = group.label === "\\utilde" ? 0.12 : 0; + var vlist = buildCommon.makeVList({ + positionType: "top", + positionData: innerGroup.height, + children: [{ + type: "elem", + elem: accentBody, + wrapperClasses: ["svg-align"] + }, { + type: "kern", + size: kern + }, { + type: "elem", + elem: innerGroup + }] + }, options); + return buildCommon.makeSpan(["mord", "accentunder"], [vlist], options); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var accentNode = stretchy.mathMLnode(group.label); + var node = new mathMLTree.MathNode("munder", [buildMathML_buildGroup(group.base, options), accentNode]); + node.setAttribute("accentunder", "true"); + return node; + } + }); + var arrow_paddedNode = function paddedNode(group) { + var node = new mathMLTree.MathNode("mpadded", group ? [group] : []); + node.setAttribute("width", "+0.6em"); + node.setAttribute("lspace", "0.3em"); + return node; + }; + defineFunction({ + type: "xArrow", + names: [ + "\\xleftarrow", + "\\xrightarrow", + "\\xLeftarrow", + "\\xRightarrow", + "\\xleftrightarrow", + "\\xLeftrightarrow", + "\\xhookleftarrow", + "\\xhookrightarrow", + "\\xmapsto", + "\\xrightharpoondown", + "\\xrightharpoonup", + "\\xleftharpoondown", + "\\xleftharpoonup", + "\\xrightleftharpoons", + "\\xleftrightharpoons", + "\\xlongequal", + "\\xtwoheadrightarrow", + "\\xtwoheadleftarrow", + "\\xtofrom", + "\\xrightleftarrows", + "\\xrightequilibrium", + "\\xleftequilibrium" + ], + props: { + numArgs: 1, + numOptionalArgs: 1 + }, + handler: function handler(_ref, args, optArgs) { + var parser = _ref.parser, funcName = _ref.funcName; + return { + type: "xArrow", + mode: parser.mode, + label: funcName, + body: args[0], + below: optArgs[0] + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var style = options.style; + var newOptions = options.havingStyle(style.sup()); + var upperGroup = buildCommon.wrapFragment(buildHTML_buildGroup(group.body, newOptions, options), options); + upperGroup.classes.push("x-arrow-pad"); + var lowerGroup; + if (group.below) { + newOptions = options.havingStyle(style.sub()); + lowerGroup = buildCommon.wrapFragment(buildHTML_buildGroup(group.below, newOptions, options), options); + lowerGroup.classes.push("x-arrow-pad"); + } + var arrowBody = stretchy.svgSpan(group, options); + var arrowShift = -options.fontMetrics().axisHeight + 0.5 * arrowBody.height; + var upperShift = -options.fontMetrics().axisHeight - 0.5 * arrowBody.height - 0.111; + if (upperGroup.depth > 0.25 || group.label === "\\xleftequilibrium") { + upperShift -= upperGroup.depth; + } + var vlist; + if (lowerGroup) { + var lowerShift = -options.fontMetrics().axisHeight + lowerGroup.height + 0.5 * arrowBody.height + 0.111; + vlist = buildCommon.makeVList({ + positionType: "individualShift", + children: [{ + type: "elem", + elem: upperGroup, + shift: upperShift + }, { + type: "elem", + elem: arrowBody, + shift: arrowShift + }, { + type: "elem", + elem: lowerGroup, + shift: lowerShift + }] + }, options); + } else { + vlist = buildCommon.makeVList({ + positionType: "individualShift", + children: [{ + type: "elem", + elem: upperGroup, + shift: upperShift + }, { + type: "elem", + elem: arrowBody, + shift: arrowShift + }] + }, options); + } + vlist.children[0].children[0].children[1].classes.push("svg-align"); + return buildCommon.makeSpan(["mrel", "x-arrow"], [vlist], options); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var arrowNode = stretchy.mathMLnode(group.label); + var node; + if (group.body) { + var upperNode = arrow_paddedNode(buildMathML_buildGroup(group.body, options)); + if (group.below) { + var lowerNode = arrow_paddedNode(buildMathML_buildGroup(group.below, options)); + node = new mathMLTree.MathNode("munderover", [arrowNode, lowerNode, upperNode]); + } else { + node = new mathMLTree.MathNode("mover", [arrowNode, upperNode]); + } + } else if (group.below) { + var _lowerNode = arrow_paddedNode(buildMathML_buildGroup(group.below, options)); + node = new mathMLTree.MathNode("munder", [arrowNode, _lowerNode]); + } else { + node = arrow_paddedNode(); + node = new mathMLTree.MathNode("mover", [arrowNode, node]); + } + return node; + } + }); + defineFunction({ + type: "textord", + names: ["\\@char"], + props: { + numArgs: 1, + allowedInText: true + }, + handler: function handler(_ref, args) { + var parser = _ref.parser; + var arg = assertNodeType(args[0], "ordgroup"); + var group = arg.body; + var number = ""; + for (var i = 0; i < group.length; i++) { + var node = assertNodeType(group[i], "textord"); + number += node.text; + } + var code2 = parseInt(number); + if (isNaN(code2)) { + throw new src_ParseError("\\@char has non-numeric argument " + number); + } + return { + type: "textord", + mode: parser.mode, + text: String.fromCharCode(code2) + }; + } + }); + var color_htmlBuilder = function htmlBuilder(group, options) { + var elements = buildHTML_buildExpression(group.body, options.withColor(group.color), false); + return buildCommon.makeFragment(elements); + }; + var color_mathmlBuilder = function mathmlBuilder(group, options) { + var inner = buildMathML_buildExpression(group.body, options.withColor(group.color)); + var node = new mathMLTree.MathNode("mstyle", inner); + node.setAttribute("mathcolor", group.color); + return node; + }; + defineFunction({ + type: "color", + names: ["\\textcolor"], + props: { + numArgs: 2, + allowedInText: true, + greediness: 3, + argTypes: ["color", "original"] + }, + handler: function handler(_ref, args) { + var parser = _ref.parser; + var color = assertNodeType(args[0], "color-token").color; + var body = args[1]; + return { + type: "color", + mode: parser.mode, + color, + body: ordargument(body) + }; + }, + htmlBuilder: color_htmlBuilder, + mathmlBuilder: color_mathmlBuilder + }); + defineFunction({ + type: "color", + names: ["\\color"], + props: { + numArgs: 1, + allowedInText: true, + greediness: 3, + argTypes: ["color"] + }, + handler: function handler(_ref2, args) { + var parser = _ref2.parser, breakOnTokenText = _ref2.breakOnTokenText; + var color = assertNodeType(args[0], "color-token").color; + parser.gullet.macros.set("\\current@color", color); + var body = parser.parseExpression(true, breakOnTokenText); + return { + type: "color", + mode: parser.mode, + color, + body + }; + }, + htmlBuilder: color_htmlBuilder, + mathmlBuilder: color_mathmlBuilder + }); + defineFunction({ + type: "cr", + names: ["\\cr", "\\newline"], + props: { + numArgs: 0, + numOptionalArgs: 1, + argTypes: ["size"], + allowedInText: true + }, + handler: function handler(_ref, args, optArgs) { + var parser = _ref.parser, funcName = _ref.funcName; + var size = optArgs[0]; + var newRow = funcName === "\\cr"; + var newLine = false; + if (!newRow) { + if (parser.settings.displayMode && parser.settings.useStrictBehavior("newLineInDisplayMode", "In LaTeX, \\\\ or \\newline does nothing in display mode")) { + newLine = false; + } else { + newLine = true; + } + } + return { + type: "cr", + mode: parser.mode, + newLine, + newRow, + size: size && assertNodeType(size, "size").value + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + if (group.newRow) { + throw new src_ParseError("\\cr valid only within a tabular/array environment"); + } + var span = buildCommon.makeSpan(["mspace"], [], options); + if (group.newLine) { + span.classes.push("newline"); + if (group.size) { + span.style.marginTop = units_calculateSize(group.size, options) + "em"; + } + } + return span; + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var node = new mathMLTree.MathNode("mspace"); + if (group.newLine) { + node.setAttribute("linebreak", "newline"); + if (group.size) { + node.setAttribute("height", units_calculateSize(group.size, options) + "em"); + } + } + return node; + } + }); + var globalMap = { + "\\global": "\\global", + "\\long": "\\\\globallong", + "\\\\globallong": "\\\\globallong", + "\\def": "\\gdef", + "\\gdef": "\\gdef", + "\\edef": "\\xdef", + "\\xdef": "\\xdef", + "\\let": "\\\\globallet", + "\\futurelet": "\\\\globalfuture" + }; + var def_checkControlSequence = function checkControlSequence(tok) { + var name2 = tok.text; + if (/^(?:[\\{}$&#^_]|EOF)$/.test(name2)) { + throw new src_ParseError("Expected a control sequence", tok); + } + return name2; + }; + var getRHS = function getRHS2(parser) { + var tok = parser.gullet.popToken(); + if (tok.text === "=") { + tok = parser.gullet.popToken(); + if (tok.text === " ") { + tok = parser.gullet.popToken(); + } + } + return tok; + }; + var letCommand = function letCommand2(parser, name2, tok, global2) { + var macro = parser.gullet.macros.get(tok.text); + if (macro == null) { + tok.noexpand = true; + macro = { + tokens: [tok], + numArgs: 0, + unexpandable: !parser.gullet.isExpandable(tok.text) + }; + } + parser.gullet.macros.set(name2, macro, global2); + }; + defineFunction({ + type: "internal", + names: ["\\global", "\\long", "\\\\globallong"], + props: { + numArgs: 0, + allowedInText: true + }, + handler: function handler(_ref) { + var parser = _ref.parser, funcName = _ref.funcName; + parser.consumeSpaces(); + var token = parser.fetch(); + if (globalMap[token.text]) { + if (funcName === "\\global" || funcName === "\\\\globallong") { + token.text = globalMap[token.text]; + } + return assertNodeType(parser.parseFunction(), "internal"); + } + throw new src_ParseError("Invalid token after macro prefix", token); + } + }); + defineFunction({ + type: "internal", + names: ["\\def", "\\gdef", "\\edef", "\\xdef"], + props: { + numArgs: 0, + allowedInText: true + }, + handler: function handler(_ref2) { + var parser = _ref2.parser, funcName = _ref2.funcName; + var arg = parser.gullet.consumeArgs(1)[0]; + if (arg.length !== 1) { + throw new src_ParseError("\\gdef's first argument must be a macro name"); + } + var name2 = arg[0].text; + var numArgs = 0; + arg = parser.gullet.consumeArgs(1)[0]; + while (arg.length === 1 && arg[0].text === "#") { + arg = parser.gullet.consumeArgs(1)[0]; + if (arg.length !== 1) { + throw new src_ParseError('Invalid argument number length "' + arg.length + '"'); + } + if (!/^[1-9]$/.test(arg[0].text)) { + throw new src_ParseError('Invalid argument number "' + arg[0].text + '"'); + } + numArgs++; + if (parseInt(arg[0].text) !== numArgs) { + throw new src_ParseError('Argument number "' + arg[0].text + '" out of order'); + } + arg = parser.gullet.consumeArgs(1)[0]; + } + if (funcName === "\\edef" || funcName === "\\xdef") { + arg = parser.gullet.expandTokens(arg); + arg.reverse(); + } + parser.gullet.macros.set(name2, { + tokens: arg, + numArgs + }, funcName === globalMap[funcName]); + return { + type: "internal", + mode: parser.mode + }; + } + }); + defineFunction({ + type: "internal", + names: ["\\let", "\\\\globallet"], + props: { + numArgs: 0, + allowedInText: true + }, + handler: function handler(_ref3) { + var parser = _ref3.parser, funcName = _ref3.funcName; + var name2 = def_checkControlSequence(parser.gullet.popToken()); + parser.gullet.consumeSpaces(); + var tok = getRHS(parser); + letCommand(parser, name2, tok, funcName === "\\\\globallet"); + return { + type: "internal", + mode: parser.mode + }; + } + }); + defineFunction({ + type: "internal", + names: ["\\futurelet", "\\\\globalfuture"], + props: { + numArgs: 0, + allowedInText: true + }, + handler: function handler(_ref4) { + var parser = _ref4.parser, funcName = _ref4.funcName; + var name2 = def_checkControlSequence(parser.gullet.popToken()); + var middle = parser.gullet.popToken(); + var tok = parser.gullet.popToken(); + letCommand(parser, name2, tok, funcName === "\\\\globalfuture"); + parser.gullet.pushToken(tok); + parser.gullet.pushToken(middle); + return { + type: "internal", + mode: parser.mode + }; + } + }); + var delimiter_getMetrics = function getMetrics(symbol, font, mode) { + var replace2 = src_symbols.math[symbol] && src_symbols.math[symbol].replace; + var metrics = getCharacterMetrics(replace2 || symbol, font, mode); + if (!metrics) { + throw new Error("Unsupported symbol " + symbol + " and font size " + font + "."); + } + return metrics; + }; + var delimiter_styleWrap = function styleWrap(delim, toStyle, options, classes) { + var newOptions = options.havingBaseStyle(toStyle); + var span = buildCommon.makeSpan(classes.concat(newOptions.sizingClasses(options)), [delim], options); + var delimSizeMultiplier = newOptions.sizeMultiplier / options.sizeMultiplier; + span.height *= delimSizeMultiplier; + span.depth *= delimSizeMultiplier; + span.maxFontSize = newOptions.sizeMultiplier; + return span; + }; + var centerSpan = function centerSpan2(span, options, style) { + var newOptions = options.havingBaseStyle(style); + var shift = (1 - options.sizeMultiplier / newOptions.sizeMultiplier) * options.fontMetrics().axisHeight; + span.classes.push("delimcenter"); + span.style.top = shift + "em"; + span.height -= shift; + span.depth += shift; + }; + var delimiter_makeSmallDelim = function makeSmallDelim(delim, style, center, options, mode, classes) { + var text4 = buildCommon.makeSymbol(delim, "Main-Regular", mode, options); + var span = delimiter_styleWrap(text4, style, options, classes); + if (center) { + centerSpan(span, options, style); + } + return span; + }; + var delimiter_mathrmSize = function mathrmSize(value, size, mode, options) { + return buildCommon.makeSymbol(value, "Size" + size + "-Regular", mode, options); + }; + var delimiter_makeLargeDelim = function makeLargeDelim(delim, size, center, options, mode, classes) { + var inner = delimiter_mathrmSize(delim, size, mode, options); + var span = delimiter_styleWrap(buildCommon.makeSpan(["delimsizing", "size" + size], [inner], options), src_Style.TEXT, options, classes); + if (center) { + centerSpan(span, options, src_Style.TEXT); + } + return span; + }; + var delimiter_makeInner = function makeInner(symbol, font, mode) { + var sizeClass; + if (font === "Size1-Regular") { + sizeClass = "delim-size1"; + } else { + sizeClass = "delim-size4"; + } + var inner = buildCommon.makeSpan(["delimsizinginner", sizeClass], [buildCommon.makeSpan([], [buildCommon.makeSymbol(symbol, font, mode)])]); + return { + type: "elem", + elem: inner + }; + }; + var lap = { + type: "kern", + size: -5e-3 + }; + var delimiter_makeStackedDelim = function makeStackedDelim(delim, heightTotal, center, options, mode, classes) { + var top; + var middle; + var repeat; + var bottom; + top = repeat = bottom = delim; + middle = null; + var font = "Size1-Regular"; + if (delim === "\\uparrow") { + repeat = bottom = "\u23D0"; + } else if (delim === "\\Uparrow") { + repeat = bottom = "\u2016"; + } else if (delim === "\\downarrow") { + top = repeat = "\u23D0"; + } else if (delim === "\\Downarrow") { + top = repeat = "\u2016"; + } else if (delim === "\\updownarrow") { + top = "\\uparrow"; + repeat = "\u23D0"; + bottom = "\\downarrow"; + } else if (delim === "\\Updownarrow") { + top = "\\Uparrow"; + repeat = "\u2016"; + bottom = "\\Downarrow"; + } else if (delim === "[" || delim === "\\lbrack") { + top = "\u23A1"; + repeat = "\u23A2"; + bottom = "\u23A3"; + font = "Size4-Regular"; + } else if (delim === "]" || delim === "\\rbrack") { + top = "\u23A4"; + repeat = "\u23A5"; + bottom = "\u23A6"; + font = "Size4-Regular"; + } else if (delim === "\\lfloor" || delim === "\u230A") { + repeat = top = "\u23A2"; + bottom = "\u23A3"; + font = "Size4-Regular"; + } else if (delim === "\\lceil" || delim === "\u2308") { + top = "\u23A1"; + repeat = bottom = "\u23A2"; + font = "Size4-Regular"; + } else if (delim === "\\rfloor" || delim === "\u230B") { + repeat = top = "\u23A5"; + bottom = "\u23A6"; + font = "Size4-Regular"; + } else if (delim === "\\rceil" || delim === "\u2309") { + top = "\u23A4"; + repeat = bottom = "\u23A5"; + font = "Size4-Regular"; + } else if (delim === "(" || delim === "\\lparen") { + top = "\u239B"; + repeat = "\u239C"; + bottom = "\u239D"; + font = "Size4-Regular"; + } else if (delim === ")" || delim === "\\rparen") { + top = "\u239E"; + repeat = "\u239F"; + bottom = "\u23A0"; + font = "Size4-Regular"; + } else if (delim === "\\{" || delim === "\\lbrace") { + top = "\u23A7"; + middle = "\u23A8"; + bottom = "\u23A9"; + repeat = "\u23AA"; + font = "Size4-Regular"; + } else if (delim === "\\}" || delim === "\\rbrace") { + top = "\u23AB"; + middle = "\u23AC"; + bottom = "\u23AD"; + repeat = "\u23AA"; + font = "Size4-Regular"; + } else if (delim === "\\lgroup" || delim === "\u27EE") { + top = "\u23A7"; + bottom = "\u23A9"; + repeat = "\u23AA"; + font = "Size4-Regular"; + } else if (delim === "\\rgroup" || delim === "\u27EF") { + top = "\u23AB"; + bottom = "\u23AD"; + repeat = "\u23AA"; + font = "Size4-Regular"; + } else if (delim === "\\lmoustache" || delim === "\u23B0") { + top = "\u23A7"; + bottom = "\u23AD"; + repeat = "\u23AA"; + font = "Size4-Regular"; + } else if (delim === "\\rmoustache" || delim === "\u23B1") { + top = "\u23AB"; + bottom = "\u23A9"; + repeat = "\u23AA"; + font = "Size4-Regular"; + } + var topMetrics = delimiter_getMetrics(top, font, mode); + var topHeightTotal = topMetrics.height + topMetrics.depth; + var repeatMetrics = delimiter_getMetrics(repeat, font, mode); + var repeatHeightTotal = repeatMetrics.height + repeatMetrics.depth; + var bottomMetrics = delimiter_getMetrics(bottom, font, mode); + var bottomHeightTotal = bottomMetrics.height + bottomMetrics.depth; + var middleHeightTotal = 0; + var middleFactor = 1; + if (middle !== null) { + var middleMetrics = delimiter_getMetrics(middle, font, mode); + middleHeightTotal = middleMetrics.height + middleMetrics.depth; + middleFactor = 2; + } + var minHeight = topHeightTotal + bottomHeightTotal + middleHeightTotal; + var repeatCount = Math.max(0, Math.ceil((heightTotal - minHeight) / (middleFactor * repeatHeightTotal))); + var realHeightTotal = minHeight + repeatCount * middleFactor * repeatHeightTotal; + var axisHeight = options.fontMetrics().axisHeight; + if (center) { + axisHeight *= options.sizeMultiplier; + } + var depth = realHeightTotal / 2 - axisHeight; + var shiftOfExtraElement = (repeatCount + 1) * 5e-3 - repeatHeightTotal; + var inners = []; + inners.push(delimiter_makeInner(bottom, font, mode)); + if (middle === null) { + for (var i = 0; i < repeatCount; i++) { + inners.push(lap); + inners.push(delimiter_makeInner(repeat, font, mode)); + } + } else { + for (var _i = 0; _i < repeatCount; _i++) { + inners.push(lap); + inners.push(delimiter_makeInner(repeat, font, mode)); + } + inners.push({ + type: "kern", + size: shiftOfExtraElement + }); + inners.push(delimiter_makeInner(repeat, font, mode)); + inners.push(lap); + inners.push(delimiter_makeInner(middle, font, mode)); + for (var _i2 = 0; _i2 < repeatCount; _i2++) { + inners.push(lap); + inners.push(delimiter_makeInner(repeat, font, mode)); + } + } + if ((repeat === "\u239C" || repeat === "\u239F") && repeatCount === 0) { + var overlap = buildCommon.svgData.leftParenInner[2] / 2; + inners.push({ + type: "kern", + size: -overlap + }); + var pathName = repeat === "\u239C" ? "leftParenInner" : "rightParenInner"; + var innerSpan = buildCommon.staticSvg(pathName, options); + inners.push({ + type: "elem", + elem: innerSpan + }); + inners.push({ + type: "kern", + size: -overlap + }); + } else { + inners.push({ + type: "kern", + size: shiftOfExtraElement + }); + inners.push(delimiter_makeInner(repeat, font, mode)); + inners.push(lap); + } + inners.push(delimiter_makeInner(top, font, mode)); + var newOptions = options.havingBaseStyle(src_Style.TEXT); + var inner = buildCommon.makeVList({ + positionType: "bottom", + positionData: depth, + children: inners + }, newOptions); + return delimiter_styleWrap(buildCommon.makeSpan(["delimsizing", "mult"], [inner], newOptions), src_Style.TEXT, options, classes); + }; + var vbPad = 80; + var emPad = 0.08; + var delimiter_sqrtSvg = function sqrtSvg(sqrtName, height, viewBoxHeight, extraViniculum, options) { + var path = sqrtPath(sqrtName, extraViniculum, viewBoxHeight); + var pathNode = new domTree_PathNode(sqrtName, path); + var svg = new SvgNode([pathNode], { + "width": "400em", + "height": height + "em", + "viewBox": "0 0 400000 " + viewBoxHeight, + "preserveAspectRatio": "xMinYMin slice" + }); + return buildCommon.makeSvgSpan(["hide-tail"], [svg], options); + }; + var makeSqrtImage = function makeSqrtImage2(height, options) { + var newOptions = options.havingBaseSizing(); + var delim = traverseSequence("\\surd", height * newOptions.sizeMultiplier, stackLargeDelimiterSequence, newOptions); + var sizeMultiplier = newOptions.sizeMultiplier; + var extraViniculum = Math.max(0, options.minRuleThickness - options.fontMetrics().sqrtRuleThickness); + var span; + var spanHeight = 0; + var texHeight = 0; + var viewBoxHeight = 0; + var advanceWidth; + if (delim.type === "small") { + viewBoxHeight = 1e3 + 1e3 * extraViniculum + vbPad; + if (height < 1) { + sizeMultiplier = 1; + } else if (height < 1.4) { + sizeMultiplier = 0.7; + } + spanHeight = (1 + extraViniculum + emPad) / sizeMultiplier; + texHeight = (1 + extraViniculum) / sizeMultiplier; + span = delimiter_sqrtSvg("sqrtMain", spanHeight, viewBoxHeight, extraViniculum, options); + span.style.minWidth = "0.853em"; + advanceWidth = 0.833 / sizeMultiplier; + } else if (delim.type === "large") { + viewBoxHeight = (1e3 + vbPad) * sizeToMaxHeight[delim.size]; + texHeight = (sizeToMaxHeight[delim.size] + extraViniculum) / sizeMultiplier; + spanHeight = (sizeToMaxHeight[delim.size] + extraViniculum + emPad) / sizeMultiplier; + span = delimiter_sqrtSvg("sqrtSize" + delim.size, spanHeight, viewBoxHeight, extraViniculum, options); + span.style.minWidth = "1.02em"; + advanceWidth = 1 / sizeMultiplier; + } else { + spanHeight = height + extraViniculum + emPad; + texHeight = height + extraViniculum; + viewBoxHeight = Math.floor(1e3 * height + extraViniculum) + vbPad; + span = delimiter_sqrtSvg("sqrtTall", spanHeight, viewBoxHeight, extraViniculum, options); + span.style.minWidth = "0.742em"; + advanceWidth = 1.056; + } + span.height = texHeight; + span.style.height = spanHeight + "em"; + return { + span, + advanceWidth, + ruleWidth: (options.fontMetrics().sqrtRuleThickness + extraViniculum) * sizeMultiplier + }; + }; + var stackLargeDelimiters = ["(", "\\lparen", ")", "\\rparen", "[", "\\lbrack", "]", "\\rbrack", "\\{", "\\lbrace", "\\}", "\\rbrace", "\\lfloor", "\\rfloor", "\u230A", "\u230B", "\\lceil", "\\rceil", "\u2308", "\u2309", "\\surd"]; + var stackAlwaysDelimiters = ["\\uparrow", "\\downarrow", "\\updownarrow", "\\Uparrow", "\\Downarrow", "\\Updownarrow", "|", "\\|", "\\vert", "\\Vert", "\\lvert", "\\rvert", "\\lVert", "\\rVert", "\\lgroup", "\\rgroup", "\u27EE", "\u27EF", "\\lmoustache", "\\rmoustache", "\u23B0", "\u23B1"]; + var stackNeverDelimiters = ["<", ">", "\\langle", "\\rangle", "/", "\\backslash", "\\lt", "\\gt"]; + var sizeToMaxHeight = [0, 1.2, 1.8, 2.4, 3]; + var delimiter_makeSizedDelim = function makeSizedDelim(delim, size, options, mode, classes) { + if (delim === "<" || delim === "\\lt" || delim === "\u27E8") { + delim = "\\langle"; + } else if (delim === ">" || delim === "\\gt" || delim === "\u27E9") { + delim = "\\rangle"; + } + if (utils.contains(stackLargeDelimiters, delim) || utils.contains(stackNeverDelimiters, delim)) { + return delimiter_makeLargeDelim(delim, size, false, options, mode, classes); + } else if (utils.contains(stackAlwaysDelimiters, delim)) { + return delimiter_makeStackedDelim(delim, sizeToMaxHeight[size], false, options, mode, classes); + } else { + throw new src_ParseError("Illegal delimiter: '" + delim + "'"); + } + }; + var stackNeverDelimiterSequence = [{ + type: "small", + style: src_Style.SCRIPTSCRIPT + }, { + type: "small", + style: src_Style.SCRIPT + }, { + type: "small", + style: src_Style.TEXT + }, { + type: "large", + size: 1 + }, { + type: "large", + size: 2 + }, { + type: "large", + size: 3 + }, { + type: "large", + size: 4 + }]; + var stackAlwaysDelimiterSequence = [{ + type: "small", + style: src_Style.SCRIPTSCRIPT + }, { + type: "small", + style: src_Style.SCRIPT + }, { + type: "small", + style: src_Style.TEXT + }, { + type: "stack" + }]; + var stackLargeDelimiterSequence = [{ + type: "small", + style: src_Style.SCRIPTSCRIPT + }, { + type: "small", + style: src_Style.SCRIPT + }, { + type: "small", + style: src_Style.TEXT + }, { + type: "large", + size: 1 + }, { + type: "large", + size: 2 + }, { + type: "large", + size: 3 + }, { + type: "large", + size: 4 + }, { + type: "stack" + }]; + var delimTypeToFont = function delimTypeToFont2(type) { + if (type.type === "small") { + return "Main-Regular"; + } else if (type.type === "large") { + return "Size" + type.size + "-Regular"; + } else if (type.type === "stack") { + return "Size4-Regular"; + } else { + throw new Error("Add support for delim type '" + type.type + "' here."); + } + }; + var traverseSequence = function traverseSequence2(delim, height, sequence, options) { + var start = Math.min(2, 3 - options.style.size); + for (var i = start; i < sequence.length; i++) { + if (sequence[i].type === "stack") { + break; + } + var metrics = delimiter_getMetrics(delim, delimTypeToFont(sequence[i]), "math"); + var heightDepth = metrics.height + metrics.depth; + if (sequence[i].type === "small") { + var newOptions = options.havingBaseStyle(sequence[i].style); + heightDepth *= newOptions.sizeMultiplier; + } + if (heightDepth > height) { + return sequence[i]; + } + } + return sequence[sequence.length - 1]; + }; + var delimiter_makeCustomSizedDelim = function makeCustomSizedDelim(delim, height, center, options, mode, classes) { + if (delim === "<" || delim === "\\lt" || delim === "\u27E8") { + delim = "\\langle"; + } else if (delim === ">" || delim === "\\gt" || delim === "\u27E9") { + delim = "\\rangle"; + } + var sequence; + if (utils.contains(stackNeverDelimiters, delim)) { + sequence = stackNeverDelimiterSequence; + } else if (utils.contains(stackLargeDelimiters, delim)) { + sequence = stackLargeDelimiterSequence; + } else { + sequence = stackAlwaysDelimiterSequence; + } + var delimType = traverseSequence(delim, height, sequence, options); + if (delimType.type === "small") { + return delimiter_makeSmallDelim(delim, delimType.style, center, options, mode, classes); + } else if (delimType.type === "large") { + return delimiter_makeLargeDelim(delim, delimType.size, center, options, mode, classes); + } else { + return delimiter_makeStackedDelim(delim, height, center, options, mode, classes); + } + }; + var makeLeftRightDelim = function makeLeftRightDelim2(delim, height, depth, options, mode, classes) { + var axisHeight = options.fontMetrics().axisHeight * options.sizeMultiplier; + var delimiterFactor = 901; + var delimiterExtend = 5 / options.fontMetrics().ptPerEm; + var maxDistFromAxis = Math.max(height - axisHeight, depth + axisHeight); + var totalHeight = Math.max( + maxDistFromAxis / 500 * delimiterFactor, + 2 * maxDistFromAxis - delimiterExtend + ); + return delimiter_makeCustomSizedDelim(delim, totalHeight, true, options, mode, classes); + }; + var delimiter2 = { + sqrtImage: makeSqrtImage, + sizedDelim: delimiter_makeSizedDelim, + customSizedDelim: delimiter_makeCustomSizedDelim, + leftRightDelim: makeLeftRightDelim + }; + var delimiterSizes = { + "\\bigl": { + mclass: "mopen", + size: 1 + }, + "\\Bigl": { + mclass: "mopen", + size: 2 + }, + "\\biggl": { + mclass: "mopen", + size: 3 + }, + "\\Biggl": { + mclass: "mopen", + size: 4 + }, + "\\bigr": { + mclass: "mclose", + size: 1 + }, + "\\Bigr": { + mclass: "mclose", + size: 2 + }, + "\\biggr": { + mclass: "mclose", + size: 3 + }, + "\\Biggr": { + mclass: "mclose", + size: 4 + }, + "\\bigm": { + mclass: "mrel", + size: 1 + }, + "\\Bigm": { + mclass: "mrel", + size: 2 + }, + "\\biggm": { + mclass: "mrel", + size: 3 + }, + "\\Biggm": { + mclass: "mrel", + size: 4 + }, + "\\big": { + mclass: "mord", + size: 1 + }, + "\\Big": { + mclass: "mord", + size: 2 + }, + "\\bigg": { + mclass: "mord", + size: 3 + }, + "\\Bigg": { + mclass: "mord", + size: 4 + } + }; + var delimiters = ["(", "\\lparen", ")", "\\rparen", "[", "\\lbrack", "]", "\\rbrack", "\\{", "\\lbrace", "\\}", "\\rbrace", "\\lfloor", "\\rfloor", "\u230A", "\u230B", "\\lceil", "\\rceil", "\u2308", "\u2309", "<", ">", "\\langle", "\u27E8", "\\rangle", "\u27E9", "\\lt", "\\gt", "\\lvert", "\\rvert", "\\lVert", "\\rVert", "\\lgroup", "\\rgroup", "\u27EE", "\u27EF", "\\lmoustache", "\\rmoustache", "\u23B0", "\u23B1", "/", "\\backslash", "|", "\\vert", "\\|", "\\Vert", "\\uparrow", "\\Uparrow", "\\downarrow", "\\Downarrow", "\\updownarrow", "\\Updownarrow", "."]; + function checkDelimiter(delim, context) { + var symDelim = checkSymbolNodeType(delim); + if (symDelim && utils.contains(delimiters, symDelim.text)) { + return symDelim; + } else if (symDelim) { + throw new src_ParseError("Invalid delimiter '" + symDelim.text + "' after '" + context.funcName + "'", delim); + } else { + throw new src_ParseError("Invalid delimiter type '" + delim.type + "'", delim); + } + } + defineFunction({ + type: "delimsizing", + names: ["\\bigl", "\\Bigl", "\\biggl", "\\Biggl", "\\bigr", "\\Bigr", "\\biggr", "\\Biggr", "\\bigm", "\\Bigm", "\\biggm", "\\Biggm", "\\big", "\\Big", "\\bigg", "\\Bigg"], + props: { + numArgs: 1 + }, + handler: function handler(context, args) { + var delim = checkDelimiter(args[0], context); + return { + type: "delimsizing", + mode: context.parser.mode, + size: delimiterSizes[context.funcName].size, + mclass: delimiterSizes[context.funcName].mclass, + delim: delim.text + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + if (group.delim === ".") { + return buildCommon.makeSpan([group.mclass]); + } + return delimiter2.sizedDelim(group.delim, group.size, options, group.mode, [group.mclass]); + }, + mathmlBuilder: function mathmlBuilder(group) { + var children2 = []; + if (group.delim !== ".") { + children2.push(buildMathML_makeText(group.delim, group.mode)); + } + var node = new mathMLTree.MathNode("mo", children2); + if (group.mclass === "mopen" || group.mclass === "mclose") { + node.setAttribute("fence", "true"); + } else { + node.setAttribute("fence", "false"); + } + return node; + } + }); + function assertParsed(group) { + if (!group.body) { + throw new Error("Bug: The leftright ParseNode wasn't fully parsed."); + } + } + defineFunction({ + type: "leftright-right", + names: ["\\right"], + props: { + numArgs: 1 + }, + handler: function handler(context, args) { + var color = context.parser.gullet.macros.get("\\current@color"); + if (color && typeof color !== "string") { + throw new src_ParseError("\\current@color set to non-string in \\right"); + } + return { + type: "leftright-right", + mode: context.parser.mode, + delim: checkDelimiter(args[0], context).text, + color + }; + } + }); + defineFunction({ + type: "leftright", + names: ["\\left"], + props: { + numArgs: 1 + }, + handler: function handler(context, args) { + var delim = checkDelimiter(args[0], context); + var parser = context.parser; + ++parser.leftrightDepth; + var body = parser.parseExpression(false); + --parser.leftrightDepth; + parser.expect("\\right", false); + var right = assertNodeType(parser.parseFunction(), "leftright-right"); + return { + type: "leftright", + mode: parser.mode, + body, + left: delim.text, + right: right.delim, + rightColor: right.color + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + assertParsed(group); + var inner = buildHTML_buildExpression(group.body, options, true, ["mopen", "mclose"]); + var innerHeight = 0; + var innerDepth = 0; + var hadMiddle = false; + for (var i = 0; i < inner.length; i++) { + if (inner[i].isMiddle) { + hadMiddle = true; + } else { + innerHeight = Math.max(inner[i].height, innerHeight); + innerDepth = Math.max(inner[i].depth, innerDepth); + } + } + innerHeight *= options.sizeMultiplier; + innerDepth *= options.sizeMultiplier; + var leftDelim; + if (group.left === ".") { + leftDelim = makeNullDelimiter(options, ["mopen"]); + } else { + leftDelim = delimiter2.leftRightDelim(group.left, innerHeight, innerDepth, options, group.mode, ["mopen"]); + } + inner.unshift(leftDelim); + if (hadMiddle) { + for (var _i = 1; _i < inner.length; _i++) { + var middleDelim = inner[_i]; + var isMiddle = middleDelim.isMiddle; + if (isMiddle) { + inner[_i] = delimiter2.leftRightDelim(isMiddle.delim, innerHeight, innerDepth, isMiddle.options, group.mode, []); + } + } + } + var rightDelim; + if (group.right === ".") { + rightDelim = makeNullDelimiter(options, ["mclose"]); + } else { + var colorOptions = group.rightColor ? options.withColor(group.rightColor) : options; + rightDelim = delimiter2.leftRightDelim(group.right, innerHeight, innerDepth, colorOptions, group.mode, ["mclose"]); + } + inner.push(rightDelim); + return buildCommon.makeSpan(["minner"], inner, options); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + assertParsed(group); + var inner = buildMathML_buildExpression(group.body, options); + if (group.left !== ".") { + var leftNode = new mathMLTree.MathNode("mo", [buildMathML_makeText(group.left, group.mode)]); + leftNode.setAttribute("fence", "true"); + inner.unshift(leftNode); + } + if (group.right !== ".") { + var rightNode = new mathMLTree.MathNode("mo", [buildMathML_makeText(group.right, group.mode)]); + rightNode.setAttribute("fence", "true"); + if (group.rightColor) { + rightNode.setAttribute("mathcolor", group.rightColor); + } + inner.push(rightNode); + } + return buildMathML_makeRow(inner); + } + }); + defineFunction({ + type: "middle", + names: ["\\middle"], + props: { + numArgs: 1 + }, + handler: function handler(context, args) { + var delim = checkDelimiter(args[0], context); + if (!context.parser.leftrightDepth) { + throw new src_ParseError("\\middle without preceding \\left", delim); + } + return { + type: "middle", + mode: context.parser.mode, + delim: delim.text + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var middleDelim; + if (group.delim === ".") { + middleDelim = makeNullDelimiter(options, []); + } else { + middleDelim = delimiter2.sizedDelim(group.delim, 1, options, group.mode, []); + var isMiddle = { + delim: group.delim, + options + }; + middleDelim.isMiddle = isMiddle; + } + return middleDelim; + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var textNode = group.delim === "\\vert" || group.delim === "|" ? buildMathML_makeText("|", "text") : buildMathML_makeText(group.delim, group.mode); + var middleNode = new mathMLTree.MathNode("mo", [textNode]); + middleNode.setAttribute("fence", "true"); + middleNode.setAttribute("lspace", "0.05em"); + middleNode.setAttribute("rspace", "0.05em"); + return middleNode; + } + }); + var enclose_htmlBuilder = function htmlBuilder(group, options) { + var inner = buildCommon.wrapFragment(buildHTML_buildGroup(group.body, options), options); + var label = group.label.substr(1); + var scale = options.sizeMultiplier; + var img; + var imgShift = 0; + var isSingleChar = utils.isCharacterBox(group.body); + if (label === "sout") { + img = buildCommon.makeSpan(["stretchy", "sout"]); + img.height = options.fontMetrics().defaultRuleThickness / scale; + imgShift = -0.5 * options.fontMetrics().xHeight; + } else { + if (/cancel/.test(label)) { + if (!isSingleChar) { + inner.classes.push("cancel-pad"); + } + } else { + inner.classes.push("boxpad"); + } + var vertPad = 0; + var ruleThickness = 0; + if (/box/.test(label)) { + ruleThickness = Math.max( + options.fontMetrics().fboxrule, + options.minRuleThickness + ); + vertPad = options.fontMetrics().fboxsep + (label === "colorbox" ? 0 : ruleThickness); + } else { + vertPad = isSingleChar ? 0.2 : 0; + } + img = stretchy.encloseSpan(inner, label, vertPad, options); + if (/fbox|boxed|fcolorbox/.test(label)) { + img.style.borderStyle = "solid"; + img.style.borderWidth = ruleThickness + "em"; + } + imgShift = inner.depth + vertPad; + if (group.backgroundColor) { + img.style.backgroundColor = group.backgroundColor; + if (group.borderColor) { + img.style.borderColor = group.borderColor; + } + } + } + var vlist; + if (group.backgroundColor) { + vlist = buildCommon.makeVList({ + positionType: "individualShift", + children: [ + { + type: "elem", + elem: img, + shift: imgShift + }, + { + type: "elem", + elem: inner, + shift: 0 + } + ] + }, options); + } else { + vlist = buildCommon.makeVList({ + positionType: "individualShift", + children: [ + { + type: "elem", + elem: inner, + shift: 0 + }, + { + type: "elem", + elem: img, + shift: imgShift, + wrapperClasses: /cancel/.test(label) ? ["svg-align"] : [] + } + ] + }, options); + } + if (/cancel/.test(label)) { + vlist.height = inner.height; + vlist.depth = inner.depth; + } + if (/cancel/.test(label) && !isSingleChar) { + return buildCommon.makeSpan(["mord", "cancel-lap"], [vlist], options); + } else { + return buildCommon.makeSpan(["mord"], [vlist], options); + } + }; + var enclose_mathmlBuilder = function mathmlBuilder(group, options) { + var fboxsep = 0; + var node = new mathMLTree.MathNode(group.label.indexOf("colorbox") > -1 ? "mpadded" : "menclose", [buildMathML_buildGroup(group.body, options)]); + switch (group.label) { + case "\\cancel": + node.setAttribute("notation", "updiagonalstrike"); + break; + case "\\bcancel": + node.setAttribute("notation", "downdiagonalstrike"); + break; + case "\\sout": + node.setAttribute("notation", "horizontalstrike"); + break; + case "\\fbox": + node.setAttribute("notation", "box"); + break; + case "\\fcolorbox": + case "\\colorbox": + fboxsep = options.fontMetrics().fboxsep * options.fontMetrics().ptPerEm; + node.setAttribute("width", "+" + 2 * fboxsep + "pt"); + node.setAttribute("height", "+" + 2 * fboxsep + "pt"); + node.setAttribute("lspace", fboxsep + "pt"); + node.setAttribute("voffset", fboxsep + "pt"); + if (group.label === "\\fcolorbox") { + var thk = Math.max( + options.fontMetrics().fboxrule, + options.minRuleThickness + ); + node.setAttribute("style", "border: " + thk + "em solid " + String(group.borderColor)); + } + break; + case "\\xcancel": + node.setAttribute("notation", "updiagonalstrike downdiagonalstrike"); + break; + } + if (group.backgroundColor) { + node.setAttribute("mathbackground", group.backgroundColor); + } + return node; + }; + defineFunction({ + type: "enclose", + names: ["\\colorbox"], + props: { + numArgs: 2, + allowedInText: true, + greediness: 3, + argTypes: ["color", "text"] + }, + handler: function handler(_ref, args, optArgs) { + var parser = _ref.parser, funcName = _ref.funcName; + var color = assertNodeType(args[0], "color-token").color; + var body = args[1]; + return { + type: "enclose", + mode: parser.mode, + label: funcName, + backgroundColor: color, + body + }; + }, + htmlBuilder: enclose_htmlBuilder, + mathmlBuilder: enclose_mathmlBuilder + }); + defineFunction({ + type: "enclose", + names: ["\\fcolorbox"], + props: { + numArgs: 3, + allowedInText: true, + greediness: 3, + argTypes: ["color", "color", "text"] + }, + handler: function handler(_ref2, args, optArgs) { + var parser = _ref2.parser, funcName = _ref2.funcName; + var borderColor = assertNodeType(args[0], "color-token").color; + var backgroundColor = assertNodeType(args[1], "color-token").color; + var body = args[2]; + return { + type: "enclose", + mode: parser.mode, + label: funcName, + backgroundColor, + borderColor, + body + }; + }, + htmlBuilder: enclose_htmlBuilder, + mathmlBuilder: enclose_mathmlBuilder + }); + defineFunction({ + type: "enclose", + names: ["\\fbox"], + props: { + numArgs: 1, + argTypes: ["hbox"], + allowedInText: true + }, + handler: function handler(_ref3, args) { + var parser = _ref3.parser; + return { + type: "enclose", + mode: parser.mode, + label: "\\fbox", + body: args[0] + }; + } + }); + defineFunction({ + type: "enclose", + names: ["\\cancel", "\\bcancel", "\\xcancel", "\\sout"], + props: { + numArgs: 1 + }, + handler: function handler(_ref4, args, optArgs) { + var parser = _ref4.parser, funcName = _ref4.funcName; + var body = args[0]; + return { + type: "enclose", + mode: parser.mode, + label: funcName, + body + }; + }, + htmlBuilder: enclose_htmlBuilder, + mathmlBuilder: enclose_mathmlBuilder + }); + var _environments = {}; + function defineEnvironment(_ref) { + var type = _ref.type, names = _ref.names, props = _ref.props, handler = _ref.handler, htmlBuilder = _ref.htmlBuilder, mathmlBuilder = _ref.mathmlBuilder; + var data2 = { + type, + numArgs: props.numArgs || 0, + greediness: 1, + allowedInText: false, + numOptionalArgs: 0, + handler + }; + for (var i = 0; i < names.length; ++i) { + _environments[names[i]] = data2; + } + if (htmlBuilder) { + _htmlGroupBuilders[type] = htmlBuilder; + } + if (mathmlBuilder) { + _mathmlGroupBuilders[type] = mathmlBuilder; + } + } + function getHLines(parser) { + var hlineInfo = []; + parser.consumeSpaces(); + var nxt = parser.fetch().text; + while (nxt === "\\hline" || nxt === "\\hdashline") { + parser.consume(); + hlineInfo.push(nxt === "\\hdashline"); + parser.consumeSpaces(); + nxt = parser.fetch().text; + } + return hlineInfo; + } + function parseArray(parser, _ref, style) { + var hskipBeforeAndAfter = _ref.hskipBeforeAndAfter, addJot = _ref.addJot, cols = _ref.cols, arraystretch = _ref.arraystretch, colSeparationType = _ref.colSeparationType; + parser.gullet.beginGroup(); + parser.gullet.macros.set("\\\\", "\\cr"); + if (!arraystretch) { + var stretch = parser.gullet.expandMacroAsText("\\arraystretch"); + if (stretch == null) { + arraystretch = 1; + } else { + arraystretch = parseFloat(stretch); + if (!arraystretch || arraystretch < 0) { + throw new src_ParseError("Invalid \\arraystretch: " + stretch); + } + } + } + parser.gullet.beginGroup(); + var row = []; + var body = [row]; + var rowGaps = []; + var hLinesBeforeRow = []; + hLinesBeforeRow.push(getHLines(parser)); + while (true) { + var cell = parser.parseExpression(false, "\\cr"); + parser.gullet.endGroup(); + parser.gullet.beginGroup(); + cell = { + type: "ordgroup", + mode: parser.mode, + body: cell + }; + if (style) { + cell = { + type: "styling", + mode: parser.mode, + style, + body: [cell] + }; + } + row.push(cell); + var next2 = parser.fetch().text; + if (next2 === "&") { + parser.consume(); + } else if (next2 === "\\end") { + if (row.length === 1 && cell.type === "styling" && cell.body[0].body.length === 0) { + body.pop(); + } + if (hLinesBeforeRow.length < body.length + 1) { + hLinesBeforeRow.push([]); + } + break; + } else if (next2 === "\\cr") { + var cr = assertNodeType(parser.parseFunction(), "cr"); + rowGaps.push(cr.size); + hLinesBeforeRow.push(getHLines(parser)); + row = []; + body.push(row); + } else { + throw new src_ParseError("Expected & or \\\\ or \\cr or \\end", parser.nextToken); + } + } + parser.gullet.endGroup(); + parser.gullet.endGroup(); + return { + type: "array", + mode: parser.mode, + addJot, + arraystretch, + body, + cols, + rowGaps, + hskipBeforeAndAfter, + hLinesBeforeRow, + colSeparationType + }; + } + function dCellStyle(envName) { + if (envName.substr(0, 1) === "d") { + return "display"; + } else { + return "text"; + } + } + var array_htmlBuilder = function htmlBuilder(group, options) { + var r; + var c; + var nr = group.body.length; + var hLinesBeforeRow = group.hLinesBeforeRow; + var nc = 0; + var body = new Array(nr); + var hlines = []; + var ruleThickness = Math.max( + options.fontMetrics().arrayRuleWidth, + options.minRuleThickness + ); + var pt = 1 / options.fontMetrics().ptPerEm; + var arraycolsep = 5 * pt; + if (group.colSeparationType && group.colSeparationType === "small") { + var localMultiplier = options.havingStyle(src_Style.SCRIPT).sizeMultiplier; + arraycolsep = 0.2778 * (localMultiplier / options.sizeMultiplier); + } + var baselineskip = 12 * pt; + var jot = 3 * pt; + var arrayskip = group.arraystretch * baselineskip; + var arstrutHeight = 0.7 * arrayskip; + var arstrutDepth = 0.3 * arrayskip; + var totalHeight = 0; + function setHLinePos(hlinesInGap) { + for (var i = 0; i < hlinesInGap.length; ++i) { + if (i > 0) { + totalHeight += 0.25; + } + hlines.push({ + pos: totalHeight, + isDashed: hlinesInGap[i] + }); + } + } + setHLinePos(hLinesBeforeRow[0]); + for (r = 0; r < group.body.length; ++r) { + var inrow = group.body[r]; + var height = arstrutHeight; + var depth = arstrutDepth; + if (nc < inrow.length) { + nc = inrow.length; + } + var outrow = new Array(inrow.length); + for (c = 0; c < inrow.length; ++c) { + var elt = buildHTML_buildGroup(inrow[c], options); + if (depth < elt.depth) { + depth = elt.depth; + } + if (height < elt.height) { + height = elt.height; + } + outrow[c] = elt; + } + var rowGap = group.rowGaps[r]; + var gap = 0; + if (rowGap) { + gap = units_calculateSize(rowGap, options); + if (gap > 0) { + gap += arstrutDepth; + if (depth < gap) { + depth = gap; + } + gap = 0; + } + } + if (group.addJot) { + depth += jot; + } + outrow.height = height; + outrow.depth = depth; + totalHeight += height; + outrow.pos = totalHeight; + totalHeight += depth + gap; + body[r] = outrow; + setHLinePos(hLinesBeforeRow[r + 1]); + } + var offset = totalHeight / 2 + options.fontMetrics().axisHeight; + var colDescriptions = group.cols || []; + var cols = []; + var colSep; + var colDescrNum; + for (c = 0, colDescrNum = 0; c < nc || colDescrNum < colDescriptions.length; ++c, ++colDescrNum) { + var colDescr = colDescriptions[colDescrNum] || {}; + var firstSeparator = true; + while (colDescr.type === "separator") { + if (!firstSeparator) { + colSep = buildCommon.makeSpan(["arraycolsep"], []); + colSep.style.width = options.fontMetrics().doubleRuleSep + "em"; + cols.push(colSep); + } + if (colDescr.separator === "|" || colDescr.separator === ":") { + var lineType = colDescr.separator === "|" ? "solid" : "dashed"; + var separator = buildCommon.makeSpan(["vertical-separator"], [], options); + separator.style.height = totalHeight + "em"; + separator.style.borderRightWidth = ruleThickness + "em"; + separator.style.borderRightStyle = lineType; + separator.style.margin = "0 -" + ruleThickness / 2 + "em"; + separator.style.verticalAlign = -(totalHeight - offset) + "em"; + cols.push(separator); + } else { + throw new src_ParseError("Invalid separator type: " + colDescr.separator); + } + colDescrNum++; + colDescr = colDescriptions[colDescrNum] || {}; + firstSeparator = false; + } + if (c >= nc) { + continue; + } + var sepwidth = void 0; + if (c > 0 || group.hskipBeforeAndAfter) { + sepwidth = utils.deflt(colDescr.pregap, arraycolsep); + if (sepwidth !== 0) { + colSep = buildCommon.makeSpan(["arraycolsep"], []); + colSep.style.width = sepwidth + "em"; + cols.push(colSep); + } + } + var col = []; + for (r = 0; r < nr; ++r) { + var row = body[r]; + var elem = row[c]; + if (!elem) { + continue; + } + var shift = row.pos - offset; + elem.depth = row.depth; + elem.height = row.height; + col.push({ + type: "elem", + elem, + shift + }); + } + col = buildCommon.makeVList({ + positionType: "individualShift", + children: col + }, options); + col = buildCommon.makeSpan(["col-align-" + (colDescr.align || "c")], [col]); + cols.push(col); + if (c < nc - 1 || group.hskipBeforeAndAfter) { + sepwidth = utils.deflt(colDescr.postgap, arraycolsep); + if (sepwidth !== 0) { + colSep = buildCommon.makeSpan(["arraycolsep"], []); + colSep.style.width = sepwidth + "em"; + cols.push(colSep); + } + } + } + body = buildCommon.makeSpan(["mtable"], cols); + if (hlines.length > 0) { + var line = buildCommon.makeLineSpan("hline", options, ruleThickness); + var dashes = buildCommon.makeLineSpan("hdashline", options, ruleThickness); + var vListElems = [{ + type: "elem", + elem: body, + shift: 0 + }]; + while (hlines.length > 0) { + var hline = hlines.pop(); + var lineShift = hline.pos - offset; + if (hline.isDashed) { + vListElems.push({ + type: "elem", + elem: dashes, + shift: lineShift + }); + } else { + vListElems.push({ + type: "elem", + elem: line, + shift: lineShift + }); + } + } + body = buildCommon.makeVList({ + positionType: "individualShift", + children: vListElems + }, options); + } + return buildCommon.makeSpan(["mord"], [body], options); + }; + var alignMap = { + c: "center ", + l: "left ", + r: "right " + }; + var array_mathmlBuilder = function mathmlBuilder(group, options) { + var table2 = new mathMLTree.MathNode("mtable", group.body.map(function(row) { + return new mathMLTree.MathNode("mtr", row.map(function(cell) { + return new mathMLTree.MathNode("mtd", [buildMathML_buildGroup(cell, options)]); + })); + })); + var gap = group.arraystretch === 0.5 ? 0.1 : 0.16 + group.arraystretch - 1 + (group.addJot ? 0.09 : 0); + table2.setAttribute("rowspacing", gap + "em"); + var menclose = ""; + var align = ""; + if (group.cols && group.cols.length > 0) { + var cols = group.cols; + var columnLines = ""; + var prevTypeWasAlign = false; + var iStart = 0; + var iEnd = cols.length; + if (cols[0].type === "separator") { + menclose += "top "; + iStart = 1; + } + if (cols[cols.length - 1].type === "separator") { + menclose += "bottom "; + iEnd -= 1; + } + for (var i = iStart; i < iEnd; i++) { + if (cols[i].type === "align") { + align += alignMap[cols[i].align]; + if (prevTypeWasAlign) { + columnLines += "none "; + } + prevTypeWasAlign = true; + } else if (cols[i].type === "separator") { + if (prevTypeWasAlign) { + columnLines += cols[i].separator === "|" ? "solid " : "dashed "; + prevTypeWasAlign = false; + } + } + } + table2.setAttribute("columnalign", align.trim()); + if (/[sd]/.test(columnLines)) { + table2.setAttribute("columnlines", columnLines.trim()); + } + } + if (group.colSeparationType === "align") { + var _cols = group.cols || []; + var spacing = ""; + for (var _i = 1; _i < _cols.length; _i++) { + spacing += _i % 2 ? "0em " : "1em "; + } + table2.setAttribute("columnspacing", spacing.trim()); + } else if (group.colSeparationType === "alignat") { + table2.setAttribute("columnspacing", "0em"); + } else if (group.colSeparationType === "small") { + table2.setAttribute("columnspacing", "0.2778em"); + } else { + table2.setAttribute("columnspacing", "1em"); + } + var rowLines = ""; + var hlines = group.hLinesBeforeRow; + menclose += hlines[0].length > 0 ? "left " : ""; + menclose += hlines[hlines.length - 1].length > 0 ? "right " : ""; + for (var _i2 = 1; _i2 < hlines.length - 1; _i2++) { + rowLines += hlines[_i2].length === 0 ? "none " : hlines[_i2][0] ? "dashed " : "solid "; + } + if (/[sd]/.test(rowLines)) { + table2.setAttribute("rowlines", rowLines.trim()); + } + if (menclose !== "") { + table2 = new mathMLTree.MathNode("menclose", [table2]); + table2.setAttribute("notation", menclose.trim()); + } + if (group.arraystretch && group.arraystretch < 1) { + table2 = new mathMLTree.MathNode("mstyle", [table2]); + table2.setAttribute("scriptlevel", "1"); + } + return table2; + }; + var array_alignedHandler = function alignedHandler(context, args) { + var cols = []; + var res = parseArray(context.parser, { + cols, + addJot: true + }, "display"); + var numMaths; + var numCols = 0; + var emptyGroup = { + type: "ordgroup", + mode: context.mode, + body: [] + }; + if (args[0] && args[0].type === "ordgroup") { + var arg0 = ""; + for (var i = 0; i < args[0].body.length; i++) { + var textord = assertNodeType(args[0].body[i], "textord"); + arg0 += textord.text; + } + numMaths = Number(arg0); + numCols = numMaths * 2; + } + var isAligned = !numCols; + res.body.forEach(function(row) { + for (var _i3 = 1; _i3 < row.length; _i3 += 2) { + var styling = assertNodeType(row[_i3], "styling"); + var ordgroup = assertNodeType(styling.body[0], "ordgroup"); + ordgroup.body.unshift(emptyGroup); + } + if (!isAligned) { + var curMaths = row.length / 2; + if (numMaths < curMaths) { + throw new src_ParseError("Too many math in a row: " + ("expected " + numMaths + ", but got " + curMaths), row[0]); + } + } else if (numCols < row.length) { + numCols = row.length; + } + }); + for (var _i4 = 0; _i4 < numCols; ++_i4) { + var align = "r"; + var pregap = 0; + if (_i4 % 2 === 1) { + align = "l"; + } else if (_i4 > 0 && isAligned) { + pregap = 1; + } + cols[_i4] = { + type: "align", + align, + pregap, + postgap: 0 + }; + } + res.colSeparationType = isAligned ? "align" : "alignat"; + return res; + }; + defineEnvironment({ + type: "array", + names: ["array", "darray"], + props: { + numArgs: 1 + }, + handler: function handler(context, args) { + var symNode = checkSymbolNodeType(args[0]); + var colalign = symNode ? [args[0]] : assertNodeType(args[0], "ordgroup").body; + var cols = colalign.map(function(nde) { + var node = assertSymbolNodeType(nde); + var ca = node.text; + if ("lcr".indexOf(ca) !== -1) { + return { + type: "align", + align: ca + }; + } else if (ca === "|") { + return { + type: "separator", + separator: "|" + }; + } else if (ca === ":") { + return { + type: "separator", + separator: ":" + }; + } + throw new src_ParseError("Unknown column alignment: " + ca, nde); + }); + var res = { + cols, + hskipBeforeAndAfter: true + }; + return parseArray(context.parser, res, dCellStyle(context.envName)); + }, + htmlBuilder: array_htmlBuilder, + mathmlBuilder: array_mathmlBuilder + }); + defineEnvironment({ + type: "array", + names: ["matrix", "pmatrix", "bmatrix", "Bmatrix", "vmatrix", "Vmatrix"], + props: { + numArgs: 0 + }, + handler: function handler(context) { + var delimiters2 = { + "matrix": null, + "pmatrix": ["(", ")"], + "bmatrix": ["[", "]"], + "Bmatrix": ["\\{", "\\}"], + "vmatrix": ["|", "|"], + "Vmatrix": ["\\Vert", "\\Vert"] + }[context.envName]; + var payload = { + hskipBeforeAndAfter: false + }; + var res = parseArray(context.parser, payload, dCellStyle(context.envName)); + return delimiters2 ? { + type: "leftright", + mode: context.mode, + body: [res], + left: delimiters2[0], + right: delimiters2[1], + rightColor: void 0 + } : res; + }, + htmlBuilder: array_htmlBuilder, + mathmlBuilder: array_mathmlBuilder + }); + defineEnvironment({ + type: "array", + names: ["smallmatrix"], + props: { + numArgs: 0 + }, + handler: function handler(context) { + var payload = { + arraystretch: 0.5 + }; + var res = parseArray(context.parser, payload, "script"); + res.colSeparationType = "small"; + return res; + }, + htmlBuilder: array_htmlBuilder, + mathmlBuilder: array_mathmlBuilder + }); + defineEnvironment({ + type: "array", + names: ["subarray"], + props: { + numArgs: 1 + }, + handler: function handler(context, args) { + var symNode = checkSymbolNodeType(args[0]); + var colalign = symNode ? [args[0]] : assertNodeType(args[0], "ordgroup").body; + var cols = colalign.map(function(nde) { + var node = assertSymbolNodeType(nde); + var ca = node.text; + if ("lc".indexOf(ca) !== -1) { + return { + type: "align", + align: ca + }; + } + throw new src_ParseError("Unknown column alignment: " + ca, nde); + }); + if (cols.length > 1) { + throw new src_ParseError("{subarray} can contain only one column"); + } + var res = { + cols, + hskipBeforeAndAfter: false, + arraystretch: 0.5 + }; + res = parseArray(context.parser, res, "script"); + if (res.body.length > 0 && res.body[0].length > 1) { + throw new src_ParseError("{subarray} can contain only one column"); + } + return res; + }, + htmlBuilder: array_htmlBuilder, + mathmlBuilder: array_mathmlBuilder + }); + defineEnvironment({ + type: "array", + names: ["cases", "dcases", "rcases", "drcases"], + props: { + numArgs: 0 + }, + handler: function handler(context) { + var payload = { + arraystretch: 1.2, + cols: [{ + type: "align", + align: "l", + pregap: 0, + postgap: 1 + }, { + type: "align", + align: "l", + pregap: 0, + postgap: 0 + }] + }; + var res = parseArray(context.parser, payload, dCellStyle(context.envName)); + return { + type: "leftright", + mode: context.mode, + body: [res], + left: context.envName.indexOf("r") > -1 ? "." : "\\{", + right: context.envName.indexOf("r") > -1 ? "\\}" : ".", + rightColor: void 0 + }; + }, + htmlBuilder: array_htmlBuilder, + mathmlBuilder: array_mathmlBuilder + }); + defineEnvironment({ + type: "array", + names: ["aligned"], + props: { + numArgs: 0 + }, + handler: array_alignedHandler, + htmlBuilder: array_htmlBuilder, + mathmlBuilder: array_mathmlBuilder + }); + defineEnvironment({ + type: "array", + names: ["gathered"], + props: { + numArgs: 0 + }, + handler: function handler(context) { + var res = { + cols: [{ + type: "align", + align: "c" + }], + addJot: true + }; + return parseArray(context.parser, res, "display"); + }, + htmlBuilder: array_htmlBuilder, + mathmlBuilder: array_mathmlBuilder + }); + defineEnvironment({ + type: "array", + names: ["alignedat"], + props: { + numArgs: 1 + }, + handler: array_alignedHandler, + htmlBuilder: array_htmlBuilder, + mathmlBuilder: array_mathmlBuilder + }); + defineFunction({ + type: "text", + names: ["\\hline", "\\hdashline"], + props: { + numArgs: 0, + allowedInText: true, + allowedInMath: true + }, + handler: function handler(context, args) { + throw new src_ParseError(context.funcName + " valid only within array environment"); + } + }); + var environments = _environments; + var src_environments = environments; + defineFunction({ + type: "environment", + names: ["\\begin", "\\end"], + props: { + numArgs: 1, + argTypes: ["text"] + }, + handler: function handler(_ref, args) { + var parser = _ref.parser, funcName = _ref.funcName; + var nameGroup = args[0]; + if (nameGroup.type !== "ordgroup") { + throw new src_ParseError("Invalid environment name", nameGroup); + } + var envName = ""; + for (var i = 0; i < nameGroup.body.length; ++i) { + envName += assertNodeType(nameGroup.body[i], "textord").text; + } + if (funcName === "\\begin") { + if (!src_environments.hasOwnProperty(envName)) { + throw new src_ParseError("No such environment: " + envName, nameGroup); + } + var env = src_environments[envName]; + var _parser$parseArgument = parser.parseArguments("\\begin{" + envName + "}", env), _args = _parser$parseArgument.args, optArgs = _parser$parseArgument.optArgs; + var context = { + mode: parser.mode, + envName, + parser + }; + var result = env.handler(context, _args, optArgs); + parser.expect("\\end", false); + var endNameToken = parser.nextToken; + var end2 = assertNodeType(parser.parseFunction(), "environment"); + if (end2.name !== envName) { + throw new src_ParseError("Mismatch: \\begin{" + envName + "} matched by \\end{" + end2.name + "}", endNameToken); + } + return result; + } + return { + type: "environment", + mode: parser.mode, + name: envName, + nameGroup + }; + } + }); + var mclass_makeSpan = buildCommon.makeSpan; + function mclass_htmlBuilder(group, options) { + var elements = buildHTML_buildExpression(group.body, options, true); + return mclass_makeSpan([group.mclass], elements, options); + } + function mclass_mathmlBuilder(group, options) { + var node; + var inner = buildMathML_buildExpression(group.body, options); + if (group.mclass === "minner") { + return mathMLTree.newDocumentFragment(inner); + } else if (group.mclass === "mord") { + if (group.isCharacterBox) { + node = inner[0]; + node.type = "mi"; + } else { + node = new mathMLTree.MathNode("mi", inner); + } + } else { + if (group.isCharacterBox) { + node = inner[0]; + node.type = "mo"; + } else { + node = new mathMLTree.MathNode("mo", inner); + } + if (group.mclass === "mbin") { + node.attributes.lspace = "0.22em"; + node.attributes.rspace = "0.22em"; + } else if (group.mclass === "mpunct") { + node.attributes.lspace = "0em"; + node.attributes.rspace = "0.17em"; + } else if (group.mclass === "mopen" || group.mclass === "mclose") { + node.attributes.lspace = "0em"; + node.attributes.rspace = "0em"; + } + } + return node; + } + defineFunction({ + type: "mclass", + names: ["\\mathord", "\\mathbin", "\\mathrel", "\\mathopen", "\\mathclose", "\\mathpunct", "\\mathinner"], + props: { + numArgs: 1 + }, + handler: function handler(_ref, args) { + var parser = _ref.parser, funcName = _ref.funcName; + var body = args[0]; + return { + type: "mclass", + mode: parser.mode, + mclass: "m" + funcName.substr(5), + body: ordargument(body), + isCharacterBox: utils.isCharacterBox(body) + }; + }, + htmlBuilder: mclass_htmlBuilder, + mathmlBuilder: mclass_mathmlBuilder + }); + var binrelClass = function binrelClass2(arg) { + var atom = arg.type === "ordgroup" && arg.body.length ? arg.body[0] : arg; + if (atom.type === "atom" && (atom.family === "bin" || atom.family === "rel")) { + return "m" + atom.family; + } else { + return "mord"; + } + }; + defineFunction({ + type: "mclass", + names: ["\\@binrel"], + props: { + numArgs: 2 + }, + handler: function handler(_ref2, args) { + var parser = _ref2.parser; + return { + type: "mclass", + mode: parser.mode, + mclass: binrelClass(args[0]), + body: [args[1]], + isCharacterBox: utils.isCharacterBox(args[1]) + }; + } + }); + defineFunction({ + type: "mclass", + names: ["\\stackrel", "\\overset", "\\underset"], + props: { + numArgs: 2 + }, + handler: function handler(_ref3, args) { + var parser = _ref3.parser, funcName = _ref3.funcName; + var baseArg = args[1]; + var shiftedArg = args[0]; + var mclass; + if (funcName !== "\\stackrel") { + mclass = binrelClass(baseArg); + } else { + mclass = "mrel"; + } + var baseOp = { + type: "op", + mode: baseArg.mode, + limits: true, + alwaysHandleSupSub: true, + parentIsSupSub: false, + symbol: false, + suppressBaseShift: funcName !== "\\stackrel", + body: ordargument(baseArg) + }; + var supsub = { + type: "supsub", + mode: shiftedArg.mode, + base: baseOp, + sup: funcName === "\\underset" ? null : shiftedArg, + sub: funcName === "\\underset" ? shiftedArg : null + }; + return { + type: "mclass", + mode: parser.mode, + mclass, + body: [supsub], + isCharacterBox: utils.isCharacterBox(supsub) + }; + }, + htmlBuilder: mclass_htmlBuilder, + mathmlBuilder: mclass_mathmlBuilder + }); + var font_htmlBuilder = function htmlBuilder(group, options) { + var font = group.font; + var newOptions = options.withFont(font); + return buildHTML_buildGroup(group.body, newOptions); + }; + var font_mathmlBuilder = function mathmlBuilder(group, options) { + var font = group.font; + var newOptions = options.withFont(font); + return buildMathML_buildGroup(group.body, newOptions); + }; + var fontAliases = { + "\\Bbb": "\\mathbb", + "\\bold": "\\mathbf", + "\\frak": "\\mathfrak", + "\\bm": "\\boldsymbol" + }; + defineFunction({ + type: "font", + names: [ + "\\mathrm", + "\\mathit", + "\\mathbf", + "\\mathnormal", + "\\mathbb", + "\\mathcal", + "\\mathfrak", + "\\mathscr", + "\\mathsf", + "\\mathtt", + "\\Bbb", + "\\bold", + "\\frak" + ], + props: { + numArgs: 1, + greediness: 2 + }, + handler: function handler(_ref, args) { + var parser = _ref.parser, funcName = _ref.funcName; + var body = args[0]; + var func = funcName; + if (func in fontAliases) { + func = fontAliases[func]; + } + return { + type: "font", + mode: parser.mode, + font: func.slice(1), + body + }; + }, + htmlBuilder: font_htmlBuilder, + mathmlBuilder: font_mathmlBuilder + }); + defineFunction({ + type: "mclass", + names: ["\\boldsymbol", "\\bm"], + props: { + numArgs: 1, + greediness: 2 + }, + handler: function handler(_ref2, args) { + var parser = _ref2.parser; + var body = args[0]; + var isCharacterBox = utils.isCharacterBox(body); + return { + type: "mclass", + mode: parser.mode, + mclass: binrelClass(body), + body: [{ + type: "font", + mode: parser.mode, + font: "boldsymbol", + body + }], + isCharacterBox + }; + } + }); + defineFunction({ + type: "font", + names: ["\\rm", "\\sf", "\\tt", "\\bf", "\\it", "\\cal"], + props: { + numArgs: 0, + allowedInText: true + }, + handler: function handler(_ref3, args) { + var parser = _ref3.parser, funcName = _ref3.funcName, breakOnTokenText = _ref3.breakOnTokenText; + var mode = parser.mode; + var body = parser.parseExpression(true, breakOnTokenText); + var style = "math" + funcName.slice(1); + return { + type: "font", + mode, + font: style, + body: { + type: "ordgroup", + mode: parser.mode, + body + } + }; + }, + htmlBuilder: font_htmlBuilder, + mathmlBuilder: font_mathmlBuilder + }); + var genfrac_adjustStyle = function adjustStyle(size, originalStyle) { + var style = originalStyle; + if (size === "display") { + style = style.id >= src_Style.SCRIPT.id ? style.text() : src_Style.DISPLAY; + } else if (size === "text" && style.size === src_Style.DISPLAY.size) { + style = src_Style.TEXT; + } else if (size === "script") { + style = src_Style.SCRIPT; + } else if (size === "scriptscript") { + style = src_Style.SCRIPTSCRIPT; + } + return style; + }; + var genfrac_htmlBuilder = function htmlBuilder(group, options) { + var style = genfrac_adjustStyle(group.size, options.style); + var nstyle = style.fracNum(); + var dstyle = style.fracDen(); + var newOptions; + newOptions = options.havingStyle(nstyle); + var numerm = buildHTML_buildGroup(group.numer, newOptions, options); + if (group.continued) { + var hStrut = 8.5 / options.fontMetrics().ptPerEm; + var dStrut = 3.5 / options.fontMetrics().ptPerEm; + numerm.height = numerm.height < hStrut ? hStrut : numerm.height; + numerm.depth = numerm.depth < dStrut ? dStrut : numerm.depth; + } + newOptions = options.havingStyle(dstyle); + var denomm = buildHTML_buildGroup(group.denom, newOptions, options); + var rule; + var ruleWidth; + var ruleSpacing; + if (group.hasBarLine) { + if (group.barSize) { + ruleWidth = units_calculateSize(group.barSize, options); + rule = buildCommon.makeLineSpan("frac-line", options, ruleWidth); + } else { + rule = buildCommon.makeLineSpan("frac-line", options); + } + ruleWidth = rule.height; + ruleSpacing = rule.height; + } else { + rule = null; + ruleWidth = 0; + ruleSpacing = options.fontMetrics().defaultRuleThickness; + } + var numShift; + var clearance; + var denomShift; + if (style.size === src_Style.DISPLAY.size || group.size === "display") { + numShift = options.fontMetrics().num1; + if (ruleWidth > 0) { + clearance = 3 * ruleSpacing; + } else { + clearance = 7 * ruleSpacing; + } + denomShift = options.fontMetrics().denom1; + } else { + if (ruleWidth > 0) { + numShift = options.fontMetrics().num2; + clearance = ruleSpacing; + } else { + numShift = options.fontMetrics().num3; + clearance = 3 * ruleSpacing; + } + denomShift = options.fontMetrics().denom2; + } + var frac; + if (!rule) { + var candidateClearance = numShift - numerm.depth - (denomm.height - denomShift); + if (candidateClearance < clearance) { + numShift += 0.5 * (clearance - candidateClearance); + denomShift += 0.5 * (clearance - candidateClearance); + } + frac = buildCommon.makeVList({ + positionType: "individualShift", + children: [{ + type: "elem", + elem: denomm, + shift: denomShift + }, { + type: "elem", + elem: numerm, + shift: -numShift + }] + }, options); + } else { + var axisHeight = options.fontMetrics().axisHeight; + if (numShift - numerm.depth - (axisHeight + 0.5 * ruleWidth) < clearance) { + numShift += clearance - (numShift - numerm.depth - (axisHeight + 0.5 * ruleWidth)); + } + if (axisHeight - 0.5 * ruleWidth - (denomm.height - denomShift) < clearance) { + denomShift += clearance - (axisHeight - 0.5 * ruleWidth - (denomm.height - denomShift)); + } + var midShift = -(axisHeight - 0.5 * ruleWidth); + frac = buildCommon.makeVList({ + positionType: "individualShift", + children: [{ + type: "elem", + elem: denomm, + shift: denomShift + }, { + type: "elem", + elem: rule, + shift: midShift + }, { + type: "elem", + elem: numerm, + shift: -numShift + }] + }, options); + } + newOptions = options.havingStyle(style); + frac.height *= newOptions.sizeMultiplier / options.sizeMultiplier; + frac.depth *= newOptions.sizeMultiplier / options.sizeMultiplier; + var delimSize; + if (style.size === src_Style.DISPLAY.size) { + delimSize = options.fontMetrics().delim1; + } else { + delimSize = options.fontMetrics().delim2; + } + var leftDelim; + var rightDelim; + if (group.leftDelim == null) { + leftDelim = makeNullDelimiter(options, ["mopen"]); + } else { + leftDelim = delimiter2.customSizedDelim(group.leftDelim, delimSize, true, options.havingStyle(style), group.mode, ["mopen"]); + } + if (group.continued) { + rightDelim = buildCommon.makeSpan([]); + } else if (group.rightDelim == null) { + rightDelim = makeNullDelimiter(options, ["mclose"]); + } else { + rightDelim = delimiter2.customSizedDelim(group.rightDelim, delimSize, true, options.havingStyle(style), group.mode, ["mclose"]); + } + return buildCommon.makeSpan(["mord"].concat(newOptions.sizingClasses(options)), [leftDelim, buildCommon.makeSpan(["mfrac"], [frac]), rightDelim], options); + }; + var genfrac_mathmlBuilder = function mathmlBuilder(group, options) { + var node = new mathMLTree.MathNode("mfrac", [buildMathML_buildGroup(group.numer, options), buildMathML_buildGroup(group.denom, options)]); + if (!group.hasBarLine) { + node.setAttribute("linethickness", "0px"); + } else if (group.barSize) { + var ruleWidth = units_calculateSize(group.barSize, options); + node.setAttribute("linethickness", ruleWidth + "em"); + } + var style = genfrac_adjustStyle(group.size, options.style); + if (style.size !== options.style.size) { + node = new mathMLTree.MathNode("mstyle", [node]); + var isDisplay = style.size === src_Style.DISPLAY.size ? "true" : "false"; + node.setAttribute("displaystyle", isDisplay); + node.setAttribute("scriptlevel", "0"); + } + if (group.leftDelim != null || group.rightDelim != null) { + var withDelims = []; + if (group.leftDelim != null) { + var leftOp = new mathMLTree.MathNode("mo", [new mathMLTree.TextNode(group.leftDelim.replace("\\", ""))]); + leftOp.setAttribute("fence", "true"); + withDelims.push(leftOp); + } + withDelims.push(node); + if (group.rightDelim != null) { + var rightOp = new mathMLTree.MathNode("mo", [new mathMLTree.TextNode(group.rightDelim.replace("\\", ""))]); + rightOp.setAttribute("fence", "true"); + withDelims.push(rightOp); + } + return buildMathML_makeRow(withDelims); + } + return node; + }; + defineFunction({ + type: "genfrac", + names: [ + "\\cfrac", + "\\dfrac", + "\\frac", + "\\tfrac", + "\\dbinom", + "\\binom", + "\\tbinom", + "\\\\atopfrac", + "\\\\bracefrac", + "\\\\brackfrac" + ], + props: { + numArgs: 2, + greediness: 2 + }, + handler: function handler(_ref, args) { + var parser = _ref.parser, funcName = _ref.funcName; + var numer = args[0]; + var denom = args[1]; + var hasBarLine; + var leftDelim = null; + var rightDelim = null; + var size = "auto"; + switch (funcName) { + case "\\cfrac": + case "\\dfrac": + case "\\frac": + case "\\tfrac": + hasBarLine = true; + break; + case "\\\\atopfrac": + hasBarLine = false; + break; + case "\\dbinom": + case "\\binom": + case "\\tbinom": + hasBarLine = false; + leftDelim = "("; + rightDelim = ")"; + break; + case "\\\\bracefrac": + hasBarLine = false; + leftDelim = "\\{"; + rightDelim = "\\}"; + break; + case "\\\\brackfrac": + hasBarLine = false; + leftDelim = "["; + rightDelim = "]"; + break; + default: + throw new Error("Unrecognized genfrac command"); + } + switch (funcName) { + case "\\cfrac": + case "\\dfrac": + case "\\dbinom": + size = "display"; + break; + case "\\tfrac": + case "\\tbinom": + size = "text"; + break; + } + return { + type: "genfrac", + mode: parser.mode, + continued: funcName === "\\cfrac", + numer, + denom, + hasBarLine, + leftDelim, + rightDelim, + size, + barSize: null + }; + }, + htmlBuilder: genfrac_htmlBuilder, + mathmlBuilder: genfrac_mathmlBuilder + }); + defineFunction({ + type: "infix", + names: ["\\over", "\\choose", "\\atop", "\\brace", "\\brack"], + props: { + numArgs: 0, + infix: true + }, + handler: function handler(_ref2) { + var parser = _ref2.parser, funcName = _ref2.funcName, token = _ref2.token; + var replaceWith2; + switch (funcName) { + case "\\over": + replaceWith2 = "\\frac"; + break; + case "\\choose": + replaceWith2 = "\\binom"; + break; + case "\\atop": + replaceWith2 = "\\\\atopfrac"; + break; + case "\\brace": + replaceWith2 = "\\\\bracefrac"; + break; + case "\\brack": + replaceWith2 = "\\\\brackfrac"; + break; + default: + throw new Error("Unrecognized infix genfrac command"); + } + return { + type: "infix", + mode: parser.mode, + replaceWith: replaceWith2, + token + }; + } + }); + var stylArray = ["display", "text", "script", "scriptscript"]; + var delimFromValue = function delimFromValue2(delimString) { + var delim = null; + if (delimString.length > 0) { + delim = delimString; + delim = delim === "." ? null : delim; + } + return delim; + }; + defineFunction({ + type: "genfrac", + names: ["\\genfrac"], + props: { + numArgs: 6, + greediness: 6, + argTypes: ["math", "math", "size", "text", "math", "math"] + }, + handler: function handler(_ref3, args) { + var parser = _ref3.parser; + var numer = args[4]; + var denom = args[5]; + var leftDelim = args[0].type === "atom" && args[0].family === "open" ? delimFromValue(args[0].text) : null; + var rightDelim = args[1].type === "atom" && args[1].family === "close" ? delimFromValue(args[1].text) : null; + var barNode = assertNodeType(args[2], "size"); + var hasBarLine; + var barSize = null; + if (barNode.isBlank) { + hasBarLine = true; + } else { + barSize = barNode.value; + hasBarLine = barSize.number > 0; + } + var size = "auto"; + var styl = args[3]; + if (styl.type === "ordgroup") { + if (styl.body.length > 0) { + var textOrd = assertNodeType(styl.body[0], "textord"); + size = stylArray[Number(textOrd.text)]; + } + } else { + styl = assertNodeType(styl, "textord"); + size = stylArray[Number(styl.text)]; + } + return { + type: "genfrac", + mode: parser.mode, + numer, + denom, + continued: false, + hasBarLine, + barSize, + leftDelim, + rightDelim, + size + }; + }, + htmlBuilder: genfrac_htmlBuilder, + mathmlBuilder: genfrac_mathmlBuilder + }); + defineFunction({ + type: "infix", + names: ["\\above"], + props: { + numArgs: 1, + argTypes: ["size"], + infix: true + }, + handler: function handler(_ref4, args) { + var parser = _ref4.parser, funcName = _ref4.funcName, token = _ref4.token; + return { + type: "infix", + mode: parser.mode, + replaceWith: "\\\\abovefrac", + size: assertNodeType(args[0], "size").value, + token + }; + } + }); + defineFunction({ + type: "genfrac", + names: ["\\\\abovefrac"], + props: { + numArgs: 3, + argTypes: ["math", "size", "math"] + }, + handler: function handler(_ref5, args) { + var parser = _ref5.parser, funcName = _ref5.funcName; + var numer = args[0]; + var barSize = assert(assertNodeType(args[1], "infix").size); + var denom = args[2]; + var hasBarLine = barSize.number > 0; + return { + type: "genfrac", + mode: parser.mode, + numer, + denom, + continued: false, + hasBarLine, + barSize, + leftDelim: null, + rightDelim: null, + size: "auto" + }; + }, + htmlBuilder: genfrac_htmlBuilder, + mathmlBuilder: genfrac_mathmlBuilder + }); + var horizBrace_htmlBuilder = function htmlBuilder(grp, options) { + var style = options.style; + var supSubGroup; + var group; + if (grp.type === "supsub") { + supSubGroup = grp.sup ? buildHTML_buildGroup(grp.sup, options.havingStyle(style.sup()), options) : buildHTML_buildGroup(grp.sub, options.havingStyle(style.sub()), options); + group = assertNodeType(grp.base, "horizBrace"); + } else { + group = assertNodeType(grp, "horizBrace"); + } + var body = buildHTML_buildGroup(group.base, options.havingBaseStyle(src_Style.DISPLAY)); + var braceBody = stretchy.svgSpan(group, options); + var vlist; + if (group.isOver) { + vlist = buildCommon.makeVList({ + positionType: "firstBaseline", + children: [{ + type: "elem", + elem: body + }, { + type: "kern", + size: 0.1 + }, { + type: "elem", + elem: braceBody + }] + }, options); + vlist.children[0].children[0].children[1].classes.push("svg-align"); + } else { + vlist = buildCommon.makeVList({ + positionType: "bottom", + positionData: body.depth + 0.1 + braceBody.height, + children: [{ + type: "elem", + elem: braceBody + }, { + type: "kern", + size: 0.1 + }, { + type: "elem", + elem: body + }] + }, options); + vlist.children[0].children[0].children[0].classes.push("svg-align"); + } + if (supSubGroup) { + var vSpan = buildCommon.makeSpan(["mord", group.isOver ? "mover" : "munder"], [vlist], options); + if (group.isOver) { + vlist = buildCommon.makeVList({ + positionType: "firstBaseline", + children: [{ + type: "elem", + elem: vSpan + }, { + type: "kern", + size: 0.2 + }, { + type: "elem", + elem: supSubGroup + }] + }, options); + } else { + vlist = buildCommon.makeVList({ + positionType: "bottom", + positionData: vSpan.depth + 0.2 + supSubGroup.height + supSubGroup.depth, + children: [{ + type: "elem", + elem: supSubGroup + }, { + type: "kern", + size: 0.2 + }, { + type: "elem", + elem: vSpan + }] + }, options); + } + } + return buildCommon.makeSpan(["mord", group.isOver ? "mover" : "munder"], [vlist], options); + }; + var horizBrace_mathmlBuilder = function mathmlBuilder(group, options) { + var accentNode = stretchy.mathMLnode(group.label); + return new mathMLTree.MathNode(group.isOver ? "mover" : "munder", [buildMathML_buildGroup(group.base, options), accentNode]); + }; + defineFunction({ + type: "horizBrace", + names: ["\\overbrace", "\\underbrace"], + props: { + numArgs: 1 + }, + handler: function handler(_ref, args) { + var parser = _ref.parser, funcName = _ref.funcName; + return { + type: "horizBrace", + mode: parser.mode, + label: funcName, + isOver: /^\\over/.test(funcName), + base: args[0] + }; + }, + htmlBuilder: horizBrace_htmlBuilder, + mathmlBuilder: horizBrace_mathmlBuilder + }); + defineFunction({ + type: "href", + names: ["\\href"], + props: { + numArgs: 2, + argTypes: ["url", "original"], + allowedInText: true + }, + handler: function handler(_ref, args) { + var parser = _ref.parser; + var body = args[1]; + var href = assertNodeType(args[0], "url").url; + if (!parser.settings.isTrusted({ + command: "\\href", + url: href + })) { + return parser.formatUnsupportedCmd("\\href"); + } + return { + type: "href", + mode: parser.mode, + href, + body: ordargument(body) + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var elements = buildHTML_buildExpression(group.body, options, false); + return buildCommon.makeAnchor(group.href, [], elements, options); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var math = buildExpressionRow(group.body, options); + if (!(math instanceof mathMLTree_MathNode)) { + math = new mathMLTree_MathNode("mrow", [math]); + } + math.setAttribute("href", group.href); + return math; + } + }); + defineFunction({ + type: "href", + names: ["\\url"], + props: { + numArgs: 1, + argTypes: ["url"], + allowedInText: true + }, + handler: function handler(_ref2, args) { + var parser = _ref2.parser; + var href = assertNodeType(args[0], "url").url; + if (!parser.settings.isTrusted({ + command: "\\url", + url: href + })) { + return parser.formatUnsupportedCmd("\\url"); + } + var chars = []; + for (var i = 0; i < href.length; i++) { + var c = href[i]; + if (c === "~") { + c = "\\textasciitilde"; + } + chars.push({ + type: "textord", + mode: "text", + text: c + }); + } + var body = { + type: "text", + mode: parser.mode, + font: "\\texttt", + body: chars + }; + return { + type: "href", + mode: parser.mode, + href, + body: ordargument(body) + }; + } + }); + defineFunction({ + type: "html", + names: ["\\htmlClass", "\\htmlId", "\\htmlStyle", "\\htmlData"], + props: { + numArgs: 2, + argTypes: ["raw", "original"], + allowedInText: true + }, + handler: function handler(_ref, args) { + var parser = _ref.parser, funcName = _ref.funcName, token = _ref.token; + var value = assertNodeType(args[0], "raw").string; + var body = args[1]; + if (parser.settings.strict) { + parser.settings.reportNonstrict("htmlExtension", "HTML extension is disabled on strict mode"); + } + var trustContext; + var attributes2 = {}; + switch (funcName) { + case "\\htmlClass": + attributes2.class = value; + trustContext = { + command: "\\htmlClass", + class: value + }; + break; + case "\\htmlId": + attributes2.id = value; + trustContext = { + command: "\\htmlId", + id: value + }; + break; + case "\\htmlStyle": + attributes2.style = value; + trustContext = { + command: "\\htmlStyle", + style: value + }; + break; + case "\\htmlData": { + var data2 = value.split(","); + for (var i = 0; i < data2.length; i++) { + var keyVal = data2[i].split("="); + if (keyVal.length !== 2) { + throw new src_ParseError("Error parsing key-value for \\htmlData"); + } + attributes2["data-" + keyVal[0].trim()] = keyVal[1].trim(); + } + trustContext = { + command: "\\htmlData", + attributes: attributes2 + }; + break; + } + default: + throw new Error("Unrecognized html command"); + } + if (!parser.settings.isTrusted(trustContext)) { + return parser.formatUnsupportedCmd(funcName); + } + return { + type: "html", + mode: parser.mode, + attributes: attributes2, + body: ordargument(body) + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var elements = buildHTML_buildExpression(group.body, options, false); + var classes = ["enclosing"]; + if (group.attributes.class) { + classes.push.apply(classes, group.attributes.class.trim().split(/\s+/)); + } + var span = buildCommon.makeSpan(classes, elements, options); + for (var attr2 in group.attributes) { + if (attr2 !== "class" && group.attributes.hasOwnProperty(attr2)) { + span.setAttribute(attr2, group.attributes[attr2]); + } + } + return span; + }, + mathmlBuilder: function mathmlBuilder(group, options) { + return buildExpressionRow(group.body, options); + } + }); + defineFunction({ + type: "htmlmathml", + names: ["\\html@mathml"], + props: { + numArgs: 2, + allowedInText: true + }, + handler: function handler(_ref, args) { + var parser = _ref.parser; + return { + type: "htmlmathml", + mode: parser.mode, + html: ordargument(args[0]), + mathml: ordargument(args[1]) + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var elements = buildHTML_buildExpression(group.html, options, false); + return buildCommon.makeFragment(elements); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + return buildExpressionRow(group.mathml, options); + } + }); + var includegraphics_sizeData = function sizeData(str) { + if (/^[-+]? *(\d+(\.\d*)?|\.\d+)$/.test(str)) { + return { + number: +str, + unit: "bp" + }; + } else { + var match2 = /([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(str); + if (!match2) { + throw new src_ParseError("Invalid size: '" + str + "' in \\includegraphics"); + } + var data2 = { + number: +(match2[1] + match2[2]), + unit: match2[3] + }; + if (!validUnit(data2)) { + throw new src_ParseError("Invalid unit: '" + data2.unit + "' in \\includegraphics."); + } + return data2; + } + }; + defineFunction({ + type: "includegraphics", + names: ["\\includegraphics"], + props: { + numArgs: 1, + numOptionalArgs: 1, + argTypes: ["raw", "url"], + allowedInText: false + }, + handler: function handler(_ref, args, optArgs) { + var parser = _ref.parser; + var width = { + number: 0, + unit: "em" + }; + var height = { + number: 0.9, + unit: "em" + }; + var totalheight = { + number: 0, + unit: "em" + }; + var alt = ""; + if (optArgs[0]) { + var attributeStr = assertNodeType(optArgs[0], "raw").string; + var attributes2 = attributeStr.split(","); + for (var i = 0; i < attributes2.length; i++) { + var keyVal = attributes2[i].split("="); + if (keyVal.length === 2) { + var str = keyVal[1].trim(); + switch (keyVal[0].trim()) { + case "alt": + alt = str; + break; + case "width": + width = includegraphics_sizeData(str); + break; + case "height": + height = includegraphics_sizeData(str); + break; + case "totalheight": + totalheight = includegraphics_sizeData(str); + break; + default: + throw new src_ParseError("Invalid key: '" + keyVal[0] + "' in \\includegraphics."); + } + } + } + } + var src = assertNodeType(args[0], "url").url; + if (alt === "") { + alt = src; + alt = alt.replace(/^.*[\\/]/, ""); + alt = alt.substring(0, alt.lastIndexOf(".")); + } + if (!parser.settings.isTrusted({ + command: "\\includegraphics", + url: src + })) { + return parser.formatUnsupportedCmd("\\includegraphics"); + } + return { + type: "includegraphics", + mode: parser.mode, + alt, + width, + height, + totalheight, + src + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var height = units_calculateSize(group.height, options); + var depth = 0; + if (group.totalheight.number > 0) { + depth = units_calculateSize(group.totalheight, options) - height; + depth = Number(depth.toFixed(2)); + } + var width = 0; + if (group.width.number > 0) { + width = units_calculateSize(group.width, options); + } + var style = { + height: height + depth + "em" + }; + if (width > 0) { + style.width = width + "em"; + } + if (depth > 0) { + style.verticalAlign = -depth + "em"; + } + var node = new domTree_Img(group.src, group.alt, style); + node.height = height; + node.depth = depth; + return node; + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var node = new mathMLTree.MathNode("mglyph", []); + node.setAttribute("alt", group.alt); + var height = units_calculateSize(group.height, options); + var depth = 0; + if (group.totalheight.number > 0) { + depth = units_calculateSize(group.totalheight, options) - height; + depth = depth.toFixed(2); + node.setAttribute("valign", "-" + depth + "em"); + } + node.setAttribute("height", height + depth + "em"); + if (group.width.number > 0) { + var width = units_calculateSize(group.width, options); + node.setAttribute("width", width + "em"); + } + node.setAttribute("src", group.src); + return node; + } + }); + defineFunction({ + type: "kern", + names: ["\\kern", "\\mkern", "\\hskip", "\\mskip"], + props: { + numArgs: 1, + argTypes: ["size"], + allowedInText: true + }, + handler: function handler(_ref, args) { + var parser = _ref.parser, funcName = _ref.funcName; + var size = assertNodeType(args[0], "size"); + if (parser.settings.strict) { + var mathFunction = funcName[1] === "m"; + var muUnit = size.value.unit === "mu"; + if (mathFunction) { + if (!muUnit) { + parser.settings.reportNonstrict("mathVsTextUnits", "LaTeX's " + funcName + " supports only mu units, " + ("not " + size.value.unit + " units")); + } + if (parser.mode !== "math") { + parser.settings.reportNonstrict("mathVsTextUnits", "LaTeX's " + funcName + " works only in math mode"); + } + } else { + if (muUnit) { + parser.settings.reportNonstrict("mathVsTextUnits", "LaTeX's " + funcName + " doesn't support mu units"); + } + } + } + return { + type: "kern", + mode: parser.mode, + dimension: size.value + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + return buildCommon.makeGlue(group.dimension, options); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var dimension = units_calculateSize(group.dimension, options); + return new mathMLTree.SpaceNode(dimension); + } + }); + defineFunction({ + type: "lap", + names: ["\\mathllap", "\\mathrlap", "\\mathclap"], + props: { + numArgs: 1, + allowedInText: true + }, + handler: function handler(_ref, args) { + var parser = _ref.parser, funcName = _ref.funcName; + var body = args[0]; + return { + type: "lap", + mode: parser.mode, + alignment: funcName.slice(5), + body + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var inner; + if (group.alignment === "clap") { + inner = buildCommon.makeSpan([], [buildHTML_buildGroup(group.body, options)]); + inner = buildCommon.makeSpan(["inner"], [inner], options); + } else { + inner = buildCommon.makeSpan(["inner"], [buildHTML_buildGroup(group.body, options)]); + } + var fix = buildCommon.makeSpan(["fix"], []); + var node = buildCommon.makeSpan([group.alignment], [inner, fix], options); + var strut = buildCommon.makeSpan(["strut"]); + strut.style.height = node.height + node.depth + "em"; + strut.style.verticalAlign = -node.depth + "em"; + node.children.unshift(strut); + node = buildCommon.makeSpan(["thinbox"], [node], options); + return buildCommon.makeSpan(["mord", "vbox"], [node], options); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var node = new mathMLTree.MathNode("mpadded", [buildMathML_buildGroup(group.body, options)]); + if (group.alignment !== "rlap") { + var offset = group.alignment === "llap" ? "-1" : "-0.5"; + node.setAttribute("lspace", offset + "width"); + } + node.setAttribute("width", "0px"); + return node; + } + }); + defineFunction({ + type: "styling", + names: ["\\(", "$"], + props: { + numArgs: 0, + allowedInText: true, + allowedInMath: false + }, + handler: function handler(_ref, args) { + var funcName = _ref.funcName, parser = _ref.parser; + var outerMode = parser.mode; + parser.switchMode("math"); + var close = funcName === "\\(" ? "\\)" : "$"; + var body = parser.parseExpression(false, close); + parser.expect(close); + parser.switchMode(outerMode); + return { + type: "styling", + mode: parser.mode, + style: "text", + body + }; + } + }); + defineFunction({ + type: "text", + names: ["\\)", "\\]"], + props: { + numArgs: 0, + allowedInText: true, + allowedInMath: false + }, + handler: function handler(context, args) { + throw new src_ParseError("Mismatched " + context.funcName); + } + }); + var mathchoice_chooseMathStyle = function chooseMathStyle(group, options) { + switch (options.style.size) { + case src_Style.DISPLAY.size: + return group.display; + case src_Style.TEXT.size: + return group.text; + case src_Style.SCRIPT.size: + return group.script; + case src_Style.SCRIPTSCRIPT.size: + return group.scriptscript; + default: + return group.text; + } + }; + defineFunction({ + type: "mathchoice", + names: ["\\mathchoice"], + props: { + numArgs: 4 + }, + handler: function handler(_ref, args) { + var parser = _ref.parser; + return { + type: "mathchoice", + mode: parser.mode, + display: ordargument(args[0]), + text: ordargument(args[1]), + script: ordargument(args[2]), + scriptscript: ordargument(args[3]) + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var body = mathchoice_chooseMathStyle(group, options); + var elements = buildHTML_buildExpression(body, options, false); + return buildCommon.makeFragment(elements); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var body = mathchoice_chooseMathStyle(group, options); + return buildExpressionRow(body, options); + } + }); + var assembleSupSub_assembleSupSub = function assembleSupSub(base2, supGroup, subGroup, options, style, slant, baseShift) { + base2 = buildCommon.makeSpan([], [base2]); + var sub; + var sup; + if (supGroup) { + var elem = buildHTML_buildGroup(supGroup, options.havingStyle(style.sup()), options); + sup = { + elem, + kern: Math.max(options.fontMetrics().bigOpSpacing1, options.fontMetrics().bigOpSpacing3 - elem.depth) + }; + } + if (subGroup) { + var _elem = buildHTML_buildGroup(subGroup, options.havingStyle(style.sub()), options); + sub = { + elem: _elem, + kern: Math.max(options.fontMetrics().bigOpSpacing2, options.fontMetrics().bigOpSpacing4 - _elem.height) + }; + } + var finalGroup; + if (sup && sub) { + var bottom = options.fontMetrics().bigOpSpacing5 + sub.elem.height + sub.elem.depth + sub.kern + base2.depth + baseShift; + finalGroup = buildCommon.makeVList({ + positionType: "bottom", + positionData: bottom, + children: [{ + type: "kern", + size: options.fontMetrics().bigOpSpacing5 + }, { + type: "elem", + elem: sub.elem, + marginLeft: -slant + "em" + }, { + type: "kern", + size: sub.kern + }, { + type: "elem", + elem: base2 + }, { + type: "kern", + size: sup.kern + }, { + type: "elem", + elem: sup.elem, + marginLeft: slant + "em" + }, { + type: "kern", + size: options.fontMetrics().bigOpSpacing5 + }] + }, options); + } else if (sub) { + var top = base2.height - baseShift; + finalGroup = buildCommon.makeVList({ + positionType: "top", + positionData: top, + children: [{ + type: "kern", + size: options.fontMetrics().bigOpSpacing5 + }, { + type: "elem", + elem: sub.elem, + marginLeft: -slant + "em" + }, { + type: "kern", + size: sub.kern + }, { + type: "elem", + elem: base2 + }] + }, options); + } else if (sup) { + var _bottom = base2.depth + baseShift; + finalGroup = buildCommon.makeVList({ + positionType: "bottom", + positionData: _bottom, + children: [{ + type: "elem", + elem: base2 + }, { + type: "kern", + size: sup.kern + }, { + type: "elem", + elem: sup.elem, + marginLeft: slant + "em" + }, { + type: "kern", + size: options.fontMetrics().bigOpSpacing5 + }] + }, options); + } else { + return base2; + } + return buildCommon.makeSpan(["mop", "op-limits"], [finalGroup], options); + }; + var noSuccessor = ["\\smallint"]; + var op_htmlBuilder = function htmlBuilder(grp, options) { + var supGroup; + var subGroup; + var hasLimits = false; + var group; + if (grp.type === "supsub") { + supGroup = grp.sup; + subGroup = grp.sub; + group = assertNodeType(grp.base, "op"); + hasLimits = true; + } else { + group = assertNodeType(grp, "op"); + } + var style = options.style; + var large = false; + if (style.size === src_Style.DISPLAY.size && group.symbol && !utils.contains(noSuccessor, group.name)) { + large = true; + } + var base2; + if (group.symbol) { + var fontName = large ? "Size2-Regular" : "Size1-Regular"; + var stash = ""; + if (group.name === "\\oiint" || group.name === "\\oiiint") { + stash = group.name.substr(1); + group.name = stash === "oiint" ? "\\iint" : "\\iiint"; + } + base2 = buildCommon.makeSymbol(group.name, fontName, "math", options, ["mop", "op-symbol", large ? "large-op" : "small-op"]); + if (stash.length > 0) { + var italic = base2.italic; + var oval = buildCommon.staticSvg(stash + "Size" + (large ? "2" : "1"), options); + base2 = buildCommon.makeVList({ + positionType: "individualShift", + children: [{ + type: "elem", + elem: base2, + shift: 0 + }, { + type: "elem", + elem: oval, + shift: large ? 0.08 : 0 + }] + }, options); + group.name = "\\" + stash; + base2.classes.unshift("mop"); + base2.italic = italic; + } + } else if (group.body) { + var inner = buildHTML_buildExpression(group.body, options, true); + if (inner.length === 1 && inner[0] instanceof domTree_SymbolNode) { + base2 = inner[0]; + base2.classes[0] = "mop"; + } else { + base2 = buildCommon.makeSpan(["mop"], buildCommon.tryCombineChars(inner), options); + } + } else { + var output = []; + for (var i = 1; i < group.name.length; i++) { + output.push(buildCommon.mathsym(group.name[i], group.mode, options)); + } + base2 = buildCommon.makeSpan(["mop"], output, options); + } + var baseShift = 0; + var slant = 0; + if ((base2 instanceof domTree_SymbolNode || group.name === "\\oiint" || group.name === "\\oiiint") && !group.suppressBaseShift) { + baseShift = (base2.height - base2.depth) / 2 - options.fontMetrics().axisHeight; + slant = base2.italic; + } + if (hasLimits) { + return assembleSupSub_assembleSupSub(base2, supGroup, subGroup, options, style, slant, baseShift); + } else { + if (baseShift) { + base2.style.position = "relative"; + base2.style.top = baseShift + "em"; + } + return base2; + } + }; + var op_mathmlBuilder = function mathmlBuilder(group, options) { + var node; + if (group.symbol) { + node = new mathMLTree_MathNode("mo", [buildMathML_makeText(group.name, group.mode)]); + if (utils.contains(noSuccessor, group.name)) { + node.setAttribute("largeop", "false"); + } + } else if (group.body) { + node = new mathMLTree_MathNode("mo", buildMathML_buildExpression(group.body, options)); + } else { + node = new mathMLTree_MathNode("mi", [new mathMLTree_TextNode(group.name.slice(1))]); + var operator = new mathMLTree_MathNode("mo", [buildMathML_makeText("\u2061", "text")]); + if (group.parentIsSupSub) { + node = new mathMLTree_MathNode("mo", [node, operator]); + } else { + node = newDocumentFragment([node, operator]); + } + } + return node; + }; + var singleCharBigOps = { + "\u220F": "\\prod", + "\u2210": "\\coprod", + "\u2211": "\\sum", + "\u22C0": "\\bigwedge", + "\u22C1": "\\bigvee", + "\u22C2": "\\bigcap", + "\u22C3": "\\bigcup", + "\u2A00": "\\bigodot", + "\u2A01": "\\bigoplus", + "\u2A02": "\\bigotimes", + "\u2A04": "\\biguplus", + "\u2A06": "\\bigsqcup" + }; + defineFunction({ + type: "op", + names: ["\\coprod", "\\bigvee", "\\bigwedge", "\\biguplus", "\\bigcap", "\\bigcup", "\\intop", "\\prod", "\\sum", "\\bigotimes", "\\bigoplus", "\\bigodot", "\\bigsqcup", "\\smallint", "\u220F", "\u2210", "\u2211", "\u22C0", "\u22C1", "\u22C2", "\u22C3", "\u2A00", "\u2A01", "\u2A02", "\u2A04", "\u2A06"], + props: { + numArgs: 0 + }, + handler: function handler(_ref, args) { + var parser = _ref.parser, funcName = _ref.funcName; + var fName = funcName; + if (fName.length === 1) { + fName = singleCharBigOps[fName]; + } + return { + type: "op", + mode: parser.mode, + limits: true, + parentIsSupSub: false, + symbol: true, + name: fName + }; + }, + htmlBuilder: op_htmlBuilder, + mathmlBuilder: op_mathmlBuilder + }); + defineFunction({ + type: "op", + names: ["\\mathop"], + props: { + numArgs: 1 + }, + handler: function handler(_ref2, args) { + var parser = _ref2.parser; + var body = args[0]; + return { + type: "op", + mode: parser.mode, + limits: false, + parentIsSupSub: false, + symbol: false, + body: ordargument(body) + }; + }, + htmlBuilder: op_htmlBuilder, + mathmlBuilder: op_mathmlBuilder + }); + var singleCharIntegrals = { + "\u222B": "\\int", + "\u222C": "\\iint", + "\u222D": "\\iiint", + "\u222E": "\\oint", + "\u222F": "\\oiint", + "\u2230": "\\oiiint" + }; + defineFunction({ + type: "op", + names: ["\\arcsin", "\\arccos", "\\arctan", "\\arctg", "\\arcctg", "\\arg", "\\ch", "\\cos", "\\cosec", "\\cosh", "\\cot", "\\cotg", "\\coth", "\\csc", "\\ctg", "\\cth", "\\deg", "\\dim", "\\exp", "\\hom", "\\ker", "\\lg", "\\ln", "\\log", "\\sec", "\\sin", "\\sinh", "\\sh", "\\tan", "\\tanh", "\\tg", "\\th"], + props: { + numArgs: 0 + }, + handler: function handler(_ref3) { + var parser = _ref3.parser, funcName = _ref3.funcName; + return { + type: "op", + mode: parser.mode, + limits: false, + parentIsSupSub: false, + symbol: false, + name: funcName + }; + }, + htmlBuilder: op_htmlBuilder, + mathmlBuilder: op_mathmlBuilder + }); + defineFunction({ + type: "op", + names: ["\\det", "\\gcd", "\\inf", "\\lim", "\\max", "\\min", "\\Pr", "\\sup"], + props: { + numArgs: 0 + }, + handler: function handler(_ref4) { + var parser = _ref4.parser, funcName = _ref4.funcName; + return { + type: "op", + mode: parser.mode, + limits: true, + parentIsSupSub: false, + symbol: false, + name: funcName + }; + }, + htmlBuilder: op_htmlBuilder, + mathmlBuilder: op_mathmlBuilder + }); + defineFunction({ + type: "op", + names: ["\\int", "\\iint", "\\iiint", "\\oint", "\\oiint", "\\oiiint", "\u222B", "\u222C", "\u222D", "\u222E", "\u222F", "\u2230"], + props: { + numArgs: 0 + }, + handler: function handler(_ref5) { + var parser = _ref5.parser, funcName = _ref5.funcName; + var fName = funcName; + if (fName.length === 1) { + fName = singleCharIntegrals[fName]; + } + return { + type: "op", + mode: parser.mode, + limits: false, + parentIsSupSub: false, + symbol: true, + name: fName + }; + }, + htmlBuilder: op_htmlBuilder, + mathmlBuilder: op_mathmlBuilder + }); + var operatorname_htmlBuilder = function htmlBuilder(grp, options) { + var supGroup; + var subGroup; + var hasLimits = false; + var group; + if (grp.type === "supsub") { + supGroup = grp.sup; + subGroup = grp.sub; + group = assertNodeType(grp.base, "operatorname"); + hasLimits = true; + } else { + group = assertNodeType(grp, "operatorname"); + } + var base2; + if (group.body.length > 0) { + var body = group.body.map(function(child2) { + var childText = child2.text; + if (typeof childText === "string") { + return { + type: "textord", + mode: child2.mode, + text: childText + }; + } else { + return child2; + } + }); + var expression = buildHTML_buildExpression(body, options.withFont("mathrm"), true); + for (var i = 0; i < expression.length; i++) { + var child = expression[i]; + if (child instanceof domTree_SymbolNode) { + child.text = child.text.replace(/\u2212/, "-").replace(/\u2217/, "*"); + } + } + base2 = buildCommon.makeSpan(["mop"], expression, options); + } else { + base2 = buildCommon.makeSpan(["mop"], [], options); + } + if (hasLimits) { + return assembleSupSub_assembleSupSub(base2, supGroup, subGroup, options, options.style, 0, 0); + } else { + return base2; + } + }; + var operatorname_mathmlBuilder = function mathmlBuilder(group, options) { + var expression = buildMathML_buildExpression(group.body, options.withFont("mathrm")); + var isAllString = true; + for (var i = 0; i < expression.length; i++) { + var node = expression[i]; + if (node instanceof mathMLTree.SpaceNode) { + } else if (node instanceof mathMLTree.MathNode) { + switch (node.type) { + case "mi": + case "mn": + case "ms": + case "mspace": + case "mtext": + break; + case "mo": { + var child = node.children[0]; + if (node.children.length === 1 && child instanceof mathMLTree.TextNode) { + child.text = child.text.replace(/\u2212/, "-").replace(/\u2217/, "*"); + } else { + isAllString = false; + } + break; + } + default: + isAllString = false; + } + } else { + isAllString = false; + } + } + if (isAllString) { + var word = expression.map(function(node2) { + return node2.toText(); + }).join(""); + expression = [new mathMLTree.TextNode(word)]; + } + var identifier = new mathMLTree.MathNode("mi", expression); + identifier.setAttribute("mathvariant", "normal"); + var operator = new mathMLTree.MathNode("mo", [buildMathML_makeText("\u2061", "text")]); + if (group.parentIsSupSub) { + return new mathMLTree.MathNode("mo", [identifier, operator]); + } else { + return mathMLTree.newDocumentFragment([identifier, operator]); + } + }; + defineFunction({ + type: "operatorname", + names: ["\\operatorname", "\\operatorname*"], + props: { + numArgs: 1 + }, + handler: function handler(_ref, args) { + var parser = _ref.parser, funcName = _ref.funcName; + var body = args[0]; + return { + type: "operatorname", + mode: parser.mode, + body: ordargument(body), + alwaysHandleSupSub: funcName === "\\operatorname*", + limits: false, + parentIsSupSub: false + }; + }, + htmlBuilder: operatorname_htmlBuilder, + mathmlBuilder: operatorname_mathmlBuilder + }); + defineFunctionBuilders({ + type: "ordgroup", + htmlBuilder: function htmlBuilder(group, options) { + if (group.semisimple) { + return buildCommon.makeFragment(buildHTML_buildExpression(group.body, options, false)); + } + return buildCommon.makeSpan(["mord"], buildHTML_buildExpression(group.body, options, true), options); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + return buildExpressionRow(group.body, options, true); + } + }); + defineFunction({ + type: "overline", + names: ["\\overline"], + props: { + numArgs: 1 + }, + handler: function handler(_ref, args) { + var parser = _ref.parser; + var body = args[0]; + return { + type: "overline", + mode: parser.mode, + body + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var innerGroup = buildHTML_buildGroup(group.body, options.havingCrampedStyle()); + var line = buildCommon.makeLineSpan("overline-line", options); + var defaultRuleThickness = options.fontMetrics().defaultRuleThickness; + var vlist = buildCommon.makeVList({ + positionType: "firstBaseline", + children: [{ + type: "elem", + elem: innerGroup + }, { + type: "kern", + size: 3 * defaultRuleThickness + }, { + type: "elem", + elem: line + }, { + type: "kern", + size: defaultRuleThickness + }] + }, options); + return buildCommon.makeSpan(["mord", "overline"], [vlist], options); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var operator = new mathMLTree.MathNode("mo", [new mathMLTree.TextNode("\u203E")]); + operator.setAttribute("stretchy", "true"); + var node = new mathMLTree.MathNode("mover", [buildMathML_buildGroup(group.body, options), operator]); + node.setAttribute("accent", "true"); + return node; + } + }); + defineFunction({ + type: "phantom", + names: ["\\phantom"], + props: { + numArgs: 1, + allowedInText: true + }, + handler: function handler(_ref, args) { + var parser = _ref.parser; + var body = args[0]; + return { + type: "phantom", + mode: parser.mode, + body: ordargument(body) + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var elements = buildHTML_buildExpression(group.body, options.withPhantom(), false); + return buildCommon.makeFragment(elements); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var inner = buildMathML_buildExpression(group.body, options); + return new mathMLTree.MathNode("mphantom", inner); + } + }); + defineFunction({ + type: "hphantom", + names: ["\\hphantom"], + props: { + numArgs: 1, + allowedInText: true + }, + handler: function handler(_ref2, args) { + var parser = _ref2.parser; + var body = args[0]; + return { + type: "hphantom", + mode: parser.mode, + body + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var node = buildCommon.makeSpan([], [buildHTML_buildGroup(group.body, options.withPhantom())]); + node.height = 0; + node.depth = 0; + if (node.children) { + for (var i = 0; i < node.children.length; i++) { + node.children[i].height = 0; + node.children[i].depth = 0; + } + } + node = buildCommon.makeVList({ + positionType: "firstBaseline", + children: [{ + type: "elem", + elem: node + }] + }, options); + return buildCommon.makeSpan(["mord"], [node], options); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var inner = buildMathML_buildExpression(ordargument(group.body), options); + var phantom = new mathMLTree.MathNode("mphantom", inner); + var node = new mathMLTree.MathNode("mpadded", [phantom]); + node.setAttribute("height", "0px"); + node.setAttribute("depth", "0px"); + return node; + } + }); + defineFunction({ + type: "vphantom", + names: ["\\vphantom"], + props: { + numArgs: 1, + allowedInText: true + }, + handler: function handler(_ref3, args) { + var parser = _ref3.parser; + var body = args[0]; + return { + type: "vphantom", + mode: parser.mode, + body + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var inner = buildCommon.makeSpan(["inner"], [buildHTML_buildGroup(group.body, options.withPhantom())]); + var fix = buildCommon.makeSpan(["fix"], []); + return buildCommon.makeSpan(["mord", "rlap"], [inner, fix], options); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var inner = buildMathML_buildExpression(ordargument(group.body), options); + var phantom = new mathMLTree.MathNode("mphantom", inner); + var node = new mathMLTree.MathNode("mpadded", [phantom]); + node.setAttribute("width", "0px"); + return node; + } + }); + defineFunction({ + type: "raisebox", + names: ["\\raisebox"], + props: { + numArgs: 2, + argTypes: ["size", "hbox"], + allowedInText: true + }, + handler: function handler(_ref, args) { + var parser = _ref.parser; + var amount = assertNodeType(args[0], "size").value; + var body = args[1]; + return { + type: "raisebox", + mode: parser.mode, + dy: amount, + body + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var body = buildHTML_buildGroup(group.body, options); + var dy = units_calculateSize(group.dy, options); + return buildCommon.makeVList({ + positionType: "shift", + positionData: -dy, + children: [{ + type: "elem", + elem: body + }] + }, options); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var node = new mathMLTree.MathNode("mpadded", [buildMathML_buildGroup(group.body, options)]); + var dy = group.dy.number + group.dy.unit; + node.setAttribute("voffset", dy); + return node; + } + }); + defineFunction({ + type: "rule", + names: ["\\rule"], + props: { + numArgs: 2, + numOptionalArgs: 1, + argTypes: ["size", "size", "size"] + }, + handler: function handler(_ref, args, optArgs) { + var parser = _ref.parser; + var shift = optArgs[0]; + var width = assertNodeType(args[0], "size"); + var height = assertNodeType(args[1], "size"); + return { + type: "rule", + mode: parser.mode, + shift: shift && assertNodeType(shift, "size").value, + width: width.value, + height: height.value + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var rule = buildCommon.makeSpan(["mord", "rule"], [], options); + var width = units_calculateSize(group.width, options); + var height = units_calculateSize(group.height, options); + var shift = group.shift ? units_calculateSize(group.shift, options) : 0; + rule.style.borderRightWidth = width + "em"; + rule.style.borderTopWidth = height + "em"; + rule.style.bottom = shift + "em"; + rule.width = width; + rule.height = height + shift; + rule.depth = -shift; + rule.maxFontSize = height * 1.125 * options.sizeMultiplier; + return rule; + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var width = units_calculateSize(group.width, options); + var height = units_calculateSize(group.height, options); + var shift = group.shift ? units_calculateSize(group.shift, options) : 0; + var color = options.color && options.getColor() || "black"; + var rule = new mathMLTree.MathNode("mspace"); + rule.setAttribute("mathbackground", color); + rule.setAttribute("width", width + "em"); + rule.setAttribute("height", height + "em"); + var wrapper = new mathMLTree.MathNode("mpadded", [rule]); + if (shift >= 0) { + wrapper.setAttribute("height", "+" + shift + "em"); + } else { + wrapper.setAttribute("height", shift + "em"); + wrapper.setAttribute("depth", "+" + -shift + "em"); + } + wrapper.setAttribute("voffset", shift + "em"); + return wrapper; + } + }); + function sizingGroup(value, options, baseOptions) { + var inner = buildHTML_buildExpression(value, options, false); + var multiplier = options.sizeMultiplier / baseOptions.sizeMultiplier; + for (var i = 0; i < inner.length; i++) { + var pos = inner[i].classes.indexOf("sizing"); + if (pos < 0) { + Array.prototype.push.apply(inner[i].classes, options.sizingClasses(baseOptions)); + } else if (inner[i].classes[pos + 1] === "reset-size" + options.size) { + inner[i].classes[pos + 1] = "reset-size" + baseOptions.size; + } + inner[i].height *= multiplier; + inner[i].depth *= multiplier; + } + return buildCommon.makeFragment(inner); + } + var sizeFuncs = ["\\tiny", "\\sixptsize", "\\scriptsize", "\\footnotesize", "\\small", "\\normalsize", "\\large", "\\Large", "\\LARGE", "\\huge", "\\Huge"]; + var sizing_htmlBuilder = function htmlBuilder(group, options) { + var newOptions = options.havingSize(group.size); + return sizingGroup(group.body, newOptions, options); + }; + defineFunction({ + type: "sizing", + names: sizeFuncs, + props: { + numArgs: 0, + allowedInText: true + }, + handler: function handler(_ref, args) { + var breakOnTokenText = _ref.breakOnTokenText, funcName = _ref.funcName, parser = _ref.parser; + var body = parser.parseExpression(false, breakOnTokenText); + return { + type: "sizing", + mode: parser.mode, + size: sizeFuncs.indexOf(funcName) + 1, + body + }; + }, + htmlBuilder: sizing_htmlBuilder, + mathmlBuilder: function mathmlBuilder(group, options) { + var newOptions = options.havingSize(group.size); + var inner = buildMathML_buildExpression(group.body, newOptions); + var node = new mathMLTree.MathNode("mstyle", inner); + node.setAttribute("mathsize", newOptions.sizeMultiplier + "em"); + return node; + } + }); + defineFunction({ + type: "smash", + names: ["\\smash"], + props: { + numArgs: 1, + numOptionalArgs: 1, + allowedInText: true + }, + handler: function handler(_ref, args, optArgs) { + var parser = _ref.parser; + var smashHeight = false; + var smashDepth = false; + var tbArg = optArgs[0] && assertNodeType(optArgs[0], "ordgroup"); + if (tbArg) { + var letter = ""; + for (var i = 0; i < tbArg.body.length; ++i) { + var node = tbArg.body[i]; + letter = node.text; + if (letter === "t") { + smashHeight = true; + } else if (letter === "b") { + smashDepth = true; + } else { + smashHeight = false; + smashDepth = false; + break; + } + } + } else { + smashHeight = true; + smashDepth = true; + } + var body = args[0]; + return { + type: "smash", + mode: parser.mode, + body, + smashHeight, + smashDepth + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var node = buildCommon.makeSpan([], [buildHTML_buildGroup(group.body, options)]); + if (!group.smashHeight && !group.smashDepth) { + return node; + } + if (group.smashHeight) { + node.height = 0; + if (node.children) { + for (var i = 0; i < node.children.length; i++) { + node.children[i].height = 0; + } + } + } + if (group.smashDepth) { + node.depth = 0; + if (node.children) { + for (var _i = 0; _i < node.children.length; _i++) { + node.children[_i].depth = 0; + } + } + } + var smashedNode = buildCommon.makeVList({ + positionType: "firstBaseline", + children: [{ + type: "elem", + elem: node + }] + }, options); + return buildCommon.makeSpan(["mord"], [smashedNode], options); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var node = new mathMLTree.MathNode("mpadded", [buildMathML_buildGroup(group.body, options)]); + if (group.smashHeight) { + node.setAttribute("height", "0px"); + } + if (group.smashDepth) { + node.setAttribute("depth", "0px"); + } + return node; + } + }); + defineFunction({ + type: "sqrt", + names: ["\\sqrt"], + props: { + numArgs: 1, + numOptionalArgs: 1 + }, + handler: function handler(_ref, args, optArgs) { + var parser = _ref.parser; + var index2 = optArgs[0]; + var body = args[0]; + return { + type: "sqrt", + mode: parser.mode, + body, + index: index2 + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var inner = buildHTML_buildGroup(group.body, options.havingCrampedStyle()); + if (inner.height === 0) { + inner.height = options.fontMetrics().xHeight; + } + inner = buildCommon.wrapFragment(inner, options); + var metrics = options.fontMetrics(); + var theta = metrics.defaultRuleThickness; + var phi = theta; + if (options.style.id < src_Style.TEXT.id) { + phi = options.fontMetrics().xHeight; + } + var lineClearance = theta + phi / 4; + var minDelimiterHeight = inner.height + inner.depth + lineClearance + theta; + var _delimiter$sqrtImage = delimiter2.sqrtImage(minDelimiterHeight, options), img = _delimiter$sqrtImage.span, ruleWidth = _delimiter$sqrtImage.ruleWidth, advanceWidth = _delimiter$sqrtImage.advanceWidth; + var delimDepth = img.height - ruleWidth; + if (delimDepth > inner.height + inner.depth + lineClearance) { + lineClearance = (lineClearance + delimDepth - inner.height - inner.depth) / 2; + } + var imgShift = img.height - inner.height - lineClearance - ruleWidth; + inner.style.paddingLeft = advanceWidth + "em"; + var body = buildCommon.makeVList({ + positionType: "firstBaseline", + children: [{ + type: "elem", + elem: inner, + wrapperClasses: ["svg-align"] + }, { + type: "kern", + size: -(inner.height + imgShift) + }, { + type: "elem", + elem: img + }, { + type: "kern", + size: ruleWidth + }] + }, options); + if (!group.index) { + return buildCommon.makeSpan(["mord", "sqrt"], [body], options); + } else { + var newOptions = options.havingStyle(src_Style.SCRIPTSCRIPT); + var rootm = buildHTML_buildGroup(group.index, newOptions, options); + var toShift = 0.6 * (body.height - body.depth); + var rootVList = buildCommon.makeVList({ + positionType: "shift", + positionData: -toShift, + children: [{ + type: "elem", + elem: rootm + }] + }, options); + var rootVListWrap = buildCommon.makeSpan(["root"], [rootVList]); + return buildCommon.makeSpan(["mord", "sqrt"], [rootVListWrap, body], options); + } + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var body = group.body, index2 = group.index; + return index2 ? new mathMLTree.MathNode("mroot", [buildMathML_buildGroup(body, options), buildMathML_buildGroup(index2, options)]) : new mathMLTree.MathNode("msqrt", [buildMathML_buildGroup(body, options)]); + } + }); + var styling_styleMap = { + "display": src_Style.DISPLAY, + "text": src_Style.TEXT, + "script": src_Style.SCRIPT, + "scriptscript": src_Style.SCRIPTSCRIPT + }; + defineFunction({ + type: "styling", + names: ["\\displaystyle", "\\textstyle", "\\scriptstyle", "\\scriptscriptstyle"], + props: { + numArgs: 0, + allowedInText: true + }, + handler: function handler(_ref, args) { + var breakOnTokenText = _ref.breakOnTokenText, funcName = _ref.funcName, parser = _ref.parser; + var body = parser.parseExpression(true, breakOnTokenText); + var style = funcName.slice(1, funcName.length - 5); + return { + type: "styling", + mode: parser.mode, + style, + body + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var newStyle = styling_styleMap[group.style]; + var newOptions = options.havingStyle(newStyle).withFont(""); + return sizingGroup(group.body, newOptions, options); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var newStyle = styling_styleMap[group.style]; + var newOptions = options.havingStyle(newStyle); + var inner = buildMathML_buildExpression(group.body, newOptions); + var node = new mathMLTree.MathNode("mstyle", inner); + var styleAttributes = { + "display": ["0", "true"], + "text": ["0", "false"], + "script": ["1", "false"], + "scriptscript": ["2", "false"] + }; + var attr2 = styleAttributes[group.style]; + node.setAttribute("scriptlevel", attr2[0]); + node.setAttribute("displaystyle", attr2[1]); + return node; + } + }); + var supsub_htmlBuilderDelegate = function htmlBuilderDelegate(group, options) { + var base2 = group.base; + if (!base2) { + return null; + } else if (base2.type === "op") { + var delegate = base2.limits && (options.style.size === src_Style.DISPLAY.size || base2.alwaysHandleSupSub); + return delegate ? op_htmlBuilder : null; + } else if (base2.type === "operatorname") { + var _delegate = base2.alwaysHandleSupSub && (options.style.size === src_Style.DISPLAY.size || base2.limits); + return _delegate ? operatorname_htmlBuilder : null; + } else if (base2.type === "accent") { + return utils.isCharacterBox(base2.base) ? accent_htmlBuilder : null; + } else if (base2.type === "horizBrace") { + var isSup = !group.sub; + return isSup === base2.isOver ? horizBrace_htmlBuilder : null; + } else { + return null; + } + }; + defineFunctionBuilders({ + type: "supsub", + htmlBuilder: function htmlBuilder(group, options) { + var builderDelegate = supsub_htmlBuilderDelegate(group, options); + if (builderDelegate) { + return builderDelegate(group, options); + } + var valueBase = group.base, valueSup = group.sup, valueSub = group.sub; + var base2 = buildHTML_buildGroup(valueBase, options); + var supm; + var subm; + var metrics = options.fontMetrics(); + var supShift = 0; + var subShift = 0; + var isCharacterBox = valueBase && utils.isCharacterBox(valueBase); + if (valueSup) { + var newOptions = options.havingStyle(options.style.sup()); + supm = buildHTML_buildGroup(valueSup, newOptions, options); + if (!isCharacterBox) { + supShift = base2.height - newOptions.fontMetrics().supDrop * newOptions.sizeMultiplier / options.sizeMultiplier; + } + } + if (valueSub) { + var _newOptions = options.havingStyle(options.style.sub()); + subm = buildHTML_buildGroup(valueSub, _newOptions, options); + if (!isCharacterBox) { + subShift = base2.depth + _newOptions.fontMetrics().subDrop * _newOptions.sizeMultiplier / options.sizeMultiplier; + } + } + var minSupShift; + if (options.style === src_Style.DISPLAY) { + minSupShift = metrics.sup1; + } else if (options.style.cramped) { + minSupShift = metrics.sup3; + } else { + minSupShift = metrics.sup2; + } + var multiplier = options.sizeMultiplier; + var marginRight = 0.5 / metrics.ptPerEm / multiplier + "em"; + var marginLeft = null; + if (subm) { + var isOiint = group.base && group.base.type === "op" && group.base.name && (group.base.name === "\\oiint" || group.base.name === "\\oiiint"); + if (base2 instanceof domTree_SymbolNode || isOiint) { + marginLeft = -base2.italic + "em"; + } + } + var supsub; + if (supm && subm) { + supShift = Math.max(supShift, minSupShift, supm.depth + 0.25 * metrics.xHeight); + subShift = Math.max(subShift, metrics.sub2); + var ruleWidth = metrics.defaultRuleThickness; + var maxWidth = 4 * ruleWidth; + if (supShift - supm.depth - (subm.height - subShift) < maxWidth) { + subShift = maxWidth - (supShift - supm.depth) + subm.height; + var psi = 0.8 * metrics.xHeight - (supShift - supm.depth); + if (psi > 0) { + supShift += psi; + subShift -= psi; + } + } + var vlistElem = [{ + type: "elem", + elem: subm, + shift: subShift, + marginRight, + marginLeft + }, { + type: "elem", + elem: supm, + shift: -supShift, + marginRight + }]; + supsub = buildCommon.makeVList({ + positionType: "individualShift", + children: vlistElem + }, options); + } else if (subm) { + subShift = Math.max(subShift, metrics.sub1, subm.height - 0.8 * metrics.xHeight); + var _vlistElem = [{ + type: "elem", + elem: subm, + marginLeft, + marginRight + }]; + supsub = buildCommon.makeVList({ + positionType: "shift", + positionData: subShift, + children: _vlistElem + }, options); + } else if (supm) { + supShift = Math.max(supShift, minSupShift, supm.depth + 0.25 * metrics.xHeight); + supsub = buildCommon.makeVList({ + positionType: "shift", + positionData: -supShift, + children: [{ + type: "elem", + elem: supm, + marginRight + }] + }, options); + } else { + throw new Error("supsub must have either sup or sub."); + } + var mclass = getTypeOfDomTree(base2, "right") || "mord"; + return buildCommon.makeSpan([mclass], [base2, buildCommon.makeSpan(["msupsub"], [supsub])], options); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var isBrace = false; + var isOver; + var isSup; + if (group.base && group.base.type === "horizBrace") { + isSup = !!group.sup; + if (isSup === group.base.isOver) { + isBrace = true; + isOver = group.base.isOver; + } + } + if (group.base && (group.base.type === "op" || group.base.type === "operatorname")) { + group.base.parentIsSupSub = true; + } + var children2 = [buildMathML_buildGroup(group.base, options)]; + if (group.sub) { + children2.push(buildMathML_buildGroup(group.sub, options)); + } + if (group.sup) { + children2.push(buildMathML_buildGroup(group.sup, options)); + } + var nodeType; + if (isBrace) { + nodeType = isOver ? "mover" : "munder"; + } else if (!group.sub) { + var base2 = group.base; + if (base2 && base2.type === "op" && base2.limits && (options.style === src_Style.DISPLAY || base2.alwaysHandleSupSub)) { + nodeType = "mover"; + } else if (base2 && base2.type === "operatorname" && base2.alwaysHandleSupSub && (base2.limits || options.style === src_Style.DISPLAY)) { + nodeType = "mover"; + } else { + nodeType = "msup"; + } + } else if (!group.sup) { + var _base = group.base; + if (_base && _base.type === "op" && _base.limits && (options.style === src_Style.DISPLAY || _base.alwaysHandleSupSub)) { + nodeType = "munder"; + } else if (_base && _base.type === "operatorname" && _base.alwaysHandleSupSub && (_base.limits || options.style === src_Style.DISPLAY)) { + nodeType = "munder"; + } else { + nodeType = "msub"; + } + } else { + var _base2 = group.base; + if (_base2 && _base2.type === "op" && _base2.limits && options.style === src_Style.DISPLAY) { + nodeType = "munderover"; + } else if (_base2 && _base2.type === "operatorname" && _base2.alwaysHandleSupSub && (options.style === src_Style.DISPLAY || _base2.limits)) { + nodeType = "munderover"; + } else { + nodeType = "msubsup"; + } + } + var node = new mathMLTree.MathNode(nodeType, children2); + return node; + } + }); + defineFunctionBuilders({ + type: "atom", + htmlBuilder: function htmlBuilder(group, options) { + return buildCommon.mathsym(group.text, group.mode, options, ["m" + group.family]); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var node = new mathMLTree.MathNode("mo", [buildMathML_makeText(group.text, group.mode)]); + if (group.family === "bin") { + var variant = buildMathML_getVariant(group, options); + if (variant === "bold-italic") { + node.setAttribute("mathvariant", variant); + } + } else if (group.family === "punct") { + node.setAttribute("separator", "true"); + } else if (group.family === "open" || group.family === "close") { + node.setAttribute("stretchy", "false"); + } + return node; + } + }); + var defaultVariant = { + "mi": "italic", + "mn": "normal", + "mtext": "normal" + }; + defineFunctionBuilders({ + type: "mathord", + htmlBuilder: function htmlBuilder(group, options) { + return buildCommon.makeOrd(group, options, "mathord"); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var node = new mathMLTree.MathNode("mi", [buildMathML_makeText(group.text, group.mode, options)]); + var variant = buildMathML_getVariant(group, options) || "italic"; + if (variant !== defaultVariant[node.type]) { + node.setAttribute("mathvariant", variant); + } + return node; + } + }); + defineFunctionBuilders({ + type: "textord", + htmlBuilder: function htmlBuilder(group, options) { + return buildCommon.makeOrd(group, options, "textord"); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var text4 = buildMathML_makeText(group.text, group.mode, options); + var variant = buildMathML_getVariant(group, options) || "normal"; + var node; + if (group.mode === "text") { + node = new mathMLTree.MathNode("mtext", [text4]); + } else if (/[0-9]/.test(group.text)) { + node = new mathMLTree.MathNode("mn", [text4]); + } else if (group.text === "\\prime") { + node = new mathMLTree.MathNode("mo", [text4]); + } else { + node = new mathMLTree.MathNode("mi", [text4]); + } + if (variant !== defaultVariant[node.type]) { + node.setAttribute("mathvariant", variant); + } + return node; + } + }); + var cssSpace = { + "\\nobreak": "nobreak", + "\\allowbreak": "allowbreak" + }; + var regularSpace = { + " ": {}, + "\\ ": {}, + "~": { + className: "nobreak" + }, + "\\space": {}, + "\\nobreakspace": { + className: "nobreak" + } + }; + defineFunctionBuilders({ + type: "spacing", + htmlBuilder: function htmlBuilder(group, options) { + if (regularSpace.hasOwnProperty(group.text)) { + var className = regularSpace[group.text].className || ""; + if (group.mode === "text") { + var ord = buildCommon.makeOrd(group, options, "textord"); + ord.classes.push(className); + return ord; + } else { + return buildCommon.makeSpan(["mspace", className], [buildCommon.mathsym(group.text, group.mode, options)], options); + } + } else if (cssSpace.hasOwnProperty(group.text)) { + return buildCommon.makeSpan(["mspace", cssSpace[group.text]], [], options); + } else { + throw new src_ParseError('Unknown type of space "' + group.text + '"'); + } + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var node; + if (regularSpace.hasOwnProperty(group.text)) { + node = new mathMLTree.MathNode("mtext", [new mathMLTree.TextNode("\xA0")]); + } else if (cssSpace.hasOwnProperty(group.text)) { + return new mathMLTree.MathNode("mspace"); + } else { + throw new src_ParseError('Unknown type of space "' + group.text + '"'); + } + return node; + } + }); + var tag_pad = function pad() { + var padNode = new mathMLTree.MathNode("mtd", []); + padNode.setAttribute("width", "50%"); + return padNode; + }; + defineFunctionBuilders({ + type: "tag", + mathmlBuilder: function mathmlBuilder(group, options) { + var table2 = new mathMLTree.MathNode("mtable", [new mathMLTree.MathNode("mtr", [tag_pad(), new mathMLTree.MathNode("mtd", [buildExpressionRow(group.body, options)]), tag_pad(), new mathMLTree.MathNode("mtd", [buildExpressionRow(group.tag, options)])])]); + table2.setAttribute("width", "100%"); + return table2; + } + }); + var textFontFamilies = { + "\\text": void 0, + "\\textrm": "textrm", + "\\textsf": "textsf", + "\\texttt": "texttt", + "\\textnormal": "textrm" + }; + var textFontWeights = { + "\\textbf": "textbf", + "\\textmd": "textmd" + }; + var textFontShapes = { + "\\textit": "textit", + "\\textup": "textup" + }; + var optionsWithFont = function optionsWithFont2(group, options) { + var font = group.font; + if (!font) { + return options; + } else if (textFontFamilies[font]) { + return options.withTextFontFamily(textFontFamilies[font]); + } else if (textFontWeights[font]) { + return options.withTextFontWeight(textFontWeights[font]); + } else { + return options.withTextFontShape(textFontShapes[font]); + } + }; + defineFunction({ + type: "text", + names: [ + "\\text", + "\\textrm", + "\\textsf", + "\\texttt", + "\\textnormal", + "\\textbf", + "\\textmd", + "\\textit", + "\\textup" + ], + props: { + numArgs: 1, + argTypes: ["text"], + greediness: 2, + allowedInText: true + }, + handler: function handler(_ref, args) { + var parser = _ref.parser, funcName = _ref.funcName; + var body = args[0]; + return { + type: "text", + mode: parser.mode, + body: ordargument(body), + font: funcName + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var newOptions = optionsWithFont(group, options); + var inner = buildHTML_buildExpression(group.body, newOptions, true); + return buildCommon.makeSpan(["mord", "text"], buildCommon.tryCombineChars(inner), newOptions); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var newOptions = optionsWithFont(group, options); + return buildExpressionRow(group.body, newOptions); + } + }); + defineFunction({ + type: "underline", + names: ["\\underline"], + props: { + numArgs: 1, + allowedInText: true + }, + handler: function handler(_ref, args) { + var parser = _ref.parser; + return { + type: "underline", + mode: parser.mode, + body: args[0] + }; + }, + htmlBuilder: function htmlBuilder(group, options) { + var innerGroup = buildHTML_buildGroup(group.body, options); + var line = buildCommon.makeLineSpan("underline-line", options); + var defaultRuleThickness = options.fontMetrics().defaultRuleThickness; + var vlist = buildCommon.makeVList({ + positionType: "top", + positionData: innerGroup.height, + children: [{ + type: "kern", + size: defaultRuleThickness + }, { + type: "elem", + elem: line + }, { + type: "kern", + size: 3 * defaultRuleThickness + }, { + type: "elem", + elem: innerGroup + }] + }, options); + return buildCommon.makeSpan(["mord", "underline"], [vlist], options); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var operator = new mathMLTree.MathNode("mo", [new mathMLTree.TextNode("\u203E")]); + operator.setAttribute("stretchy", "true"); + var node = new mathMLTree.MathNode("munder", [buildMathML_buildGroup(group.body, options), operator]); + node.setAttribute("accentunder", "true"); + return node; + } + }); + defineFunction({ + type: "verb", + names: ["\\verb"], + props: { + numArgs: 0, + allowedInText: true + }, + handler: function handler(context, args, optArgs) { + throw new src_ParseError("\\verb ended by end of line instead of matching delimiter"); + }, + htmlBuilder: function htmlBuilder(group, options) { + var text4 = makeVerb(group); + var body = []; + var newOptions = options.havingStyle(options.style.text()); + for (var i = 0; i < text4.length; i++) { + var c = text4[i]; + if (c === "~") { + c = "\\textasciitilde"; + } + body.push(buildCommon.makeSymbol(c, "Typewriter-Regular", group.mode, newOptions, ["mord", "texttt"])); + } + return buildCommon.makeSpan(["mord", "text"].concat(newOptions.sizingClasses(options)), buildCommon.tryCombineChars(body), newOptions); + }, + mathmlBuilder: function mathmlBuilder(group, options) { + var text4 = new mathMLTree.TextNode(makeVerb(group)); + var node = new mathMLTree.MathNode("mtext", [text4]); + node.setAttribute("mathvariant", "monospace"); + return node; + } + }); + var makeVerb = function makeVerb2(group) { + return group.body.replace(/ /g, group.star ? "\u2423" : "\xA0"); + }; + var functions = _functions; + var src_functions = functions; + var spaceRegexString = "[ \r\n ]"; + var controlWordRegexString = "\\\\[a-zA-Z@]+"; + var controlSymbolRegexString = "\\\\[^\uD800-\uDFFF]"; + var controlWordWhitespaceRegexString = "" + controlWordRegexString + spaceRegexString + "*"; + var controlWordWhitespaceRegex = new RegExp("^(" + controlWordRegexString + ")" + spaceRegexString + "*$"); + var combiningDiacriticalMarkString = "[\u0300-\u036F]"; + var combiningDiacriticalMarksEndRegex = new RegExp(combiningDiacriticalMarkString + "+$"); + var tokenRegexString = "(" + spaceRegexString + "+)|([!-\\[\\]-\u2027\u202A-\uD7FF\uF900-\uFFFF]" + (combiningDiacriticalMarkString + "*") + "|[\uD800-\uDBFF][\uDC00-\uDFFF]" + (combiningDiacriticalMarkString + "*") + "|\\\\verb\\*([^]).*?\\3|\\\\verb([^*a-zA-Z]).*?\\4|\\\\operatorname\\*" + ("|" + controlWordWhitespaceRegexString) + ("|" + controlSymbolRegexString + ")"); + var Lexer_Lexer = /* @__PURE__ */ function() { + function Lexer2(input, settings) { + this.input = void 0; + this.settings = void 0; + this.tokenRegex = void 0; + this.catcodes = void 0; + this.input = input; + this.settings = settings; + this.tokenRegex = new RegExp(tokenRegexString, "g"); + this.catcodes = { + "%": 14 + }; + } + var _proto = Lexer2.prototype; + _proto.setCatcode = function setCatcode(char, code2) { + this.catcodes[char] = code2; + }; + _proto.lex = function lex() { + var input = this.input; + var pos = this.tokenRegex.lastIndex; + if (pos === input.length) { + return new Token_Token("EOF", new SourceLocation(this, pos, pos)); + } + var match2 = this.tokenRegex.exec(input); + if (match2 === null || match2.index !== pos) { + throw new src_ParseError("Unexpected character: '" + input[pos] + "'", new Token_Token(input[pos], new SourceLocation(this, pos, pos + 1))); + } + var text4 = match2[2] || " "; + if (this.catcodes[text4] === 14) { + var nlIndex = input.indexOf("\n", this.tokenRegex.lastIndex); + if (nlIndex === -1) { + this.tokenRegex.lastIndex = input.length; + this.settings.reportNonstrict("commentAtEnd", "% comment has no terminating newline; LaTeX would fail because of commenting the end of math mode (e.g. $)"); + } else { + this.tokenRegex.lastIndex = nlIndex + 1; + } + return this.lex(); + } + var controlMatch = text4.match(controlWordWhitespaceRegex); + if (controlMatch) { + text4 = controlMatch[1]; + } + return new Token_Token(text4, new SourceLocation(this, pos, this.tokenRegex.lastIndex)); + }; + return Lexer2; + }(); + var Namespace_Namespace = /* @__PURE__ */ function() { + function Namespace(builtins, globalMacros) { + if (builtins === void 0) { + builtins = {}; + } + if (globalMacros === void 0) { + globalMacros = {}; + } + this.current = void 0; + this.builtins = void 0; + this.undefStack = void 0; + this.current = globalMacros; + this.builtins = builtins; + this.undefStack = []; + } + var _proto = Namespace.prototype; + _proto.beginGroup = function beginGroup() { + this.undefStack.push({}); + }; + _proto.endGroup = function endGroup() { + if (this.undefStack.length === 0) { + throw new src_ParseError("Unbalanced namespace destruction: attempt to pop global namespace; please report this as a bug"); + } + var undefs = this.undefStack.pop(); + for (var undef in undefs) { + if (undefs.hasOwnProperty(undef)) { + if (undefs[undef] === void 0) { + delete this.current[undef]; + } else { + this.current[undef] = undefs[undef]; + } + } + } + }; + _proto.has = function has3(name2) { + return this.current.hasOwnProperty(name2) || this.builtins.hasOwnProperty(name2); + }; + _proto.get = function get2(name2) { + if (this.current.hasOwnProperty(name2)) { + return this.current[name2]; + } else { + return this.builtins[name2]; + } + }; + _proto.set = function set3(name2, value, global2) { + if (global2 === void 0) { + global2 = false; + } + if (global2) { + for (var i = 0; i < this.undefStack.length; i++) { + delete this.undefStack[i][name2]; + } + if (this.undefStack.length > 0) { + this.undefStack[this.undefStack.length - 1][name2] = value; + } + } else { + var top = this.undefStack[this.undefStack.length - 1]; + if (top && !top.hasOwnProperty(name2)) { + top[name2] = this.current[name2]; + } + } + this.current[name2] = value; + }; + return Namespace; + }(); + var builtinMacros = {}; + var macros = builtinMacros; + function defineMacro(name2, body) { + builtinMacros[name2] = body; + } + defineMacro("\\noexpand", function(context) { + var t2 = context.popToken(); + if (context.isExpandable(t2.text)) { + t2.noexpand = true; + t2.treatAsRelax = true; + } + return { + tokens: [t2], + numArgs: 0 + }; + }); + defineMacro("\\expandafter", function(context) { + var t2 = context.popToken(); + context.expandOnce(true); + return { + tokens: [t2], + numArgs: 0 + }; + }); + defineMacro("\\@firstoftwo", function(context) { + var args = context.consumeArgs(2); + return { + tokens: args[0], + numArgs: 0 + }; + }); + defineMacro("\\@secondoftwo", function(context) { + var args = context.consumeArgs(2); + return { + tokens: args[1], + numArgs: 0 + }; + }); + defineMacro("\\@ifnextchar", function(context) { + var args = context.consumeArgs(3); + context.consumeSpaces(); + var nextToken = context.future(); + if (args[0].length === 1 && args[0][0].text === nextToken.text) { + return { + tokens: args[1], + numArgs: 0 + }; + } else { + return { + tokens: args[2], + numArgs: 0 + }; + } + }); + defineMacro("\\@ifstar", "\\@ifnextchar *{\\@firstoftwo{#1}}"); + defineMacro("\\TextOrMath", function(context) { + var args = context.consumeArgs(2); + if (context.mode === "text") { + return { + tokens: args[0], + numArgs: 0 + }; + } else { + return { + tokens: args[1], + numArgs: 0 + }; + } + }); + var digitToNumber = { + "0": 0, + "1": 1, + "2": 2, + "3": 3, + "4": 4, + "5": 5, + "6": 6, + "7": 7, + "8": 8, + "9": 9, + "a": 10, + "A": 10, + "b": 11, + "B": 11, + "c": 12, + "C": 12, + "d": 13, + "D": 13, + "e": 14, + "E": 14, + "f": 15, + "F": 15 + }; + defineMacro("\\char", function(context) { + var token = context.popToken(); + var base2; + var number = ""; + if (token.text === "'") { + base2 = 8; + token = context.popToken(); + } else if (token.text === '"') { + base2 = 16; + token = context.popToken(); + } else if (token.text === "`") { + token = context.popToken(); + if (token.text[0] === "\\") { + number = token.text.charCodeAt(1); + } else if (token.text === "EOF") { + throw new src_ParseError("\\char` missing argument"); + } else { + number = token.text.charCodeAt(0); + } + } else { + base2 = 10; + } + if (base2) { + number = digitToNumber[token.text]; + if (number == null || number >= base2) { + throw new src_ParseError("Invalid base-" + base2 + " digit " + token.text); + } + var digit; + while ((digit = digitToNumber[context.future().text]) != null && digit < base2) { + number *= base2; + number += digit; + context.popToken(); + } + } + return "\\@char{" + number + "}"; + }); + var macros_newcommand = function newcommand(context, existsOK, nonexistsOK) { + var arg = context.consumeArgs(1)[0]; + if (arg.length !== 1) { + throw new src_ParseError("\\newcommand's first argument must be a macro name"); + } + var name2 = arg[0].text; + var exists = context.isDefined(name2); + if (exists && !existsOK) { + throw new src_ParseError("\\newcommand{" + name2 + "} attempting to redefine " + (name2 + "; use \\renewcommand")); + } + if (!exists && !nonexistsOK) { + throw new src_ParseError("\\renewcommand{" + name2 + "} when command " + name2 + " does not yet exist; use \\newcommand"); + } + var numArgs = 0; + arg = context.consumeArgs(1)[0]; + if (arg.length === 1 && arg[0].text === "[") { + var argText = ""; + var token = context.expandNextToken(); + while (token.text !== "]" && token.text !== "EOF") { + argText += token.text; + token = context.expandNextToken(); + } + if (!argText.match(/^\s*[0-9]+\s*$/)) { + throw new src_ParseError("Invalid number of arguments: " + argText); + } + numArgs = parseInt(argText); + arg = context.consumeArgs(1)[0]; + } + context.macros.set(name2, { + tokens: arg, + numArgs + }); + return ""; + }; + defineMacro("\\newcommand", function(context) { + return macros_newcommand(context, false, true); + }); + defineMacro("\\renewcommand", function(context) { + return macros_newcommand(context, true, false); + }); + defineMacro("\\providecommand", function(context) { + return macros_newcommand(context, true, true); + }); + defineMacro("\\message", function(context) { + var arg = context.consumeArgs(1)[0]; + console.log(arg.reverse().map(function(token) { + return token.text; + }).join("")); + return ""; + }); + defineMacro("\\errmessage", function(context) { + var arg = context.consumeArgs(1)[0]; + console.error(arg.reverse().map(function(token) { + return token.text; + }).join("")); + return ""; + }); + defineMacro("\\show", function(context) { + var tok = context.popToken(); + var name2 = tok.text; + console.log(tok, context.macros.get(name2), src_functions[name2], src_symbols.math[name2], src_symbols.text[name2]); + return ""; + }); + defineMacro("\\bgroup", "{"); + defineMacro("\\egroup", "}"); + defineMacro("\\lq", "`"); + defineMacro("\\rq", "'"); + defineMacro("\\aa", "\\r a"); + defineMacro("\\AA", "\\r A"); + defineMacro("\\textcopyright", "\\html@mathml{\\textcircled{c}}{\\char`\xA9}"); + defineMacro("\\copyright", "\\TextOrMath{\\textcopyright}{\\text{\\textcopyright}}"); + defineMacro("\\textregistered", "\\html@mathml{\\textcircled{\\scriptsize R}}{\\char`\xAE}"); + defineMacro("\u212C", "\\mathscr{B}"); + defineMacro("\u2130", "\\mathscr{E}"); + defineMacro("\u2131", "\\mathscr{F}"); + defineMacro("\u210B", "\\mathscr{H}"); + defineMacro("\u2110", "\\mathscr{I}"); + defineMacro("\u2112", "\\mathscr{L}"); + defineMacro("\u2133", "\\mathscr{M}"); + defineMacro("\u211B", "\\mathscr{R}"); + defineMacro("\u212D", "\\mathfrak{C}"); + defineMacro("\u210C", "\\mathfrak{H}"); + defineMacro("\u2128", "\\mathfrak{Z}"); + defineMacro("\\Bbbk", "\\Bbb{k}"); + defineMacro("\xB7", "\\cdotp"); + defineMacro("\\llap", "\\mathllap{\\textrm{#1}}"); + defineMacro("\\rlap", "\\mathrlap{\\textrm{#1}}"); + defineMacro("\\clap", "\\mathclap{\\textrm{#1}}"); + defineMacro("\\not", '\\html@mathml{\\mathrel{\\mathrlap\\@not}}{\\char"338}'); + defineMacro("\\neq", "\\html@mathml{\\mathrel{\\not=}}{\\mathrel{\\char`\u2260}}"); + defineMacro("\\ne", "\\neq"); + defineMacro("\u2260", "\\neq"); + defineMacro("\\notin", "\\html@mathml{\\mathrel{{\\in}\\mathllap{/\\mskip1mu}}}{\\mathrel{\\char`\u2209}}"); + defineMacro("\u2209", "\\notin"); + defineMacro("\u2258", "\\html@mathml{\\mathrel{=\\kern{-1em}\\raisebox{0.4em}{$\\scriptsize\\frown$}}}{\\mathrel{\\char`\u2258}}"); + defineMacro("\u2259", "\\html@mathml{\\stackrel{\\tiny\\wedge}{=}}{\\mathrel{\\char`\u2258}}"); + defineMacro("\u225A", "\\html@mathml{\\stackrel{\\tiny\\vee}{=}}{\\mathrel{\\char`\u225A}}"); + defineMacro("\u225B", "\\html@mathml{\\stackrel{\\scriptsize\\star}{=}}{\\mathrel{\\char`\u225B}}"); + defineMacro("\u225D", "\\html@mathml{\\stackrel{\\tiny\\mathrm{def}}{=}}{\\mathrel{\\char`\u225D}}"); + defineMacro("\u225E", "\\html@mathml{\\stackrel{\\tiny\\mathrm{m}}{=}}{\\mathrel{\\char`\u225E}}"); + defineMacro("\u225F", "\\html@mathml{\\stackrel{\\tiny?}{=}}{\\mathrel{\\char`\u225F}}"); + defineMacro("\u27C2", "\\perp"); + defineMacro("\u203C", "\\mathclose{!\\mkern-0.8mu!}"); + defineMacro("\u220C", "\\notni"); + defineMacro("\u231C", "\\ulcorner"); + defineMacro("\u231D", "\\urcorner"); + defineMacro("\u231E", "\\llcorner"); + defineMacro("\u231F", "\\lrcorner"); + defineMacro("\xA9", "\\copyright"); + defineMacro("\xAE", "\\textregistered"); + defineMacro("\uFE0F", "\\textregistered"); + defineMacro("\\ulcorner", '\\html@mathml{\\@ulcorner}{\\mathop{\\char"231c}}'); + defineMacro("\\urcorner", '\\html@mathml{\\@urcorner}{\\mathop{\\char"231d}}'); + defineMacro("\\llcorner", '\\html@mathml{\\@llcorner}{\\mathop{\\char"231e}}'); + defineMacro("\\lrcorner", '\\html@mathml{\\@lrcorner}{\\mathop{\\char"231f}}'); + defineMacro("\\vdots", "\\mathord{\\varvdots\\rule{0pt}{15pt}}"); + defineMacro("\u22EE", "\\vdots"); + defineMacro("\\varGamma", "\\mathit{\\Gamma}"); + defineMacro("\\varDelta", "\\mathit{\\Delta}"); + defineMacro("\\varTheta", "\\mathit{\\Theta}"); + defineMacro("\\varLambda", "\\mathit{\\Lambda}"); + defineMacro("\\varXi", "\\mathit{\\Xi}"); + defineMacro("\\varPi", "\\mathit{\\Pi}"); + defineMacro("\\varSigma", "\\mathit{\\Sigma}"); + defineMacro("\\varUpsilon", "\\mathit{\\Upsilon}"); + defineMacro("\\varPhi", "\\mathit{\\Phi}"); + defineMacro("\\varPsi", "\\mathit{\\Psi}"); + defineMacro("\\varOmega", "\\mathit{\\Omega}"); + defineMacro("\\substack", "\\begin{subarray}{c}#1\\end{subarray}"); + defineMacro("\\colon", "\\nobreak\\mskip2mu\\mathpunct{}\\mathchoice{\\mkern-3mu}{\\mkern-3mu}{}{}{:}\\mskip6mu"); + defineMacro("\\boxed", "\\fbox{$\\displaystyle{#1}$}"); + defineMacro("\\iff", "\\DOTSB\\;\\Longleftrightarrow\\;"); + defineMacro("\\implies", "\\DOTSB\\;\\Longrightarrow\\;"); + defineMacro("\\impliedby", "\\DOTSB\\;\\Longleftarrow\\;"); + var dotsByToken = { + ",": "\\dotsc", + "\\not": "\\dotsb", + "+": "\\dotsb", + "=": "\\dotsb", + "<": "\\dotsb", + ">": "\\dotsb", + "-": "\\dotsb", + "*": "\\dotsb", + ":": "\\dotsb", + "\\DOTSB": "\\dotsb", + "\\coprod": "\\dotsb", + "\\bigvee": "\\dotsb", + "\\bigwedge": "\\dotsb", + "\\biguplus": "\\dotsb", + "\\bigcap": "\\dotsb", + "\\bigcup": "\\dotsb", + "\\prod": "\\dotsb", + "\\sum": "\\dotsb", + "\\bigotimes": "\\dotsb", + "\\bigoplus": "\\dotsb", + "\\bigodot": "\\dotsb", + "\\bigsqcup": "\\dotsb", + "\\And": "\\dotsb", + "\\longrightarrow": "\\dotsb", + "\\Longrightarrow": "\\dotsb", + "\\longleftarrow": "\\dotsb", + "\\Longleftarrow": "\\dotsb", + "\\longleftrightarrow": "\\dotsb", + "\\Longleftrightarrow": "\\dotsb", + "\\mapsto": "\\dotsb", + "\\longmapsto": "\\dotsb", + "\\hookrightarrow": "\\dotsb", + "\\doteq": "\\dotsb", + "\\mathbin": "\\dotsb", + "\\mathrel": "\\dotsb", + "\\relbar": "\\dotsb", + "\\Relbar": "\\dotsb", + "\\xrightarrow": "\\dotsb", + "\\xleftarrow": "\\dotsb", + "\\DOTSI": "\\dotsi", + "\\int": "\\dotsi", + "\\oint": "\\dotsi", + "\\iint": "\\dotsi", + "\\iiint": "\\dotsi", + "\\iiiint": "\\dotsi", + "\\idotsint": "\\dotsi", + "\\DOTSX": "\\dotsx" + }; + defineMacro("\\dots", function(context) { + var thedots = "\\dotso"; + var next2 = context.expandAfterFuture().text; + if (next2 in dotsByToken) { + thedots = dotsByToken[next2]; + } else if (next2.substr(0, 4) === "\\not") { + thedots = "\\dotsb"; + } else if (next2 in src_symbols.math) { + if (utils.contains(["bin", "rel"], src_symbols.math[next2].group)) { + thedots = "\\dotsb"; + } + } + return thedots; + }); + var spaceAfterDots = { + ")": true, + "]": true, + "\\rbrack": true, + "\\}": true, + "\\rbrace": true, + "\\rangle": true, + "\\rceil": true, + "\\rfloor": true, + "\\rgroup": true, + "\\rmoustache": true, + "\\right": true, + "\\bigr": true, + "\\biggr": true, + "\\Bigr": true, + "\\Biggr": true, + "$": true, + ";": true, + ".": true, + ",": true + }; + defineMacro("\\dotso", function(context) { + var next2 = context.future().text; + if (next2 in spaceAfterDots) { + return "\\ldots\\,"; + } else { + return "\\ldots"; + } + }); + defineMacro("\\dotsc", function(context) { + var next2 = context.future().text; + if (next2 in spaceAfterDots && next2 !== ",") { + return "\\ldots\\,"; + } else { + return "\\ldots"; + } + }); + defineMacro("\\cdots", function(context) { + var next2 = context.future().text; + if (next2 in spaceAfterDots) { + return "\\@cdots\\,"; + } else { + return "\\@cdots"; + } + }); + defineMacro("\\dotsb", "\\cdots"); + defineMacro("\\dotsm", "\\cdots"); + defineMacro("\\dotsi", "\\!\\cdots"); + defineMacro("\\dotsx", "\\ldots\\,"); + defineMacro("\\DOTSI", "\\relax"); + defineMacro("\\DOTSB", "\\relax"); + defineMacro("\\DOTSX", "\\relax"); + defineMacro("\\tmspace", "\\TextOrMath{\\kern#1#3}{\\mskip#1#2}\\relax"); + defineMacro("\\,", "\\tmspace+{3mu}{.1667em}"); + defineMacro("\\thinspace", "\\,"); + defineMacro("\\>", "\\mskip{4mu}"); + defineMacro("\\:", "\\tmspace+{4mu}{.2222em}"); + defineMacro("\\medspace", "\\:"); + defineMacro("\\;", "\\tmspace+{5mu}{.2777em}"); + defineMacro("\\thickspace", "\\;"); + defineMacro("\\!", "\\tmspace-{3mu}{.1667em}"); + defineMacro("\\negthinspace", "\\!"); + defineMacro("\\negmedspace", "\\tmspace-{4mu}{.2222em}"); + defineMacro("\\negthickspace", "\\tmspace-{5mu}{.277em}"); + defineMacro("\\enspace", "\\kern.5em "); + defineMacro("\\enskip", "\\hskip.5em\\relax"); + defineMacro("\\quad", "\\hskip1em\\relax"); + defineMacro("\\qquad", "\\hskip2em\\relax"); + defineMacro("\\tag", "\\@ifstar\\tag@literal\\tag@paren"); + defineMacro("\\tag@paren", "\\tag@literal{({#1})}"); + defineMacro("\\tag@literal", function(context) { + if (context.macros.get("\\df@tag")) { + throw new src_ParseError("Multiple \\tag"); + } + return "\\gdef\\df@tag{\\text{#1}}"; + }); + defineMacro("\\bmod", "\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}\\mathbin{\\rm mod}\\mathchoice{\\mskip1mu}{\\mskip1mu}{\\mskip5mu}{\\mskip5mu}"); + defineMacro("\\pod", "\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern8mu}{\\mkern8mu}{\\mkern8mu}(#1)"); + defineMacro("\\pmod", "\\pod{{\\rm mod}\\mkern6mu#1}"); + defineMacro("\\mod", "\\allowbreak\\mathchoice{\\mkern18mu}{\\mkern12mu}{\\mkern12mu}{\\mkern12mu}{\\rm mod}\\,\\,#1"); + defineMacro("\\pmb", "\\html@mathml{\\@binrel{#1}{\\mathrlap{#1}\\kern0.5px#1}}{\\mathbf{#1}}"); + defineMacro("\\\\", "\\newline"); + defineMacro("\\TeX", "\\textrm{\\html@mathml{T\\kern-.1667em\\raisebox{-.5ex}{E}\\kern-.125emX}{TeX}}"); + var latexRaiseA = fontMetricsData["Main-Regular"]["T".charCodeAt(0)][1] - 0.7 * fontMetricsData["Main-Regular"]["A".charCodeAt(0)][1] + "em"; + defineMacro("\\LaTeX", "\\textrm{\\html@mathml{" + ("L\\kern-.36em\\raisebox{" + latexRaiseA + "}{\\scriptstyle A}") + "\\kern-.15em\\TeX}{LaTeX}}"); + defineMacro("\\KaTeX", "\\textrm{\\html@mathml{" + ("K\\kern-.17em\\raisebox{" + latexRaiseA + "}{\\scriptstyle A}") + "\\kern-.15em\\TeX}{KaTeX}}"); + defineMacro("\\hspace", "\\@ifstar\\@hspacer\\@hspace"); + defineMacro("\\@hspace", "\\hskip #1\\relax"); + defineMacro("\\@hspacer", "\\rule{0pt}{0pt}\\hskip #1\\relax"); + defineMacro("\\ordinarycolon", ":"); + defineMacro("\\vcentcolon", "\\mathrel{\\mathop\\ordinarycolon}"); + defineMacro("\\dblcolon", '\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-.9mu}\\vcentcolon}}{\\mathop{\\char"2237}}'); + defineMacro("\\coloneqq", '\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2254}}'); + defineMacro("\\Coloneqq", '\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}=}}{\\mathop{\\char"2237\\char"3d}}'); + defineMacro("\\coloneq", '\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"3a\\char"2212}}'); + defineMacro("\\Coloneq", '\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\mathrel{-}}}{\\mathop{\\char"2237\\char"2212}}'); + defineMacro("\\eqqcolon", '\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2255}}'); + defineMacro("\\Eqqcolon", '\\html@mathml{\\mathrel{=\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"3d\\char"2237}}'); + defineMacro("\\eqcolon", '\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\vcentcolon}}{\\mathop{\\char"2239}}'); + defineMacro("\\Eqcolon", '\\html@mathml{\\mathrel{\\mathrel{-}\\mathrel{\\mkern-1.2mu}\\dblcolon}}{\\mathop{\\char"2212\\char"2237}}'); + defineMacro("\\colonapprox", '\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"3a\\char"2248}}'); + defineMacro("\\Colonapprox", '\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\approx}}{\\mathop{\\char"2237\\char"2248}}'); + defineMacro("\\colonsim", '\\html@mathml{\\mathrel{\\vcentcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"3a\\char"223c}}'); + defineMacro("\\Colonsim", '\\html@mathml{\\mathrel{\\dblcolon\\mathrel{\\mkern-1.2mu}\\sim}}{\\mathop{\\char"2237\\char"223c}}'); + defineMacro("\u2237", "\\dblcolon"); + defineMacro("\u2239", "\\eqcolon"); + defineMacro("\u2254", "\\coloneqq"); + defineMacro("\u2255", "\\eqqcolon"); + defineMacro("\u2A74", "\\Coloneqq"); + defineMacro("\\ratio", "\\vcentcolon"); + defineMacro("\\coloncolon", "\\dblcolon"); + defineMacro("\\colonequals", "\\coloneqq"); + defineMacro("\\coloncolonequals", "\\Coloneqq"); + defineMacro("\\equalscolon", "\\eqqcolon"); + defineMacro("\\equalscoloncolon", "\\Eqqcolon"); + defineMacro("\\colonminus", "\\coloneq"); + defineMacro("\\coloncolonminus", "\\Coloneq"); + defineMacro("\\minuscolon", "\\eqcolon"); + defineMacro("\\minuscoloncolon", "\\Eqcolon"); + defineMacro("\\coloncolonapprox", "\\Colonapprox"); + defineMacro("\\coloncolonsim", "\\Colonsim"); + defineMacro("\\simcolon", "\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\vcentcolon}"); + defineMacro("\\simcoloncolon", "\\mathrel{\\sim\\mathrel{\\mkern-1.2mu}\\dblcolon}"); + defineMacro("\\approxcolon", "\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\vcentcolon}"); + defineMacro("\\approxcoloncolon", "\\mathrel{\\approx\\mathrel{\\mkern-1.2mu}\\dblcolon}"); + defineMacro("\\notni", "\\html@mathml{\\not\\ni}{\\mathrel{\\char`\u220C}}"); + defineMacro("\\limsup", "\\DOTSB\\operatorname*{lim\\,sup}"); + defineMacro("\\liminf", "\\DOTSB\\operatorname*{lim\\,inf}"); + defineMacro("\\gvertneqq", "\\html@mathml{\\@gvertneqq}{\u2269}"); + defineMacro("\\lvertneqq", "\\html@mathml{\\@lvertneqq}{\u2268}"); + defineMacro("\\ngeqq", "\\html@mathml{\\@ngeqq}{\u2271}"); + defineMacro("\\ngeqslant", "\\html@mathml{\\@ngeqslant}{\u2271}"); + defineMacro("\\nleqq", "\\html@mathml{\\@nleqq}{\u2270}"); + defineMacro("\\nleqslant", "\\html@mathml{\\@nleqslant}{\u2270}"); + defineMacro("\\nshortmid", "\\html@mathml{\\@nshortmid}{\u2224}"); + defineMacro("\\nshortparallel", "\\html@mathml{\\@nshortparallel}{\u2226}"); + defineMacro("\\nsubseteqq", "\\html@mathml{\\@nsubseteqq}{\u2288}"); + defineMacro("\\nsupseteqq", "\\html@mathml{\\@nsupseteqq}{\u2289}"); + defineMacro("\\varsubsetneq", "\\html@mathml{\\@varsubsetneq}{\u228A}"); + defineMacro("\\varsubsetneqq", "\\html@mathml{\\@varsubsetneqq}{\u2ACB}"); + defineMacro("\\varsupsetneq", "\\html@mathml{\\@varsupsetneq}{\u228B}"); + defineMacro("\\varsupsetneqq", "\\html@mathml{\\@varsupsetneqq}{\u2ACC}"); + defineMacro("\\imath", "\\html@mathml{\\@imath}{\u0131}"); + defineMacro("\\jmath", "\\html@mathml{\\@jmath}{\u0237}"); + defineMacro("\\llbracket", "\\html@mathml{\\mathopen{[\\mkern-3.2mu[}}{\\mathopen{\\char`\u27E6}}"); + defineMacro("\\rrbracket", "\\html@mathml{\\mathclose{]\\mkern-3.2mu]}}{\\mathclose{\\char`\u27E7}}"); + defineMacro("\u27E6", "\\llbracket"); + defineMacro("\u27E7", "\\rrbracket"); + defineMacro("\\lBrace", "\\html@mathml{\\mathopen{\\{\\mkern-3.2mu[}}{\\mathopen{\\char`\u2983}}"); + defineMacro("\\rBrace", "\\html@mathml{\\mathclose{]\\mkern-3.2mu\\}}}{\\mathclose{\\char`\u2984}}"); + defineMacro("\u2983", "\\lBrace"); + defineMacro("\u2984", "\\rBrace"); + defineMacro("\\minuso", "\\mathbin{\\html@mathml{{\\mathrlap{\\mathchoice{\\kern{0.145em}}{\\kern{0.145em}}{\\kern{0.1015em}}{\\kern{0.0725em}}\\circ}{-}}}{\\char`\u29B5}}"); + defineMacro("\u29B5", "\\minuso"); + defineMacro("\\darr", "\\downarrow"); + defineMacro("\\dArr", "\\Downarrow"); + defineMacro("\\Darr", "\\Downarrow"); + defineMacro("\\lang", "\\langle"); + defineMacro("\\rang", "\\rangle"); + defineMacro("\\uarr", "\\uparrow"); + defineMacro("\\uArr", "\\Uparrow"); + defineMacro("\\Uarr", "\\Uparrow"); + defineMacro("\\N", "\\mathbb{N}"); + defineMacro("\\R", "\\mathbb{R}"); + defineMacro("\\Z", "\\mathbb{Z}"); + defineMacro("\\alef", "\\aleph"); + defineMacro("\\alefsym", "\\aleph"); + defineMacro("\\Alpha", "\\mathrm{A}"); + defineMacro("\\Beta", "\\mathrm{B}"); + defineMacro("\\bull", "\\bullet"); + defineMacro("\\Chi", "\\mathrm{X}"); + defineMacro("\\clubs", "\\clubsuit"); + defineMacro("\\cnums", "\\mathbb{C}"); + defineMacro("\\Complex", "\\mathbb{C}"); + defineMacro("\\Dagger", "\\ddagger"); + defineMacro("\\diamonds", "\\diamondsuit"); + defineMacro("\\empty", "\\emptyset"); + defineMacro("\\Epsilon", "\\mathrm{E}"); + defineMacro("\\Eta", "\\mathrm{H}"); + defineMacro("\\exist", "\\exists"); + defineMacro("\\harr", "\\leftrightarrow"); + defineMacro("\\hArr", "\\Leftrightarrow"); + defineMacro("\\Harr", "\\Leftrightarrow"); + defineMacro("\\hearts", "\\heartsuit"); + defineMacro("\\image", "\\Im"); + defineMacro("\\infin", "\\infty"); + defineMacro("\\Iota", "\\mathrm{I}"); + defineMacro("\\isin", "\\in"); + defineMacro("\\Kappa", "\\mathrm{K}"); + defineMacro("\\larr", "\\leftarrow"); + defineMacro("\\lArr", "\\Leftarrow"); + defineMacro("\\Larr", "\\Leftarrow"); + defineMacro("\\lrarr", "\\leftrightarrow"); + defineMacro("\\lrArr", "\\Leftrightarrow"); + defineMacro("\\Lrarr", "\\Leftrightarrow"); + defineMacro("\\Mu", "\\mathrm{M}"); + defineMacro("\\natnums", "\\mathbb{N}"); + defineMacro("\\Nu", "\\mathrm{N}"); + defineMacro("\\Omicron", "\\mathrm{O}"); + defineMacro("\\plusmn", "\\pm"); + defineMacro("\\rarr", "\\rightarrow"); + defineMacro("\\rArr", "\\Rightarrow"); + defineMacro("\\Rarr", "\\Rightarrow"); + defineMacro("\\real", "\\Re"); + defineMacro("\\reals", "\\mathbb{R}"); + defineMacro("\\Reals", "\\mathbb{R}"); + defineMacro("\\Rho", "\\mathrm{P}"); + defineMacro("\\sdot", "\\cdot"); + defineMacro("\\sect", "\\S"); + defineMacro("\\spades", "\\spadesuit"); + defineMacro("\\sub", "\\subset"); + defineMacro("\\sube", "\\subseteq"); + defineMacro("\\supe", "\\supseteq"); + defineMacro("\\Tau", "\\mathrm{T}"); + defineMacro("\\thetasym", "\\vartheta"); + defineMacro("\\weierp", "\\wp"); + defineMacro("\\Zeta", "\\mathrm{Z}"); + defineMacro("\\argmin", "\\DOTSB\\operatorname*{arg\\,min}"); + defineMacro("\\argmax", "\\DOTSB\\operatorname*{arg\\,max}"); + defineMacro("\\plim", "\\DOTSB\\mathop{\\operatorname{plim}}\\limits"); + defineMacro("\\bra", "\\mathinner{\\langle{#1}|}"); + defineMacro("\\ket", "\\mathinner{|{#1}\\rangle}"); + defineMacro("\\braket", "\\mathinner{\\langle{#1}\\rangle}"); + defineMacro("\\Bra", "\\left\\langle#1\\right|"); + defineMacro("\\Ket", "\\left|#1\\right\\rangle"); + defineMacro("\\blue", "\\textcolor{##6495ed}{#1}"); + defineMacro("\\orange", "\\textcolor{##ffa500}{#1}"); + defineMacro("\\pink", "\\textcolor{##ff00af}{#1}"); + defineMacro("\\red", "\\textcolor{##df0030}{#1}"); + defineMacro("\\green", "\\textcolor{##28ae7b}{#1}"); + defineMacro("\\gray", "\\textcolor{gray}{#1}"); + defineMacro("\\purple", "\\textcolor{##9d38bd}{#1}"); + defineMacro("\\blueA", "\\textcolor{##ccfaff}{#1}"); + defineMacro("\\blueB", "\\textcolor{##80f6ff}{#1}"); + defineMacro("\\blueC", "\\textcolor{##63d9ea}{#1}"); + defineMacro("\\blueD", "\\textcolor{##11accd}{#1}"); + defineMacro("\\blueE", "\\textcolor{##0c7f99}{#1}"); + defineMacro("\\tealA", "\\textcolor{##94fff5}{#1}"); + defineMacro("\\tealB", "\\textcolor{##26edd5}{#1}"); + defineMacro("\\tealC", "\\textcolor{##01d1c1}{#1}"); + defineMacro("\\tealD", "\\textcolor{##01a995}{#1}"); + defineMacro("\\tealE", "\\textcolor{##208170}{#1}"); + defineMacro("\\greenA", "\\textcolor{##b6ffb0}{#1}"); + defineMacro("\\greenB", "\\textcolor{##8af281}{#1}"); + defineMacro("\\greenC", "\\textcolor{##74cf70}{#1}"); + defineMacro("\\greenD", "\\textcolor{##1fab54}{#1}"); + defineMacro("\\greenE", "\\textcolor{##0d923f}{#1}"); + defineMacro("\\goldA", "\\textcolor{##ffd0a9}{#1}"); + defineMacro("\\goldB", "\\textcolor{##ffbb71}{#1}"); + defineMacro("\\goldC", "\\textcolor{##ff9c39}{#1}"); + defineMacro("\\goldD", "\\textcolor{##e07d10}{#1}"); + defineMacro("\\goldE", "\\textcolor{##a75a05}{#1}"); + defineMacro("\\redA", "\\textcolor{##fca9a9}{#1}"); + defineMacro("\\redB", "\\textcolor{##ff8482}{#1}"); + defineMacro("\\redC", "\\textcolor{##f9685d}{#1}"); + defineMacro("\\redD", "\\textcolor{##e84d39}{#1}"); + defineMacro("\\redE", "\\textcolor{##bc2612}{#1}"); + defineMacro("\\maroonA", "\\textcolor{##ffbde0}{#1}"); + defineMacro("\\maroonB", "\\textcolor{##ff92c6}{#1}"); + defineMacro("\\maroonC", "\\textcolor{##ed5fa6}{#1}"); + defineMacro("\\maroonD", "\\textcolor{##ca337c}{#1}"); + defineMacro("\\maroonE", "\\textcolor{##9e034e}{#1}"); + defineMacro("\\purpleA", "\\textcolor{##ddd7ff}{#1}"); + defineMacro("\\purpleB", "\\textcolor{##c6b9fc}{#1}"); + defineMacro("\\purpleC", "\\textcolor{##aa87ff}{#1}"); + defineMacro("\\purpleD", "\\textcolor{##7854ab}{#1}"); + defineMacro("\\purpleE", "\\textcolor{##543b78}{#1}"); + defineMacro("\\mintA", "\\textcolor{##f5f9e8}{#1}"); + defineMacro("\\mintB", "\\textcolor{##edf2df}{#1}"); + defineMacro("\\mintC", "\\textcolor{##e0e5cc}{#1}"); + defineMacro("\\grayA", "\\textcolor{##f6f7f7}{#1}"); + defineMacro("\\grayB", "\\textcolor{##f0f1f2}{#1}"); + defineMacro("\\grayC", "\\textcolor{##e3e5e6}{#1}"); + defineMacro("\\grayD", "\\textcolor{##d6d8da}{#1}"); + defineMacro("\\grayE", "\\textcolor{##babec2}{#1}"); + defineMacro("\\grayF", "\\textcolor{##888d93}{#1}"); + defineMacro("\\grayG", "\\textcolor{##626569}{#1}"); + defineMacro("\\grayH", "\\textcolor{##3b3e40}{#1}"); + defineMacro("\\grayI", "\\textcolor{##21242c}{#1}"); + defineMacro("\\kaBlue", "\\textcolor{##314453}{#1}"); + defineMacro("\\kaGreen", "\\textcolor{##71B307}{#1}"); + var implicitCommands = { + "\\relax": true, + "^": true, + "_": true, + "\\limits": true, + "\\nolimits": true + }; + var MacroExpander_MacroExpander = /* @__PURE__ */ function() { + function MacroExpander(input, settings, mode) { + this.settings = void 0; + this.expansionCount = void 0; + this.lexer = void 0; + this.macros = void 0; + this.stack = void 0; + this.mode = void 0; + this.settings = settings; + this.expansionCount = 0; + this.feed(input); + this.macros = new Namespace_Namespace(macros, settings.macros); + this.mode = mode; + this.stack = []; + } + var _proto = MacroExpander.prototype; + _proto.feed = function feed(input) { + this.lexer = new Lexer_Lexer(input, this.settings); + }; + _proto.switchMode = function switchMode(newMode) { + this.mode = newMode; + }; + _proto.beginGroup = function beginGroup() { + this.macros.beginGroup(); + }; + _proto.endGroup = function endGroup() { + this.macros.endGroup(); + }; + _proto.future = function future() { + if (this.stack.length === 0) { + this.pushToken(this.lexer.lex()); + } + return this.stack[this.stack.length - 1]; + }; + _proto.popToken = function popToken() { + this.future(); + return this.stack.pop(); + }; + _proto.pushToken = function pushToken(token) { + this.stack.push(token); + }; + _proto.pushTokens = function pushTokens(tokens) { + var _this$stack; + (_this$stack = this.stack).push.apply(_this$stack, tokens); + }; + _proto.consumeSpaces = function consumeSpaces() { + for (; ; ) { + var token = this.future(); + if (token.text === " ") { + this.stack.pop(); + } else { + break; + } + } + }; + _proto.consumeArgs = function consumeArgs(numArgs) { + var args = []; + for (var i = 0; i < numArgs; ++i) { + this.consumeSpaces(); + var startOfArg = this.popToken(); + if (startOfArg.text === "{") { + var arg = []; + var depth = 1; + while (depth !== 0) { + var tok = this.popToken(); + arg.push(tok); + if (tok.text === "{") { + ++depth; + } else if (tok.text === "}") { + --depth; + } else if (tok.text === "EOF") { + throw new src_ParseError("End of input in macro argument", startOfArg); + } + } + arg.pop(); + arg.reverse(); + args[i] = arg; + } else if (startOfArg.text === "EOF") { + throw new src_ParseError("End of input expecting macro argument"); + } else { + args[i] = [startOfArg]; + } + } + return args; + }; + _proto.expandOnce = function expandOnce(expandableOnly) { + var topToken = this.popToken(); + var name2 = topToken.text; + var expansion = !topToken.noexpand ? this._getExpansion(name2) : null; + if (expansion == null || expandableOnly && expansion.unexpandable) { + if (expandableOnly && expansion == null && name2[0] === "\\" && !this.isDefined(name2)) { + throw new src_ParseError("Undefined control sequence: " + name2); + } + this.pushToken(topToken); + return topToken; + } + this.expansionCount++; + if (this.expansionCount > this.settings.maxExpand) { + throw new src_ParseError("Too many expansions: infinite loop or need to increase maxExpand setting"); + } + var tokens = expansion.tokens; + if (expansion.numArgs) { + var args = this.consumeArgs(expansion.numArgs); + tokens = tokens.slice(); + for (var i = tokens.length - 1; i >= 0; --i) { + var tok = tokens[i]; + if (tok.text === "#") { + if (i === 0) { + throw new src_ParseError("Incomplete placeholder at end of macro body", tok); + } + tok = tokens[--i]; + if (tok.text === "#") { + tokens.splice(i + 1, 1); + } else if (/^[1-9]$/.test(tok.text)) { + var _tokens; + (_tokens = tokens).splice.apply(_tokens, [i, 2].concat(args[+tok.text - 1])); + } else { + throw new src_ParseError("Not a valid argument number", tok); + } + } + } + } + this.pushTokens(tokens); + return tokens; + }; + _proto.expandAfterFuture = function expandAfterFuture() { + this.expandOnce(); + return this.future(); + }; + _proto.expandNextToken = function expandNextToken() { + for (; ; ) { + var expanded = this.expandOnce(); + if (expanded instanceof Token_Token) { + if (expanded.text === "\\relax" || expanded.treatAsRelax) { + this.stack.pop(); + } else { + return this.stack.pop(); + } + } + } + throw new Error(); + }; + _proto.expandMacro = function expandMacro(name2) { + return this.macros.has(name2) ? this.expandTokens([new Token_Token(name2)]) : void 0; + }; + _proto.expandTokens = function expandTokens(tokens) { + var output = []; + var oldStackLength = this.stack.length; + this.pushTokens(tokens); + while (this.stack.length > oldStackLength) { + var expanded = this.expandOnce(true); + if (expanded instanceof Token_Token) { + if (expanded.treatAsRelax) { + expanded.noexpand = false; + expanded.treatAsRelax = false; + } + output.push(this.stack.pop()); + } + } + return output; + }; + _proto.expandMacroAsText = function expandMacroAsText(name2) { + var tokens = this.expandMacro(name2); + if (tokens) { + return tokens.map(function(token) { + return token.text; + }).join(""); + } else { + return tokens; + } + }; + _proto._getExpansion = function _getExpansion(name2) { + var definition = this.macros.get(name2); + if (definition == null) { + return definition; + } + var expansion = typeof definition === "function" ? definition(this) : definition; + if (typeof expansion === "string") { + var numArgs = 0; + if (expansion.indexOf("#") !== -1) { + var stripped = expansion.replace(/##/g, ""); + while (stripped.indexOf("#" + (numArgs + 1)) !== -1) { + ++numArgs; + } + } + var bodyLexer = new Lexer_Lexer(expansion, this.settings); + var tokens = []; + var tok = bodyLexer.lex(); + while (tok.text !== "EOF") { + tokens.push(tok); + tok = bodyLexer.lex(); + } + tokens.reverse(); + var expanded = { + tokens, + numArgs + }; + return expanded; + } + return expansion; + }; + _proto.isDefined = function isDefined(name2) { + return this.macros.has(name2) || src_functions.hasOwnProperty(name2) || src_symbols.math.hasOwnProperty(name2) || src_symbols.text.hasOwnProperty(name2) || implicitCommands.hasOwnProperty(name2); + }; + _proto.isExpandable = function isExpandable(name2) { + var macro = this.macros.get(name2); + return macro != null ? typeof macro === "string" || typeof macro === "function" || !macro.unexpandable : src_functions.hasOwnProperty(name2); + }; + return MacroExpander; + }(); + var unicodeAccents = { + "\u0301": { + "text": "\\'", + "math": "\\acute" + }, + "\u0300": { + "text": "\\`", + "math": "\\grave" + }, + "\u0308": { + "text": '\\"', + "math": "\\ddot" + }, + "\u0303": { + "text": "\\~", + "math": "\\tilde" + }, + "\u0304": { + "text": "\\=", + "math": "\\bar" + }, + "\u0306": { + "text": "\\u", + "math": "\\breve" + }, + "\u030C": { + "text": "\\v", + "math": "\\check" + }, + "\u0302": { + "text": "\\^", + "math": "\\hat" + }, + "\u0307": { + "text": "\\.", + "math": "\\dot" + }, + "\u030A": { + "text": "\\r", + "math": "\\mathring" + }, + "\u030B": { + "text": "\\H" + } + }; + var unicodeSymbols = { + "\xE1": "a\u0301", + "\xE0": "a\u0300", + "\xE4": "a\u0308", + "\u01DF": "a\u0308\u0304", + "\xE3": "a\u0303", + "\u0101": "a\u0304", + "\u0103": "a\u0306", + "\u1EAF": "a\u0306\u0301", + "\u1EB1": "a\u0306\u0300", + "\u1EB5": "a\u0306\u0303", + "\u01CE": "a\u030C", + "\xE2": "a\u0302", + "\u1EA5": "a\u0302\u0301", + "\u1EA7": "a\u0302\u0300", + "\u1EAB": "a\u0302\u0303", + "\u0227": "a\u0307", + "\u01E1": "a\u0307\u0304", + "\xE5": "a\u030A", + "\u01FB": "a\u030A\u0301", + "\u1E03": "b\u0307", + "\u0107": "c\u0301", + "\u010D": "c\u030C", + "\u0109": "c\u0302", + "\u010B": "c\u0307", + "\u010F": "d\u030C", + "\u1E0B": "d\u0307", + "\xE9": "e\u0301", + "\xE8": "e\u0300", + "\xEB": "e\u0308", + "\u1EBD": "e\u0303", + "\u0113": "e\u0304", + "\u1E17": "e\u0304\u0301", + "\u1E15": "e\u0304\u0300", + "\u0115": "e\u0306", + "\u011B": "e\u030C", + "\xEA": "e\u0302", + "\u1EBF": "e\u0302\u0301", + "\u1EC1": "e\u0302\u0300", + "\u1EC5": "e\u0302\u0303", + "\u0117": "e\u0307", + "\u1E1F": "f\u0307", + "\u01F5": "g\u0301", + "\u1E21": "g\u0304", + "\u011F": "g\u0306", + "\u01E7": "g\u030C", + "\u011D": "g\u0302", + "\u0121": "g\u0307", + "\u1E27": "h\u0308", + "\u021F": "h\u030C", + "\u0125": "h\u0302", + "\u1E23": "h\u0307", + "\xED": "i\u0301", + "\xEC": "i\u0300", + "\xEF": "i\u0308", + "\u1E2F": "i\u0308\u0301", + "\u0129": "i\u0303", + "\u012B": "i\u0304", + "\u012D": "i\u0306", + "\u01D0": "i\u030C", + "\xEE": "i\u0302", + "\u01F0": "j\u030C", + "\u0135": "j\u0302", + "\u1E31": "k\u0301", + "\u01E9": "k\u030C", + "\u013A": "l\u0301", + "\u013E": "l\u030C", + "\u1E3F": "m\u0301", + "\u1E41": "m\u0307", + "\u0144": "n\u0301", + "\u01F9": "n\u0300", + "\xF1": "n\u0303", + "\u0148": "n\u030C", + "\u1E45": "n\u0307", + "\xF3": "o\u0301", + "\xF2": "o\u0300", + "\xF6": "o\u0308", + "\u022B": "o\u0308\u0304", + "\xF5": "o\u0303", + "\u1E4D": "o\u0303\u0301", + "\u1E4F": "o\u0303\u0308", + "\u022D": "o\u0303\u0304", + "\u014D": "o\u0304", + "\u1E53": "o\u0304\u0301", + "\u1E51": "o\u0304\u0300", + "\u014F": "o\u0306", + "\u01D2": "o\u030C", + "\xF4": "o\u0302", + "\u1ED1": "o\u0302\u0301", + "\u1ED3": "o\u0302\u0300", + "\u1ED7": "o\u0302\u0303", + "\u022F": "o\u0307", + "\u0231": "o\u0307\u0304", + "\u0151": "o\u030B", + "\u1E55": "p\u0301", + "\u1E57": "p\u0307", + "\u0155": "r\u0301", + "\u0159": "r\u030C", + "\u1E59": "r\u0307", + "\u015B": "s\u0301", + "\u1E65": "s\u0301\u0307", + "\u0161": "s\u030C", + "\u1E67": "s\u030C\u0307", + "\u015D": "s\u0302", + "\u1E61": "s\u0307", + "\u1E97": "t\u0308", + "\u0165": "t\u030C", + "\u1E6B": "t\u0307", + "\xFA": "u\u0301", + "\xF9": "u\u0300", + "\xFC": "u\u0308", + "\u01D8": "u\u0308\u0301", + "\u01DC": "u\u0308\u0300", + "\u01D6": "u\u0308\u0304", + "\u01DA": "u\u0308\u030C", + "\u0169": "u\u0303", + "\u1E79": "u\u0303\u0301", + "\u016B": "u\u0304", + "\u1E7B": "u\u0304\u0308", + "\u016D": "u\u0306", + "\u01D4": "u\u030C", + "\xFB": "u\u0302", + "\u016F": "u\u030A", + "\u0171": "u\u030B", + "\u1E7D": "v\u0303", + "\u1E83": "w\u0301", + "\u1E81": "w\u0300", + "\u1E85": "w\u0308", + "\u0175": "w\u0302", + "\u1E87": "w\u0307", + "\u1E98": "w\u030A", + "\u1E8D": "x\u0308", + "\u1E8B": "x\u0307", + "\xFD": "y\u0301", + "\u1EF3": "y\u0300", + "\xFF": "y\u0308", + "\u1EF9": "y\u0303", + "\u0233": "y\u0304", + "\u0177": "y\u0302", + "\u1E8F": "y\u0307", + "\u1E99": "y\u030A", + "\u017A": "z\u0301", + "\u017E": "z\u030C", + "\u1E91": "z\u0302", + "\u017C": "z\u0307", + "\xC1": "A\u0301", + "\xC0": "A\u0300", + "\xC4": "A\u0308", + "\u01DE": "A\u0308\u0304", + "\xC3": "A\u0303", + "\u0100": "A\u0304", + "\u0102": "A\u0306", + "\u1EAE": "A\u0306\u0301", + "\u1EB0": "A\u0306\u0300", + "\u1EB4": "A\u0306\u0303", + "\u01CD": "A\u030C", + "\xC2": "A\u0302", + "\u1EA4": "A\u0302\u0301", + "\u1EA6": "A\u0302\u0300", + "\u1EAA": "A\u0302\u0303", + "\u0226": "A\u0307", + "\u01E0": "A\u0307\u0304", + "\xC5": "A\u030A", + "\u01FA": "A\u030A\u0301", + "\u1E02": "B\u0307", + "\u0106": "C\u0301", + "\u010C": "C\u030C", + "\u0108": "C\u0302", + "\u010A": "C\u0307", + "\u010E": "D\u030C", + "\u1E0A": "D\u0307", + "\xC9": "E\u0301", + "\xC8": "E\u0300", + "\xCB": "E\u0308", + "\u1EBC": "E\u0303", + "\u0112": "E\u0304", + "\u1E16": "E\u0304\u0301", + "\u1E14": "E\u0304\u0300", + "\u0114": "E\u0306", + "\u011A": "E\u030C", + "\xCA": "E\u0302", + "\u1EBE": "E\u0302\u0301", + "\u1EC0": "E\u0302\u0300", + "\u1EC4": "E\u0302\u0303", + "\u0116": "E\u0307", + "\u1E1E": "F\u0307", + "\u01F4": "G\u0301", + "\u1E20": "G\u0304", + "\u011E": "G\u0306", + "\u01E6": "G\u030C", + "\u011C": "G\u0302", + "\u0120": "G\u0307", + "\u1E26": "H\u0308", + "\u021E": "H\u030C", + "\u0124": "H\u0302", + "\u1E22": "H\u0307", + "\xCD": "I\u0301", + "\xCC": "I\u0300", + "\xCF": "I\u0308", + "\u1E2E": "I\u0308\u0301", + "\u0128": "I\u0303", + "\u012A": "I\u0304", + "\u012C": "I\u0306", + "\u01CF": "I\u030C", + "\xCE": "I\u0302", + "\u0130": "I\u0307", + "\u0134": "J\u0302", + "\u1E30": "K\u0301", + "\u01E8": "K\u030C", + "\u0139": "L\u0301", + "\u013D": "L\u030C", + "\u1E3E": "M\u0301", + "\u1E40": "M\u0307", + "\u0143": "N\u0301", + "\u01F8": "N\u0300", + "\xD1": "N\u0303", + "\u0147": "N\u030C", + "\u1E44": "N\u0307", + "\xD3": "O\u0301", + "\xD2": "O\u0300", + "\xD6": "O\u0308", + "\u022A": "O\u0308\u0304", + "\xD5": "O\u0303", + "\u1E4C": "O\u0303\u0301", + "\u1E4E": "O\u0303\u0308", + "\u022C": "O\u0303\u0304", + "\u014C": "O\u0304", + "\u1E52": "O\u0304\u0301", + "\u1E50": "O\u0304\u0300", + "\u014E": "O\u0306", + "\u01D1": "O\u030C", + "\xD4": "O\u0302", + "\u1ED0": "O\u0302\u0301", + "\u1ED2": "O\u0302\u0300", + "\u1ED6": "O\u0302\u0303", + "\u022E": "O\u0307", + "\u0230": "O\u0307\u0304", + "\u0150": "O\u030B", + "\u1E54": "P\u0301", + "\u1E56": "P\u0307", + "\u0154": "R\u0301", + "\u0158": "R\u030C", + "\u1E58": "R\u0307", + "\u015A": "S\u0301", + "\u1E64": "S\u0301\u0307", + "\u0160": "S\u030C", + "\u1E66": "S\u030C\u0307", + "\u015C": "S\u0302", + "\u1E60": "S\u0307", + "\u0164": "T\u030C", + "\u1E6A": "T\u0307", + "\xDA": "U\u0301", + "\xD9": "U\u0300", + "\xDC": "U\u0308", + "\u01D7": "U\u0308\u0301", + "\u01DB": "U\u0308\u0300", + "\u01D5": "U\u0308\u0304", + "\u01D9": "U\u0308\u030C", + "\u0168": "U\u0303", + "\u1E78": "U\u0303\u0301", + "\u016A": "U\u0304", + "\u1E7A": "U\u0304\u0308", + "\u016C": "U\u0306", + "\u01D3": "U\u030C", + "\xDB": "U\u0302", + "\u016E": "U\u030A", + "\u0170": "U\u030B", + "\u1E7C": "V\u0303", + "\u1E82": "W\u0301", + "\u1E80": "W\u0300", + "\u1E84": "W\u0308", + "\u0174": "W\u0302", + "\u1E86": "W\u0307", + "\u1E8C": "X\u0308", + "\u1E8A": "X\u0307", + "\xDD": "Y\u0301", + "\u1EF2": "Y\u0300", + "\u0178": "Y\u0308", + "\u1EF8": "Y\u0303", + "\u0232": "Y\u0304", + "\u0176": "Y\u0302", + "\u1E8E": "Y\u0307", + "\u0179": "Z\u0301", + "\u017D": "Z\u030C", + "\u1E90": "Z\u0302", + "\u017B": "Z\u0307", + "\u03AC": "\u03B1\u0301", + "\u1F70": "\u03B1\u0300", + "\u1FB1": "\u03B1\u0304", + "\u1FB0": "\u03B1\u0306", + "\u03AD": "\u03B5\u0301", + "\u1F72": "\u03B5\u0300", + "\u03AE": "\u03B7\u0301", + "\u1F74": "\u03B7\u0300", + "\u03AF": "\u03B9\u0301", + "\u1F76": "\u03B9\u0300", + "\u03CA": "\u03B9\u0308", + "\u0390": "\u03B9\u0308\u0301", + "\u1FD2": "\u03B9\u0308\u0300", + "\u1FD1": "\u03B9\u0304", + "\u1FD0": "\u03B9\u0306", + "\u03CC": "\u03BF\u0301", + "\u1F78": "\u03BF\u0300", + "\u03CD": "\u03C5\u0301", + "\u1F7A": "\u03C5\u0300", + "\u03CB": "\u03C5\u0308", + "\u03B0": "\u03C5\u0308\u0301", + "\u1FE2": "\u03C5\u0308\u0300", + "\u1FE1": "\u03C5\u0304", + "\u1FE0": "\u03C5\u0306", + "\u03CE": "\u03C9\u0301", + "\u1F7C": "\u03C9\u0300", + "\u038E": "\u03A5\u0301", + "\u1FEA": "\u03A5\u0300", + "\u03AB": "\u03A5\u0308", + "\u1FE9": "\u03A5\u0304", + "\u1FE8": "\u03A5\u0306", + "\u038F": "\u03A9\u0301", + "\u1FFA": "\u03A9\u0300" + }; + var Parser_Parser = /* @__PURE__ */ function() { + function Parser4(input, settings) { + this.mode = void 0; + this.gullet = void 0; + this.settings = void 0; + this.leftrightDepth = void 0; + this.nextToken = void 0; + this.mode = "math"; + this.gullet = new MacroExpander_MacroExpander(input, settings, this.mode); + this.settings = settings; + this.leftrightDepth = 0; + } + var _proto = Parser4.prototype; + _proto.expect = function expect(text4, consume) { + if (consume === void 0) { + consume = true; + } + if (this.fetch().text !== text4) { + throw new src_ParseError("Expected '" + text4 + "', got '" + this.fetch().text + "'", this.fetch()); + } + if (consume) { + this.consume(); + } + }; + _proto.consume = function consume() { + this.nextToken = null; + }; + _proto.fetch = function fetch3() { + if (this.nextToken == null) { + this.nextToken = this.gullet.expandNextToken(); + } + return this.nextToken; + }; + _proto.switchMode = function switchMode(newMode) { + this.mode = newMode; + this.gullet.switchMode(newMode); + }; + _proto.parse = function parse7() { + if (!this.settings.globalGroup) { + this.gullet.beginGroup(); + } + if (this.settings.colorIsTextColor) { + this.gullet.macros.set("\\color", "\\textcolor"); + } + var parse8 = this.parseExpression(false); + this.expect("EOF"); + if (!this.settings.globalGroup) { + this.gullet.endGroup(); + } + return parse8; + }; + _proto.parseExpression = function parseExpression(breakOnInfix, breakOnTokenText) { + var body = []; + while (true) { + if (this.mode === "math") { + this.consumeSpaces(); + } + var lex = this.fetch(); + if (Parser4.endOfExpression.indexOf(lex.text) !== -1) { + break; + } + if (breakOnTokenText && lex.text === breakOnTokenText) { + break; + } + if (breakOnInfix && src_functions[lex.text] && src_functions[lex.text].infix) { + break; + } + var atom = this.parseAtom(breakOnTokenText); + if (!atom) { + break; + } else if (atom.type === "internal") { + continue; + } + body.push(atom); + } + if (this.mode === "text") { + this.formLigatures(body); + } + return this.handleInfixNodes(body); + }; + _proto.handleInfixNodes = function handleInfixNodes(body) { + var overIndex = -1; + var funcName; + for (var i = 0; i < body.length; i++) { + if (body[i].type === "infix") { + if (overIndex !== -1) { + throw new src_ParseError("only one infix operator per group", body[i].token); + } + overIndex = i; + funcName = body[i].replaceWith; + } + } + if (overIndex !== -1 && funcName) { + var numerNode; + var denomNode; + var numerBody = body.slice(0, overIndex); + var denomBody = body.slice(overIndex + 1); + if (numerBody.length === 1 && numerBody[0].type === "ordgroup") { + numerNode = numerBody[0]; + } else { + numerNode = { + type: "ordgroup", + mode: this.mode, + body: numerBody + }; + } + if (denomBody.length === 1 && denomBody[0].type === "ordgroup") { + denomNode = denomBody[0]; + } else { + denomNode = { + type: "ordgroup", + mode: this.mode, + body: denomBody + }; + } + var node; + if (funcName === "\\\\abovefrac") { + node = this.callFunction(funcName, [numerNode, body[overIndex], denomNode], []); + } else { + node = this.callFunction(funcName, [numerNode, denomNode], []); + } + return [node]; + } else { + return body; + } + }; + _proto.handleSupSubscript = function handleSupSubscript(name2) { + var symbolToken = this.fetch(); + var symbol = symbolToken.text; + this.consume(); + var group = this.parseGroup(name2, false, Parser4.SUPSUB_GREEDINESS, void 0, void 0, true); + if (!group) { + throw new src_ParseError("Expected group after '" + symbol + "'", symbolToken); + } + return group; + }; + _proto.formatUnsupportedCmd = function formatUnsupportedCmd(text4) { + var textordArray = []; + for (var i = 0; i < text4.length; i++) { + textordArray.push({ + type: "textord", + mode: "text", + text: text4[i] + }); + } + var textNode = { + type: "text", + mode: this.mode, + body: textordArray + }; + var colorNode = { + type: "color", + mode: this.mode, + color: this.settings.errorColor, + body: [textNode] + }; + return colorNode; + }; + _proto.parseAtom = function parseAtom(breakOnTokenText) { + var base2 = this.parseGroup("atom", false, null, breakOnTokenText); + if (this.mode === "text") { + return base2; + } + var superscript2; + var subscript2; + while (true) { + this.consumeSpaces(); + var lex = this.fetch(); + if (lex.text === "\\limits" || lex.text === "\\nolimits") { + if (base2 && base2.type === "op") { + var limits = lex.text === "\\limits"; + base2.limits = limits; + base2.alwaysHandleSupSub = true; + } else if (base2 && base2.type === "operatorname" && base2.alwaysHandleSupSub) { + var _limits = lex.text === "\\limits"; + base2.limits = _limits; + } else { + throw new src_ParseError("Limit controls must follow a math operator", lex); + } + this.consume(); + } else if (lex.text === "^") { + if (superscript2) { + throw new src_ParseError("Double superscript", lex); + } + superscript2 = this.handleSupSubscript("superscript"); + } else if (lex.text === "_") { + if (subscript2) { + throw new src_ParseError("Double subscript", lex); + } + subscript2 = this.handleSupSubscript("subscript"); + } else if (lex.text === "'") { + if (superscript2) { + throw new src_ParseError("Double superscript", lex); + } + var prime = { + type: "textord", + mode: this.mode, + text: "\\prime" + }; + var primes = [prime]; + this.consume(); + while (this.fetch().text === "'") { + primes.push(prime); + this.consume(); + } + if (this.fetch().text === "^") { + primes.push(this.handleSupSubscript("superscript")); + } + superscript2 = { + type: "ordgroup", + mode: this.mode, + body: primes + }; + } else { + break; + } + } + if (superscript2 || subscript2) { + return { + type: "supsub", + mode: this.mode, + base: base2, + sup: superscript2, + sub: subscript2 + }; + } else { + return base2; + } + }; + _proto.parseFunction = function parseFunction(breakOnTokenText, name2, greediness) { + var token = this.fetch(); + var func = token.text; + var funcData = src_functions[func]; + if (!funcData) { + return null; + } + this.consume(); + if (greediness != null && funcData.greediness <= greediness) { + throw new src_ParseError("Got function '" + func + "' with no arguments" + (name2 ? " as " + name2 : ""), token); + } else if (this.mode === "text" && !funcData.allowedInText) { + throw new src_ParseError("Can't use function '" + func + "' in text mode", token); + } else if (this.mode === "math" && funcData.allowedInMath === false) { + throw new src_ParseError("Can't use function '" + func + "' in math mode", token); + } + var _this$parseArguments = this.parseArguments(func, funcData), args = _this$parseArguments.args, optArgs = _this$parseArguments.optArgs; + return this.callFunction(func, args, optArgs, token, breakOnTokenText); + }; + _proto.callFunction = function callFunction(name2, args, optArgs, token, breakOnTokenText) { + var context = { + funcName: name2, + parser: this, + token, + breakOnTokenText + }; + var func = src_functions[name2]; + if (func && func.handler) { + return func.handler(context, args, optArgs); + } else { + throw new src_ParseError("No function handler for " + name2); + } + }; + _proto.parseArguments = function parseArguments(func, funcData) { + var totalArgs = funcData.numArgs + funcData.numOptionalArgs; + if (totalArgs === 0) { + return { + args: [], + optArgs: [] + }; + } + var baseGreediness = funcData.greediness; + var args = []; + var optArgs = []; + for (var i = 0; i < totalArgs; i++) { + var argType = funcData.argTypes && funcData.argTypes[i]; + var isOptional = i < funcData.numOptionalArgs; + var consumeSpaces = i > 0 && !isOptional || i === 0 && !isOptional && this.mode === "math"; + var arg = this.parseGroupOfType("argument to '" + func + "'", argType, isOptional, baseGreediness, consumeSpaces); + if (!arg) { + if (isOptional) { + optArgs.push(null); + continue; + } + throw new src_ParseError("Expected group after '" + func + "'", this.fetch()); + } + (isOptional ? optArgs : args).push(arg); + } + return { + args, + optArgs + }; + }; + _proto.parseGroupOfType = function parseGroupOfType(name2, type, optional, greediness, consumeSpaces) { + switch (type) { + case "color": + if (consumeSpaces) { + this.consumeSpaces(); + } + return this.parseColorGroup(optional); + case "size": + if (consumeSpaces) { + this.consumeSpaces(); + } + return this.parseSizeGroup(optional); + case "url": + return this.parseUrlGroup(optional, consumeSpaces); + case "math": + case "text": + return this.parseGroup(name2, optional, greediness, void 0, type, consumeSpaces); + case "hbox": { + var group = this.parseGroup(name2, optional, greediness, void 0, "text", consumeSpaces); + if (!group) { + return group; + } + var styledGroup = { + type: "styling", + mode: group.mode, + body: [group], + style: "text" + }; + return styledGroup; + } + case "raw": { + if (consumeSpaces) { + this.consumeSpaces(); + } + if (optional && this.fetch().text === "{") { + return null; + } + var token = this.parseStringGroup("raw", optional, true); + if (token) { + return { + type: "raw", + mode: "text", + string: token.text + }; + } else { + throw new src_ParseError("Expected raw group", this.fetch()); + } + } + case "original": + case null: + case void 0: + return this.parseGroup(name2, optional, greediness, void 0, void 0, consumeSpaces); + default: + throw new src_ParseError("Unknown group type as " + name2, this.fetch()); + } + }; + _proto.consumeSpaces = function consumeSpaces() { + while (this.fetch().text === " ") { + this.consume(); + } + }; + _proto.parseStringGroup = function parseStringGroup(modeName, optional, raw) { + var groupBegin = optional ? "[" : "{"; + var groupEnd = optional ? "]" : "}"; + var beginToken = this.fetch(); + if (beginToken.text !== groupBegin) { + if (optional) { + return null; + } else if (raw && beginToken.text !== "EOF" && /[^{}[\]]/.test(beginToken.text)) { + this.consume(); + return beginToken; + } + } + var outerMode = this.mode; + this.mode = "text"; + this.expect(groupBegin); + var str = ""; + var firstToken = this.fetch(); + var nested = 0; + var lastToken = firstToken; + var nextToken; + while ((nextToken = this.fetch()).text !== groupEnd || raw && nested > 0) { + switch (nextToken.text) { + case "EOF": + throw new src_ParseError("Unexpected end of input in " + modeName, firstToken.range(lastToken, str)); + case groupBegin: + nested++; + break; + case groupEnd: + nested--; + break; + } + lastToken = nextToken; + str += lastToken.text; + this.consume(); + } + this.expect(groupEnd); + this.mode = outerMode; + return firstToken.range(lastToken, str); + }; + _proto.parseRegexGroup = function parseRegexGroup(regex, modeName) { + var outerMode = this.mode; + this.mode = "text"; + var firstToken = this.fetch(); + var lastToken = firstToken; + var str = ""; + var nextToken; + while ((nextToken = this.fetch()).text !== "EOF" && regex.test(str + nextToken.text)) { + lastToken = nextToken; + str += lastToken.text; + this.consume(); + } + if (str === "") { + throw new src_ParseError("Invalid " + modeName + ": '" + firstToken.text + "'", firstToken); + } + this.mode = outerMode; + return firstToken.range(lastToken, str); + }; + _proto.parseColorGroup = function parseColorGroup(optional) { + var res = this.parseStringGroup("color", optional); + if (!res) { + return null; + } + var match2 = /^(#[a-f0-9]{3}|#?[a-f0-9]{6}|[a-z]+)$/i.exec(res.text); + if (!match2) { + throw new src_ParseError("Invalid color: '" + res.text + "'", res); + } + var color = match2[0]; + if (/^[0-9a-f]{6}$/i.test(color)) { + color = "#" + color; + } + return { + type: "color-token", + mode: this.mode, + color + }; + }; + _proto.parseSizeGroup = function parseSizeGroup(optional) { + var res; + var isBlank = false; + if (!optional && this.fetch().text !== "{") { + res = this.parseRegexGroup(/^[-+]? *(?:$|\d+|\d+\.\d*|\.\d*) *[a-z]{0,2} *$/, "size"); + } else { + res = this.parseStringGroup("size", optional); + } + if (!res) { + return null; + } + if (!optional && res.text.length === 0) { + res.text = "0pt"; + isBlank = true; + } + var match2 = /([-+]?) *(\d+(?:\.\d*)?|\.\d+) *([a-z]{2})/.exec(res.text); + if (!match2) { + throw new src_ParseError("Invalid size: '" + res.text + "'", res); + } + var data2 = { + number: +(match2[1] + match2[2]), + unit: match2[3] + }; + if (!validUnit(data2)) { + throw new src_ParseError("Invalid unit: '" + data2.unit + "'", res); + } + return { + type: "size", + mode: this.mode, + value: data2, + isBlank + }; + }; + _proto.parseUrlGroup = function parseUrlGroup(optional, consumeSpaces) { + this.gullet.lexer.setCatcode("%", 13); + var res = this.parseStringGroup("url", optional, true); + this.gullet.lexer.setCatcode("%", 14); + if (!res) { + return null; + } + var url = res.text.replace(/\\([#$%&~_^{}])/g, "$1"); + return { + type: "url", + mode: this.mode, + url + }; + }; + _proto.parseGroup = function parseGroup(name2, optional, greediness, breakOnTokenText, mode, consumeSpaces) { + var outerMode = this.mode; + if (mode) { + this.switchMode(mode); + } + if (consumeSpaces) { + this.consumeSpaces(); + } + var firstToken = this.fetch(); + var text4 = firstToken.text; + var result; + if (optional ? text4 === "[" : text4 === "{" || text4 === "\\begingroup") { + this.consume(); + var groupEnd = Parser4.endOfGroup[text4]; + this.gullet.beginGroup(); + var expression = this.parseExpression(false, groupEnd); + var lastToken = this.fetch(); + this.expect(groupEnd); + this.gullet.endGroup(); + result = { + type: "ordgroup", + mode: this.mode, + loc: SourceLocation.range(firstToken, lastToken), + body: expression, + semisimple: text4 === "\\begingroup" || void 0 + }; + } else if (optional) { + result = null; + } else { + result = this.parseFunction(breakOnTokenText, name2, greediness) || this.parseSymbol(); + if (result == null && text4[0] === "\\" && !implicitCommands.hasOwnProperty(text4)) { + if (this.settings.throwOnError) { + throw new src_ParseError("Undefined control sequence: " + text4, firstToken); + } + result = this.formatUnsupportedCmd(text4); + this.consume(); + } + } + if (mode) { + this.switchMode(outerMode); + } + return result; + }; + _proto.formLigatures = function formLigatures(group) { + var n = group.length - 1; + for (var i = 0; i < n; ++i) { + var a = group[i]; + var v = a.text; + if (v === "-" && group[i + 1].text === "-") { + if (i + 1 < n && group[i + 2].text === "-") { + group.splice(i, 3, { + type: "textord", + mode: "text", + loc: SourceLocation.range(a, group[i + 2]), + text: "---" + }); + n -= 2; + } else { + group.splice(i, 2, { + type: "textord", + mode: "text", + loc: SourceLocation.range(a, group[i + 1]), + text: "--" + }); + n -= 1; + } + } + if ((v === "'" || v === "`") && group[i + 1].text === v) { + group.splice(i, 2, { + type: "textord", + mode: "text", + loc: SourceLocation.range(a, group[i + 1]), + text: v + v + }); + n -= 1; + } + } + }; + _proto.parseSymbol = function parseSymbol() { + var nucleus = this.fetch(); + var text4 = nucleus.text; + if (/^\\verb[^a-zA-Z]/.test(text4)) { + this.consume(); + var arg = text4.slice(5); + var star = arg.charAt(0) === "*"; + if (star) { + arg = arg.slice(1); + } + if (arg.length < 2 || arg.charAt(0) !== arg.slice(-1)) { + throw new src_ParseError("\\verb assertion failed --\n please report what input caused this bug"); + } + arg = arg.slice(1, -1); + return { + type: "verb", + mode: "text", + body: arg, + star + }; + } + if (unicodeSymbols.hasOwnProperty(text4[0]) && !src_symbols[this.mode][text4[0]]) { + if (this.settings.strict && this.mode === "math") { + this.settings.reportNonstrict("unicodeTextInMathMode", 'Accented Unicode text character "' + text4[0] + '" used in math mode', nucleus); + } + text4 = unicodeSymbols[text4[0]] + text4.substr(1); + } + var match2 = combiningDiacriticalMarksEndRegex.exec(text4); + if (match2) { + text4 = text4.substring(0, match2.index); + if (text4 === "i") { + text4 = "\u0131"; + } else if (text4 === "j") { + text4 = "\u0237"; + } + } + var symbol; + if (src_symbols[this.mode][text4]) { + if (this.settings.strict && this.mode === "math" && extraLatin.indexOf(text4) >= 0) { + this.settings.reportNonstrict("unicodeTextInMathMode", 'Latin-1/Unicode text character "' + text4[0] + '" used in math mode', nucleus); + } + var group = src_symbols[this.mode][text4].group; + var loc = SourceLocation.range(nucleus); + var s; + if (ATOMS.hasOwnProperty(group)) { + var family = group; + s = { + type: "atom", + mode: this.mode, + family, + loc, + text: text4 + }; + } else { + s = { + type: group, + mode: this.mode, + loc, + text: text4 + }; + } + symbol = s; + } else if (text4.charCodeAt(0) >= 128) { + if (this.settings.strict) { + if (!supportedCodepoint(text4.charCodeAt(0))) { + this.settings.reportNonstrict("unknownSymbol", 'Unrecognized Unicode character "' + text4[0] + '"' + (" (" + text4.charCodeAt(0) + ")"), nucleus); + } else if (this.mode === "math") { + this.settings.reportNonstrict("unicodeTextInMathMode", 'Unicode text character "' + text4[0] + '" used in math mode', nucleus); + } + } + symbol = { + type: "textord", + mode: "text", + loc: SourceLocation.range(nucleus), + text: text4 + }; + } else { + return null; + } + this.consume(); + if (match2) { + for (var i = 0; i < match2[0].length; i++) { + var accent = match2[0][i]; + if (!unicodeAccents[accent]) { + throw new src_ParseError("Unknown accent ' " + accent + "'", nucleus); + } + var command = unicodeAccents[accent][this.mode]; + if (!command) { + throw new src_ParseError("Accent " + accent + " unsupported in " + this.mode + " mode", nucleus); + } + symbol = { + type: "accent", + mode: this.mode, + loc: SourceLocation.range(nucleus), + label: command, + isStretchy: false, + isShifty: true, + base: symbol + }; + } + } + return symbol; + }; + return Parser4; + }(); + Parser_Parser.endOfExpression = ["}", "\\endgroup", "\\end", "\\right", "&"]; + Parser_Parser.endOfGroup = { + "[": "]", + "{": "}", + "\\begingroup": "\\endgroup" + }; + Parser_Parser.SUPSUB_GREEDINESS = 1; + var parseTree_parseTree = function parseTree(toParse, settings) { + if (!(typeof toParse === "string" || toParse instanceof String)) { + throw new TypeError("KaTeX can only parse string typed expression"); + } + var parser = new Parser_Parser(toParse, settings); + delete parser.gullet.macros.current["\\df@tag"]; + var tree = parser.parse(); + if (parser.gullet.macros.get("\\df@tag")) { + if (!settings.displayMode) { + throw new src_ParseError("\\tag works only in display equations"); + } + parser.gullet.feed("\\df@tag"); + tree = [{ + type: "tag", + mode: "text", + body: tree, + tag: parser.parse() + }]; + } + return tree; + }; + var src_parseTree = parseTree_parseTree; + var katex_render = function render3(expression, baseNode, options) { + baseNode.textContent = ""; + var node = katex_renderToDomTree(expression, options).toNode(); + baseNode.appendChild(node); + }; + if (typeof document !== "undefined") { + if (document.compatMode !== "CSS1Compat") { + typeof console !== "undefined" && console.warn("Warning: KaTeX doesn't work in quirks mode. Make sure your website has a suitable doctype."); + katex_render = function render3() { + throw new src_ParseError("KaTeX doesn't work in quirks mode."); + }; + } + } + var renderToString = function renderToString2(expression, options) { + var markup = katex_renderToDomTree(expression, options).toMarkup(); + return markup; + }; + var katex_generateParseTree = function generateParseTree(expression, options) { + var settings = new Settings_Settings(options); + return src_parseTree(expression, settings); + }; + var katex_renderError = function renderError(error2, expression, options) { + if (options.throwOnError || !(error2 instanceof src_ParseError)) { + throw error2; + } + var node = buildCommon.makeSpan(["katex-error"], [new domTree_SymbolNode(expression)]); + node.setAttribute("title", error2.toString()); + node.setAttribute("style", "color:" + options.errorColor); + return node; + }; + var katex_renderToDomTree = function renderToDomTree(expression, options) { + var settings = new Settings_Settings(options); + try { + var tree = src_parseTree(expression, settings); + return buildTree_buildTree(tree, expression, settings); + } catch (error2) { + return katex_renderError(error2, expression, settings); + } + }; + var katex_renderToHTMLTree = function renderToHTMLTree(expression, options) { + var settings = new Settings_Settings(options); + try { + var tree = src_parseTree(expression, settings); + return buildTree_buildHTMLTree(tree, expression, settings); + } catch (error2) { + return katex_renderError(error2, expression, settings); + } + }; + var katex_0 = { + version: "0.12.0", + render: katex_render, + renderToString, + ParseError: src_ParseError, + __parse: katex_generateParseTree, + __renderToDomTree: katex_renderToDomTree, + __renderToHTMLTree: katex_renderToHTMLTree, + __setFontMetrics: setFontMetrics, + __defineSymbol: defineSymbol, + __defineMacro: defineMacro, + __domTree: { + Span: domTree_Span, + Anchor: domTree_Anchor, + SymbolNode: domTree_SymbolNode, + SvgNode, + PathNode: domTree_PathNode, + LineNode + } + }; + var katex_webpack = __webpack_exports__["default"] = katex_0; + } + ])["default"]; + }); + } +}); + +// ../../node_modules/.pnpm/@iktakahiro+markdown-it-katex@4.0.1/node_modules/@iktakahiro/markdown-it-katex/index.js +var require_markdown_it_katex = __commonJS({ + "../../node_modules/.pnpm/@iktakahiro+markdown-it-katex@4.0.1/node_modules/@iktakahiro/markdown-it-katex/index.js"(exports, module2) { + "use strict"; + var katex = require_katex(); + function isValidDelim(state, pos) { + var prevChar, nextChar, max = state.posMax, can_open = true, can_close = true; + prevChar = pos > 0 ? state.src.charCodeAt(pos - 1) : -1; + nextChar = pos + 1 <= max ? state.src.charCodeAt(pos + 1) : -1; + if (prevChar === 32 || prevChar === 9 || nextChar >= 48 && nextChar <= 57) { + can_close = false; + } + if (nextChar === 32 || nextChar === 9) { + can_open = false; + } + return { + can_open, + can_close + }; + } + function math_inline(state, silent) { + var start, match2, token, res, pos, esc_count; + if (state.src[state.pos] !== "$") { + return false; + } + res = isValidDelim(state, state.pos); + if (!res.can_open) { + if (!silent) { + state.pending += "$"; + } + state.pos += 1; + return true; + } + start = state.pos + 1; + match2 = start; + while ((match2 = state.src.indexOf("$", match2)) !== -1) { + pos = match2 - 1; + while (state.src[pos] === "\\") { + pos -= 1; + } + if ((match2 - pos) % 2 == 1) { + break; + } + match2 += 1; + } + if (match2 === -1) { + if (!silent) { + state.pending += "$"; + } + state.pos = start; + return true; + } + if (match2 - start === 0) { + if (!silent) { + state.pending += "$$"; + } + state.pos = start + 1; + return true; + } + res = isValidDelim(state, match2); + if (!res.can_close) { + if (!silent) { + state.pending += "$"; + } + state.pos = start; + return true; + } + if (!silent) { + token = state.push("math_inline", "math", 0); + token.markup = "$"; + token.content = state.src.slice(start, match2); + } + state.pos = match2 + 1; + return true; + } + function math_block(state, start, end2, silent) { + var firstLine, lastLine, next2, lastPos, found = false, token, pos = state.bMarks[start] + state.tShift[start], max = state.eMarks[start]; + if (pos + 2 > max) { + return false; + } + if (state.src.slice(pos, pos + 2) !== "$$") { + return false; + } + pos += 2; + firstLine = state.src.slice(pos, max); + if (silent) { + return true; + } + if (firstLine.trim().slice(-2) === "$$") { + firstLine = firstLine.trim().slice(0, -2); + found = true; + } + for (next2 = start; !found; ) { + next2++; + if (next2 >= end2) { + break; + } + pos = state.bMarks[next2] + state.tShift[next2]; + max = state.eMarks[next2]; + if (pos < max && state.tShift[next2] < state.blkIndent) { + break; + } + if (state.src.slice(pos, max).trim().slice(-2) === "$$") { + lastPos = state.src.slice(0, max).lastIndexOf("$$"); + lastLine = state.src.slice(pos, lastPos); + found = true; + } + } + state.line = next2 + 1; + token = state.push("math_block", "math", 0); + token.block = true; + token.content = (firstLine && firstLine.trim() ? firstLine + "\n" : "") + state.getLines(start + 1, next2, state.tShift[start], true) + (lastLine && lastLine.trim() ? lastLine : ""); + token.map = [start, state.line]; + token.markup = "$$"; + return true; + } + function escapeHtml2(unsafe) { + return unsafe.replace(/&/g, "&").replace(//g, ">").replace(/"/g, """).replace(/'/g, "'"); + } + module2.exports = function math_plugin(md, options) { + options = options || {}; + var katexInline = function(latex) { + options.displayMode = false; + try { + return katex.renderToString(latex, options); + } catch (error2) { + if (options.throwOnError) { + console.log(error2); + } + return `${escapeHtml2(latex)}`; + } + }; + var inlineRenderer = function(tokens, idx) { + return katexInline(tokens[idx].content); + }; + var katexBlock = function(latex) { + options.displayMode = true; + try { + return "

" + katex.renderToString(latex, options) + "

"; + } catch (error2) { + if (options.throwOnError) { + console.log(error2); + } + return `

${escapeHtml2(latex)}

`; + } + }; + var blockRenderer = function(tokens, idx) { + return katexBlock(tokens[idx].content) + "\n"; + }; + md.inline.ruler.after("escape", "math_inline", math_inline); + md.block.ruler.after("blockquote", "math_block", math_block, { + alt: ["paragraph", "reference", "blockquote", "list"] + }); + md.renderer.rules.math_inline = inlineRenderer; + md.renderer.rules.math_block = blockRenderer; + }; + } +}); + +// ../../node_modules/.pnpm/html-to-md@0.8.8/node_modules/html-to-md/dist/index.js +var require_dist = __commonJS({ + "../../node_modules/.pnpm/html-to-md@0.8.8/node_modules/html-to-md/dist/index.js"(exports, module2) { + !function(t2, e) { + "object" === typeof exports && "object" === typeof module2 ? module2.exports = e() : "function" === typeof define && define.amd ? define([], e) : "object" === typeof exports ? exports.html2md = e() : t2.html2md = e(); + }(exports, function() { + return function(t2) { + var e = {}; + function r(n) { + if (e[n]) + return e[n].exports; + var o = e[n] = { i: n, l: false, exports: {} }; + return t2[n].call(o.exports, o, o.exports, r), o.l = true, o.exports; + } + return r.m = t2, r.c = e, r.d = function(t3, e2, n) { + r.o(t3, e2) || Object.defineProperty(t3, e2, { enumerable: true, get: n }); + }, r.r = function(t3) { + "undefined" !== typeof Symbol && Symbol.toStringTag && Object.defineProperty(t3, Symbol.toStringTag, { value: "Module" }), Object.defineProperty(t3, "__esModule", { value: true }); + }, r.t = function(t3, e2) { + if (1 & e2 && (t3 = r(t3)), 8 & e2) + return t3; + if (4 & e2 && "object" === typeof t3 && t3 && t3.__esModule) + return t3; + var n = /* @__PURE__ */ Object.create(null); + if (r.r(n), Object.defineProperty(n, "default", { enumerable: true, value: t3 }), 2 & e2 && "string" != typeof t3) + for (var o in t3) + r.d(n, o, function(e3) { + return t3[e3]; + }.bind(null, o)); + return n; + }, r.n = function(t3) { + var e2 = t3 && t3.__esModule ? function() { + return t3.default; + } : function() { + return t3; + }; + return r.d(e2, "a", e2), e2; + }, r.o = function(t3, e2) { + return Object.prototype.hasOwnProperty.call(t3, e2); + }, r.p = "", r(r.s = 46); + }([function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }); + var n = r(1), o = r(12), i = r(6), a = r(7), c = r(2), u = function() { + function t3(t4, e2, r2) { + var o2 = void 0 === r2 ? {} : r2, i2 = o2.keepSpace, a2 = void 0 !== i2 && i2, c2 = o2.prevTagName, u2 = void 0 === c2 ? "" : c2, s = o2.nextTagName, p = void 0 === s ? "" : s, l = o2.prevTagStr, f = void 0 === l ? "" : l, h2 = o2.nextTagStr, d = void 0 === h2 ? "" : h2, _ = o2.parentTag, y = void 0 === _ ? "" : _, v = o2.isFirstSubTag, g = void 0 === v || v, b = o2.calcLeading, m = void 0 !== b && b, O = o2.leadingSpace, S = void 0 === O ? "" : O, T = o2.layer, x = void 0 === T ? 1 : T, j = o2.noWrap, w = void 0 !== j && j, P = o2.prevHasEndSpace, M = void 0 !== P && P, E = o2.prevHasStartSpace, N = void 0 !== E && E, C = o2.match, L = void 0 === C ? null : C, k = o2.indentSpace, A = void 0 === k ? "" : k, H = o2.language, W = void 0 === H ? "" : H, V = o2.count, R = void 0 === V ? 1 : V, I = o2.tableColumnCount, q = void 0 === I ? 0 : I, D = o2.noExtraLine, U = void 0 !== D && D, B = o2.inTable, F = void 0 !== B && B; + if (this.tagName = e2, this.rawStr = t4, this.parentTag = y, this.prevTagName = u2, this.nextTagName = p, this.prevTagStr = f, this.nextTagStr = d, this.isFirstSubTag = g, this.calcLeading = m, this.leadingSpace = S, this.layer = x, this.noWrap = w, this.match = L, this.indentSpace = A, this.language = W, this.count = R, this.inTable = F, this.tableColumnCount = q, this.noExtraLine = U, this.prevHasEndSpace = M, this.prevHasStartSpace = N, this.hasStartSpace = false, this.hasEndSpace = false, this.keepSpace = a2, !this.__detectStr__(t4, this.tagName)) + return this.attrs = {}, void (this.innerHTML = ""); + var G = this.__fetchTagAttrAndInnerHTML__(t4), $2 = G.attr, J = G.innerHTML; + J.startsWith(" ") && (0, n.isSpacePassingTag)(e2) && (this.hasStartSpace = true), J.endsWith(" ") && (0, n.isSpacePassingTag)(e2) && (this.hasEndSpace = true), this.attrs = $2, this.innerHTML = J; + } + return t3.prototype.__detectStr__ = function(t4, e2) { + if ("<" !== t4[0]) + return "Not a valid tag, current tag name: ".concat(this.tagName, ", tag content: ").concat(t4), false; + for (var r2 = "", n2 = false, o2 = 1; o2 < t4.length && ">" !== t4[o2]; o2++) + !n2 && /(\s|\/)/.test(t4[o2]) && (n2 = true), n2 || (r2 += t4[o2]); + return r2 === e2; + }, t3.prototype.__fetchTagAttrAndInnerHTML__ = function(t4) { + for (var e2 = "", r2 = 1; r2 < t4.length && ">" !== t4[r2]; r2++) + e2 += t4[r2]; + for (var o2 = t4.slice(r2 + 1), i2 = "", a2 = -1, c2 = o2.length - 1; c2 >= 0; c2--) + if ((i2 = o2[c2] + i2).startsWith("") && (a2 = c2); + break; + } + -1 === a2 && (0, n.isSelfClosing)(this.tagName) && this.tagName; + var u2 = (0, n.getTagAttributes)(e2); + return this.tagName && delete u2[this.tagName], { attr: u2, innerHTML: o2.slice(0, a2) }; + }, t3.prototype.__onlyLeadingSpace__ = function(t4) { + t4 = t4.trim(); + for (var e2 = 0; e2 < t4.length; e2++) + if (t4[e2] !== i.SINGLE) + return false; + return true; + }, t3.prototype.__isEmpty__ = function(t4) { + return !this.keepSpace && ("" === t4 && "td" !== this.tagName || this.calcLeading && this.__onlyLeadingSpace__(t4)); + }, t3.prototype.getValidSubTagName = function(t4) { + return t4; + }, t3.prototype.beforeParse = function() { + var t4 = c.default.get().tagListener; + if (t4) { + var e2 = t4(this.tagName, { parentTag: this.parentTag, prevTagName: this.prevTagName, nextTagName: this.nextTagName, isFirstSubTag: this.isFirstSubTag, attrs: this.attrs, innerHTML: this.innerHTML, language: this.language, match: this.match, isSelfClosing: false }), r2 = e2.attrs, n2 = e2.language, o2 = e2.match; + this.attrs = r2, "string" === typeof n2 && (this.language = n2), "undefined" !== typeof o2 && (this.match = o2); + } + return ""; + }, t3.prototype.parseValidSubTag = function(t4, e2, r2) { + var o2 = new ((0, n.getTagConstructor)(e2))(t4, e2, r2); + return [o2.exec(), o2]; + }, t3.prototype.parseOnlyString = function(t4, e2, r2) { + var n2 = new o.default(t4, e2, r2); + return [n2.exec(), n2]; + }, t3.prototype.afterParsed = function(t4) { + return t4; + }, t3.prototype.slim = function(t4) { + return this.keepSpace ? t4 : t4.trim(); + }, t3.prototype.beforeMergeSpace = function(t4) { + return t4; + }, t3.prototype.mergeSpace = function(t4, e2, r2) { + return this.keepSpace && "pre" !== this.tagName ? t4.endsWith("\n") ? t4 : t4 + r2.replace(/\n+/g, "\n") : e2 + t4 + r2; + }, t3.prototype.afterMergeSpace = function(t4) { + return t4; + }, t3.prototype.beforeReturn = function(t4) { + return !((0, n.isSpacePassingTag)(this.prevTagName) && this.prevHasEndSpace || (0, n.isSpacePassingTag)(this.tagName) && this.hasStartSpace) || /^\s+/.test(t4) || /\s+$/.test(this.prevTagStr) ? t4 : " " + t4; + }, t3.prototype.exec = function(t4, e2) { + void 0 === t4 && (t4 = ""), void 0 === e2 && (e2 = ""); + for (var r2 = this.beforeParse(), o2 = (0, n.generateGetNextValidTag)(this.innerHTML), i2 = o2(), c2 = i2[0], u2 = i2[1], s = null, p = false, l = false; "" !== u2; ) { + var f, h2 = o2(), d = h2[0], _ = h2[1], y = { parentTag: this.tagName, nextTagName: d, nextTagStr: _, prevTagName: s, prevTagStr: r2, prevHasEndSpace: l, prevHasStartSpace: p, leadingSpace: this.leadingSpace, layer: this.layer, keepSpace: this.keepSpace, inTable: this.inTable, calcLeading: ("li" === this.tagName || "ol" === this.tagName || "ul" === this.tagName) && this.calcLeading }, v = void 0, g = void 0; + if (null != c2) + v = (f = this.parseValidSubTag(u2, c2, y))[0], g = f[1]; + else + v = (f = this.parseOnlyString(u2, c2, y))[0], g = f[1]; + l = (null === g || void 0 === g ? void 0 : g.hasEndSpace) || false, p = (null === g || void 0 === g ? void 0 : g.hasStartSpace) || false; + var b = this.getValidSubTagName(c2); + c2 = d, u2 = _, null == b && this.__isEmpty__(v) || (!this.keepSpace && (0, a.default)(s) && (0, a.default)(b) && (r2 = r2.replace(/\n+$/, "\n"), v = v.replace(/^\n+/, "\n")), s = b, this.isFirstSubTag = false, r2 += v); + } + return r2 = this.afterParsed(r2), r2 = this.slim(r2), this.__isEmpty__(r2) ? "" : (r2 = this.beforeMergeSpace(r2), !this.noExtraLine && (0, a.default)(this.tagName) && this.prevTagName && !r2.startsWith("\n") && !(0, a.default)(this.prevTagName) && this.parentTag && (t4 = "\n\n"), r2 = this.mergeSpace(r2, t4, e2), this.noWrap && !this.keepSpace && (r2 = r2.replace(/\s+/g, " ")), r2 = this.afterMergeSpace(r2), r2 = this.beforeReturn(r2)); + }, t3; + }(); + e.default = u; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }), e.isSpacePassingTag = e.isIndependentTag = e.clearComment = e.getLanguage = e.getTableAlign = e.getTagAttributes = e.isSelfClosing = e.generateGetNextValidTag = e.getTagConstructor = e.getRealTagName = e.unescapeStr = e.extraEscape = void 0; + var n = r(18); + Object.defineProperty(e, "extraEscape", { enumerable: true, get: function() { + return n.extraEscape; + } }), Object.defineProperty(e, "unescapeStr", { enumerable: true, get: function() { + return n.unescapeStr; + } }); + var o = r(47); + e.generateGetNextValidTag = o.default; + var i = r(48); + e.getTagConstructor = i.default; + var a = r(11); + e.isSelfClosing = a.default; + var c = r(51); + e.getTagAttributes = c.default; + var u = r(52); + e.getLanguage = u.default; + var s = r(53); + e.clearComment = s.default; + var p = r(13); + e.getRealTagName = p.default; + var l = r(7); + e.isIndependentTag = l.default; + var f = r(54); + e.isSpacePassingTag = f.default; + var h2 = r(55); + e.getTableAlign = h2.default; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }); + var n = function() { + function t3(t4) { + var e2 = void 0 === t4 ? {} : t4, r2 = e2.skipTags, n2 = void 0 === r2 ? [] : r2, o2 = e2.emptyTags, i2 = void 0 === o2 ? [] : o2, a = e2.ignoreTags, c = void 0 === a ? [] : a, u = e2.aliasTags, s = void 0 === u ? {} : u, p = e2.renderCustomTags, l = void 0 === p || p, f = e2.tagListener, h2 = void 0 === f ? function(t5, e3) { + return e3; + } : f; + this.options = { skipTags: n2, emptyTags: i2, ignoreTags: c, aliasTags: s, renderCustomTags: l, tagListener: h2 }; + } + return t3.prototype.get = function() { + return this.options; + }, t3.prototype.clear = function() { + this.options = {}; + }, t3.prototype.set = function(t4, e2) { + var r2 = this; + t4 && "[object Object]" === Object.prototype.toString.call(t4) && Object.keys(t4).forEach(function(n2) { + e2 ? r2.options[n2] = t4[n2] : function(t5, e3, r3) { + if (!(r3 in t5)) + return void (t5[r3] = e3[r3]); + var n3 = Array.isArray(t5[r3]), o2 = "[object Object]" === Object.prototype.toString.call(t5[r3]); + t5[r3] = n3 ? t5[r3].concat(e3[r3]) : o2 ? Object.assign(t5[r3], e3[r3]) : e3[r3]; + }(r2.options, t4, n2); + }); + }, t3.prototype.reset = function() { + this.options = JSON.parse(JSON.stringify(o)), this.options.tagListener = function(t4, e2) { + return e2; + }; + }, t3; + }(); + var o = { ignoreTags: ["", "style", "head", "!doctype", "form", "svg", "noscript", "script", "meta"], skipTags: ["div", "html", "body", "nav", "section", "footer", "main", "aside", "article", "header"], emptyTags: [], aliasTags: { figure: "p", dl: "p", dd: "p", dt: "p", figcaption: "p" }, renderCustomTags: true }, i = new n(); + i.reset(), e.default = i; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2) { + void 0 === r2 && (r2 = "h1"); + var n2 = t3.call(this, e3, r2) || this; + return n2.match = "#", n2; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function(t4) { + return this.match + " " + t4; + }, e2.prototype.exec = function(e3, r2) { + return e3 || (e3 = "\n"), r2 || (r2 = "\n"), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(0).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }); + var n = r(1), o = r(2), i = function() { + function t3(t4, e2, r2) { + var n2 = void 0 === r2 ? {} : r2, o2 = n2.parentTag, i2 = void 0 === o2 ? "" : o2, a = n2.leadingSpace, c = void 0 === a ? "" : a, u = n2.layer, s = void 0 === u ? 1 : u, p = n2.isFirstSubTag, l = void 0 !== p && p, f = n2.inTable, h2 = void 0 !== f && f, d = n2.match, _ = void 0 === d ? null : d, y = n2.prevTagName, v = void 0 === y ? "" : y, g = n2.nextTagName, b = void 0 === g ? "" : g; + if (this.tagName = e2, this.rawStr = t4, this.parentTag = i2, this.isFirstSubTag = l, this.prevTagName = v, this.nextTagName = b, this.leadingSpace = c, this.layer = s, this.innerHTML = "", this.match = _, this.inTable = h2, this.__detectStr__(t4, this.tagName)) { + var m = this.__fetchTagAttr__(t4).attr; + this.attrs = m; + } else + this.attrs = {}; + } + return t3.prototype.__detectStr__ = function(t4, e2) { + if ("<" !== t4[0]) + return "Not a valid tag, current tag name: ".concat(this.tagName, ", tag content: ").concat(t4), false; + for (var r2 = "", n2 = false, o2 = 1; o2 < t4.length && ">" !== t4[o2]; o2++) + !n2 && /(\s|\/)/.test(t4[o2]) && (n2 = true), n2 || (r2 += t4[o2]); + return r2 === e2; + }, t3.prototype.__fetchTagAttr__ = function(t4) { + for (var e2 = "", r2 = 1; r2 < t4.length && ">" !== t4[r2]; r2++) + e2 += t4[r2]; + return { attr: (0, n.getTagAttributes)(e2) }; + }, t3.prototype.beforeParse = function() { + var t4 = o.default.get().tagListener; + if (t4) { + var e2 = t4(this.tagName, { parentTag: this.parentTag, prevTagName: this.prevTagName, nextTagName: this.nextTagName, isFirstSubTag: this.isFirstSubTag, attrs: this.attrs, innerHTML: this.innerHTML, match: this.match, isSelfClosing: true }), r2 = e2.attrs, n2 = e2.match; + this.attrs = r2, this.match = n2; + } + return ""; + }, t3.prototype.beforeMergeSpace = function(t4) { + return t4; + }, t3.prototype.afterMergeSpace = function(t4) { + return t4; + }, t3.prototype.beforeReturn = function(t4) { + return t4; + }, t3.prototype.exec = function(t4, e2) { + void 0 === t4 && (t4 = ""), void 0 === e2 && (e2 = ""); + var r2 = this.beforeParse(); + return r2 = t4 + (r2 = this.beforeMergeSpace(r2)) + e2, r2 = this.afterMergeSpace(r2), r2 = this.beforeReturn(r2); + }, t3; + }(); + e.default = i; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }); + var n = function() { + function t3() { + } + return t3.prototype.exec = function() { + return ""; + }, t3; + }(); + e.default = n; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }), e.TRIPLE = e.DOUBLE = e.SINGLE = void 0; + e.SINGLE = "\u2608"; + e.DOUBLE = "\u2608\u2608"; + e.TRIPLE = "\u2608\u2608\u2608"; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }); + var n = r(13), o = { html: true, body: true, p: true, div: true, pre: true, section: true, blockquote: true, aside: true, li: true, ul: true, ol: true, form: true, hr: true, h1: true, h2: true, h3: true, h4: true, h5: true, h6: true, dl: true, dd: true, dt: true, br: true, table: true }; + e.default = function(t3) { + if (!t3) + return false; + var e2 = (0, n.default)(t3); + return !!e2 && !!o[e2]; + }; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(), o = this && this.__assign || function() { + return (o = Object.assign || function(t3) { + for (var e2, r2 = 1, n2 = arguments.length; r2 < n2; r2++) + for (var o2 in e2 = arguments[r2]) + Object.prototype.hasOwnProperty.call(e2, o2) && (t3[o2] = e2[o2]); + return t3; + }).apply(this, arguments); + }; + Object.defineProperty(e, "__esModule", { value: true }), e.__EmptySelfClose__ = e.__Empty__ = void 0; + var i = r(0), a = r(4), c = function(t3) { + function e2(e3, r2, n2) { + return void 0 === r2 && (r2 = "__empty__"), t3.call(this, e3, r2, n2) || this; + } + return n(e2, t3), e2.prototype.slim = function(t4) { + return t4; + }, e2.prototype.parseValidSubTag = function(r2, n2, i2) { + if ("__skip__" === this.tagName) + return t3.prototype.parseValidSubTag.call(this, r2, n2, i2); + var a2 = new e2(r2, n2, o({}, i2)); + return [a2.exec(), a2]; + }, e2.prototype.parseOnlyString = function(e3, r2, n2) { + return "__skip__" === this.tagName ? t3.prototype.parseOnlyString.call(this, e3, r2, n2) : [e3, null]; + }, e2.prototype.exec = function() { + return t3.prototype.exec.call(this, "", ""); + }, e2; + }(i.default); + e.__Empty__ = c; + var u = function(t3) { + function e2(e3, r2) { + void 0 === r2 && (r2 = "__emptyselfclose__"); + var n2 = t3.call(this, e3, r2) || this; + return n2.tagName = r2, n2; + } + return n(e2, t3), e2.prototype.exec = function() { + return t3.prototype.exec.call(this, "", ""); + }, e2; + }(a.default); + e.__EmptySelfClose__ = u; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }), e.__SkipSelfClose__ = e.__Skip__ = void 0; + var o = r(0), i = r(4), a = r(1), c = function(t3) { + function e2(e3, r2, n2) { + void 0 === r2 && (r2 = "__skip__"); + var o2 = t3.call(this, e3, r2, n2) || this; + return o2.noNeedWrap = ["td", "th"], o2; + } + return n(e2, t3), e2.prototype.exec = function() { + var e3 = (0, a.isIndependentTag)((0, a.getRealTagName)(this.tagName)) && (!this.parentTag || !this.noNeedWrap.includes(this.parentTag)), r2 = e3 ? "\n" : "", n2 = e3 ? "\n" : ""; + return t3.prototype.exec.call(this, r2, n2); + }, e2; + }(o.default); + e.__Skip__ = c; + var u = function(t3) { + function e2(e3, r2, n2) { + return void 0 === r2 && (r2 = "__skipselfclose__"), t3.call(this, e3, r2, n2) || this; + } + return n(e2, t3), e2.prototype.exec = function() { + return ""; + }, e2; + }(i.default); + e.__SkipSelfClose__ = u; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }), e.__NoMatchSelfClose__ = e.__NoMatch__ = void 0; + var o = r(0), i = r(4), a = function(t3) { + function e2(e3, r2) { + return void 0 === r2 && (r2 = "__nomatch__"), t3.call(this, e3, r2) || this; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function(t4) { + return "<".concat(this.tagName, ">").concat(t4, ""); + }, e2.prototype.exec = function() { + return t3.prototype.exec.call(this, "", ""); + }, e2; + }(o.default); + e.__NoMatch__ = a; + var c = function(t3) { + function e2(e3, r2) { + return void 0 === r2 && (r2 = "__nomatchselfclose__"), t3.call(this, e3, r2) || this; + } + return n(e2, t3), e2.prototype.exec = function() { + return "<".concat(this.tagName, " />"); + }, e2; + }(i.default); + e.__NoMatchSelfClose__ = c; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }); + var n = { img: true, hr: true, input: true, br: true, meta: true, link: true, "!doctype": true, base: true, col: true, area: true, param: true, object: true, embed: true, keygen: true, source: true }; + e.default = function(t3) { + return null != t3 && !!n[t3.toLowerCase()]; + }; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }); + var n = r(1), o = r(7), i = function() { + function t3(t4, e2, r2) { + void 0 === e2 && (e2 = "__nomatch__"); + var n2 = void 0 === r2 ? {} : r2, o2 = n2.keepSpace, i2 = void 0 !== o2 && o2, a = n2.prevTagName, c = void 0 === a ? "" : a, u = n2.nextTagName, s = void 0 === u ? "" : u, p = n2.prevTagStr, l = void 0 === p ? "" : p, f = n2.prevHasEndSpace, h2 = void 0 !== f && f, d = n2.prevHasStartSpace, _ = void 0 !== d && d, y = n2.parentTag, v = void 0 === y ? "" : y, g = n2.calcLeading, b = void 0 !== g && g, m = n2.layer, O = void 0 === m ? 1 : m, S = n2.leadingSpace, T = void 0 === S ? "" : S, x = n2.inTable, j = void 0 !== x && x; + this.tagName = e2, this.nextTagName = s, this.prevTagName = c, this.parentTag = v, this.prevTagStr = l, this.keepSpace = i2, this.calcLeading = b, this.leadingSpace = T, this.layer = O, this.rawStr = t4, this.inTable = j, this.prevHasEndSpace = h2, this.prevHasStartSpace = _, this.hasEndSpace = false, this.hasStartSpace = false, t4.startsWith(" ") && (this.hasStartSpace = true), t4.endsWith(" ") && (this.hasEndSpace = true); + } + return t3.prototype.slim = function(t4) { + if (this.keepSpace) + return t4; + var e2 = t4.replace(/\s+/g, " "); + return (0, o.default)(this.prevTagName) && (e2 = e2.trimLeft()), (0, o.default)(this.nextTagName) && (e2 = e2.trimRight()), e2; + }, t3.prototype.beforeReturn = function(t4) { + if (this.keepSpace) + return t4; + if (this.calcLeading) + return this.leadingSpace + (0, n.extraEscape)(t4); + var e2 = (0, n.extraEscape)(t4); + return this.inTable && (e2 = e2.replace(/\|/g, "\\|")), this.prevTagName, this.prevHasEndSpace, this.prevTagStr, (0, n.isSpacePassingTag)(this.prevTagName) && this.prevHasEndSpace && !/^\s+/.test(t4) && !/\s+$/.test(this.prevTagStr) ? " " + t4 : e2; + }, t3.prototype.exec = function() { + var t4 = this.rawStr; + return t4 = this.slim(t4), t4 = this.beforeReturn(t4); + }, t3; + }(); + e.default = i; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }); + var n = r(2); + e.default = function(t3) { + if (!t3) + return t3; + var e2 = n.default.get().aliasTags; + return null != (null === e2 || void 0 === e2 ? void 0 : e2[t3]) ? e2[t3] : t3; + }; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2, n2) { + void 0 === r2 && (r2 = "strong"); + var o2 = t3.call(this, e3, r2, n2) || this; + return o2.layer = 1, o2.match = o2.match || "**", o2; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function(t4) { + return this.match + t4 + this.match; + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = ""), void 0 === r2 && (r2 = ""), null != this.match && this.prevTagStr && !this.prevTagStr.endsWith("\\" + this.match[0]) && this.prevTagStr.endsWith(this.match[0]) && (e3 = " "), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(0).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2) { + void 0 === r2 && (r2 = "del"); + var n2 = t3.call(this, e3, r2) || this; + return n2.match = n2.match || "~~", n2; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function(t4) { + return this.match + t4 + this.match; + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = ""), void 0 === r2 && (r2 = ""), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(0).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2, n2) { + void 0 === r2 && (r2 = "em"); + var o2 = t3.call(this, e3, r2, n2) || this; + return o2.match = o2.match || "*", o2; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function(t4) { + return this.match + t4 + this.match; + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = ""), void 0 === r2 && (r2 = ""), "strong" === this.parentTag && this.nextTagStr && (r2 = " "), null != this.match && this.prevTagStr && !this.prevTagStr.endsWith("\\" + this.match) && this.prevTagStr.endsWith(this.match) && (e3 = " "), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(0).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2, n2) { + void 0 === r2 && (r2 = "th"); + var o2 = t3.call(this, e3, r2, n2) || this; + return o2.tagName = r2, o2; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function(t4) { + return t4 + "|"; + }, e2.prototype.parseValidSubTag = function(e3, r2, n2) { + return "ul" === r2 || "ol" === r2 || "table" === r2 || "pre" === r2 ? [e3.replace(/([\n\r])/g, ""), null] : t3.prototype.parseValidSubTag.call(this, e3, r2, n2); + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = ""), void 0 === r2 && (r2 = ""), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(0).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }), e.unescapeStr = e.extraEscape = e.escapeStr = void 0; + var n = { "&": "&", "<": "<", ">": ">", """: '"', "'": "'", "'": "'", "`": "`", "“": "\u201C", "”": "\u201D" }, o = { "&": "&", "<": "<", ">": ">", '"': """, "'": "'", "`": "`", "\u201C": "“", "\u201D": "”" }, i = /[&<>"'`\u201c\u201d]/g, a = RegExp(i.source), c = /&(?:amp|lt|gt|quot|#39|apos|#x60|ldquo|rdquo);/g, u = RegExp(c.source), s = [[/\\/g, "\\\\"], [/\*/g, "\\*"], [/^-/g, "\\-"], [/^\+ /g, "\\+ "], [/^(=+)/g, "\\$1"], [/^(#{1,6}) /g, "\\$1 "], [/`/g, "\\`"], [/^~~~/g, "\\~~~"], [/\[/g, "\\["], [/\]/g, "\\]"], [/^>/g, "\\>"], [/_/g, "\\_"], [/^(\d+)\. /g, "$1\\. "]]; + e.escapeStr = function(t3) { + return t3 && a.test(t3) ? t3.replace(i, function(t4) { + return o[t4]; + }) : t3; + }, e.unescapeStr = function(t3) { + return t3 = t3 && u.test(t3) ? t3.replace(c, function(t4) { + return n[t4]; + }) : t3; + }, e.extraEscape = function(t3) { + return s.reduce(function(t4, e2) { + return t4.replace(e2[0], e2[1]); + }, t3); + }; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2, n2) { + return void 0 === r2 && (r2 = "a"), t3.call(this, e3, r2, n2) || this; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function(t4) { + var e3 = this.attrs, r2 = e3.href, n2 = e3.title, o2 = r2 || ""; + return n2 ? "[".concat(t4, "](").concat(o2, ' "').concat(n2, '")') : "[".concat(t4, "](").concat(o2, ")"); + }, e2.prototype.parseOnlyString = function(e3, r2, n2) { + return "tbody" === this.parentTag || "thead" === this.parentTag ? [e3, null] : t3.prototype.parseOnlyString.call(this, e3, r2, n2); + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = ""), void 0 === r2 && (r2 = ""), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(0).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2, n2) { + return void 0 === r2 && (r2 = "b"), t3.call(this, e3, r2, n2) || this; + } + return n(e2, t3), e2.prototype.exec = function(e3, r2) { + return t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(14).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(), o = this && this.__assign || function() { + return (o = Object.assign || function(t3) { + for (var e2, r2 = 1, n2 = arguments.length; r2 < n2; r2++) + for (var o2 in e2 = arguments[r2]) + Object.prototype.hasOwnProperty.call(e2, o2) && (t3[o2] = e2[o2]); + return t3; + }).apply(this, arguments); + }; + Object.defineProperty(e, "__esModule", { value: true }); + var i = r(7), a = r(0), c = r(1), u = function(t3) { + function e2(e3, r2, n2) { + void 0 === r2 && (r2 = "blockquote"); + var o2 = t3.call(this, e3, r2, n2) || this; + return o2.match = o2.match || ">", o2.fillPerLine = o2.fillPerLine.bind(o2), o2; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function(t4) { + if ("" === t4.trim()) + return ""; + var e3 = this.match + " " + t4; + return this.calcLeading ? this.leadingSpace + e3 : e3; + }, e2.prototype.afterMergeSpace = function(t4) { + for (var e3 = this, r2 = t4.split("\n"), n2 = r2.length - 1; n2 >= 0; n2--) + n2 < r2.length - 1 && ">" === r2[n2].trim() && ">" === r2[n2 + 1].trim() && r2.splice(n2, 1); + return (r2 = r2.map(function(t5) { + return "" === t5 ? "" : e3.fillPerLine(t5); + })).join("\n"); + }, e2.prototype.beforeReturn = function(t4) { + return t4.replace("\n\n", "\n"); + }, e2.prototype.fillPerLine = function(t4) { + var e3 = ">"; + if (this.calcLeading && (e3 = this.leadingSpace + ">"), !t4.startsWith(e3)) { + var r2 = this.match + " " + t4; + return this.calcLeading ? this.leadingSpace + r2 : r2; + } + return t4; + }, e2.prototype.parseValidSubTag = function(t4, e3, r2) { + var n2; + "blockquote" === e3 ? n2 = new ((0, c.getTagConstructor)(e3))(t4, e3, o(o({}, r2), { calcLeading: this.calcLeading, match: this.match + ">", noExtraLine: true })) : n2 = new ((0, c.getTagConstructor)(e3))(t4, e3, o(o({}, r2), { noExtraLine: true })); + var a2 = n2.exec(), u2 = ""; + this.calcLeading && (u2 = this.leadingSpace); + var s = (0, i.default)(r2.prevTagName) && "br" !== r2.prevTagName, p = (0, i.default)(r2.nextTagName) && "br" !== r2.nextTagName, l = (0, i.default)(e3) && "br" !== e3; + return this.isFirstSubTag ? [a2.trimLeft().replace(u2, ""), n2] : l ? (a2 = u2 + this.match + a2, s || (a2 = "\n" + a2), !p && r2.nextTagStr && r2.nextTagStr.trim() && (a2 += this.match + "\n"), [a2, n2]) : s ? [u2 + this.match + "\n" + a2, n2] : [a2, n2]; + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = "\n"), void 0 === r2 && (r2 = "\n"), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(a.default); + e.default = u; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = r(4), i = r(18), a = function(t3) { + function e2(e3, r2, n2) { + return void 0 === r2 && (r2 = "b"), t3.call(this, e3, r2, n2) || this; + } + return n(e2, t3), e2.prototype.exec = function(t4, e3) { + return void 0 === e3 && (e3 = "\n"), this.inTable ? (0, i.escapeStr)("
") : " " + e3; + }, e2; + }(o.default); + e.default = a; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(), o = this && this.__assign || function() { + return (o = Object.assign || function(t3) { + for (var e2, r2 = 1, n2 = arguments.length; r2 < n2; r2++) + for (var o2 in e2 = arguments[r2]) + Object.prototype.hasOwnProperty.call(e2, o2) && (t3[o2] = e2[o2]); + return t3; + }).apply(this, arguments); + }; + Object.defineProperty(e, "__esModule", { value: true }); + var i = r(0), a = r(1), c = function(t3) { + function e2(e3, r2, n2) { + void 0 === r2 && (r2 = "code"); + var o2 = t3.call(this, e3, r2, n2) || this; + return o2.match = null == o2.match ? "`" : o2.match, o2.noWrap = "`" === o2.match, o2.layer = 1, o2; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function(t4) { + var e3, r2; + return "" !== this.match && "`" !== this.match ? (e3 = this.match + " ", r2 = " " + this.match) : (e3 = this.match, r2 = this.match), e3 + t4 + r2; + }, e2.prototype.parseValidSubTag = function(t4, e3, r2) { + var n2; + return "pre" === e3 ? [(n2 = new ((0, a.getTagConstructor)(e3))(t4, e3, o(o({}, r2), { language: "", match: "" }))).exec("", "\n"), n2] : [(n2 = new ((0, a.getTagConstructor)(e3))(t4, e3, o(o({}, r2), { keepSpace: this.keepSpace, noWrap: this.noWrap }))).exec("", ""), n2]; + }, e2.prototype.parseOnlyString = function(t4) { + if ("" !== this.match && t4) { + var e3 = 1; + (t4.startsWith("`") || t4.endsWith("`")) && (e3 = 2, (t4.startsWith("``") || t4.endsWith("``")) && (e3 = 3)), this.match = "`".repeat(e3); + } + return [(0, a.unescapeStr)(t4), null]; + }, e2.prototype.slim = function(t4) { + return this.keepSpace ? t4 : t4.trim(); + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = ""), void 0 === r2 && (r2 = ""), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(i.default); + e.default = c; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2) { + void 0 === r2 && (r2 = "h1"); + var n2 = t3.call(this, e3, r2) || this; + return n2.match = "#", n2; + } + return n(e2, t3), e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = "\n"), void 0 === r2 && (r2 = "\n"), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(3).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2) { + void 0 === r2 && (r2 = "h2"); + var n2 = t3.call(this, e3, r2) || this; + return n2.match = "##", n2; + } + return n(e2, t3), e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = "\n"), void 0 === r2 && (r2 = "\n"), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(3).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2) { + void 0 === r2 && (r2 = "h3"); + var n2 = t3.call(this, e3, r2) || this; + return n2.match = "###", n2; + } + return n(e2, t3), e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = "\n"), void 0 === r2 && (r2 = "\n"), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(3).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2) { + void 0 === r2 && (r2 = "h4"); + var n2 = t3.call(this, e3, r2) || this; + return n2.match = "####", n2; + } + return n(e2, t3), e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = "\n"), void 0 === r2 && (r2 = "\n"), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(3).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2) { + void 0 === r2 && (r2 = "h5"); + var n2 = t3.call(this, e3, r2) || this; + return n2.match = "#####", n2; + } + return n(e2, t3), e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = "\n"), void 0 === r2 && (r2 = "\n"), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(3).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2) { + void 0 === r2 && (r2 = "h6"); + var n2 = t3.call(this, e3, r2) || this; + return n2.match = "######", n2; + } + return n(e2, t3), e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = "\n"), void 0 === r2 && (r2 = "\n"), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(3).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2, n2) { + void 0 === r2 && (r2 = "hr"); + var o2 = t3.call(this, e3, r2, n2) || this; + return o2.match = "---", o2; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function() { + return this.leadingSpace + this.match; + }, e2.prototype.beforeReturn = function(t4) { + return t4.replace(/^(?:\n\s*)/, "\n\n").replace(/(?:\n\s*)$/, "\n\n"), t4; + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = "\n"), void 0 === r2 && (r2 = "\n"), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(4).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2, n2) { + return void 0 === r2 && (r2 = "i"), t3.call(this, e3, r2, n2) || this; + } + return n(e2, t3), e2.prototype.exec = function(e3, r2) { + return t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(16).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2, n2) { + return void 0 === r2 && (r2 = "img"), t3.call(this, e3, r2, n2) || this; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function() { + var t4 = this.attrs, e3 = t4.src, r2 = t4.alt; + return r2 || (r2 = ""), e3 || (e3 = ""), "![".concat(r2, "](").concat(e3, ")"); + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = ""), void 0 === r2 && (r2 = ""), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(4).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2, n2) { + return void 0 === r2 && (r2 = "input"), t3.call(this, e3, r2, n2) || this; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function() { + var t4 = this.attrs, e3 = t4.type, r2 = t4.checked; + return "li" === this.parentTag && "checkbox" === e3 ? null != r2 ? "[x] " : "[ ] " : ""; + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = ""), void 0 === r2 && (r2 = ""), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(4).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(), o = this && this.__assign || function() { + return (o = Object.assign || function(t3) { + for (var e2, r2 = 1, n2 = arguments.length; r2 < n2; r2++) + for (var o2 in e2 = arguments[r2]) + Object.prototype.hasOwnProperty.call(e2, o2) && (t3[o2] = e2[o2]); + return t3; + }).apply(this, arguments); + }; + Object.defineProperty(e, "__esModule", { value: true }); + var i = r(0), a = r(1), c = r(7), u = r(6), s = function(t3) { + function e2(e3, r2, n2) { + void 0 === r2 && (r2 = "li"); + var o2 = t3.call(this, e3, r2, n2) || this; + return o2.match = o2.match || "*", o2.extraGap = "", o2; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function(t4) { + return this.extraGap + this.leadingSpace + this.match + " " + t4; + }, e2.prototype.__calcNextLeading__ = function() { + var t4, e3, r2; + return 1 === (null === (t4 = this.match) || void 0 === t4 ? void 0 : t4.length) ? u.DOUBLE : 2 === (null === (e3 = this.match) || void 0 === e3 ? void 0 : e3.length) ? u.TRIPLE : 3 === (null === (r2 = this.match) || void 0 === r2 ? void 0 : r2.length) ? u.DOUBLE : u.TRIPLE + u.DOUBLE; + }, e2.prototype.parseValidSubTag = function(t4, e3, r2) { + var n2 = (0, a.getTagConstructor)(e3), i2 = this.__calcNextLeading__(), c2 = new n2(t4, e3, o(o({}, r2), { calcLeading: true, leadingSpace: this.leadingSpace + i2, layer: this.layer + 1 })), u2 = c2.exec(); + return "p" === e3 && (this.extraGap = "\n"), this.isFirstSubTag ? [u2.trimLeft().replace(this.leadingSpace + i2, ""), c2] : [u2, c2]; + }, e2.prototype.parseOnlyString = function(e3, r2, n2) { + var i2 = false; + (0, c.default)(n2.prevTagName) && (i2 = true); + var a2 = this.__calcNextLeading__(), u2 = t3.prototype.parseOnlyString.call(this, e3, r2, o(o({}, n2), { calcLeading: i2, leadingSpace: this.leadingSpace + a2, layer: this.layer + 1 })), s2 = u2[0], p = u2[1]; + return this.isFirstSubTag ? [s2.replace(this.leadingSpace + a2, ""), p] : [s2, p]; + }, e2.prototype.beforeReturn = function(e3) { + return t3.prototype.beforeReturn.call(this, e3); + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = "\n"), void 0 === r2 && (r2 = "\n"), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(i.default); + e.default = s; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(), o = this && this.__assign || function() { + return (o = Object.assign || function(t3) { + for (var e2, r2 = 1, n2 = arguments.length; r2 < n2; r2++) + for (var o2 in e2 = arguments[r2]) + Object.prototype.hasOwnProperty.call(e2, o2) && (t3[o2] = e2[o2]); + return t3; + }).apply(this, arguments); + }; + Object.defineProperty(e, "__esModule", { value: true }); + var i = r(0), a = r(5), c = r(1), u = r(2), s = function(t3) { + function e2(e3, r2, n2) { + void 0 === r2 && (r2 = "ol"); + var o2, i2 = this; + i2 = t3.call(this, e3, r2, n2) || this; + var a2 = parseInt(null === (o2 = null === i2 || void 0 === i2 ? void 0 : i2.attrs) || void 0 === o2 ? void 0 : o2.start, 10); + return i2.count = isNaN(a2) ? 1 : a2, i2; + } + return n(e2, t3), e2.prototype.__isValidSubTag__ = function(t4) { + if (!t4) + return false; + var e3 = u.default.get().aliasTags, r2 = (0, c.getTagConstructor)(t4); + return "li" === t4 || "li" == (null === e3 || void 0 === e3 ? void 0 : e3[t4]) || r2 === a.default; + }, e2.prototype.getValidSubTagName = function(t4) { + return t4 && this.__isValidSubTag__(t4) ? t4 : null; + }, e2.prototype.parseValidSubTag = function(t4, e3, r2) { + var n2 = (0, c.getTagConstructor)(e3); + if (this.__isValidSubTag__(e3)) { + var i2 = this.count + ".", a2 = new n2(t4, e3, o(o({}, r2), { calcLeading: true, leadingSpace: this.leadingSpace, layer: this.layer, match: i2 })); + return this.count++, [a2.exec("", "\n"), a2]; + } + return ["", null]; + }, e2.prototype.parseOnlyString = function() { + return ["", null]; + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = "\n"), void 0 === r2 && (r2 = "\n"), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(i.default); + e.default = s; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2, n2) { + return void 0 === r2 && (r2 = "p"), t3.call(this, e3, r2, n2) || this; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function(t4) { + return this.calcLeading ? this.leadingSpace + t4 : t4; + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = "\n"), void 0 === r2 && (r2 = "\n"), this.prevTagName || !this.prevTagStr || this.prevTagStr.endsWith("\n") || (e3 = "\n\n"), this.nextTagName || !this.nextTagStr || this.nextTagStr.startsWith("\n") || (r2 = "\n\n"), this.inTable && (e3 = "", r2 = ""), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(0).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(), o = this && this.__assign || function() { + return (o = Object.assign || function(t3) { + for (var e2, r2 = 1, n2 = arguments.length; r2 < n2; r2++) + for (var o2 in e2 = arguments[r2]) + Object.prototype.hasOwnProperty.call(e2, o2) && (t3[o2] = e2[o2]); + return t3; + }).apply(this, arguments); + }; + Object.defineProperty(e, "__esModule", { value: true }); + var i = r(0), a = r(8), c = r(1), u = r(6), s = function(t3) { + function e2(e3, r2, n2) { + void 0 === r2 && (r2 = "pre"); + var o2 = t3.call(this, e3, r2, n2) || this; + return o2.indentSpace = u.DOUBLE + u.DOUBLE, o2.isIndent = o2.innerHTML.includes("```"), o2.match = o2.isIndent ? "" : "```", o2.language = o2.language || (0, c.getLanguage)(e3), o2.keepSpace = true, o2; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function(t4) { + var e3 = this.isIndent || "code" === this.parentTag ? "" : this.match + this.language + "\n", r2 = ""; + return t4.endsWith("\n") || (r2 = "\n"), e3 + t4 + (this.isIndent || "code" === this.parentTag ? "" : r2 + this.match); + }, e2.prototype.fillPerLine = function(t4) { + var e3 = ""; + return this.calcLeading && (e3 = this.leadingSpace), this.isIndent ? e3 + this.indentSpace + t4 : e3 + t4; + }, e2.prototype.afterMergeSpace = function(t4) { + var e3 = this, r2 = t4.split("\n"); + return (r2 = r2.map(function(t5) { + return "" === t5 ? "" : e3.fillPerLine(t5); + })).join("\n"); + }, e2.prototype.parseValidSubTag = function(t4, e3, r2) { + if ("code" === e3) { + var n2 = new ((0, c.getTagConstructor)(e3))(t4, e3, o(o({}, r2), { match: "", language: this.language, keepSpace: true })); + return [n2.exec("", ""), n2]; + } + var i2 = void 0; + return [(i2 = (0, c.isSelfClosing)(e3) ? new a.__EmptySelfClose__(t4, e3) : new a.__Empty__(t4, e3, o(o({}, r2), { keepSpace: true }))).exec(), i2]; + }, e2.prototype.parseOnlyString = function(t4) { + return [t4, null]; + }, e2.prototype.slim = function(t4) { + return t4; + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = "\n"), void 0 === r2 && (r2 = "\n"), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(i.default); + e.default = s; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2) { + return void 0 === r2 && (r2 = "s"), t3.call(this, e3, r2) || this; + } + return n(e2, t3), e2.prototype.exec = function(e3, r2) { + return t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(15).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2, n2) { + return void 0 === r2 && (r2 = "span"), t3.call(this, e3, r2, n2) || this; + } + return n(e2, t3), e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = ""), void 0 === r2 && (r2 = ""), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(0).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(), o = this && this.__assign || function() { + return (o = Object.assign || function(t3) { + for (var e2, r2 = 1, n2 = arguments.length; r2 < n2; r2++) + for (var o2 in e2 = arguments[r2]) + Object.prototype.hasOwnProperty.call(e2, o2) && (t3[o2] = e2[o2]); + return t3; + }).apply(this, arguments); + }; + Object.defineProperty(e, "__esModule", { value: true }); + var i = r(0), a = r(1); + var c = function(t3) { + function e2(e3, r2, n2) { + void 0 === r2 && (r2 = "table"); + var o2 = t3.call(this, e3, r2, n2) || this; + return o2.exist_thead = false, o2.exist_tbody = false, o2.empty_tbody = true, o2.tableColumnCount = function(t4) { + for (var e4 = "", r3 = 0; r3 < t4.length && !e4.endsWith(""); r3++) + e4 += t4[r3]; + return Math.max(e4.split("").length - 1, e4.split("").length - 1); + }(o2.innerHTML), o2; + } + return n(e2, t3), e2.prototype.parseValidSubTag = function(t4, e3, r2) { + "thead" === e3 && (this.exist_thead = true), "tbody" === e3 && (this.exist_tbody = true, this.empty_tbody = false), "tr" === e3 && (this.empty_tbody = false); + var n2 = new ((0, a.getTagConstructor)(e3))(t4, e3, o(o({}, r2), { tableColumnCount: this.tableColumnCount, inTable: true })); + return [n2.exec("", "\n"), n2]; + }, e2.prototype.parseOnlyString = function() { + return ["", null]; + }, e2.prototype.beforeReturn = function(t4) { + if (!this.exist_thead && !this.exist_tbody && this.empty_tbody) + return ""; + if (0 === this.tableColumnCount) + return ""; + if (!this.exist_tbody) { + for (var e3 = (0, a.getTableAlign)(this.innerHTML, this.tableColumnCount), r2 = this.leadingSpace + "|", n2 = 0; n2 < e3.length; n2++) + r2 += e3[n2]; + t4 = this.empty_tbody ? t4 + r2 + "\n" : r2 + "" + t4; + } + return this.exist_thead || (t4 = "\n" + this.leadingSpace + "|".repeat(this.tableColumnCount + 1) + (t4.startsWith("\n") ? "" : "\n") + t4), t4; + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = "\n"), void 0 === r2 && (r2 = "\n"), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(i.default); + e.default = c; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = r(0), i = r(1), a = function(t3) { + function e2(e3, r2, n2) { + return void 0 === r2 && (r2 = "tbody"), t3.call(this, e3, r2, n2) || this; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function(t4) { + for (var e3 = (0, i.getTableAlign)(this.innerHTML, this.tableColumnCount), r2 = this.leadingSpace + "|", n2 = 0; n2 < e3.length; n2++) + r2 += e3[n2]; + return r2 + "\n" + t4; + }, e2.prototype.parseOnlyString = function() { + return ["", null]; + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = ""), void 0 === r2 && (r2 = ""), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(o.default); + e.default = a; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2, n2) { + return void 0 === r2 && (r2 = "td"), t3.call(this, e3, r2, n2) || this; + } + return n(e2, t3), e2.prototype.parseValidSubTag = function(e3, r2, n2) { + return "ul" === r2 || "ol" === r2 || "table" === r2 || "pre" === r2 ? [e3.replace(/([\n\r])/g, ""), null] : t3.prototype.parseValidSubTag.call(this, e3, r2, n2); + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = ""), void 0 === r2 && (r2 = ""), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(17).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = function(t3) { + function e2(e3, r2, n2) { + return void 0 === r2 && (r2 = "thead"), t3.call(this, e3, r2, n2) || this; + } + return n(e2, t3), e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = ""), void 0 === r2 && (r2 = ""), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(r(0).default); + e.default = o; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(); + Object.defineProperty(e, "__esModule", { value: true }); + var o = r(0), i = r(5), a = r(1), c = r(2), u = function(t3) { + function e2(e3, r2, n2) { + return void 0 === r2 && (r2 = "tr"), t3.call(this, e3, r2, n2) || this; + } + return n(e2, t3), e2.prototype.beforeMergeSpace = function(t4) { + return this.leadingSpace + "|" + t4; + }, e2.prototype.parseValidSubTag = function(t4, e3, r2) { + var n2 = c.default.get().aliasTags, o2 = (0, a.getTagConstructor)(e3); + if ("td" !== e3 && "th" !== e3 && "td" !== (null === n2 || void 0 === n2 ? void 0 : n2[e3]) && "th" !== (null === n2 || void 0 === n2 ? void 0 : n2[e3]) && o2 !== i.default) + return "Should not have tags except or inside , current tag is ".concat(e3, " have been ignore."), ["", null]; + var u2 = new o2(t4, e3, r2); + return [u2.exec("", ""), u2]; + }, e2.prototype.parseOnlyString = function() { + return ["", null]; + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = ""), void 0 === r2 && (r2 = "\n"), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(o.default); + e.default = u; + }, function(t2, e, r) { + "use strict"; + var n = this && this.__extends || function() { + var t3 = function(e2, r2) { + return (t3 = Object.setPrototypeOf || { __proto__: [] } instanceof Array && function(t4, e3) { + t4.__proto__ = e3; + } || function(t4, e3) { + for (var r3 in e3) + Object.prototype.hasOwnProperty.call(e3, r3) && (t4[r3] = e3[r3]); + })(e2, r2); + }; + return function(e2, r2) { + if ("function" !== typeof r2 && null !== r2) + throw new TypeError("Class extends value " + String(r2) + " is not a constructor or null"); + function n2() { + this.constructor = e2; + } + t3(e2, r2), e2.prototype = null === r2 ? Object.create(r2) : (n2.prototype = r2.prototype, new n2()); + }; + }(), o = this && this.__assign || function() { + return (o = Object.assign || function(t3) { + for (var e2, r2 = 1, n2 = arguments.length; r2 < n2; r2++) + for (var o2 in e2 = arguments[r2]) + Object.prototype.hasOwnProperty.call(e2, o2) && (t3[o2] = e2[o2]); + return t3; + }).apply(this, arguments); + }; + Object.defineProperty(e, "__esModule", { value: true }); + var i = r(0), a = r(5), c = r(1), u = r(2).default.get().aliasTags, s = function(t3) { + function e2(e3, r2, n2) { + return void 0 === r2 && (r2 = "ul"), t3.call(this, e3, r2, n2) || this; + } + return n(e2, t3), e2.prototype.__isValidSubTag__ = function(t4) { + if (!t4) + return false; + var e3 = (0, c.getTagConstructor)(t4); + return "li" === t4 || "li" == (null === u || void 0 === u ? void 0 : u[t4]) || e3 === a.default; + }, e2.prototype.getValidSubTagName = function(t4) { + return t4 && this.__isValidSubTag__(t4) ? t4 : null; + }, e2.prototype.parseValidSubTag = function(t4, e3, r2) { + var n2 = (0, c.getTagConstructor)(e3); + if (this.__isValidSubTag__(e3)) { + var i2 = new n2(t4, e3, o(o({}, r2), { calcLeading: true, leadingSpace: this.leadingSpace, layer: this.layer, match: "*" })); + return [i2.exec("", "\n"), i2]; + } + return ["", null]; + }, e2.prototype.parseOnlyString = function() { + return ["", null]; + }, e2.prototype.exec = function(e3, r2) { + return void 0 === e3 && (e3 = "\n"), void 0 === r2 && (r2 = "\n"), t3.prototype.exec.call(this, e3, r2); + }, e2; + }(i.default); + e.default = s; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }); + var n = r(1), o = r(2), i = r(6); + e.default = function(t3, e2, r2) { + void 0 === r2 && (r2 = false), o.default.reset(), o.default.set(e2, r2), t3 = (t3 = (t3 = (0, n.clearComment)(t3)).trim()).replace(/(\r\n)/g, "").replace(/ /g, " "), t3 = "<".concat(i.DOUBLE, "skip").concat(i.DOUBLE, ">").concat(t3, ""); + var a = "", c = "".concat(i.DOUBLE, "skip").concat(i.DOUBLE), u = t3; + return a += new ((0, n.getTagConstructor)(c))(u, c, { parentTag: null, prevTagName: null, prevTagStr: a }).exec(), function(t4) { + return t4 = (t4 = (t4 = t4.replace(/^\s+/, "")).replace(/\s+$/, "")).replace(/\u2608/g, " "); + }((0, n.unescapeStr)(a)); + }; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }); + var n = r(11); + function o(t3, e2) { + for (var r2 = ""; e2 < t3.length && /[a-zA-Z0-9!\-_]/.test(t3[e2]); ) + r2 += t3[e2++]; + return r2.toLowerCase(); + } + e.default = function(t3) { + var e2 = 0; + return function() { + var r2 = "", i = null, a = 0, c = null, u = false; + if (e2 >= t3.length) + return [i, r2]; + for (var s = e2; s < t3.length; s++) { + if ("<" === t3[s] && "/" !== t3[s + 1]) { + if ("" !== r2 && null == i && !u) + return e2 = s, [i, r2]; + var p = o(t3, s + 1); + null == i && (i = p), i === p && a++, (0, n.default)(i) && (0 === --a && (u = true), a < 0 && "Tag ".concat(i, " is abnormal")); + } else if ("<" === t3[s] && "/" === t3[s + 1]) { + if (null == i) { + "Tag is not integrity, current tagStr is ".concat(t3.slice(e2)); + for (var l = s; l < t3.length && ">" !== t3[l]; ) + l++; + s = l; + continue; + } + i === (c = o(t3, s + 2)) && a--, a <= 0 && (u = true); + } + if (r2 += t3[s], ">" === t3[s] && u) + return e2 = s + 1, [i, r2]; + s === t3.length - 1 && i !== c && (null != c && null != i && (r2 = r2.replace("<".concat(i, ">"), "").replace(""), "")), i = null); + } + return e2 = t3.length, [i, r2]; + }; + }; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }); + var n = r(2), o = r(6), i = r(11), a = r(49); + e.default = function t3(e2) { + var c, u = n.default.get(), s = u.skipTags, p = u.emptyTags, l = u.ignoreTags, f = u.aliasTags, h2 = u.renderCustomTags, d = (0, i.default)(e2); + if ((null === s || void 0 === s ? void 0 : s.includes(e2)) || e2 === "".concat(o.DOUBLE, "skip").concat(o.DOUBLE)) { + var _ = r(9); + return d ? _.__SkipSelfClose__ : _.__Skip__; + } + if (null === p || void 0 === p ? void 0 : p.includes(e2)) { + var y = r(8); + return d ? y.__EmptySelfClose__ : y.__Empty__; + } + if (null === l || void 0 === l ? void 0 : l.includes(e2)) + return r(5).default; + if (null != (null === f || void 0 === f ? void 0 : f[e2])) + return t3(f[e2]); + var v = e2.toLowerCase(); + if (true !== h2 && !(0, a.default)(v)) { + if (false === h2 || "SKIP" === h2) + return _ = r(9), d ? _.__SkipSelfClose__ : _.__Skip__; + if ("EMPTY" === h2) + return y = r(8), d ? y.__EmptySelfClose__ : y.__Empty__; + if ("IGNORE" === h2) + return r(5).default; + } + try { + c = r(50)("./".concat(e2)).default; + } catch (g) { + c = d ? r(10).__NoMatchSelfClose__ : r(10).__NoMatch__; + } + return c; + }; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }); + var n = ["!doctype", "a", "abbr", "acronym", "address", "applet", "area", "article", "aside", "audio", "b", "base", "basefont", "bdi", "bdo", "bgsound", "big", "blink", "blockquote", "body", "br", "button", "canvas", "caption", "center", "circle", "cite", "clipPath", "code", "col", "colgroup", "command", "content", "data", "datalist", "dd", "defs", "del", "details", "dfn", "dialog", "dir", "div", "dl", "dt", "element", "ellipse", "em", "embed", "fieldset", "figcaption", "figure", "font", "footer", "foreignObject", "form", "frame", "frameset", "g", "h1", "h2", "h3", "h4", "h5", "h6", "head", "header", "hgroup", "hr", "html", "i", "iframe", "image", "img", "input", "ins", "isindex", "kbd", "keygen", "label", "legend", "li", "line", "linearGradient", "link", "listing", "main", "map", "mark", "marquee", "mask", "math", "menu", "menuitem", "meta", "meter", "multicol", "nav", "nextid", "nobr", "noembed", "noframes", "noscript", "object", "ol", "optgroup", "option", "output", "p", "param", "path", "pattern", "picture", "plaintext", "polygon", "polyline", "pre", "progress", "q", "radialGradient", "rb", "rbc", "rect", "rp", "rt", "rtc", "ruby", "s", "samp", "script", "section", "select", "shadow", "slot", "small", "source", "spacer", "span", "stop", "strike", "strong", "style", "sub", "summary", "sup", "svg", "table", "tbody", "td", "template", "text", "textarea", "tfoot", "th", "thead", "time", "title", "tr", "track", "tspan", "tt", "u", "ul", "var", "video", "wbr", "xmp"]; + e.default = function(t3) { + return "string" === typeof t3 && n.includes(t3.toLowerCase()); + }; + }, function(t2, e, r) { + var n = { "./__Heading__": 3, "./__Heading__.ts": 3, "./__empty__": 8, "./__empty__.ts": 8, "./__ignore__": 5, "./__ignore__.ts": 5, "./__nomatch__": 10, "./__nomatch__.ts": 10, "./__rawString__": 12, "./__rawString__.ts": 12, "./__skip__": 9, "./__skip__.ts": 9, "./a": 19, "./a.ts": 19, "./b": 20, "./b.ts": 20, "./blockquote": 21, "./blockquote.ts": 21, "./br": 22, "./br.ts": 22, "./code": 23, "./code.ts": 23, "./del": 15, "./del.ts": 15, "./em": 16, "./em.ts": 16, "./h1": 24, "./h1.ts": 24, "./h2": 25, "./h2.ts": 25, "./h3": 26, "./h3.ts": 26, "./h4": 27, "./h4.ts": 27, "./h5": 28, "./h5.ts": 28, "./h6": 29, "./h6.ts": 29, "./hr": 30, "./hr.ts": 30, "./i": 31, "./i.ts": 31, "./img": 32, "./img.ts": 32, "./input": 33, "./input.ts": 33, "./li": 34, "./li.ts": 34, "./ol": 35, "./ol.ts": 35, "./p": 36, "./p.ts": 36, "./pre": 37, "./pre.ts": 37, "./s": 38, "./s.ts": 38, "./span": 39, "./span.ts": 39, "./strong": 14, "./strong.ts": 14, "./table": 40, "./table.ts": 40, "./tbody": 41, "./tbody.ts": 41, "./td": 42, "./td.ts": 42, "./th": 17, "./th.ts": 17, "./thead": 43, "./thead.ts": 43, "./tr": 44, "./tr.ts": 44, "./ul": 45, "./ul.ts": 45 }; + function o(t3) { + var e2 = i(t3); + return r(e2); + } + function i(t3) { + if (!r.o(n, t3)) { + var e2 = new Error("Cannot find module '" + t3 + "'"); + throw e2.code = "MODULE_NOT_FOUND", e2; + } + return n[t3]; + } + o.keys = function() { + return Object.keys(n); + }, o.resolve = i, t2.exports = o, o.id = 50; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }), e.default = function(t3) { + for (var e2 = {}, r2 = false, n = "", o = "", i = null, a = 0; a <= t3.length; a++) { + if (a === t3.length || /\s/.test(t3[a])) { + if (a === t3.length || !r2) { + var c = n.trim(); + "/" === c[c.length - 1] && (c = c.slice(0, c.length - 1)), c && (e2[c] = o.trim()), n = "", o = ""; + } + } else { + if (/['"]/.test(t3[a]) && (!i || t3[a] === i)) { + (r2 = !r2) && (i = t3[a]); + continue; + } + if ("=" === t3[a] && !r2) + continue; + } + if (a === t3.length) + break; + r2 ? o += t3[a] : n += t3[a]; + } + return e2; + }; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }); + var n = "javascript"; + e.default = function(t3) { + var e2 = t3.match(/<.*?class=".*?language-([^\s"]*)?.*".*>/); + return e2 ? e2[1] || "" : t3.match(//) ? n : ""; + }; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }), e.default = function(t3) { + return t3.replace(//g, ""); + }; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }); + var n = r(13), o = { b: true, a: true, del: true, em: true, i: true, s: true, span: true, strong: true }; + e.default = function(t3) { + if (null === t3) + return true; + if (!t3) + return false; + var e2 = (0, n.default)(t3); + return !!e2 && !!o[e2]; + }; + }, function(t2, e, r) { + "use strict"; + Object.defineProperty(e, "__esModule", { value: true }), e.default = function(t3, e2) { + var r2 = { _default_: "---|", center: ":---:|", left: ":---|", right: "---:|", start: ":---|", end: "---:|" }, n = Array(e2).fill(r2._default_), o = t3.match(/<(td|th)(.*?)>/g); + return o ? n = (n = o.slice(0, e2)).map(function(t4) { + var e3 = t4.match(/align\s*=\s*['"]\s*(center|left|right|start|end)/), n2 = t4.match(/text-align\s*:\s*(center|left|right|start|end)/); + return e3 || n2 ? e3 && !n2 ? r2[e3[1]] || r2._default_ : n2 ? r2[n2[1]] || r2._default_ : void 0 : r2._default_; + }) : n; + }; + }]).default; + }); + } +}); + +// main.ts +var main_exports = {}; +__export(main_exports, { + default: () => AnyBlockPlugin +}); +module.exports = __toCommonJS(main_exports); +var import_obsidian8 = require("obsidian"); + +// ../ABConverter/converter/ABConvert.ts +var ABConvert = class { + constructor(process) { + this.is_disable = false; + this.register_from = "\u5185\u7F6E"; + this.is_enable = false; + if ("process" in process) { + this.constructor_simp(process); + } else { + this.constructor_user(process); + } + } + static factory(process) { + let ret = new ABConvert(process); + ABConvertManager.getInstance().list_abConvert.push(ret); + return ret; + } + constructor_simp(sim) { + var _a3, _b, _c, _d, _e, _f; + this.id = sim.id; + this.name = sim.name; + this.match = (_a3 = sim.match) != null ? _a3 : sim.id; + this.default = ((_b = sim.default) != null ? _b : !sim.match || typeof sim.match == "string") ? sim.id : null; + this.detail = (_c = sim.detail) != null ? _c : ""; + this.process_alias = (_d = sim.process_alias) != null ? _d : ""; + this.process_param = (_e = sim.process_param) != null ? _e : null; + this.process_return = (_f = sim.process_return) != null ? _f : null; + this.process = sim.process; + this.is_disable = false; + this.register_from = "\u5185\u7F6E"; + } + constructor_user(sim) { + this.id = sim.id; + this.name = sim.name; + this.match = /^\//.test(sim.match) ? RegExp(sim.match) : sim.match; + this.default = null; + this.detail = ""; + this.process_alias = sim.process_alias; + this.process_param = null; + this.process_return = null; + this.process = () => { + }; + this.is_disable = false; + this.register_from = "\u7528\u6237"; + } + destructor() { + const index2 = ABConvertManager.getInstance().list_abConvert.indexOf(this); + if (index2 > -1) { + ABConvertManager.getInstance().list_abConvert.splice(index2, 1); + } + } +}; + +// ../ABConverter/ABReg.ts +var ABReg = { + reg_header: /^((\s|>\s|-\s|\*\s|\+\s)*)(%%)?(\[((?!toc|TOC|\!|< )[\|\!#:;\(\)\s0-9a-zA-Z\u4e00-\u9fa5].*)\]):?(%%)?\s*$/, + reg_header_up: /^((\s|>\s|-\s|\*\s|\+\s)*)(%%)?(\[((?!toc|TOC|\!)< [\|\!#:;\(\)\s0-9a-zA-Z\u4e00-\u9fa5].*)\]):?(%%)?\s*$/, + reg_mdit_head: /^((\s|>\s|-\s|\*\s|\+\s)*)(::::*)\s?(.*)/, + reg_mdit_tail: /^((\s|>\s|-\s|\*\s|\+\s)*)(::::*)/, + reg_list: /^((\s|>\s|-\s|\*\s|\+\s)*)(-\s|\*\s|\+\s)(.*)/, + reg_code: /^((\s|>\s|-\s|\*\s|\+\s)*)(````*|~~~~*)(.*)/, + reg_quote: /^((\s|>\s|-\s|\*\s|\+\s)*)(>\s)(.*)/, + reg_heading: /^((\s|>\s|-\s|\*\s|\+\s)*)(\#+\s)(.*)/, + reg_table: /^((\s|>\s|-\s|\*\s|\+\s)*)(\|(.*)\|)/, + reg_header_noprefix: /^((\s)*)(%%)?(\[((?!toc|TOC|\!|< )[\|\!#:;\(\)\s0-9a-zA-Z\u4e00-\u9fa5].*)\]):?(%%)?\s*$/, + reg_header_up_noprefix: /^((\s)*)(%%)?(\[((?!toc|TOC|\!)< [\|\!#:;\(\)\s0-9a-zA-Z\u4e00-\u9fa5].*)\]):?(%%)?\s*$/, + reg_mdit_head_noprefix: /^((\s)*)(::::*)\s?(.*)/, + reg_mdit_tail_noprefix: /^((\s)*)(::::*)/, + reg_list_noprefix: /^((\s)*)(-\s|\*\s|\+\s)(.*)/, + reg_code_noprefix: /^((\s)*)(````*|~~~~*)(.*)/, + reg_quote_noprefix: /^((\s)*)(>\s)(.*)/, + reg_heading_noprefix: /^((\s)*)(\#+\s)(.*)/, + reg_table_noprefix: /^((\s)*)(\|(.*)\|)/, + reg_emptyline_noprefix: /^\s*$/, + reg_indentline_noprefix: /^\s+?\S/, + inline_split: /\| |, |, |\. |。 |: |: / +}; +var ABCSetting = { + is_debug: false, + env: "obsidian", + global_ctx: null, + mermaid: void 0 +}; + +// ../ABConverter/ABAlias.ts +function autoABAlias(header, selectorName, content) { + if (!header.trimEnd().endsWith("|")) + header = header + "|"; + if (!header.trimStart().startsWith("|")) + header = "|" + header; + if (selectorName == "mdit") { + header = "|:::_140lne" + header.trimStart(); + } else if (selectorName == "list" || ABReg.reg_list_noprefix.test(content.trimStart())) { + header = "|list_140lne" + header; + } else if (selectorName == "heading" || ABReg.reg_heading_noprefix.test(content.trimStart())) { + header = "|heading_140lne" + header; + } else if (selectorName == "code" || ABReg.reg_code_noprefix.test(content.trimStart())) { + header = "|code_140lne" + header; + } else if (selectorName == "quote" || ABReg.reg_quote_noprefix.test(content.trimStart())) { + header = "|quote_140lne" + header; + } else if (selectorName == "table" || ABReg.reg_table_noprefix.test(content.trimStart())) { + header = "|table_140lne" + header; + } + for (const item of ABAlias_json) { + header = header.replace(item.regex, item.replacement); + } + for (const item of ABAlias_json_withSub) { + header = header.replace(item.regex, (match2, ...groups) => { + return item.replacement.replace(/\$(\d+)/g, (_, number) => { + var _a3; + return (_a3 = groups[number - 1]) != null ? _a3 : ""; + }); + }); + } + for (const item of ABAlias_json_end) { + header = header.replace(item.regex, item.replacement); + } + return header; +} +var ABAlias_json_withSub = [ + { regex: /\|(note|warning|caution|attention|error|info|danger|tip|hint|example|abstract|summary|tldr|quote|cite|todo|success|check|done|important|question|help|faq|failure|fail|missing|bug)([+-]?)(\s.*)?\|/, replacement: "|add([!$1]$2$3)|addQuote|" }, + { regex: /\|(callout|alert) ([^+-\s]+)([+-]?)\s?(.*)\|/, replacement: "|add([!$2]$3 $4)|addQuote|" } +]; +var ABAlias_json_mdit = [ + { regex: /\|:::_140lne\|(2?tabs?|标签页?)\|/, replacement: "|mditTabs|" }, + { regex: "|:::_140lne|demo|", replacement: "|mditDemo|" }, + { regex: "|:::_140lne|abDemo|", replacement: "|mditABDemo|" }, + { regex: /\|:::_140lne\|(2?col|分栏)\|/, replacement: "|mditCol|" }, + { regex: /\|:::_140lne\|(2?card|卡片)\|/, replacement: "|mditCard|" }, + { regex: /\|:::_140lne\|(2?chat|聊天)\|/, replacement: "|mditChat|code(chat)|" } +]; +var ABAlias_json_title = [ + { regex: "|title2list|", replacement: "|title2listdata|listdata2strict|listdata2list|" }, + { regex: /\|heading_140lne\|2?(timeline|时间线)\|/, replacement: "|title2timeline|" }, + { regex: /\|heading_140lne\|2?(tabs?|标签页?)\||\|title2tabs?\|/, replacement: "|title2c2listdata|c2listdata2tab|" }, + { regex: /\|heading_140lne\|2?(col|分栏)\||\|title2col\|/, replacement: "|title2c2listdata|c2listdata2items|addClass(ab-col)|" }, + { regex: /\|heading_140lne\|2?(card|卡片)\||\|title2card\|/, replacement: "|title2c2listdata|c2listdata2items|addClass(ab-card)|addClass(ab-lay-vfall)|" }, + { regex: /\|heading_140lne\|2?(nodes?|节点)\||\|(title2node|title2abMindmap)\|/, replacement: "|title2listdata|listdata2strict|listdata2nodes|" }, + { regex: /\|heading_140lne\|2?(mermaid|flow|流程图)\|/, replacement: "|title2list|list2mermaid|" }, + { regex: /\|heading_140lne\|2?(mehrmaid|mdmermaid)\|/, replacement: "|title2list|list2mehrmaidText|code(mehrmaid)|" }, + { regex: /\|heading_140lne\|2?(puml)?(plantuml|mindmap|脑图|思维导图)\|/, replacement: "|title2list|list2pumlMindmap|" }, + { regex: /\|heading_140lne\|2?(markmap|mdMindmap|md脑图|md思维导图)\|/, replacement: "|title2list|list2markmap|" }, + { regex: /\|heading_140lne\|2?(wbs|(工作)?分解(图|结构))\|/, replacement: "|title2list|list2pumlWBS|" }, + { regex: /\|heading_140lne\|2?(table|multiWayTable|multiCrossTable|表格?|多叉表格?|跨行表格?)\|/, replacement: "|title2list|list2table|" }, + { regex: /\|heading_140lne\|2?(lt|listTable|treeTable|listGrid|treeGrid|列表格|树形表格?)\|/, replacement: "|title2list|list2lt|" }, + { regex: /\|heading_140lne\|2?(list|列表)\|/, replacement: "|title2list|list2lt|addClass(ab-listtable-likelist)|" }, + { regex: /\|heading_140lne\|2?(dir|dirTree|目录树?|目录结构)\|/, replacement: "|title2list|list2dt|" }, + { regex: /\|heading_140lne\|(fakeList|仿列表)\|/, replacement: "|title2list|list2table|addClass(ab-table-fc)|addClass(ab-table-likelist)|" } +]; +var ABAlias_json_list = [ + { regex: "|listXinline|", replacement: "|list2listdata|listdata2list|" }, + { regex: /\|list_140lne\|2?(timeline|时间线)\|/, replacement: "|list2timeline|" }, + { regex: /\|list_140lne\|2?(tabs?|标签页?)\||\|list2tabs?\|/, replacement: "|list2c2listdata|c2listdata2tab|" }, + { regex: /\|list_140lne\|2?(col|分栏)\||\|list2col\|/, replacement: "|list2c2listdata|c2listdata2items|addClass(ab-col)|" }, + { regex: /\|list_140lne\|2?(card|卡片)\||\|list2card\|/, replacement: "|list2c2listdata|c2listdata2items|addClass(ab-card)|addClass(ab-lay-vfall)|" }, + { regex: /\|list_140lne\|2?(nodes?|节点)\||\|(list2node|list2abMindmap)\|/, replacement: "|list2listdata|listdata2strict|listdata2nodes|" }, + { regex: /\|list_140lne\|2?(mermaid|flow|流程图)\|/, replacement: "|list2mermaid|" }, + { regex: /\|list_140lne\|2?(mehrmaid|mdmermaid)\|/, replacement: "|list2mehrmaidText|code(mehrmaid)|" }, + { regex: /\|list_140lne\|2?(puml)?(plantuml|mindmap|脑图|思维导图)\|/, replacement: "|list2pumlMindmap|" }, + { regex: /\|list_140lne\|2?(markmap|mdMindmap|md脑图|md思维导图)\|/, replacement: "|list2markmap|" }, + { regex: /\|list_140lne\|2?(wbs|(工作)?分解(图|结构))\|/, replacement: "|list2pumlWBS|" }, + { regex: /\|list_140lne\|2?(table|multiWayTable|multiCrossTable|表格?|多叉表格?|跨行表格?)\|/, replacement: "|list2table|" }, + { regex: /\|list_140lne\|2?(lt|listTable|treeTable|listGrid|treeGrid|列表格|树形表格?)\|/, replacement: "|list2lt|" }, + { regex: /\|list_140lne\|2?(list|列表)\|/, replacement: "|list2lt|addClass(ab-listtable-likelist)|" }, + { regex: /\|list_140lne\|2?(dir|dirTree|目录树?|目录结构)\|/, replacement: "|list2dt|" }, + { regex: /\|list_140lne\|(fakeList|仿列表)\|/, replacement: "|list2table|addClass(ab-table-fc)|addClass(ab-table-likelist)|" } +]; +var ABAlias_json_code = [ + { regex: "|code_140lne|X|", replacement: "|xCode|" }, + { regex: "|code_140lne|x|", replacement: "|xCode|" }, + { regex: "|code2list|", replacement: "|xCode|region2indent|addList|" }, + { regex: "|list2code|", replacement: "|xList|code(js)|" } +]; +var ABAlias_json_quote = []; +var ABAlias_json_table = []; +var ABAlias_json_general = [ + { regex: "|\u9ED1\u5E55|", replacement: "|addClass(ab-deco-heimu)|" }, + { regex: "|\u6298\u53E0|", replacement: "|fold|" }, + { regex: "|\u6EDA\u52A8|", replacement: "|scroll|" }, + { regex: "|\u8D85\u51FA\u6298\u53E0|", replacement: "|overfold|" }, + { regex: "|\u8F6C\u7F6E|", replacement: "|transpose|" }, + { regex: "|T|", replacement: "|transpose|" }, + { regex: "|\u7EA2\u5B57|", replacement: "|addClass(ab-custom-text-red)|" }, + { regex: "|\u6A59\u5B57|", replacement: "|addClass(ab-custom-text-orange)|" }, + { regex: "|\u9EC4\u5B57|", replacement: "|addClass(ab-custom-text-yellow)|" }, + { regex: "|\u7EFF\u5B57|", replacement: "|addClass(ab-custom-text-green)|" }, + { regex: "|\u9752\u5B57|", replacement: "|addClass(ab-custom-text-cyan)|" }, + { regex: "|\u84DD\u5B57|", replacement: "|addClass(ab-custom-text-blue)|" }, + { regex: "|\u7D2B\u5B57|", replacement: "|addClass(ab-custom-text-purple)|" }, + { regex: "|\u767D\u5B57|", replacement: "|addClass(ab-custom-text-white)|" }, + { regex: "|\u9ED1\u5B57|", replacement: "|addClass(ab-custom-text-black)|" }, + { regex: "|\u7EA2\u5E95|", replacement: "|addClass(ab-custom-bg-red)|" }, + { regex: "|\u6A59\u5E95|", replacement: "|addClass(ab-custom-bg-orange)|" }, + { regex: "|\u9EC4\u5E95|", replacement: "|addClass(ab-custom-bg-yellow)|" }, + { regex: "|\u7EFF\u5E95|", replacement: "|addClass(ab-custom-bg-green)|" }, + { regex: "|\u9752\u5E95|", replacement: "|addClass(ab-custom-bg-cyan)|" }, + { regex: "|\u84DD\u5E95|", replacement: "|addClass(ab-custom-bg-blue)|" }, + { regex: "|\u7D2B\u5E95|", replacement: "|addClass(ab-custom-bg-purple)|" }, + { regex: "|\u767D\u5E95|", replacement: "|addClass(ab-custom-bg-white)|" }, + { regex: "|\u9ED1\u5E95|", replacement: "|addClass(ab-custom-bg-black)|" }, + { regex: "|\u9760\u4E0A|", replacement: "|addClass(ab-custom-dire-top)|" }, + { regex: "|\u9760\u4E0B|", replacement: "|addClass(ab-custom-dire-down)|" }, + { regex: "|\u9760\u5DE6|", replacement: "|addClass(ab-custom-dire-left)|" }, + { regex: "|\u9760\u53F3|", replacement: "|addClass(ab-custom-dire-right)|" }, + { regex: "|\u5C45\u4E2D|", replacement: "|addClass(ab-custom-dire-center)|" }, + { regex: "|\u6C34\u5E73\u5C45\u4E2D|", replacement: "|addClass(ab-custom-dire-hcenter)|" }, + { regex: "|\u5782\u76F4\u5C45\u4E2D|", replacement: "|addClass(ab-custom-dire-vcenter)|" }, + { regex: "|\u4E24\u7AEF\u5BF9\u9F50|", replacement: "|addClass(ab-custom-dire-justify)|" }, + { regex: "|\u5927\u5B57|", replacement: "|addClass(ab-custom-font-large)|" }, + { regex: "|\u8D85\u5927\u5B57|", replacement: "|addClass(ab-custom-font-largex)|" }, + { regex: "|\u8D85\u8D85\u5927\u5B57|", replacement: "|addClass(ab-custom-font-largexx)|" }, + { regex: "|\u5C0F\u5B57|", replacement: "|addClass(ab-custom-font-small)|" }, + { regex: "|\u8D85\u5C0F\u5B57|", replacement: "|addClass(ab-custom-font-smallx)|" }, + { regex: "|\u8D85\u8D85\u5C0F\u5B57|", replacement: "|addClass(ab-custom-font-smallxx)|" }, + { regex: "|\u52A0\u7C97|", replacement: "|addClass(ab-custom-font-bold)|" } +]; +var ABAlias_json_default = [ + ...ABAlias_json_mdit, + ...ABAlias_json_title, + ...ABAlias_json_list, + ...ABAlias_json_code, + ...ABAlias_json_quote, + ...ABAlias_json_table, + ...ABAlias_json_general +]; +var ABAlias_json = [ + ...ABAlias_json_default +]; +var ABAlias_json_end = [ + { regex: "|:::_140lne", replacement: "" }, + { regex: "|heading_140lne", replacement: "" }, + { regex: "|list_140lne", replacement: "" }, + { regex: "|code_140lne", replacement: "" }, + { regex: "|qutoe_140lne", replacement: "" }, + { regex: "|table_140lne", replacement: "" } +]; + +// ../ABConverter/ABConvertManager.ts +var ABConvertManager = class { + constructor() { + this.list_abConvert = []; + this.m_renderMarkdownFn = (markdown, el) => { + el.classList.add("markdown-rendered"); + console.error("Please use renderMarkdownFn redefine render function"); + }; + if (typeof obsidian == "undefined" && typeof app == "undefined") { + console.log("[environment]: markdown-it, without obsidian"); + } else { + console.log("[environment]: obsidian"); + } + } + static getInstance() { + if (!ABConvertManager.m_instance) { + ABConvertManager.m_instance = new ABConvertManager(); + } + return ABConvertManager.m_instance; + } + getConvertOptions() { + return this.list_abConvert.filter((item) => { + return item.default; + }).map((item) => { + return { id: item.default, name: item.name }; + }); + } + redefine_renderMarkdown(callback) { + this.m_renderMarkdownFn = callback; + } + static autoABConvert(el, header, content, selectorName = "") { + let prev_result = content; + let prev_type = "string"; + let prev_type2 = "string" /* text */; + let prev_processor; + let prev2 = { + prev_result, + prev_type, + prev_type2, + prev_processor + }; + if (false) + ABConvertManager.startTime = performance.now(); + { + header = autoABAlias(header, selectorName, prev_result); + let list_header = header.split("|"); + prev_result = this.autoABConvert_runConvert(el, list_header, prev2); + this.autoABConvert_last(el, header, selectorName, prev2); + } + if (false) { + const endTime = performance.now(); + console.log(`Takes ${(endTime - ABConvertManager.startTime).toFixed(2)} ms when selector "${selectorName}" header "${header}"`); + } + } + static autoABConvert_runConvert(el, list_header, prev2) { + for (let item_header of list_header) { + for (let abReplaceProcessor of ABConvertManager.getInstance().list_abConvert) { + if (typeof abReplaceProcessor.match == "string") { + if (abReplaceProcessor.match != item_header) + continue; + } else { + if (!abReplaceProcessor.match.test(item_header)) + continue; + } + if (abReplaceProcessor.process_alias) { + let alias = abReplaceProcessor.process_alias; + (() => { + if (abReplaceProcessor.process_alias.indexOf("%") < 0) + return; + if (typeof abReplaceProcessor.match == "string") + return; + const matchs = item_header.match(abReplaceProcessor.match); + if (!matchs) + return; + const len = matchs.length; + if (len == 1) + return; + for (let i = 1; i < len; i++) { + if (!matchs[i]) + continue; + alias = alias.replace(RegExp(`%${i}`), matchs[i]); + } + })(); + prev2.prev_result = this.autoABConvert_runConvert(el, alias.split("|"), prev2); + } else if (abReplaceProcessor.process) { + if (abReplaceProcessor.process_param != prev2.prev_type2) { + if (abReplaceProcessor.process_param == "HTMLElement" /* el */ && prev2.prev_type2 == "string" /* text */) { + const subEl = document.createElement("div"); + el.appendChild(subEl); + ABConvertManager.getInstance().m_renderMarkdownFn(prev2.prev_result, subEl); + prev2.prev_result = el; + prev2.prev_type = typeof prev2.prev_result; + prev2.prev_type2 = "HTMLElement" /* el */; + prev2.prev_processor = "md"; + } else if (abReplaceProcessor.process_param == "string" /* text */ && (prev2.prev_type2 == "array" /* list_stream */ || prev2.prev_type2 == "array2" /* c2list_stream */)) { + prev2.prev_result = JSON.stringify(prev2.prev_result, null, 2); + prev2.prev_type = typeof prev2.prev_result; + prev2.prev_type2 = "string" /* text */; + prev2.prev_processor = "stream to text"; + } else if (abReplaceProcessor.process_param == "string" /* text */ && prev2.prev_type2 == "json_string" /* json */) { + prev2.prev_type2 = "string" /* text */; + prev2.prev_processor = "json to text"; + } else { + console.warn(`\u5904\u7406\u5668\u8F93\u5165\u7C7B\u578B\u9519\u8BEF, id:${abReplaceProcessor.id}, virtualParam:${abReplaceProcessor.process_param}, realParam:${prev2.prev_type2}`); + break; + } + } + prev2.prev_result = abReplaceProcessor.process(el, item_header, prev2.prev_result); + prev2.prev_type = typeof prev2.prev_result; + prev2.prev_type2 = abReplaceProcessor.process_return; + prev2.prev_processor = abReplaceProcessor.process; + } else { + console.warn("\u5904\u7406\u5668\u5FC5\u987B\u5B9E\u73B0process\u6216process_alias\u65B9\u6CD5"); + } + } + } + return prev2; + } + static autoABConvert_last(el, header, selectorName, prev2) { + if (prev2.prev_type == "string" && prev2.prev_type2 == "string" /* text */) { + const subEl = document.createElement("div"); + el.appendChild(subEl); + ABConvertManager.getInstance().m_renderMarkdownFn(prev2.prev_result, subEl); + prev2.prev_result = el; + prev2.prev_type = "object"; + prev2.prev_type2 = "HTMLElement" /* el */; + prev2.process = "md"; + } else if (prev2.prev_type == "string" && prev2.prev_type2 == "json_string" /* json */) { + const code_str = "```json\n" + prev2.prev_result + "\n```\n"; + const subEl = document.createElement("div"); + el.appendChild(subEl); + ABConvertManager.getInstance().m_renderMarkdownFn(code_str, subEl); + prev2.prev_result = el; + prev2.prev_type = "object"; + prev2.prev_type2 = "HTMLElement" /* el */; + prev2.process = "show_json"; + } else if (prev2.prev_type == "object" && (prev2.prev_type2 == "array" /* list_stream */ || prev2.prev_type2 == "array2" /* c2list_stream */ || prev2.prev_type2 == "json_string" /* json */)) { + const code_str = "```json\n" + JSON.stringify(prev2.prev_result, null, 2) + "\n```\n"; + const subEl = document.createElement("div"); + el.appendChild(subEl); + ABConvertManager.getInstance().m_renderMarkdownFn(code_str, subEl); + prev2.prev_result = el; + prev2.prev_type = "object"; + prev2.prev_type2 = "HTMLElement" /* el */; + prev2.process = "show_listStream"; + } else if (prev2.prev_type == "object" && prev2.prev_type2 == "HTMLElement" /* el */) { + return prev2; + } else { + console.warn("other type in tail, can not tail processor:", prev2.prev_type, prev2.prev_type2, prev2.prev_result); + } + return prev2; + } +}; + +// ../ABConverter/converter/abc_text.ts +var abc_addQuote = ABConvert.factory({ + id: "addQuote", + name: "\u589E\u52A0\u5F15\u7528\u5757", + match: "addQuote", + detail: "\u5728\u6587\u672C\u7684\u6BCF\u884C\u524D\u9762\u52A0\u4E0A `> `", + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + return content.split("\n").map((line) => { + return "> " + line; + }).join("\n"); + } +}); +var abc_addCode = ABConvert.factory({ + id: "addCode", + name: "\u589E\u52A0\u4EE3\u7801\u5757", + match: /^(addCode|code)(\((.*)\))?$/, + default: "code()", + detail: "\u5728\u6587\u672C\u7684\u524D\u540E\u5747\u52A0\u4E0A\u4E00\u884C\u4EE3\u7801\u5757\u56F4\u680F\u3002\u4E0D\u52A0`()`\u8868\u793A\u7528\u539F\u6587\u672C\u7684\u7B2C\u4E00\u884C\u4F5C\u4E3A\u4EE3\u7801\u7C7B\u578B\uFF0C\u62EC\u53F7\u7C7B\u578B\u4E3A\u7A7A\u8868\u793A\u4EE3\u7801\u7C7B\u578B\u4E3A\u7A7A", + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + let matchs = header.match(/^(addCode|code)(\((.*)\))?$/); + if (!matchs) + return content; + if (matchs[2]) + content = matchs[3] + "\n" + content; + return "``````" + content + "\n``````"; + } +}); +var abc_xQuote = ABConvert.factory({ + id: "xQuote", + name: "\u53BB\u9664\u5F15\u7528\u5757", + match: /^(xQuote|Xquote)$/, + detail: "\u5728\u6587\u672C\u7684\u6BCF\u884C\u524D\u9762\u5220\u9664 `> `", + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + return content.split("\n").map((line) => { + return line.replace(/^>\s/, ""); + }).join("\n"); + } +}); +var abc_xCode = ABConvert.factory({ + id: "xCode", + name: "\u53BB\u9664\u4EE3\u7801\u5757", + match: /^(xCode|Xcode)(\((true|false|)\))?$/, + default: "xCode(true)", + detail: "\u53C2\u6570\u4E3A\u662F\u5426\u79FB\u9664\u4EE3\u7801\u7C7B\u578B, Xcode\u9ED8\u8BA4\u4E3Afalse, Xcode\u9ED8\u8BA4\u4E3Atrue\u3002\u8BB0\u6CD5: code|Xcode \u6216 code()|Xcode()\u5185\u5BB9\u4E0D\u53D8", + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + let matchs = header.match(/^(xCode|Xcode)(\((true|false|)\))?$/); + if (!matchs) + return content; + let remove_flag; + if (matchs[2] == "") + remove_flag = false; + else + remove_flag = matchs[3] != "false"; + let list_content = content.split("\n"); + let code_flag = ""; + let line_start = -1; + let line_end = -1; + for (let i = 0; i < list_content.length; i++) { + if (code_flag == "") { + const match_tmp = list_content[i].match(ABReg.reg_code); + if (match_tmp) { + code_flag = match_tmp[3]; + line_start = i; + } + } else { + if (list_content[i].indexOf(code_flag) >= 0) { + line_end = i; + break; + } + } + } + if (line_start >= 0 && line_end > 0) { + if (remove_flag) + list_content[line_start] = list_content[line_start].replace(/^```(.*)$|^~~~(.*)$/, ""); + else + list_content[line_start] = list_content[line_start].replace(/^```|^~~~/, ""); + list_content[line_end] = list_content[line_end].replace(/^```|^~~~/, ""); + content = list_content.join("\n"); + } + return content; + } +}); +var abc_x = ABConvert.factory({ + id: "x", + name: "\u53BB\u9664\u4EE3\u7801\u6216\u5F15\u7528\u5757", + match: /^(x|X)$/, + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + let flag = ""; + for (let line of content.split("\n")) { + if (ABReg.reg_code.test(line)) { + flag = "code"; + break; + } else if (ABReg.reg_quote.test(line)) { + flag = "quote"; + break; + } + } + if (flag == "code") + return abc_xCode.process(el, header, content); + else if (flag == "quote") + return abc_xQuote.process(el, header, content); + return content; + } +}); +var abc_slice = ABConvert.factory({ + id: "slice", + name: "\u5207\u7247", + match: /^slice\((\s*\d+\s*)(,\s*-?\d+\s*)?\)$/, + detail: "\u548Cjs\u7684slice\u65B9\u6CD5\u662F\u4E00\u6837\u7684\u3002\u4F8B\u5982 `[slice(1, -1)]`", + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + const list_match = header.match(/^slice\((\s*\d+\s*)(,\s*-?\d+\s*)?\)$/); + if (!list_match) + return content; + const arg1 = Number(list_match[1].trim()); + if (isNaN(arg1)) + return content; + if (!list_match[2]) + return content.split("\n").slice(arg1).join("\n"); + const arg2 = Number(list_match[2].replace(",", "").trim()); + if (isNaN(arg2)) + return content.split("\n").slice(arg1).join("\n"); + else + return content.split("\n").slice(arg1, arg2).join("\n"); + } +}); +var abc_add = ABConvert.factory({ + id: "add", + name: "\u589E\u6DFB\u5185\u5BB9", + match: /^add\((.*?)(,\s*-?\d+\s*)?\)$/, + detail: "\u589E\u6DFB. \u53C2\u65702\u4E3A\u884C\u5E8F, \u9ED8\u8BA40, \u884C\u5C3E-1\u3002\u4F1A\u63D2\u884C\u589E\u6DFB", + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + const list_match = header.match(/^add\((.*?)(,\s*-?\d+\s*)?\)$/); + if (!list_match) + return content; + if (!list_match[1]) + return content; + const arg1 = list_match[1].trim(); + if (!arg1) + return content; + let arg2; + if (!list_match[2]) + arg2 = 0; + else { + arg2 = Number(list_match[2].replace(",", "").trim()); + if (isNaN(arg2)) { + arg2 = 0; + } + } + const list_content = content.split("\n"); + if (arg2 >= 0 && arg2 < list_content.length) + list_content[arg2] = arg1 + "\n" + list_content[arg2]; + else if (arg2 < 0 && arg2 * -1 <= list_content.length) { + arg2 = list_content.length + arg2; + list_content[arg2] = arg1 + "\n" + list_content[arg2]; + } + return list_content.join("\n"); + } +}); +var abc_listroot = ABConvert.factory({ + id: "listroot", + name: "\u589E\u52A0\u5217\u8868\u6839", + match: /^listroot\((.*)\)$/, + default: "listroot(root)", + detail: "\u6BCF\u884C\u524D\u9762\u52A0\u4E24\u7A7A\u683C\uFF0C\u5E76\u5728\u9996\u884C\u63D2\u5165 `- ` \u5F00\u5934\u7684\u6839\u5217\u8868\u9879", + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + const list_match = header.match(/^listroot\((.*)\)$/); + if (!list_match) + return content; + const arg1 = list_match[1].trim(); + content = content.split("\n").map((line) => { + return " " + line; + }).join("\n"); + content = "- " + arg1 + "\n" + content; + return content; + } +}); +var abc_addList = ABConvert.factory({ + id: "addList", + name: "\u7F29\u8FDB\u8F6C\u5217\u8868", + detail: "\u7F29\u8FDB\u8F6C\u5217\u8868", + default: "\u7F29\u8FDB\u8F6C\u5217\u8868\u3002\u5BF9\u4E8E\u7A7A\u884C\u7684\u5904\u7406\u6709\u4E24\u79CD\u7B56\u7565\uFF1A\u4E00\u662F\u7A7A\u884C\u8868\u793A\u4E0B\u4E00\u4E2A\u5217\u8868\uFF0C\u5355\u6362\u884C\u8868\u793A\u540C\u4E00\u5217\u8868\u9879\u3002\u4E8C\u662F\u5FFD\u7565\u7A7A\u884C\u3002\u6682\u65F6\u4EC5\u4E3A\u7B56\u7565\u4E8C", + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + const lists = content.trimEnd().split("\n"); + let newContent = ""; + for (const item of lists) { + if (item.trim() == "") + continue; + const match2 = item.match(/^(\s*)(.*)/); + if (match2) { + newContent += "\n" + match2[1] + "- " + match2[2]; + } else { + } + } + return newContent; + } +}); +var abc_xList = ABConvert.factory({ + id: "xList", + name: "\u5217\u8868\u8F6C\u7F29\u8FDB", + match: /^(xList|Xlist)$/, + detail: "\u5217\u8868\u8F6C\u7F29\u8FDB\u3002\u5BF9\u4E8E\u591A\u884C\u5185\u5BB9\u7684\u5217\u8868\u9879\uFF0C\u9ED8\u8BA4\u6362\u884C\u9879\u5220\u9664\u524D\u7F6E\u7A7A\u683C\u5E76\u4F7F\u7528 `; ` \u62FC\u63A5\uFF0C\u62FC\u63A5\u7B26\u6682\u4E0D\u652F\u6301\u81EA\u5B9A\u4E49", + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + const lists = content.trimEnd().split("\n"); + let newContent = ""; + for (const item of lists) { + const match2 = item.match(ABReg.reg_list_noprefix); + if (match2) { + newContent += "\n" + match2[1] + match2[4]; + } else if (newContent != "") { + newContent += "; " + item.trimStart(); + } else { + } + } + return newContent.slice(1); + } +}); + +// ../ABConverter/converter/abc_code.ts +var abc_region2indent = ABConvert.factory({ + id: "region2indent", + name: "\u4EE3\u7801\u6CE8\u91CA\u8F6C\u7F29\u8FDB", + detail: "\u4EE3\u7801\u5757\u6CE8\u91CA\u8F6C\u7F29\u8FDB (\u8BC6\u522B `//` \u548C `#` \u7684region\u6CE8\u91CA\u5BF9)\uFF0C\u901A\u5E38\u914D\u5408code2list\u4F7F\u7528\u3002\u9ED8\u8BA4\u8865\u5145\u4E24\u7F29\u8FDB", + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + const lists = content.trimEnd().split("\n"); + let newContent = ""; + let startFlagNumber = 0; + const regionReg = /^([ \t]*)(#|\/\/)\s*#?(region|endregion)(.*)/; + for (let i = 0; i < lists.length; i++) { + const item = lists[i]; + const match2 = item.match(regionReg); + if (!match2) { + newContent += "\n" + " ".repeat(startFlagNumber) + item; + continue; + } else { + if (match2[3] == "region") { + newContent += "\n" + " ".repeat(startFlagNumber) + match2[4].trimStart(); + startFlagNumber++; + } else { + startFlagNumber--; + } + } + } + return newContent.slice(1); + } +}); +var abc_mdit2code = ABConvert.factory({ + id: "mdit2code", + name: "mdit\u8F6C\u4EE3\u7801\u5757", + detail: "mdit\u8F6C\u4EE3\u7801\u5757 (\u5141\u8BB8\u5D4C\u5957)\u3002\u6CE8\u610F `:*n` \u4F1A\u8F6C\u5316\u4E3A `~*(n+3)`, `@aaa bbb` \u4F1A\u8F6C\u6362\u4E3A `# bbb` (h1\u6807\u9898)", + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + const lists = content.trimEnd().split("\n"); + let newContent = ""; + for (let i = 0; i < lists.length; i++) { + const item = lists[i]; + const match2 = item.match(ABReg.reg_mdit_head); + const match22 = item.trim().match(/^@(\S*?)\s(.*?)$/); + if (match22) { + newContent += "\n# " + match22[2]; + } else if (match2) { + const flag = "~".repeat(match2[3].length + 3); + if (match2[4].trim() !== "") + newContent += "\n" + flag + "anyblock\n[" + match2[4].trimStart() + "]"; + else + newContent += "\n" + flag; + continue; + } else { + newContent += "\n" + item; + continue; + } + } + return newContent.slice(1); + } +}); + +// ../ABConverter/converter/abc_list.ts +var ListProcess = class { + static list2data(text4, modeG = true) { + let list_inline_comp = []; + function update_inline_comp(level, inline_comp) { + if (list_inline_comp.length == 0 && inline_comp == 0) + return 0; + while (list_inline_comp.length && list_inline_comp[list_inline_comp.length - 1].level >= level) { + list_inline_comp.pop(); + } + if (list_inline_comp.length == 0 && inline_comp == 0) + return 0; + let total_comp; + if (list_inline_comp.length == 0) + total_comp = 0; + else + total_comp = list_inline_comp[list_inline_comp.length - 1].inline_comp; + if (inline_comp > 0) + list_inline_comp.push({ + level, + inline_comp: inline_comp + total_comp + }); + return total_comp; + } + let list_itemInfo = []; + const list_text = text4.split("\n"); + for (let line of list_text) { + const m_line = line.match(ABReg.reg_list_noprefix); + if (m_line) { + let list_inline = m_line[4].split(ABReg.inline_split); + let level_inline = m_line[1].length; + let inline_comp = update_inline_comp(level_inline, list_inline.length - 1); + for (let index2 = 0; index2 < list_inline.length; index2++) { + list_itemInfo.push({ + content: list_inline[index2], + level: level_inline + index2 + inline_comp + }); + } + } else { + let itemInfo = list_itemInfo.pop(); + if (itemInfo) { + list_itemInfo.push({ + content: itemInfo.content + "\n" + line.trim(), + level: itemInfo.level + }); + } + } + } + return list_itemInfo; + } + static list2listnode(text4) { + let data2 = ListProcess.list2data(text4, false); + data2 = ListProcess.data2strict(data2); + let nodes = []; + let prev_nodes = []; + let current_data; + for (let index2 = 0; index2 < data2.length; index2++) { + const item = data2[index2]; + current_data = { + content: item.content, + children: [] + }; + prev_nodes[item.level] = current_data; + if (item.level >= 1 && prev_nodes.hasOwnProperty(item.level - 1)) { + prev_nodes[item.level - 1].children.push(current_data); + } else if (item.level == 0) { + nodes.push(current_data); + } else { + console.error(`list\u6570\u636E\u4E0D\u5408\u89C4\uFF0C\u6CA1\u6709\u6B63\u89C4\u5316. level:${item.level}, prev_nodes:${prev_nodes}`); + return nodes; + } + } + return nodes; + } + static list2json(text4) { + let data2 = ListProcess.list2data(text4, false); + data2 = ListProcess.data2strict(data2); + let nodes = {}; + let prev_nodes = []; + for (let index2 = 0; index2 < data2.length; index2++) { + const item = data2[index2]; + const current_key = item.content; + const current_value = {}; + prev_nodes[item.level] = current_value; + if (item.level >= 1 && prev_nodes.hasOwnProperty(item.level - 1)) { + let lastItem = prev_nodes[item.level - 1]; + if (typeof lastItem != "object" || Array.isArray(lastItem)) { + console.error(`list\u6570\u636E\u4E0D\u5408\u89C4\uFF0C\u7236\u8282\u70B9\u7684value\u503C\u4E0D\u662F{}\u7C7B\u578B`); + return nodes; + } + lastItem[current_key] = current_value; + } else if (item.level == 0) { + nodes[current_key] = current_value; + } else { + console.error(`list\u6570\u636E\u4E0D\u5408\u89C4\uFF0C\u6CA1\u6709\u6B63\u89C4\u5316. level:${item.level}, prev_nodes:${prev_nodes}`); + return nodes; + } + } + let nodes2 = nodes; + traverse(nodes2); + return nodes2; + function traverse(obj, objSource, objSource2) { + if (Array.isArray(obj)) + return; + const keys = Object.keys(obj); + let count_null = 0; + for (let i = 0; i < keys.length; i++) { + const key = keys[i]; + if (!obj.hasOwnProperty(key)) + continue; + const value = obj[key]; + if (typeof value === "object" && !Array.isArray(value)) { + if (Object.keys(value).length === 0) { + let index2 = key.indexOf(": "); + if (index2 > 0) { + delete obj[key]; + i--; + obj[key.slice(0, index2)] = key.slice(index2 + 1); + } else { + obj[key] = ""; + count_null++; + } + } else { + traverse(value, obj, key); + } + } else { + } + } + if (objSource && objSource2) { + let newObj = []; + if (count_null == keys.length) { + for (let i = 0; i < keys.length; i++) { + const key = keys[i]; + if (!obj.hasOwnProperty(key)) + continue; + newObj.push(key); + } + objSource[objSource2] = newObj; + } + } + } + } + static title2data(text4) { + let list_itemInfo = []; + const list_text = text4.split("\n"); + let mul_mode = ""; + let codeBlockFlag = ""; + for (let line of list_text) { + if (codeBlockFlag == "") { + const match2 = line.match(ABReg.reg_code); + if (match2 && match2[3]) { + codeBlockFlag = match2[1] + match2[3]; + list_itemInfo[list_itemInfo.length - 1].content = list_itemInfo[list_itemInfo.length - 1].content + "\n" + line; + continue; + } + } else { + if (line.indexOf(codeBlockFlag) == 0) + codeBlockFlag = ""; + list_itemInfo[list_itemInfo.length - 1].content = list_itemInfo[list_itemInfo.length - 1].content + "\n" + line; + continue; + } + const match_heading = line.match(ABReg.reg_heading_noprefix); + const match_list = line.match(ABReg.reg_list_noprefix); + if (match_heading && !match_heading[1]) { + removeTailBlank(); + list_itemInfo.push({ + content: match_heading[4], + level: match_heading[3].length - 1 - 10 + }); + mul_mode = "heading"; + } else if (match_list) { + removeTailBlank(); + list_itemInfo.push({ + content: match_list[4], + level: match_list[1].length + 1 + }); + mul_mode = "list"; + } else if (/^\S/.test(line) && mul_mode == "list") { + list_itemInfo[list_itemInfo.length - 1].content = list_itemInfo[list_itemInfo.length - 1].content + "\n" + line; + } else { + if (mul_mode == "para") { + list_itemInfo[list_itemInfo.length - 1].content = list_itemInfo[list_itemInfo.length - 1].content + "\n" + line; + } else if (/^\s*$/.test(line)) { + continue; + } else { + list_itemInfo.push({ + content: line, + level: 0 + }); + mul_mode = "para"; + } + } + } + removeTailBlank(); + return list_itemInfo; + function removeTailBlank() { + if (mul_mode == "para" || mul_mode == "list") { + list_itemInfo[list_itemInfo.length - 1].content = list_itemInfo[list_itemInfo.length - 1].content.replace(/\s*$/, ""); + } + } + } + static old_ulist2data(text4) { + let list_itemInfo = []; + let level1 = -1; + let level2 = -1; + const list_text = text4.split("\n"); + for (let line of list_text) { + const m_line = line.match(ABReg.reg_list_noprefix); + if (m_line) { + let level_inline = m_line[1].length; + let this_level; + if (level1 < 0) { + level1 = level_inline; + this_level = 1; + } else if (level1 >= level_inline) + this_level = 1; + else if (level2 < 0) { + level2 = level_inline; + this_level = 2; + } else if (level2 >= level_inline) + this_level = 2; + else { + let itemInfo = list_itemInfo.pop(); + if (itemInfo) { + list_itemInfo.push({ + content: itemInfo.content + "\n" + line.trim(), + level: itemInfo.level + }); + } + continue; + } + list_itemInfo.push({ + content: m_line[4], + level: this_level + }); + } else { + let itemInfo = list_itemInfo.pop(); + if (itemInfo) { + list_itemInfo.push({ + content: itemInfo.content + "\n" + line.trim(), + level: itemInfo.level + }); + } + } + } + let count_level_2 = 0; + for (let item of list_itemInfo) { + if (item.level == 2) { + item.level += count_level_2; + count_level_2++; + } else { + count_level_2 = 0; + } + } + return list_itemInfo; + } + static data2strict(list_itemInfo) { + let list_prev_level = [-999]; + let list_itemInfo2 = []; + for (let itemInfo of list_itemInfo) { + let new_level = 0; + for (let i = 0; i < list_prev_level.length; i++) { + if (list_prev_level[i] < itemInfo.level) + continue; + else if (list_prev_level[i] == itemInfo.level) { + list_prev_level = list_prev_level.slice(0, i + 1); + new_level = i; + break; + } else { + list_prev_level = list_prev_level.slice(0, i); + list_prev_level.push(itemInfo.level); + new_level = i; + break; + } + } + if (new_level == 0) { + list_prev_level.push(itemInfo.level); + new_level = list_prev_level.length - 1; + } + list_itemInfo2.push({ + content: itemInfo.content, + level: new_level - 1 + }); + } + return list_itemInfo2; + } + static data_2L_2_mL1B(list_itemInfo) { + let list_itemInfo2 = []; + let count_level_2 = 0; + for (let item of list_itemInfo) { + if (item.level != 0) { + list_itemInfo2.push({ + content: item.content, + level: item.level + count_level_2 + }); + count_level_2++; + } else { + list_itemInfo2.push({ + content: item.content, + level: item.level + }); + count_level_2 = 0; + } + } + return list_itemInfo2; + } + static data2list(list_itemInfo) { + let list_newcontent = []; + for (let item of list_itemInfo) { + const str_indent = " ".repeat(item.level); + let list_content = item.content.split("\n"); + for (let i = 0; i < list_content.length; i++) { + if (i == 0) + list_newcontent.push(str_indent + "- " + list_content[i]); + else + list_newcontent.push(str_indent + " " + list_content[i]); + } + } + const newcontent = list_newcontent.join("\n"); + return newcontent; + } + static data2nodes(listdata, el) { + const el_root = document.createElement("div"); + el.appendChild(el_root); + el_root.classList.add("ab-nodes"); + const el_root2 = document.createElement("div"); + el_root.appendChild(el_root2); + el_root2.classList.add("ab-nodes-children"); + let cache_els = []; + for (let item of listdata) { + const el_node = document.createElement("div"); + el_node.classList.add("ab-nodes-node"); + el_node.setAttribute("has_children", "false"); + const el_node_content = document.createElement("div"); + el_node.appendChild(el_node_content); + el_node_content.classList.add("ab-nodes-content"); + ABConvertManager.getInstance().m_renderMarkdownFn(item.content, el_node_content); + const el_node_children = document.createElement("div"); + el_node.appendChild(el_node_children); + el_node_children.classList.add("ab-nodes-children"); + const el_node_barcket = document.createElement("div"); + el_node_children.appendChild(el_node_barcket); + el_node_barcket.classList.add("ab-nodes-bracket"); + const el_node_barcket2 = document.createElement("div"); + el_node_children.appendChild(el_node_barcket2); + el_node_barcket2.classList.add("ab-nodes-bracket2"); + cache_els[item.level] = { node: el_node, content: el_node_content, children: el_node_children }; + if (item.level == 0) { + el_root2.appendChild(el_node); + } else if (item.level >= 1 && cache_els.hasOwnProperty(item.level - 1)) { + cache_els[item.level - 1].children.appendChild(el_node); + cache_els[item.level - 1].node.setAttribute("has_children", "true"); + } else { + console.error("\u8282\u70B9\u9519\u8BEF"); + return el; + } + } + return el; + } +}; +var abc_list2listdata = ABConvert.factory({ + id: "list2listdata", + name: "\u5217\u8868\u5230listdata", + process_param: "string" /* text */, + process_return: "array" /* list_stream */, + detail: "\u5217\u8868\u5230listdata", + process: (el, header, content) => { + return ListProcess.list2data(content); + } +}); +var abc_title2listdata = ABConvert.factory({ + id: "title2listdata", + name: "\u6807\u9898\u5230listdata", + process_param: "string" /* text */, + process_return: "array" /* list_stream */, + detail: "\u6807\u9898\u5230listdata", + process: (el, header, content) => { + return ListProcess.title2data(content); + } +}); +var abc_listdata2list = ABConvert.factory({ + id: "listdata2list", + name: "listdata\u5230\u5217\u8868", + process_param: "array" /* list_stream */, + process_return: "string" /* text */, + detail: "listdata\u5230\u5217\u8868", + process: (el, header, content) => { + return ListProcess.data2list(content); + } +}); +var abc_listdata2nodes = ABConvert.factory({ + id: "listdata2nodes", + name: "listdata\u5230\u8282\u70B9\u56FE", + process_param: "array" /* list_stream */, + process_return: "HTMLElement" /* el */, + detail: "listdata\u5230\u8282\u70B9\u56FE", + process: (el, header, content) => { + return ListProcess.data2nodes(content, el); + } +}); +var abc_listdata2strict = ABConvert.factory({ + id: "listdata2strict", + name: "listdata\u4E25\u683C\u5316", + process_param: "array" /* list_stream */, + process_return: "array" /* list_stream */, + detail: "\u5C06\u5217\u8868\u6570\u636E\u8F6C\u5316\u4E3A\u66F4\u89C4\u8303\u7684\u5217\u8868\u6570\u636E\u3002\u7EDF\u4E00\u7F29\u8FDB\u7B26(2\u7A7A\u683C 4\u7A7A\u683C tab\u6DF7\u7528)\u3001\u7981\u6B62\u8DF3\u7B49\u7EA7(h1\u76F4\u63A5\u5C31\u5230h3)", + process: (el, header, content) => { + return ListProcess.data2strict(content); + } +}); +var abc_list2listnode = ABConvert.factory({ + id: "list2listnode", + name: "\u5217\u8868\u5230listnode (beta)", + process_param: "string" /* text */, + process_return: "json_string" /* json */, + detail: "\u5217\u8868\u5230listnode", + process: (el, header, content) => { + const data2 = ListProcess.list2listnode(content); + return JSON.stringify(data2, null, 2); + } +}); +var abc_list2json = ABConvert.factory({ + id: "list2json", + name: "\u5217\u8868\u5230json (beta)", + process_param: "string" /* text */, + process_return: "json_string" /* json */, + detail: "\u5217\u8868\u5230json", + process: (el, header, content) => { + const data2 = ListProcess.list2json(content); + return JSON.stringify(data2, null, 2); + } +}); + +// ../ABConverter/converter/abc_c2list.ts +var C2ListProcess = class { + static data_mL_2_2L1B(list_itemInfo) { + const list_itemInfo2 = []; + const level1 = 0; + const level2 = 1; + let flag_leve2 = false; + for (const itemInfo of list_itemInfo) { + if (level1 >= itemInfo.level) { + list_itemInfo2.push({ + content: itemInfo.content.trim(), + level: level1 + }); + flag_leve2 = false; + continue; + } + if (true) { + if (!flag_leve2) { + list_itemInfo2.push({ + content: itemInfo.content.trim(), + level: level2 + }); + flag_leve2 = true; + continue; + } else { + const old_itemInfo = list_itemInfo2.pop(); + if (old_itemInfo) { + let new_content = itemInfo.content.trim(); + if (itemInfo.level > level2) + new_content = "- " + new_content; + for (let i = 0; i < itemInfo.level - level2; i++) + new_content = " " + new_content; + new_content = old_itemInfo.content + "\n" + new_content; + list_itemInfo2.push({ + content: new_content, + level: level2 + }); + } + } + } + } + return list_itemInfo2; + } + static data_mL_2_2L(list_itemInfo) { + const list_itemInfo2 = []; + const level1 = 0; + const level2 = 1; + for (const itemInfo of list_itemInfo) { + if (level1 >= itemInfo.level) { + list_itemInfo2.push({ + content: itemInfo.content.trim(), + level: level1 + }); + continue; + } + if (level2 >= itemInfo.level) { + list_itemInfo2.push({ + content: itemInfo.content.trim(), + level: level2 + }); + continue; + } else { + const old_itemInfo = list_itemInfo2.pop(); + if (old_itemInfo) { + let new_content = itemInfo.content.trim(); + if (itemInfo.level > level2) + new_content = "- " + new_content; + for (let i = 0; i < itemInfo.level - level2; i++) + new_content = " " + new_content; + new_content = old_itemInfo.content + "\n" + new_content; + list_itemInfo2.push({ + content: new_content, + level: level2 + }); + } + } + } + return list_itemInfo2; + } + static list2c2data(text4, modeG = true) { + const list_itemInfo = []; + const list_text = text4.trimStart().split("\n"); + const first_match = list_text[0].match(ABReg.reg_list_noprefix); + if (!first_match || first_match[1]) { + console.error("\u4E0D\u662F\u5217\u8868\u5185\u5BB9:", list_text[0]); + return list_itemInfo; + } + const root_list_level = first_match[1].length; + let current_content = ""; + let current_content_prefix = ""; + for (let line of list_text) { + const match_list = line.match(ABReg.reg_list_noprefix); + if (match_list && !match_list[1] && match_list[1].length <= root_list_level) { + add_current_content(); + let content = match_list[4]; + if (modeG) { + const inlines = match_list[4].split(ABReg.inline_split); + if (inlines.length > 1) { + const second_part = content.indexOf(inlines[1]); + current_content += content.slice(second_part) + "\n"; + current_content_prefix = " "; + content = inlines[0]; + } + } + list_itemInfo.push({ + content, + level: 0 + }); + } else { + if (current_content.trim() == "") { + if (match_list && match_list[1]) + current_content_prefix = match_list[1]; + else + current_content_prefix = " "; + } + if (line.startsWith(" ")) + line = line.substring(1); + else if (line.startsWith(current_content_prefix)) { + line = line.substring(current_content_prefix.length); + } + current_content += line + "\n"; + } + } + add_current_content(); + return list_itemInfo; + function add_current_content() { + if (current_content.trim() == "") + return; + list_itemInfo.push({ + content: current_content, + level: 1 + }); + current_content = ""; + } + } + static title2c2data(text4) { + const list_itemInfo = []; + const list_text = text4.trimStart().split("\n"); + const first_match = list_text[0].match(ABReg.reg_heading_noprefix); + if (!first_match || first_match[1]) { + console.error("\u4E0D\u662F\u6807\u9898\u5185\u5BB9:", list_text[0]); + return list_itemInfo; + } + const root_title_level = first_match[3].length - 1; + let current_content = ""; + let codeBlockFlag = ""; + for (const line of list_text) { + if (codeBlockFlag == "") { + const match2 = line.match(ABReg.reg_code); + if (match2 && match2[3]) { + codeBlockFlag = match2[1] + match2[3]; + current_content += line + "\n"; + continue; + } + } else { + if (line.indexOf(codeBlockFlag) == 0) + codeBlockFlag = ""; + current_content += line + "\n"; + continue; + } + const match_heading = line.match(ABReg.reg_heading_noprefix); + if (match_heading && !match_heading[1] && match_heading[3].length - 1 <= root_title_level) { + add_current_content(); + list_itemInfo.push({ + content: match_heading[4], + level: 0 + }); + } else { + current_content += line + "\n"; + } + } + add_current_content(); + return list_itemInfo; + function add_current_content() { + if (current_content.trim() == "") + return; + list_itemInfo.push({ + content: current_content, + level: 1 + }); + current_content = ""; + } + } + static c2data2tab(list_itemInfo, div, modeT) { + { + const tab = document.createElement("div"); + div.appendChild(tab); + tab.classList.add("ab-tab-root"); + if (modeT) + tab.setAttribute("modeT", "true"); + const nav = document.createElement("div"); + tab.appendChild(nav); + nav.classList.add("ab-tab-nav"); + const content = document.createElement("div"); + tab.appendChild(content); + content.classList.add("ab-tab-content"); + let current_dom = null; + for (let i = 0; i < list_itemInfo.length; i++) { + const itemInfo = list_itemInfo[i]; + if (!current_dom) { + if (itemInfo.level == 0) { + const nav_item = document.createElement("button"); + nav.appendChild(nav_item); + nav_item.classList.add("ab-tab-nav-item"); + nav_item.textContent = itemInfo.content.slice(0, 20); + nav_item.setAttribute("is_activate", i == 0 ? "true" : "false"); + current_dom = document.createElement("div"); + content.appendChild(current_dom); + current_dom.classList.add("ab-tab-content-item"); + current_dom.setAttribute("style", i == 0 ? "display:block" : "display:none"); + current_dom.setAttribute("is_activate", i == 0 ? "true" : "false"); + } + } else { + ABConvertManager.getInstance().m_renderMarkdownFn(itemInfo.content, current_dom); + current_dom = null; + } + } + const lis = tab.querySelectorAll(":scope>.ab-tab-nav>.ab-tab-nav-item"); + const contents2 = tab.querySelectorAll(":scope>.ab-tab-content>.ab-tab-content-item"); + if (lis.length != contents2.length) + console.warn("ab-tab-nav-item\u548Cab-tab-content-item\u7684\u6570\u91CF\u4E0D\u4E00\u81F4"); + for (let i = 0; i < lis.length; i++) { + if (ABCSetting.env == "obsidian" || ABCSetting.env == "obsidian-min") { + lis[i].onclick = () => { + for (let j = 0; j < contents2.length; j++) { + lis[j].setAttribute("is_activate", "false"); + contents2[j].setAttribute("is_activate", "false"); + contents2[j].setAttribute("style", "display:none"); + } + lis[i].setAttribute("is_activate", "true"); + contents2[i].setAttribute("is_activate", "true"); + contents2[i].setAttribute("style", "display:block"); + }; + } else { + lis[i].setAttribute("onclick", ` + const i = ${i} + const tab_current = this + const tab_nav = this.parentNode + const tab_root = tab_nav.parentNode + const tab_content = tab_root.querySelector(":scope>.ab-tab-content") + const tab_nav_items = tab_nav.querySelectorAll(":scope>.ab-tab-nav-item") + const tab_content_items = tab_content.querySelectorAll(":scope>.ab-tab-content-item") + for (let j=0; j { + return C2ListProcess.list2c2data(content); + } +}); +var abc_title2c2listdata = ABConvert.factory({ + id: "title2c2listdata", + name: "\u6807\u9898\u8F6Cc2listdata", + match: "title2c2listdata", + default: "title2c2listdata", + process_param: "string" /* text */, + process_return: "array2" /* c2list_stream */, + process: (el, header, content) => { + return C2ListProcess.title2c2data(content); + } +}); +var abc_c2listdata2tab = ABConvert.factory({ + id: "c2listdata2tab", + name: "c2listdata\u8F6C\u6807\u7B7E", + match: "c2listdata2tab", + default: "c2listdata2tab", + process_param: "array2" /* c2list_stream */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + return C2ListProcess.c2data2tab(content, el, false); + } +}); +var abc_c2listdata2items = ABConvert.factory({ + id: "c2listdata2items", + name: "c2listdata\u8F6C\u5BB9\u5668\u7ED3\u6784", + match: "c2listdata2items", + default: "c2listdata2items", + process_param: "array2" /* c2list_stream */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + return C2ListProcess.c2data2items(content, el); + } +}); +var abc_c2listdata2easytimeline = ABConvert.factory({ + id: "c2listdata2easytimeline", + name: "\u9002\u914D\u5230easy_timeline", + match: "c2listdata2easytimeline", + detail: "\u9002\u914D\u5230easy_timeline\u683C\u5F0F\uFF0C\u9700\u8981\u5B89\u88C5easy timeline\u63D2\u4EF6", + process_param: "array2" /* c2list_stream */, + process_return: "string" /* text */, + process: (el, header, content) => { + let all_line = ""; + let line = ""; + for (const item of content) { + if (item.level == 0) { + if (line != "") + all_line += line + "\n\n"; + line = item.content + ". "; + } else { + if (line == "") + line = " . "; + line += item.content; + } + } + if (line != "") + all_line += line; + return "````timeline\n" + all_line + "\n````"; + } +}); + +// ../ABConverter/converter/abc_table.ts +var TableProcess = class { + static list2ut(text4, div, modeT = false) { + let data2 = ListProcess.list2data(text4); + data2 = ListProcess.data2strict(data2); + data2 = C2ListProcess.data_mL_2_2L(data2); + data2 = ListProcess.data_2L_2_mL1B(data2); + return TableProcess.data2table(data2, div, modeT); + } + static list2timeline(text4, div, modeT = false) { + let data2 = C2ListProcess.list2c2data(text4); + div = TableProcess.data2table(data2, div, modeT); + const table2 = div.querySelector("table"); + if (table2) + table2.classList.add("ab-table-timeline", "ab-table-fc"); + return div; + } + static title2timeline(text4, div, modeT = false) { + let data2 = C2ListProcess.title2c2data(text4); + div = TableProcess.data2table(data2, div, modeT); + const table2 = div.querySelector("table"); + if (table2) + table2.classList.add("ab-table-timeline", "ab-table-fc"); + return div; + } + static data2table(list_itemInfo, div, modeT) { + let list_tableInfo = []; + let prev_line = -1; + let prev_level = 999; + for (let i = 0; i < list_itemInfo.length; i++) { + let item = list_itemInfo[i]; + let tableRow = 1; + let row_level = list_itemInfo[i].level; + for (let j = i + 1; j < list_itemInfo.length; j++) { + if (list_itemInfo[j].level > row_level) { + row_level = list_itemInfo[j].level; + } else if (list_itemInfo[j].level > list_itemInfo[i].level) { + row_level = list_itemInfo[j].level; + tableRow++; + } else + break; + } + if (item.level <= prev_level) { + prev_line++; + } + prev_level = item.level; + list_tableInfo.push({ + content: item.content, + level: item.level, + tableRowSpan: tableRow, + tableRow: prev_line + }); + } + { + const table2 = document.createElement("table"); + div.appendChild(table2); + table2.classList.add("ab-table", "ab-branch-table"); + if (modeT) + table2.setAttribute("modeT", "true"); + let thead; + if (list_tableInfo[0].content.indexOf("< ") == 0) { + thead = document.createElement("thead"); + table2.appendChild(thead); + list_tableInfo[0].content = list_tableInfo[0].content.replace(/^\<\s/, ""); + } + const tbody = document.createElement("tbody"); + table2.appendChild(tbody); + for (let index_line = 0; index_line < prev_line + 1; index_line++) { + let is_head; + let tr; + if (index_line == 0 && thead) { + tr = document.createElement("tr"); + thead.appendChild(tr); + is_head = true; + } else { + is_head = false; + tr = document.createElement("tr"); + tbody.appendChild(tr); + } + for (let item of list_tableInfo) { + if (item.tableRow != index_line) + continue; + let td = document.createElement(is_head ? "th" : "td"); + tr.appendChild(td); + td.setAttribute("rowspan", item.tableRowSpan.toString()); + td.setAttribute("col_index", item.level.toString()); + ABConvertManager.getInstance().m_renderMarkdownFn(item.content, td); + } + } + } + return div; + } +}; +var abc_title2table = ABConvert.factory({ + id: "title2table", + name: "\u6807\u9898\u5230\u8868\u683C", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const data2 = abc_title2listdata.process(el, header, content); + return el = TableProcess.data2table(data2, el, false); + } +}); +var abc_list2table = ABConvert.factory({ + id: "list2table", + name: "\u5217\u8868\u8F6C\u8868\u683C", + match: /list2(md)?table(T)?/, + default: "list2table", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const matchs = header.match(/list2(md)?table(T)?/); + if (!matchs) + return el; + const data2 = abc_list2listdata.process(el, header, content); + return el = TableProcess.data2table(data2, el, matchs[2] == "T"); + } +}); +var abc_list2c2table = ABConvert.factory({ + id: "list2c2t", + name: "\u5217\u8868\u8F6C\u4E8C\u5217\u8868\u683C", + match: "list2c2t", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + let data2 = C2ListProcess.list2c2data(content); + TableProcess.data2table(data2, el, false); + return el; + } +}); +var abc_list2ut = ABConvert.factory({ + id: "list2ut", + name: "\u5217\u8868\u8F6C\u4E8C\u7EF4\u8868\u683C", + match: /list2(md)?ut(T)?/, + default: "list2ut", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const matchs = header.match(/list2(md)?ut(T)?/); + if (!matchs) + return el; + TableProcess.list2ut(content, el, matchs[2] == "T"); + return el; + } +}); +var abc_list2timeline = ABConvert.factory({ + id: "list2timeline", + name: "\u5217\u8868\u8F6C\u65F6\u95F4\u7EBF", + match: /list2(md)?timeline(T)?/, + default: "list2mdtimeline", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const matchs = header.match(/list2(md)?timeline(T)?/); + if (!matchs) + return el; + TableProcess.list2timeline(content, el, matchs[2] == "T"); + return el; + } +}); +var abc_title2timeline = ABConvert.factory({ + id: "title2timeline", + name: "\u6807\u9898\u8F6C\u65F6\u95F4\u7EBF", + match: /title2(md)?timeline(T)?/, + default: "title2mdtimeline", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const matchs = header.match(/title2(md)?timeline(T)?/); + if (!matchs) + return el; + TableProcess.title2timeline(content, el, matchs[2] == "T"); + return el; + } +}); + +// ../ABConverter/converter/abc_dir_tree.ts +var DirProcess = class { + static list2lt(text4, div, modeT = false) { + let list_itemInfo = DirProcess.list2dtdata(text4); + list_itemInfo = ListProcess.data2strict(list_itemInfo).map((item, index2) => { + return { + content: list_itemInfo[index2].content, + level: item.level, + tableRow: list_itemInfo[index2].tableRow, + tableColumn: list_itemInfo[index2].tableColumn, + tableRowSpan: list_itemInfo[index2].tableRowSpan, + type: list_itemInfo[index2].type + }; + }); + return DirProcess.dtdata2dt(list_itemInfo, div, modeT); + } + static list2dt(text4, div, modeT = false) { + let list_itemInfo = DirProcess.list2dtdata(text4); + list_itemInfo = ListProcess.data2strict(list_itemInfo).map((item, index2) => { + return { + content: list_itemInfo[index2].content, + level: item.level, + tableRow: list_itemInfo[index2].tableRow, + tableColumn: list_itemInfo[index2].tableColumn, + tableRowSpan: list_itemInfo[index2].tableRowSpan, + type: list_itemInfo[index2].type + }; + }); + return DirProcess.dtdata2dt(list_itemInfo, div, modeT, true); + } + static list2dtdata(text4) { + const list_itemInfo = []; + const list_text = text4.split("\n"); + let row_index = -1; + for (const line of list_text) { + const m_line = line.match(ABReg.reg_list_noprefix); + if (m_line) { + row_index++; + const content = m_line[4]; + const level_inline = m_line[1].length; + list_itemInfo.push({ + content: content.trimStart(), + level: level_inline, + tableRow: row_index, + tableColumn: 0, + type: "", + tableRowSpan: 1 + }); + } else { + const itemInfo = list_itemInfo.pop(); + if (itemInfo) { + list_itemInfo.push({ + content: itemInfo.content + "\n" + line.trim(), + level: itemInfo.level, + tableRow: itemInfo.tableRow, + tableColumn: itemInfo.tableColumn, + type: itemInfo.type, + tableRowSpan: itemInfo.tableRowSpan + }); + } + } + } + const list_itemInfo2 = []; + for (const row_item of list_itemInfo) { + const list_column_item = row_item.content.split(ABReg.inline_split); + for (let column_index = 0; column_index < list_column_item.length; column_index++) { + let type = ""; + if (column_index == 0) { + if (list_column_item[column_index].trimEnd().endsWith("/")) { + type = "folder"; + } else { + const parts = list_column_item[column_index].split("."); + if (parts.length === 0 || parts[parts.length - 1] === "") + type = ""; + else + type = parts[parts.length - 1]; + } + } + list_itemInfo2.push({ + content: list_column_item[column_index].trimEnd(), + level: row_item.level, + tableRow: row_index, + tableColumn: column_index, + type, + tableRowSpan: row_item.tableRowSpan + }); + } + } + return list_itemInfo2; + } + static dtdata2dt(list_tableInfo, div, modeT, is_folder = false) { + var _a3; + const div2 = document.createElement("div"); + div.appendChild(div2); + div2.classList.add("ab-list-table-parent"); + let table2, thead, tbody; + { + table2 = document.createElement("table"); + div2.appendChild(table2); + table2.classList.add("ab-table", "ab-list-table"); + if (is_folder) + table2.classList.add("ab-table-folder"); + if (modeT) + table2.setAttribute("modeT", "true"); + { + if (list_tableInfo[0].content.indexOf("< ") == 0) { + thead = document.createElement("thead"); + table2.appendChild(thead); + list_tableInfo[0].content = list_tableInfo[0].content.replace(/^\<\s/, ""); + } + tbody = document.createElement("tbody"); + table2.appendChild(tbody); + } + let tr; + let is_head = false; + let prev_tr = null; + for (let cell_index = 0; cell_index < list_tableInfo.length; cell_index++) { + const cell_item = list_tableInfo[cell_index]; + if (cell_item.tableColumn == 0) { + if (cell_index == 0 && thead) { + is_head = true; + tr = document.createElement("tr"); + thead.appendChild(tr); + } else { + is_head = false; + tr = document.createElement("tr"); + tbody.appendChild(tr); + tr.classList.add("ab-foldable-tr"); + tr.setAttribute("tr_level", cell_item.level.toString()); + tr.setAttribute("is_fold", "false"); + tr.setAttribute("able_fold", "false"); + tr.setAttribute("type", cell_item.type); + } + if (prev_tr && !isNaN(Number(prev_tr.getAttribute("tr_level"))) && Number(prev_tr.getAttribute("tr_level")) < cell_item.level) { + prev_tr.setAttribute("able_fold", "true"); + } + prev_tr = tr; + } + const td = document.createElement(is_head ? "th" : "td"); + tr.appendChild(td); + td.setAttribute("rowspan", cell_item.tableRowSpan.toString()); + if (cell_item.tableColumn == 0 && is_folder) { + const td_svg = document.createElement("div"); + td.appendChild(td_svg); + td_svg.classList.add("ab-list-table-svg"); + if (!is_head) { + if (cell_item.type == "folder") { + td_svg.innerHTML = ``; + cell_item.content = cell_item.content.trimEnd().slice(0, -1); + } else { + td_svg.innerHTML = ``; + } + } + } + const td_cell = document.createElement("div"); + td.appendChild(td_cell); + td_cell.classList.add("ab-list-table-witharrow"); + if (cell_item.tableColumn == 0 && is_folder) { + td_cell.innerHTML = cell_item.content; + } else { + ABConvertManager.getInstance().m_renderMarkdownFn(cell_item.content, td_cell); + } + } + } + { + const l_tr = tbody.querySelectorAll("tr"); + for (let i = 0; i < l_tr.length; i++) { + const tr = l_tr[i]; + const targetEl = (_a3 = tr.querySelector(":scope>td:first-child")) != null ? _a3 : tr; + if (ABCSetting.env == "obsidian" || ABCSetting.env == "obsidian-min") { + targetEl.onclick = () => { + const tr_level = Number(tr.getAttribute("tr_level")); + if (isNaN(tr_level)) + return; + const tr_isfold = tr.getAttribute("is_fold"); + if (!tr_isfold) + return; + let flag_do_fold = false; + for (let j = i + 1; j < l_tr.length; j++) { + const tr2 = l_tr[j]; + const tr_level2 = Number(tr2.getAttribute("tr_level")); + if (isNaN(tr_level2)) + break; + if (tr_level2 <= tr_level) + break; + tr_isfold == "true" ? tr2.style.display = "" : tr2.style.display = "none"; + flag_do_fold = true; + } + if (flag_do_fold) + tr.setAttribute("is_fold", tr_isfold == "true" ? "false" : "true"); + }; + } else { + targetEl.setAttribute("onclick", ` const tr = (this.tagName == "TD") ? this.parentNode : this + const l_tr = tr.parentNode.querySelectorAll("tr") + const i = ${i} + + const tr_level = Number(tr.getAttribute("tr_level")) + if (isNaN(tr_level)) return + const tr_isfold = tr.getAttribute("is_fold") + if (!tr_isfold) return + let flag_do_fold = false // \u9632\u6B62\u6298\u53E0\u6700\u5C0F\u5C42 + for (let j=i+1; j`; + const svgStr_unfold = ``; + btn.setAttribute("is_fold", "false"); + btn.innerHTML = svgStr_fold; + if (ABCSetting.env == "obsidian" || ABCSetting.env == "obsidian-min") { + btn.onclick = () => { + const l_tr = table2.querySelectorAll("tr"); + for (let i = 0; i < l_tr.length; i++) { + const tr = l_tr[i]; + (() => { + const tr_level = Number(tr.getAttribute("tr_level")); + if (isNaN(tr_level)) + return; + const tr_isfold = btn.getAttribute("is_fold"); + if (!tr_isfold) + return; + let flag_do_fold = false; + for (let j = i + 1; j < l_tr.length; j++) { + const tr2 = l_tr[j]; + const tr_level2 = Number(tr2.getAttribute("tr_level")); + if (isNaN(tr_level2)) + break; + if (tr_level2 <= tr_level) + break; + tr_isfold == "true" ? tr2.style.display = "" : tr2.style.display = "none"; + flag_do_fold = true; + } + if (flag_do_fold) + tr.setAttribute("is_fold", tr_isfold == "true" ? "false" : "true"); + })(); + } + const is_all_fold = btn.getAttribute("is_fold"); + if (is_all_fold == "true") { + btn.setAttribute("is_fold", "false"); + btn.innerHTML = svgStr_fold; + } else { + btn.setAttribute("is_fold", "true"); + btn.innerHTML = svgStr_unfold; + } + }; + } else { + btn.setAttribute( + "onclick", + ` const btn = this; + const svgStr_fold = \`${svgStr_fold}\`; + const svgStr_unfold = \`${svgStr_unfold}\`; + const table = btn.parentNode?.querySelector("table"); + if (!table) return; + + const l_tr = table.querySelectorAll("tr"); + for (let i=0; i{ + const tr_level = Number(tr.getAttribute("tr_level")) + if (isNaN(tr_level)) return + const tr_isfold = btn.getAttribute("is_fold"); // [!code] tr->btn + if (!tr_isfold) return + let flag_do_fold = false // \u9632\u6B62\u6298\u53E0\u6700\u5C0F\u5C42 + for (let j=i+1; j { + const matchs = header.match(/list2(md)?lt(T)?/); + if (!matchs) + return el; + DirProcess.list2lt(content, el, matchs[2] == "T"); + return el; + } +}); +var abc_list2dt = ABConvert.factory({ + id: "list2dt", + name: "\u5217\u8868\u8F6C\u6811\u72B6\u76EE\u5F55", + match: /list2(md)?dt(T)?/, + default: "list2dt", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const matchs = header.match(/list2(md)?dt(T)?/); + if (!matchs) + return el; + DirProcess.list2dt(content, el, matchs[2] == "T"); + return el; + } +}); +function listdata2dirdata(list2) { + const is_have_vbar = []; + const newlist = []; + for (let i = 0; i < list2.length; i++) { + const item = list2[i]; + let type; + if (item.content.trimEnd().endsWith("/")) { + type = "folder"; + } else { + const parts = item.content.split("."); + if (parts.length === 0 || parts[parts.length - 1] === "") + type = ""; + else + type = parts[parts.length - 1]; + } + let is_last = true; + for (let j = i + 1; j < list2.length; j++) { + if (list2[j].level < item.level) { + is_last = true; + break; + } else if (list2[j].level == item.level) { + is_last = false; + break; + } else { + continue; + } + } + is_have_vbar[item.level] = !is_last; + let pre_as_text = ""; + if (item.level > 1) { + for (let i2 = 1; i2 < item.level; i2++) { + if (!is_have_vbar.hasOwnProperty(i2)) + pre_as_text += "[e]"; + else if (is_have_vbar[i2]) + pre_as_text += "| "; + else + pre_as_text += " "; + } + } + newlist.push({ + content: item.content, + level: item.level, + type, + is_last, + pre_as_text + }); + } + return newlist; +} +var abc_list2astreeH = ABConvert.factory({ + id: "list2astreeH", + name: "\u5217\u8868\u5230sacii\u76EE\u5F55\u6811", + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + let listdata = ListProcess.list2data(content); + listdata = ListProcess.data2strict(listdata); + const dirlistdata = listdata2dirdata(listdata); + let newContent = ""; + for (const item of dirlistdata) { + if (item.level == 0) { + newContent += item.content + "\n"; + } else { + newContent += item.pre_as_text + (item.is_last ? "\u2514\u2500 " : "\u251C\u2500 ") + item.content + "\n"; + } + } + newContent = newContent.trimEnd(); + return newContent; + } +}); + +// ../ABConverter/converter/abc_deco.ts +var abc_md = ABConvert.factory({ + id: "md", + name: "md", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const subEl = document.createElement("div"); + el.appendChild(subEl); + ABConvertManager.getInstance().m_renderMarkdownFn(content, subEl); + return el; + } +}); +var abc_text = ABConvert.factory({ + id: "text", + name: "\u7EAF\u6587\u672C", + detail: "\u5176\u5B9E\u4E00\u822C\u4F1A\u66F4\u63A8\u8350\u7528code()\u4EE3\u66FF\uFF0C\u90A3\u4E2A\u66F4\u7CBE\u786E", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + el.innerHTML = `

${content.replace(/ /g, " ").split("\n").join("
")}

`; + return el; + } +}); +var abc_fold = ABConvert.factory({ + id: "fold", + name: "\u6298\u53E0", + process_param: "HTMLElement" /* el */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + if (content.children.length != 1) + return content; + const sub_el = content.children[0]; + sub_el.remove(); + sub_el.setAttribute("is_hide", "true"); + sub_el.classList.add("ab-deco-fold-content"); + sub_el.style.display = "none"; + const mid_el = document.createElement("div"); + content.appendChild(mid_el); + mid_el.classList.add("ab-deco-fold"); + const sub_button = document.createElement("div"); + mid_el.appendChild(sub_button); + sub_button.classList.add("ab-deco-fold-button"); + sub_button.textContent = "\u5C55\u5F00"; + const fn_fold = () => { + const is_hide = sub_el.getAttribute("is_hide"); + if (is_hide && is_hide == "false") { + sub_el.setAttribute("is_hide", "true"); + sub_el.style.display = "none"; + sub_button.textContent = "\u5C55\u5F00"; + } else if (is_hide && is_hide == "true") { + sub_el.setAttribute("is_hide", "false"); + sub_el.style.display = ""; + sub_button.textContent = "\u6298\u53E0"; + } + }; + sub_button.onclick = fn_fold; + mid_el.appendChild(sub_button); + mid_el.appendChild(sub_el); + const isListTable = sub_el.classList.contains("ab-list-table-parent"); + const listTable_btn = sub_el.querySelector(".ab-table-fold"); + if (isListTable && listTable_btn) { + if (ABCSetting.env == "obsidian" || ABCSetting.env == "obsidian-min") { + fn_fold(); + sub_button.textContent = "\u6298\u53E0/\u5C55\u5F00"; + const fn_fold2 = () => { + const clickEvent = new MouseEvent("click", { + view: window, + bubbles: true, + cancelable: true + }); + listTable_btn.dispatchEvent(clickEvent); + }; + fn_fold2(); + sub_button.onclick = fn_fold2; + } else { + } + } + return content; + } +}); +var abc_scroll = ABConvert.factory({ + id: "scroll", + name: "\u6EDA\u52A8", + match: /^scroll(X)?(\((\d+)\))?$/, + default: "scroll(460)", + detail: "\u9ED8\u8BA4\u662F\u7EB5\u5411\u6EDA\u52A8\u3002\u53EF\u4EE5\u6307\u5B9A\u6EA2\u51FA\u6EDA\u52A8\u7684\u8303\u56F4\uFF0C\u53EF\u4EE5\u4F7F\u7528scrollX\u8FDB\u884C\u6A2A\u5411\u6EDA\u52A8", + process_param: "HTMLElement" /* el */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const matchs = header.match(/^scroll(X)?(\((\d+)\))?$/); + if (!matchs) + return content; + let arg1 = 0; + if (matchs[2] && matchs[3]) { + arg1 = Number(matchs[3]); + if (isNaN(arg1)) + return content; + } + if (content.children.length != 1) + return content; + const sub_el = content.children[0]; + sub_el.remove(); + const mid_el = document.createElement("div"); + content.appendChild(mid_el); + mid_el.classList.add("ab-deco-scroll"); + mid_el.appendChild(sub_el); + if (!matchs[1]) { + mid_el.classList.add("ab-deco-scroll-y"); + mid_el.setAttribute("style", `max-height: ${arg1 !== 0 ? arg1 + "px" : "460px"}`); + } else { + mid_el.classList.add("ab-deco-scroll-x"); + mid_el.setAttribute("style", `max-height: ${arg1 !== 0 ? arg1 + "px" : "100%"}`); + } + return content; + } +}); +var abc_overfold = ABConvert.factory({ + id: "overfold", + name: "\u8D85\u51FA\u6298\u53E0", + match: /^overfold(\((\d+)\))?$/, + default: "overfold(380)", + process_param: "HTMLElement" /* el */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const matchs = header.match(/^overfold(\((\d+)\))?$/); + if (!matchs) + return content; + let arg1; + if (!matchs[1]) + arg1 = 460; + else { + if (!matchs[2]) + return content; + arg1 = Number(matchs[2]); + if (isNaN(arg1)) + return content; + } + if (content.children.length != 1) + return content; + const sub_el = content.children[0]; + sub_el.remove(); + const mid_el = document.createElement("div"); + content.appendChild(mid_el); + mid_el.classList.add("ab-deco-overfold"); + const sub_button = document.createElement("div"); + mid_el.appendChild(sub_button); + sub_button.classList.add("ab-deco-overfold-button"); + sub_button.textContent = "\u5C55\u5F00"; + sub_el.classList.add("ab-deco-overfold-content"); + mid_el.appendChild(sub_el); + mid_el.appendChild(sub_button); + mid_el.setAttribute("style", `max-height: ${arg1}px`); + mid_el.setAttribute("is-fold", "true"); + sub_button.onclick = () => { + const is_fold = mid_el.getAttribute("is-fold"); + if (!is_fold) + return; + if (is_fold == "true") { + mid_el.setAttribute("style", ""); + mid_el.setAttribute("is-fold", "false"); + sub_button.textContent = "\u6298\u53E0"; + } else { + mid_el.setAttribute("style", `max-height: ${arg1}px`); + mid_el.setAttribute("is-fold", "true"); + sub_button.textContent = "\u5C55\u5F00"; + } + }; + return content; + } +}); +var abc_width = ABConvert.factory({ + id: "width", + name: "\u5BBD\u5EA6\u63A7\u5236", + match: /^width\(((?:\d*\.?\d+(?:%|px|rem)?,\s*)*\d*\.?\d+(?:%|px|rem)?)\)$/, + detail: "\u7528\u4E8E\u63A7\u5236\u8868\u683C\u6216\u5206\u680F\u7684\u6BCF\u5217\u7684\u5BBD\u5EA6", + process_param: "HTMLElement" /* el */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const matchs = header.match(/^width\(((?:\d*\.?\d+(?:%|px|rem)?,\s*)*\d*\.?\d+(?:%|px|rem)?)\)$/); + if (!matchs || content.children.length != 1) + return content; + const args = matchs[1].split(",").map( + (arg) => /^\d*\.?\d+$/.test(arg.trim()) ? `${arg.trim()}%` : arg.trim() + ); + if (content.children[0].classList.contains("ab-col")) { + const sub_els = content.children[0].children; + if (sub_els.length == 0) + return content; + for (let i = 0; i < Math.min(sub_els.length, args.length); i++) { + const sub_el = sub_els[i]; + if (args[i].endsWith("%")) + sub_el.style.flex = `0 1 ${args[i]}`; + else { + sub_el.style.width = args[i]; + sub_el.style.flex = `0 0 auto`; + } + } + return content; + } + const table2 = content.querySelector("table"); + if (table2 !== null) { + table2.style.tableLayout = "fixed"; + table2.style.width = args.some((arg) => arg.endsWith("%")) ? "100%" : "fit-content"; + table2.querySelectorAll("tr").forEach((row) => { + for (let i = 0; i < Math.min(row.children.length, args.length); i++) { + const cell = row.children[i]; + cell.style.width = cell.style.minWidth = cell.style.maxWidth = args[i]; + } + }); + return content; + } + return content; + } +}); +var abc_addClass = ABConvert.factory({ + id: "addClass", + name: "\u589E\u52A0class", + detail: "\u7ED9\u5F53\u524D\u5757\u589E\u52A0\u4E00\u4E2A\u7C7B\u540D\u3002\u652F\u6301\u6B63\u5E38\u4F7F\u7528\u7A7A\u683C\u6765\u6DFB\u52A0\u591A\u4E2Aclass, \u4E0D\u9700\u8981\u52A0dot\u7B26, \u5C31\u50CF\u5728class=''\u91CC\u5199\u7684\u90A3\u6837", + match: /^addClass\((.*)\)$/, + process_param: "HTMLElement" /* el */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const matchs = header.match(/^addClass\((.*)\)$/); + if (!matchs || !matchs[1]) + return content; + if (content.children.length != 1) + return content; + const sub_el = content.children[0]; + const args = matchs[1].split(" "); + for (const arg of args) { + sub_el.classList.add(arg); + } + return content; + } +}); +var abc_addStyle = ABConvert.factory({ + id: "addStyle", + name: "\u589E\u52A0style", + detail: "\u7ED9\u5F53\u524D\u5757\u589E\u52A0\u4E00\u4E2A\u6837\u5F0F, \u6CE8\u610F\u6700\u5916\u7684\u62EC\u53F7\u5F80\u5185\u8981\u7559\u4E00\u4E2A\u7A7A\u683C, \u907F\u514Drotate\u8FD9\u79CD\u7528\u62EC\u53F7\u65F6\u51B2\u7A81\u3002\u6DFB\u52A0\u591A\u4E2A\u5219\u6B63\u5E38\u4F7F\u7528\u5206\u53F7", + match: /^addStyle\(\s(.*)\s\)$/, + process_param: "HTMLElement" /* el */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const matchs = header.match(/^addStyle\(\s(.*)\s\)$/); + if (!matchs || !matchs[1]) + return content; + if (content.children.length != 1) + return content; + const sub_el = content.children[0]; + sub_el.style.cssText += String(matchs[1]); + return content; + } +}); +var abc_addDiv = ABConvert.factory({ + id: "addDiv", + name: "\u589E\u52A0div\u548Cclass", + detail: "\u7ED9\u5F53\u524D\u5757\u589E\u52A0\u4E00\u4E2A\u7236\u7C7B\uFF0C\u9700\u8981\u7ED9\u8FD9\u4E2A\u7236\u7C7B\u4E00\u4E2A\u7C7B\u540D", + match: /^addDiv\((.*)\)$/, + process_param: "HTMLElement" /* el */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const matchs = header.match(/^addDiv\((.*)\)$/); + if (!matchs || !matchs[1]) + return content; + if (content.children.length != 1) + return content; + const sub_el = content.children[0]; + sub_el.remove(); + const mid_el = document.createElement("div"); + content.appendChild(mid_el); + const args = matchs[1].split(" "); + for (const arg of args) { + mid_el.classList.add(arg); + } + mid_el.appendChild(sub_el); + return content; + } +}); +var abc_title = ABConvert.factory({ + id: "title", + name: "\u6807\u9898", + match: /^#(.*)/, + detail: "\u82E5\u76F4\u63A5\u5904\u7406\u4EE3\u7801\u6216\u8868\u683C\u5757\uFF0C\u5219\u4F1A\u6709\u7279\u6B8A\u98CE\u683C", + process_param: "HTMLElement" /* el */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const matchs = header.match(/^#(.*)/); + if (!matchs || !matchs[1]) + return content; + const arg1 = matchs[1]; + const el_content = document.createElement("div"); + while (content.firstChild) { + const item = content.firstChild; + content.removeChild(item); + el_content.appendChild(item); + } + const el_root = document.createElement("div"); + content.appendChild(el_root); + el_root.classList.add("ab-deco-title"); + const el_title = document.createElement("div"); + el_root.appendChild(el_title); + el_title.classList.add("ab-deco-title-title"); + const el_title_p = document.createElement("p"); + el_title.appendChild(el_title_p); + el_title_p.textContent = arg1; + el_root.appendChild(el_content); + el_content.classList.add("ab-deco-title-content"); + let el_content_sub = el_content.childNodes[0]; + if (!el_content_sub) + return content; + if (el_content_sub instanceof HTMLDivElement && el_content.childNodes.length == 1 && el_content.childNodes[0].childNodes[0]) { + el_content_sub = el_content.childNodes[0].childNodes[0]; + } + let title_type = "none"; + if (el_content_sub instanceof HTMLQuoteElement) { + title_type = "quote"; + el_root.classList.add("callout"); + el_title.classList.add("callout-title"); + el_content.classList.add("callout-content"); + const el_content_sub_parent = el_content_sub.parentNode; + if (!el_content_sub_parent) + return content; + while (el_content_sub.firstChild) { + el_content_sub_parent.insertBefore(el_content_sub.firstChild, el_content_sub); + } + el_content_sub_parent.removeChild(el_content_sub); + } else if (el_content_sub instanceof HTMLTableElement) { + title_type = "table"; + } else if (el_content_sub instanceof HTMLUListElement) { + title_type = "ul"; + } else if (el_content_sub instanceof HTMLPreElement) { + title_type = "pre"; + } + el_title.setAttribute("title-type", title_type); + return content; + } +}); +var abc_transposition = ABConvert.factory({ + id: "transposition", + name: "\u8868\u683C\u8F6C\u7F6E", + match: "transposition", + detail: "\u5C06\u8868\u683C\u8FDB\u884C\u8F6C\u7F6E\uFF0C\u5C31\u50CF\u77E9\u9635\u8F6C\u7F6E\u90A3\u6837\u3002\u8BE5\u7248\u672C\u4E0D\u652F\u6301\u6709\u8DE8\u884C\u8DE8\u5217\u5355\u5143\u683C\u3002\u82E5\u590D\u6742\u8868\u683C\uFF0C\u8BF7\u6362\u7528trs\u7248\u672C", + process_param: "HTMLElement" /* el */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const origi_table = content.querySelector("table"); + if (!origi_table) + return content; + const origi_rows = origi_table.rows; + const origi_rowCount = origi_rows.length; + const origi_colCount = origi_rows[0].cells.length; + const trans_table = document.createElement("table"); + origi_table.classList.add("ab-transposition", "ab-table"); + origi_table.classList.forEach((className) => { + trans_table.classList.add(className); + }); + const trans_body = document.createElement("tbody"); + trans_table.appendChild(trans_body); + for (let col = 0; col < origi_colCount; col++) { + const newRow = trans_body.insertRow(); + for (let row = 0; row < origi_rowCount; row++) { + const oldCell = origi_rows[row].cells[col]; + if (!oldCell) + continue; + const newCell = newRow.insertCell(); + newCell.innerHTML = oldCell.innerHTML; + } + } + origi_table.innerHTML = trans_table.innerHTML; + return content; + } +}); +var abc_transpose = ABConvert.factory({ + id: "transpose", + name: "\u8868\u683C\u8F6C\u7F6E", + match: "trs", + detail: "\u5C06\u8868\u683C\u8FDB\u884C\u8F6C\u7F6E\uFF0C\u5C31\u50CF\u77E9\u9635\u8F6C\u7F6E\u90A3\u6837\u3002\u8BE5\u7248\u672C\u652F\u6301\u6709\u8DE8\u884C\u8DE8\u5217\u5355\u5143\u683C", + process_param: "HTMLElement" /* el */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const origi_table = content.querySelector("table"); + if (!origi_table) + return content; + let { tableMap, origi_rowCount, origi_colCount } = table2tableMap(origi_table); + const tableMap2 = new Array(origi_colCount).fill(null).map(() => new Array(origi_rowCount).fill(null)); + for (let i = 0; i < origi_rowCount; i++) { + for (let j = 0; j < origi_colCount; j++) { + const origi_cell = tableMap[i][j]; + if (!origi_cell) + continue; + else if (origi_cell == "<") { + tableMap2[j][i] = "^"; + } else if (origi_cell == "^") { + tableMap2[j][i] = "<"; + } else { + let content2 = origi_cell.html; + if (content2.innerHTML == "<" || content2.innerHTML == "<") + content2.innerHTML = "^"; + else if (content2.innerHTML == "^") + content2.innerHTML = "<"; + tableMap2[j][i] = { + html: origi_cell.html, + rowSpan: origi_cell.colSpan || 1, + colSpan: origi_cell.rowSpan || 1, + rowIndex: origi_cell.colIndex, + colIndex: origi_cell.rowIndex + }; + } + } + } + const tmp = origi_colCount; + origi_colCount = origi_rowCount; + origi_rowCount = tmp; + const trans_table = tableMap2table(tableMap2, origi_rowCount, origi_colCount); + origi_table.classList.forEach((className) => { + trans_table.classList.add(className); + }); + trans_table.classList.add("ab-transposition", "ab-table"); + origi_table.innerHTML = trans_table.innerHTML; + return content; + } +}); +var abc_exTable = ABConvert.factory({ + id: "exTable", + name: "\u8868\u683C\u6269\u5C55", + match: "exTable", + detail: "\u5C06\u8868\u683C\u5E94\u7528sheet-table\u8BED\u6CD5 (\u4F7F\u7528 ` { + const origi_table = content.querySelector("table"); + if (!origi_table) + return content; + let { tableMap, origi_rowCount, origi_colCount } = table2tableMap(origi_table, true); + const map_table2 = tableMap; + const trans_table = tableMap2table(map_table2, origi_rowCount, origi_colCount); + origi_table.classList.forEach((className) => { + trans_table.classList.add(className); + }); + trans_table.classList.add("ab-extable", "ab-table"); + origi_table.innerHTML = trans_table.innerHTML; + return content; + } +}); +var abc_strictTable = ABConvert.factory({ + id: "strictTable", + name: "\u6B63\u89C4\u5316\u8868\u683C", + match: "strictTable", + detail: "\u8865\u5168\u8868\u683C\u7684\u5C3E\u4E22\u5931\u9879\uFF0Clist2table|trs\u65F6\uFF0C\u53EF\u4EE5\u6709\u6548\u907F\u514Dbug", + process_param: "HTMLElement" /* el */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const origi_table = content.querySelector("table"); + if (!origi_table) + return content; + let { tableMap, origi_rowCount, origi_colCount } = table2tableMap(origi_table); + tableMapPrint(tableMap); + for (let i = 0; i < origi_rowCount; i++) { + for (let j = 0; j < origi_colCount; j++) { + const origi_cell = tableMap[i][j]; + if (!origi_cell) { + tableMap[i][j] = { + html: document.createElement("td"), + rowSpan: 1, + colSpan: 1, + rowIndex: i, + colIndex: j + }; + } + } + } + tableMapPrint(tableMap); + const trans_table = tableMap2table(tableMap, origi_rowCount, origi_colCount); + origi_table.classList.forEach((className) => { + trans_table.classList.add(className); + }); + trans_table.classList.add("ab-extable", "ab-table"); + origi_table.innerHTML = trans_table.innerHTML; + return content; + } +}); +function table2tableMap(origi_table, useMergeFlag = false) { + const origi_rows = origi_table.rows; + let origi_rowCount = origi_rows.length; + let origi_colCount = 0; + { + let map_colCount = []; + for (let relRow = 0; relRow < origi_rowCount; relRow++) { + for (const cell of origi_rows[relRow].cells) { + const colSpan = cell.colSpan || 1; + const rowSpan = cell.rowSpan || 1; + for (let relRowSpan = relRow; relRowSpan < relRow + rowSpan; relRowSpan++) { + if (!map_colCount[relRowSpan]) + map_colCount[relRowSpan] = colSpan; + else + map_colCount[relRowSpan] += colSpan; + } + } + } + origi_rowCount = map_colCount.length; + origi_colCount = Math.max(...map_colCount); + } + const tableMap = new Array(origi_rowCount).fill(null).map(() => new Array(origi_colCount).fill(null)); + for (let relRow = 0; relRow < origi_rowCount; relRow++) { + for (let relCol = 0; relCol < origi_rows[relRow].cells.length; relCol++) { + const cell = origi_rows[relRow].cells[relCol]; + const rowIndex = relRow; + let colIndex = relCol; + while (true) { + if (colIndex >= tableMap[rowIndex].length) { + console.error(`\u8868\u683C\u89E3\u6790\u9519\u8BEF: colIndex\u8D85\u51FA\u8303\u56F4: [${rowIndex}][${colIndex}] overflow tableMap[${origi_rowCount - 1}][${origi_colCount - 1}]`, tableMap); + throw new Error("\u8868\u683C\u89E3\u6790\u9519\u8BEF: colIndex\u8D85\u51FA\u8303\u56F4"); + } + if (!tableMap[rowIndex][colIndex]) { + break; + } else + colIndex++; + } + if (cell.rowSpan > 1) { + for (let i = 1; i < cell.rowSpan; i++) { + if (rowIndex + i >= tableMap.length) { + break; + } + tableMap[rowIndex + i][colIndex] = "^"; + } + } + if (cell.colSpan > 1) { + for (let i = 1; i < cell.rowSpan; i++) { + if (colIndex + i >= tableMap[rowIndex].length) { + break; + } + tableMap[rowIndex][colIndex + i] = "<"; + } + } + if (useMergeFlag) { + if (cell.rowSpan == 1 && cell.colSpan == 1 && cell.textContent == "^") { + tableMap[rowIndex][colIndex] = "^"; + for (let i = rowIndex - 1; i >= 0; i--) { + const item = tableMap[i][colIndex]; + if (!item) + break; + if (item == "<") + break; + if (item == "^") + continue; + if (item.html.textContent == "<") + break; + if (item.html.textContent != "^" || i == 0) { + item.rowSpan += 1; + break; + } + } + } else if (cell.rowSpan == 1 && cell.colSpan == 1 && cell.textContent == "<") { + tableMap[rowIndex][colIndex] = "<"; + for (let j = colIndex - 1; j >= 0; j--) { + const item = tableMap[rowIndex][j]; + if (!item) + break; + if (item == "^") + break; + if (item == "<") + continue; + if (item.html.textContent == "^") + break; + if (item.html.textContent != "<" || j == 0) { + item.colSpan += 1; + break; + } + } + } else { + tableMap[rowIndex][colIndex] = { + html: cell, + rowSpan: cell.rowSpan, + colSpan: cell.colSpan, + rowIndex, + colIndex + }; + } + } else { + tableMap[rowIndex][colIndex] = { + html: cell, + rowSpan: cell.rowSpan, + colSpan: cell.colSpan, + rowIndex, + colIndex + }; + } + } + } + return { + tableMap, + origi_rowCount, + origi_colCount + }; +} +function tableMap2table(tableMap, origi_rowCount, origi_colCount) { + const trans_table = document.createElement("table"); + const trans_body = document.createElement("tbody"); + trans_table.appendChild(trans_body); + for (let i = 0; i < origi_rowCount; i++) { + const newRow = trans_body.insertRow(); + for (let j = 0; j < origi_colCount; j++) { + const cell = tableMap[i][j]; + if (!cell) + continue; + if (cell == "<" || cell == "^") + continue; + const newCell = newRow.insertCell(); + newCell.innerHTML = cell.html.innerHTML; + newCell.rowSpan = cell.rowSpan; + newCell.colSpan = cell.colSpan; + newCell.setAttribute("rowIndex", String(cell.rowIndex)); + newCell.setAttribute("colIndex", String(cell.colIndex)); + } + } + return trans_table; +} +function tableMapPrint(tableMap) { + var _a3; + let content = ""; + for (let i = 0; i < tableMap.length; i++) { + let row = i + "|"; + for (let j = 0; j < tableMap[i].length; j++) { + const cell = tableMap[i][j]; + if (cell === null) + row += " . |"; + else if (cell === "<") + row += " < |"; + else if (cell === "^") + row += " ^ |"; + else + row += ` ${((_a3 = cell.html.textContent) == null ? void 0 : _a3.trim()) || ""} |`; + } + content += row + "\n"; + } + console.log("tableMap\n" + content); +} + +// ../ABConverter/converter/abc_ex.ts +var abc_faq = ABConvert.factory({ + id: "faq", + name: "FAQ", + match: "FAQ", + detail: "\u6E32\u67D3\u5E38\u89C1\u95EE\u9898/\u5BF9\u8BDD\u3002\u6BCF\u4E2A\u9879\u9700\u4EE5 `/^([a-zA-Z])(: |\uFF1A)(.*)/` \u5F00\u5934", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const e_faq = document.createElement("div"); + el.appendChild(e_faq); + e_faq.classList.add("ab-faq"); + const list_content = content.split("\n"); + let mode_qa = ""; + let last_content = ""; + for (let line of list_content) { + const m_line = line.match(/^([a-zA-Z])(: |:)(.*)/); + if (!m_line) { + if (mode_qa) { + last_content = last_content + "\n" + line; + } + continue; + } else { + if (mode_qa) { + const e_faq_line = document.createElement("div"); + e_faq.appendChild(e_faq_line); + e_faq_line.classList.add("ab-faq-line", `ab-faq-${mode_qa}`); + const e_faq_bubble = document.createElement("div"); + e_faq_line.appendChild(e_faq_bubble); + e_faq_bubble.classList.add("ab-faq-bubble", `ab-faq-${mode_qa}`); + const e_faq_content = document.createElement("div"); + e_faq_bubble.appendChild(e_faq_content); + e_faq_content.classList.add("ab-faq-content"); + ABConvertManager.getInstance().m_renderMarkdownFn(last_content, e_faq_content); + } + mode_qa = m_line[1]; + last_content = m_line[3]; + } + } + if (mode_qa) { + const e_faq_line = document.createElement("div"); + e_faq.appendChild(e_faq_line); + e_faq_line.classList.add("ab-faq-line", `ab-faq-${mode_qa}`); + const e_faq_bubble = document.createElement("div"); + e_faq_line.appendChild(e_faq_bubble); + e_faq_bubble.classList.add("ab-faq-bubble", `ab-faq-${mode_qa}`); + const e_faq_content = document.createElement("div"); + e_faq_bubble.appendChild(e_faq_content); + e_faq_content.classList.add("ab-faq-content"); + ABConvertManager.getInstance().m_renderMarkdownFn(last_content, e_faq_content); + } + return el; + } +}); +var abc_info_converter = ABConvert.factory({ + id: "info_converter", + name: "INFO", + detail: "\u67E5\u770B\u5F53\u524D\u8F6F\u4EF6\u7248\u672C\u4E0B\u7684\u6CE8\u518C\u5904\u7406\u5668\u8868", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const table_p = document.createElement("div"); + el.appendChild(table_p); + table_p.classList.add("ab-setting", "md-table-fig1"); + const table2 = document.createElement("table"); + table_p.appendChild(table2); + table2.classList.add("ab-setting", "md-table-fig2"); + { + const thead = document.createElement("thead"); + table2.appendChild(thead); + const tr = document.createElement("tr"); + thead.appendChild(tr); + let th; + th = document.createElement("th"); + tr.appendChild(th); + th.textContent = "\u5904\u7406\u5668\u540D\nProcessor name"; + th = document.createElement("th"); + tr.appendChild(th); + th.textContent = "\u4E0B\u62C9\u6846\u9ED8\u8BA4\u9879\nThe default drop-down box"; + th = document.createElement("th"); + tr.appendChild(th); + th.textContent = "\u7528\u9014\u63CF\u8FF0\nPurpose description"; + th = document.createElement("th"); + tr.appendChild(th); + th.textContent = "\u8F93\u5165\u7C7B\u578B\nInput type"; + th = document.createElement("th"); + tr.appendChild(th); + th.textContent = "\u8F93\u51FA\u7C7B\u578B\nOutput type"; + th = document.createElement("th"); + tr.appendChild(th); + th.textContent = "\u6B63\u5219\nRegExp"; + th = document.createElement("th"); + tr.appendChild(th); + th.textContent = "\u662F\u5426\u542F\u7528\nIs enable"; + th = document.createElement("th"); + tr.appendChild(th); + th.textContent = "\u5B9A\u4E49\u6765\u6E90\nSource"; + th = document.createElement("th"); + tr.appendChild(th); + th.textContent = "\u522B\u540D\u66FF\u6362\nAlias substitution"; + } + const tbody = document.createElement("tbody"); + table2.appendChild(tbody); + for (let item of ABConvertManager.getInstance().list_abConvert) { + const tr = document.createElement("tr"); + tbody.appendChild(tr); + let td; + td = document.createElement("td"); + tr.appendChild(td); + td.textContent = item.name; + td = document.createElement("td"); + tr.appendChild(td); + td.textContent = String(item.default); + td = document.createElement("td"); + tr.appendChild(td); + td.textContent = item.detail; + td.setAttribute("style", "max-width:240px;overflow-x:auto;white-space:nowrap;"); + td = document.createElement("td"); + tr.appendChild(td); + td.textContent = String(item.process_param); + td = document.createElement("td"); + tr.appendChild(td); + td.textContent = String(item.process_return); + td = document.createElement("td"); + tr.appendChild(td); + td.textContent = String(item.match); + td = document.createElement("td"); + tr.appendChild(td); + td.textContent = item.is_disable ? "No" : "Yes"; + td = document.createElement("td"); + tr.appendChild(td); + td.textContent = item.register_from; + td = document.createElement("td"); + tr.appendChild(td); + td.textContent = item.process_alias; + } + return el; + } +}); +var abc_info_alias = ABConvert.factory({ + id: "info_alias", + name: "INFO_Alias", + match: "info_alias", + detail: "\u67E5\u770B\u5F53\u524D\u8F6F\u4EF6\u7248\u672C\u4E0B\u7684\u6CE8\u518C\u522B\u540D\u8868", + process_param: "string" /* text */, + process_return: "json_string" /* json */, + process: (el, header, content) => { + return JSON.stringify( + ABAlias_json.map((item) => { + return { + regex: item.regex.toString(), + replacement: item.replacement + }; + }), + null, + 2 + ); + } +}); + +// ../ABConverter/converter/abc_mdit_container.ts +function mditTabs2listdata(content, reg) { + const list_line = content.split("\n"); + let content_item = ""; + const list_c2listItem = []; + for (let line_index = 0; line_index < list_line.length; line_index++) { + const line_content = list_line[line_index]; + const line_match = line_content.match(reg); + if (line_match) { + add_current_content(); + list_c2listItem.push({ + content: line_match[1].trim(), + level: 0 + }); + continue; + } else { + content_item += line_content + "\n"; + } + } + add_current_content(); + return list_c2listItem; + function add_current_content() { + if (content_item.trim() == "") + return; + list_c2listItem.push({ + content: content_item, + level: 1 + }); + content_item = ""; + } +} +var abc_mditTabs = ABConvert.factory({ + id: "mditTabs", + name: "mdit\u6807\u7B7E\u9875", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const c2listdata = mditTabs2listdata(content, /^@tab(.*)$/); + C2ListProcess.c2data2tab(c2listdata, el, false); + return el; + } +}); +var abc_mditDemo = ABConvert.factory({ + id: "mditDemo", + name: "mdit\u5C55\u793A\u5BF9\u6BD4", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const newContent = `@tab show +${content} +@tab mdSource +~~~~~md +${content} +~~~~~`; + abc_mditTabs.process(el, header, newContent); + return el; + } +}); +var abc_mditABDemo = ABConvert.factory({ + id: "mditABDemo", + name: "AnyBlock\u4E13\u7528\u5C55\u793A\u5BF9\u6BD4", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + if (ABCSetting.env == "vuepress") { + ABConvertManager.getInstance().m_renderMarkdownFn(`::::: tabs + +@tab show + +${content} + +@tab withoutPlugin + +(noPlugin)${content.trimStart()} + +@tab mdSource + +~~~~~md +${content} +~~~~~ + +:::::`, el); + return el; + } else { + const newContent = `@tab show +${content} +@tab withoutPlugin +(noPlugin)${content.trimStart()} +@tab mdSource +~~~~~md +${content} +~~~~~`; + abc_mditTabs.process(el, header, newContent); + return el; + } + } +}); +var abc_midt_co = ABConvert.factory({ + id: "mditCol", + name: "mdit\u5206\u680F", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + var _a3; + const c2listdata = mditTabs2listdata(content, /^@col(.*)$/); + C2ListProcess.c2data2items(c2listdata, el); + (_a3 = el.querySelector("div")) == null ? void 0 : _a3.classList.add("ab-col"); + return el; + } +}); +var abc_midt_card = ABConvert.factory({ + id: "mditCard", + name: "mdit\u5361\u7247", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + var _a3, _b; + const c2listdata = mditTabs2listdata(content, /^@card(.*)$/); + C2ListProcess.c2data2items(c2listdata, el); + (_a3 = el.querySelector("div")) == null ? void 0 : _a3.classList.add("ab-card"); + (_b = el.querySelector("div")) == null ? void 0 : _b.classList.add("ab-lay-vfall"); + return el; + } +}); +var abc_midt_chat = ABConvert.factory({ + id: "mditChat", + name: "mdit\u5BF9\u8BDD", + detail: "\u663E\u793A\u6E32\u67D3\u5BF9\u8BDD\uFF0C\u9700\u8981\u914D\u5408 obsidian-view-chat-qq \u63D2\u4EF6\u4F7F\u7528", + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + const content_list = content.split("\n"); + let newContent = ""; + for (let i = 0; i < content_list.length; i++) { + const line = content_list[i]; + if (/^@chat(.*)$/.test(line)) { + const match2 = line.match(/^@chat(.*)$/); + if (match2 && match2[1]) { + newContent += "\n" + match2[1] + ":\n"; + continue; + } + } + newContent += line + "\n"; + } + return newContent; + } +}); + +// ../ABConverter/converter/abc_plantuml.ts +var import_plantuml_encoder = __toESM(require_browser_index()); + +// ../ABConverter/converter/abc_plantuml_tools.ts +var KEYWORD_IF = "if "; +var KEYWORD_SWITCH = "switch "; +var KEYWORD_SWITCH2 = "match "; +var KEYWORD_WHILE = "while "; +var KEYWORD_GROUP = "group "; +var KEYWORD_PARTITION = "partition "; +var KEYWORD_LANE = "lane "; +var KEYWORD_ELIF = "elif "; +var KEYWORD_ELSEIF = "else if "; +var KEYWORD_ELSE = "else"; +var KEYWORD_DEFAULT = "default"; +var KEYWORD_DEFAULT2 = "case _"; +var KEYWORD_CASE = "case "; +var BLOCK_START = ":"; +var INDENT = " "; +var Stat = class { + constructor(content, level) { + this.content = content.trim(); + this.level = level; + } + isReservedWord() { + return this.content === "start" || this.content === "stop" || this.content === "kill" || this.content === "detach" || this.content === "break" || this.content === "end" || this.content === "fork" || this.content === "fork again" || this.content === "end fork" || this.content === "end merge"; + } + isStatementOfType(...stateType) { + return stateType.some((type) => this.content.startsWith(type)) && this.content.endsWith(BLOCK_START); + } + takeTagOfStat(type) { + const condition = this.content.substring(type.length, this.content.length - BLOCK_START.length).trim(); + return condition; + } +}; +var statementTypes = { + [KEYWORD_IF]: processIfStatement, + [KEYWORD_SWITCH]: processSwitchStatement, + [KEYWORD_SWITCH2]: processSwitchStatement, + [KEYWORD_WHILE]: processWhileStatement, + [KEYWORD_GROUP]: processGroupStatement, + [KEYWORD_PARTITION]: processPartitionStatement, + [KEYWORD_LANE]: processSwimLane +}; +function processBlock(stats, index2, parentLevel) { + let result = ""; + let next2 = index2; + while (next2 < stats.length && (parentLevel === -1 || stats[next2].level > parentLevel)) { + const stat = stats[next2]; + if (stat.isReservedWord()) { + result += stat.content + "\n"; + next2++; + continue; + } + let processed = false; + for (const [statType, processor] of Object.entries(statementTypes)) { + if (stat.isStatementOfType(statType)) { + const { result: processedResult, nextIndex: nextNext } = processor(stats, next2, statType); + result += processedResult; + next2 = nextNext; + processed = true; + break; + } + } + if (processed) + continue; + if (stat.content.length > 0) { + result += `:${stat.content}; +`; + } + next2++; + } + return { result, nextIndex: next2 }; +} +function processIfStatement(stats, index2) { + let result = KEYWORD_IF; + const stat = stats[index2]; + const condition = stat.takeTagOfStat(KEYWORD_IF); + let nextIndex = index2 + 1; + if (nextIndex < stats.length && stats[nextIndex].level > stat.level) { + result += `(${condition}) then (yes) +`; + const { result: result2, nextIndex: nextIndex2 } = processBlock(stats, nextIndex, stat.level); + result += indentContent(result2); + nextIndex = nextIndex2; + } + while (nextIndex < stats.length && stats[nextIndex].level === stat.level && stats[nextIndex].isStatementOfType(KEYWORD_ELIF, KEYWORD_ELSEIF, KEYWORD_ELSE)) { + const branch = stats[nextIndex]; + if (branch.isStatementOfType(KEYWORD_ELSEIF)) { + const condition2 = branch.takeTagOfStat(KEYWORD_ELSEIF); + result += `else if(${condition2}) then (yes) +`; + } else if (branch.isStatementOfType(KEYWORD_ELIF)) { + const condition2 = branch.takeTagOfStat(KEYWORD_ELIF); + result += `else if(${condition2}) then (yes) +`; + } else if (branch.isStatementOfType(KEYWORD_ELSE)) { + result += `else (else) +`; + } + const { result: result2, nextIndex: nextIndex2 } = processBlock(stats, nextIndex + 1, stat.level); + result += indentContent(result2); + nextIndex = nextIndex2; + } + result += "endif\n"; + return { result, nextIndex }; +} +function processSwitchStatement(stats, index2, statType) { + let result = `switch `; + const stat = stats[index2]; + const condition = stat.takeTagOfStat(statType); + let nextIndex = index2 + 1; + result += `(${condition}) +`; + let hasDefault = false; + while (nextIndex < stats.length && stats[nextIndex].level >= stat.level && stats[nextIndex].isStatementOfType(KEYWORD_CASE, KEYWORD_DEFAULT)) { + const nextStat = stats[nextIndex]; + nextIndex++; + if (nextStat.isStatementOfType(KEYWORD_DEFAULT) || nextStat.isStatementOfType(KEYWORD_DEFAULT2)) { + result += `case (default) +`; + hasDefault = true; + const { result: defaultResult, nextIndex: defaultNextIndex } = processBlock(stats, nextIndex, nextStat.level); + result += indentContent(defaultResult); + nextIndex = defaultNextIndex; + } else if (nextStat.isStatementOfType(KEYWORD_CASE)) { + const caseTag = nextStat.takeTagOfStat(KEYWORD_CASE); + result += `case (${caseTag}) +`; + const { result: caseResult, nextIndex: caseNextIndex } = processBlock(stats, nextIndex, nextStat.level); + result += indentContent(caseResult); + nextIndex = caseNextIndex; + } + } + if (!hasDefault) { + result += "case (default)\n"; + } + result += "endswitch\n"; + return { result, nextIndex }; +} +function processWhileStatement(stats, index2) { + const stat = stats[index2]; + const condition = stat.takeTagOfStat(KEYWORD_WHILE); + let result = `${KEYWORD_WHILE}(${condition}) is (true) +`; + let nextIndex = index2 + 1; + const { result: bodyResult, nextIndex: bodyNextIndex } = processBlock(stats, nextIndex, stat.level); + result += indentContent(bodyResult); + nextIndex = bodyNextIndex; + result += "endwhile\n"; + return { result, nextIndex }; +} +function processGroupStatement(stats, index2) { + const stat = stats[index2]; + const groupName = stat.takeTagOfStat(KEYWORD_GROUP); + let result = `${KEYWORD_GROUP}${groupName} +`; + let nextIndex = index2 + 1; + const { result: bodyResult, nextIndex: bodyNextIndex } = processBlock(stats, nextIndex, stat.level); + result += indentContent(bodyResult); + nextIndex = bodyNextIndex; + result += "endgroup\n"; + return { result, nextIndex }; +} +function processPartitionStatement(stats, index2) { + const stat = stats[index2]; + const partitionName = stat.takeTagOfStat(KEYWORD_PARTITION); + let result = `${KEYWORD_PARTITION}${partitionName} { +`; + let nextIndex = index2 + 1; + const { result: bodyResult, nextIndex: bodyNextIndex } = processBlock(stats, nextIndex, stat.level); + result += indentContent(bodyResult); + nextIndex = bodyNextIndex; + result += "}\n"; + return { result, nextIndex }; +} +function processSwimLane(stats, index2) { + const stat = stats[index2]; + const laneName = stat.takeTagOfStat(KEYWORD_LANE); + return { result: "|" + laneName + "|\n", nextIndex: index2 + 1 }; +} +function indentContent(content) { + return content.split("\n").filter((x) => x !== "").map((line) => INDENT + line).join("\n") + "\n"; +} +function list2ActivityDiagramText(listdata) { + let result = "@startuml\n"; + const stats = listdata.map((item) => new Stat(item.content.trim(), item.level)); + const { result: bodyResult } = processBlock(stats, 0, -1); + result += bodyResult; + result += "@enduml"; + return result; +} + +// ../ABConverter/converter/abc_plantuml.ts +var abc_list2jsontext = ABConvert.factory({ + id: "json2pumlJson", + name: "json\u5230\u53EF\u89C6\u5316", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + content = "@startjson\n" + content + "\n@endjson\n"; + render_pumlText(content, el); + return el; + } +}); +var abc_list2pumlWBS = ABConvert.factory({ + id: "list2pumlWBS", + name: "\u5217\u8868\u5230puml\u5DE5\u4F5C\u5206\u89E3\u7ED3\u6784", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + let listdata = ListProcess.list2data(content); + listdata = ListProcess.data2strict(listdata); + let newContent = "@startwbs\n"; + for (let item of listdata) { + if (item.content.startsWith("< ")) + newContent += "*".repeat(item.level + 1) + "< " + item.content.slice(2) + "\n"; + else + newContent += "*".repeat(item.level + 1) + " " + item.content + "\n"; + } + newContent += "@endwbs"; + render_pumlText(newContent, el); + return el; + } +}); +var abc_list2pumlMindmap = ABConvert.factory({ + id: "list2pumlMindmap", + name: "\u5217\u8868\u5230puml\u601D\u7EF4\u5BFC\u56FE", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + let listdata = ListProcess.list2data(content); + listdata = ListProcess.data2strict(listdata); + let newContent = "@startmindmap\n"; + for (let item of listdata) { + newContent += "*".repeat(item.level + 1) + " " + item.content + "\n"; + } + newContent += "@endmindmap"; + render_pumlText(newContent, el); + return el; + } +}); +var abc_list2ActivityDiagramText = ABConvert.factory({ + id: "list2pumlActivityDiagramText", + name: "\u5217\u8868\u5230puml\u6D3B\u52A8\u56FE\u6587\u672C", + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + return list2ActivityDiagramText(ListProcess.data2strict(ListProcess.list2data(content))); + } +}); +var abc_list2ActivityDiagram = ABConvert.factory({ + id: "list2pumlActivityDiagram", + name: "\u5217\u8868\u5230puml\u6D3B\u52A8\u56FE", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + const puml = list2ActivityDiagramText(ListProcess.data2strict(ListProcess.list2data(content))); + render_pumlText(puml, el); + return el; + } +}); +async function render_pumlText(text4, div) { + var encoded = import_plantuml_encoder.default.encode(text4); + let url = "http://www.plantuml.com/plantuml/img/" + encoded; + div.innerHTML = ``; + return div; +} + +// ../ABConverter/converter/abc_mermaid.ts +function getID(length = 16) { + return Number(Math.random().toString().substr(3, length) + Date.now()).toString(36); +} +var abc_title2mindmap = ABConvert.factory({ + id: "title2mindmap", + name: "\u6807\u9898\u5230\u8111\u56FE", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: async (el, header, content) => { + const data2 = ListProcess.title2data(content); + const el2 = await data2mindmap(data2, el); + return el2; + } +}); +var abc_list2mindmap = ABConvert.factory({ + id: "list2mindmap", + name: "\u5217\u8868\u8F6Cmermaid\u601D\u7EF4\u5BFC\u56FE", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: async (el, header, content) => { + const data2 = ListProcess.list2data(content); + const el2 = await data2mindmap(data2, el); + return el2; + } +}); +var abc_list2mermaid = ABConvert.factory({ + id: "list2mermaid", + name: "\u5217\u8868\u8F6Cmermaid\u6D41\u7A0B\u56FE", + match: /^list2mermaid(\((.*)\))?$/, + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + let matchs = header.match(/^list2mermaid(\((.*)\))?$/); + if (!matchs) { + console.error("no match", matchs); + return el; + } + let mermaid_head = "graph LR"; + if (matchs[2]) + mermaid_head = matchs[2]; + const list_itemInfo = ListProcess.list2data(content); + const mermaidText = mermaid_head + "\n" + data2mermaidText(list_itemInfo); + render_mermaidText(mermaidText, el); + return el; + } +}); +var abc_list2mermaidText = ABConvert.factory({ + id: "list2mermaidText", + name: "\u5217\u8868\u8F6Cmermaid\u6587\u672C", + match: /^list2mermaidText(\((.*)\))?$/, + detail: "\u5217\u8868\u8F6Cmermaid\u6587\u672C", + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + let matchs = header.match(/^list2mermaidText(\((.*)\))?$/); + if (!matchs) { + console.error("no match", matchs); + return "error, no match"; + } + let mermaid_head = "graph LR"; + if (matchs[2]) + mermaid_head = matchs[2]; + const list_itemInfo = ListProcess.list2data(content); + const mermaidText = mermaid_head + "\n" + data2mermaidText(list_itemInfo); + return mermaidText; + } +}); +var abc_list2mehrmaid = ABConvert.factory({ + id: "list2mehrmaidText", + name: "\u5217\u8868\u8F6Cmehrmaid\u6587\u672C", + match: /^list2mehrmaidText(\((.*)\))?$/, + detail: "\u9700\u8981\u914D\u5408mehrmaid\u63D2\u4EF6\u548Ccode(mehrmaid)\u4F7F\u7528\uFF0C\u6216\u4F7F\u7528\u522B\u540D\u7B80\u5316", + process_param: "string" /* text */, + process_return: "string" /* text */, + process: (el, header, content) => { + let matchs = header.match(/^list2mehrmaidText(\((.*)\))?$/); + if (!matchs) { + console.error("no match", matchs); + return "error, no match"; + } + let mermaid_head = "flowchart LR"; + if (matchs[2]) + mermaid_head = matchs[2]; + const list_itemInfo = ListProcess.list2data(content); + const mermaidText = mermaid_head + "\n" + data2mehrmaidText(list_itemInfo); + return mermaidText; + } +}); +var abc_mermaid = ABConvert.factory({ + id: "mermaid-with", + name: "\u65B0mermaid", + match: /^mermaid(\((.*)\))?$/, + default: "mermaid(graph TB)", + detail: "\u7531\u4E8E\u9700\u8981\u517C\u5BB9\u8111\u56FE\uFF0C\u8FD9\u91CC\u4F1A\u4F7F\u7528\u63D2\u4EF6\u5185\u7F6E\u7684\u6700\u65B0\u7248mermaid", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: async (el, header, content) => { + let matchs = header.match(/^mermaid(\((.*)\))?$/); + if (!matchs) + return el; + if (matchs[2]) + content = matchs[2] + "\n" + content; + const el2 = render_mermaidText(content, el); + return el2; + } +}); +function data2mermaidText(list_itemInfo) { + const html_mode = false; + let list_line_content = []; + let prev_line_content = ""; + let prev_level = 999; + for (let i = 0; i < list_itemInfo.length; i++) { + if (list_itemInfo[i].level > prev_level) { + prev_line_content = prev_line_content + " --> " + list_itemInfo[i].content; + } else { + list_line_content.push(prev_line_content); + prev_line_content = ""; + for (let j = i; j >= 0; j--) { + if (list_itemInfo[j].level < list_itemInfo[i].level) { + prev_line_content = list_itemInfo[j].content; + break; + } + } + if (prev_line_content) + prev_line_content = prev_line_content + " --> "; + prev_line_content = prev_line_content + list_itemInfo[i].content; + } + prev_level = list_itemInfo[i].level; + } + list_line_content.push(prev_line_content); + let text4 = list_line_content.join("\n"); + return text4; +} +function data2mehrmaidText(list_itemInfo) { + const mehrmaidMap = []; + for (let i = 0; i < list_itemInfo.length; i++) { + mehrmaidMap[i] = list_itemInfo[i].content; + list_itemInfo[i].content = i.toString(); + } + const html_mode = false; + let list_line_content = []; + let prev_line_content = ""; + let prev_level = 999; + for (let i = 0; i < list_itemInfo.length; i++) { + if (list_itemInfo[i].level > prev_level) { + prev_line_content = prev_line_content + " --> " + list_itemInfo[i].content; + } else { + list_line_content.push(prev_line_content); + prev_line_content = ""; + for (let j = i; j >= 0; j--) { + if (list_itemInfo[j].level < list_itemInfo[i].level) { + prev_line_content = list_itemInfo[j].content; + break; + } + } + if (prev_line_content) + prev_line_content = prev_line_content + " --> "; + prev_line_content = prev_line_content + list_itemInfo[i].content; + } + prev_level = list_itemInfo[i].level; + } + list_line_content.push(prev_line_content); + let text4 = list_line_content.join("\n"); + text4 += "\n\n"; + for (let i = 0; i < mehrmaidMap.length; i++) { + text4 += `${i}(("${mehrmaidMap[i]}")) +`; + } + return text4; +} +async function data2mindmap(list_itemInfo, div) { + let list_newcontent = []; + for (let item of list_itemInfo) { + let str_indent = ""; + for (let i = 0; i < item.level; i++) + str_indent += " "; + list_newcontent.push(str_indent + item.content.replace("\n", "
")); + } + const mermaidText = "mindmap\n" + list_newcontent.join("\n"); + return render_mermaidText(mermaidText, div); +} +async function render_mermaidText(mermaidText, div) { + if ((ABCSetting.env == "obsidian" || ABCSetting.env == "obsidian-min") && ABCSetting.mermaid) { + ABCSetting.mermaid.then(async (mermaid) => { + const { svg } = await mermaid.render("ab-mermaid-" + getID(), mermaidText); + div.innerHTML = svg; + }); + } else { + div.classList.add("ab-raw"); + div.innerHTML = `
`; + } + { + } + return div; +} + +// ../ABConverter/ABConvertEvent.ts +function abConvertEvent(d, isCycle = false) { + var _a3; + if (d.querySelector(".ab-super-width")) { + const els_note = d.querySelectorAll(".ab-note"); + for (const el_note of els_note) { + if (el_note.querySelector(".ab-super-width")) { + const el_replace = el_note.parentNode; + if (el_replace && el_replace.classList.contains("ab-replace")) { + el_replace.classList.add("ab-super-width-p"); + } + } + } + const els_view = document.querySelectorAll(".app-container .workspace-leaf"); + for (const el_view of els_view) { + el_view.style.setProperty("--ab-width-outer", (el_view.offsetWidth - 40).toString() + "px"); + } + } + if (d.querySelector(".ab-nodes-node")) { + const els_min = document.querySelectorAll(".ab-nodes.min .ab-nodes-node"); + const list_children = d.querySelectorAll(".ab-nodes-node"); + for (const children2 of list_children) { + const el_content = children2.querySelector(".ab-nodes-content"); + if (!el_content) + continue; + const el_child = children2.querySelector(".ab-nodes-children"); + if (!el_child) + continue; + const el_bracket = el_child.querySelector(".ab-nodes-bracket"); + if (!el_bracket) + continue; + const el_bracket2 = el_child.querySelector(".ab-nodes-bracket2"); + if (!el_bracket2) + continue; + const els_child = el_child.childNodes; + if (els_child.length < 3) { + el_bracket.style.setProperty("display", "none"); + el_bracket2.style.setProperty("display", "none"); + continue; + } + const el_child_first = els_child[2]; + const el_child_last = els_child[els_child.length - 1]; + const el_child_first_content = el_child_first.querySelector(".ab-nodes-content"); + const el_child_last_content = el_child_last.querySelector(".ab-nodes-content"); + let height = 0; + let heightToReduce = (el_child_first.offsetHeight + el_child_last.offsetHeight) / 2; + if (els_child.length == 3) { + height = el_child_first_content.offsetHeight - 20 > 20 ? el_child_first_content.offsetHeight - 20 : 20; + el_bracket2.style.cssText = ` + height: ${height}px; + top: calc(50% - ${height / 2}px); + `; + } else { + el_bracket2.style.cssText = ` + height: calc(100% - ${heightToReduce}px); + top: ${el_child_first.offsetHeight / 2}px; + `; + } + if (Array.prototype.includes.call(els_min, children2)) { + if (els_child.length == 3) { + el_bracket.style.cssText = ` + display: block; + top: calc(50% + ${el_content.offsetHeight / 2}px - 3px); + clip-path: circle(40% at 50% 40%); + `; + } else { + el_bracket.setAttribute("display", "none"); + } + if (els_child.length == 3 && el_content.offsetHeight == el_child_first_content.offsetHeight) { + el_bracket2.style.cssText = ` + height: 1px; + top: calc(50% + ${el_content.offsetHeight / 2}px - 1px); + width: 18px; /* \u53EF\u4EE5\u6EA2\u51FA\u70B9 */ + border-radius: 0; + border: none; + border-bottom: 1px solid var(--node-color); + `; + } else { + if (els_child.length == 3) { + height = el_child_last_content.offsetHeight / 2 - el_content.offsetHeight / 2; + el_bracket2.style.setProperty("height", `${height}px`); + el_bracket2.style.setProperty("top", `calc(50% + ${el_content.offsetHeight / 2}px)`); + el_bracket2.style.setProperty("border-radius", `0 0 0 10px`); + el_bracket2.style.setProperty("border-top", `0`); + } else { + heightToReduce = el_child_first.offsetHeight / 2 + el_child_first_content.offsetHeight / 2 + el_child_last.offsetHeight / 2 - el_child_last_content.offsetHeight / 2; + el_bracket2.style.setProperty("height", `calc(100% - ${heightToReduce}px + 1px)`); + el_bracket2.style.setProperty("top", `${el_child_first.offsetHeight / 2 + el_child_first_content.offsetHeight / 2 - 1}px`); + } + el_bracket2.style.setProperty("width", "20px"); + } + } + } + } + if (d.querySelector(".ab-items.ab-lay-vfall:not(.js-waterfall):not(.ab-lay-hfall):not(.ab-lay-grid)")) { + const root_el_list = d.querySelectorAll(".ab-items.ab-lay-vfall:not(.js-waterfall):not(.ab-lay-hfall):not(.ab-lay-grid)"); + for (const root_el of root_el_list) { + root_el.classList.add("js-waterfall"); + const list_children = root_el.querySelectorAll(".ab-items-item"); + const columnCountTmp = parseInt(window.getComputedStyle(root_el).getPropertyValue("column-count")); + let columnCount; + if (columnCountTmp && !isNaN(columnCountTmp) && columnCountTmp > 0) { + columnCount = columnCountTmp; + } else if (root_el.classList.contains("ab-col-auto") && list_children.length <= 4) { + columnCount = list_children.length; + root_el.classList.add("ab-col" + columnCount); + } else { + columnCount = 4; + root_el.classList.add("ab-col" + columnCount); + } + const height_cache = []; + const el_cache = []; + for (let i = 0; i < columnCount; i++) { + height_cache.push(0); + el_cache.push([]); + } + for (const children2 of list_children) { + const minValue = Math.min.apply(null, height_cache); + const minIndex = height_cache.indexOf(minValue); + const heightTmp = parseInt(window.getComputedStyle(children2).getPropertyValue("height")); + height_cache[minIndex] += heightTmp && !isNaN(heightTmp) && heightTmp > 0 ? heightTmp : 10; + el_cache[minIndex].push(children2); + } + const fillNumber = columnCount - list_children.length % columnCount; + if (fillNumber != 4) { + for (let i = 0; i < fillNumber; i++) { + const children2 = document.createElement("div"); + children2.classList.add(".ab-items-item.placeholder"); + children2.setAttribute("style", "height: 20px"); + const minValue = Math.min.apply(null, height_cache); + const minIndex = height_cache.indexOf(minValue); + height_cache[minIndex] += 20; + el_cache[minIndex].push(children2); + } + } + root_el.innerHTML = ""; + for (let i = 0; i < columnCount; i++) { + for (const j of el_cache[i]) { + root_el.appendChild(j); + } + } + } + } + if (!isCycle && d.querySelector(".ab-markmap-div")) { + const divEl = d; + let markmapId = ""; + if (divEl.tagName === "DIV") { + markmapId = ((_a3 = divEl.querySelector(".ab-markmap-div")) == null ? void 0 : _a3.id) || ""; + } + let mindmaps; + if (markmapId) { + mindmaps = document.querySelectorAll("#" + markmapId); + } else { + mindmaps = document.querySelectorAll(".ab-markmap-div"); + } + for (const el_div of mindmaps) { + const el_svg = el_div.querySelector("svg"); + const el_g = el_svg == null ? void 0 : el_svg.querySelector("g"); + if (el_svg && el_g) { + const scale_new = el_g.getBBox().height / el_div.offsetWidth; + el_svg.setAttribute("style", `height:${el_g.getBBox().height * scale_new + 40}px`); + markmap_event(d); + } + } + } +} +function markmap_event(d) { + var _a3; + if (d.querySelector(".ab-markmap-svg")) { + console.log(" - markmap_event"); + let script_el = document.querySelector('script[script-id="ab-markmap-script"]'); + if (script_el) + script_el.remove(); + const divEl = d; + let markmapId = ""; + if (divEl.tagName === "DIV") { + markmapId = ((_a3 = divEl.querySelector(".ab-markmap-svg")) == null ? void 0 : _a3.id) || ""; + } + script_el = document.createElement("script"); + document.head.appendChild(script_el); + script_el.type = "module"; + script_el.setAttribute("script-id", "ab-markmap-script"); + script_el.textContent = ` + import { Markmap, } from 'https://jspm.dev/markmap-view'; + const markmapId = "${markmapId || ""}"; + let mindmaps; + if (markmapId) { + mindmaps = document.querySelectorAll('#' + markmapId); + } else { + mindmaps = document.querySelectorAll('.ab-markmap-svg'); // \u6CE8\u610F\u4E00\u4E0B\u8FD9\u91CC\u7684\u9009\u62E9\u5668 + } + for(const mindmap of mindmaps) { + mindmap.innerHTML = ""; + Markmap.create(mindmap,null,JSON.parse(mindmap.getAttribute('data-json'))); + }`; + } +} + +// ../../node_modules/.pnpm/markmap-common@0.18.9/node_modules/markmap-common/dist/index.mjs +var testPath = "npm2url/dist/index.cjs"; +var defaultProviders = { + jsdelivr: (path) => `https://cdn.jsdelivr.net/npm/${path}`, + unpkg: (path) => `https://unpkg.com/${path}` +}; +async function checkUrl(url, signal) { + const res = await fetch(url, { + signal + }); + if (!res.ok) { + throw res; + } + await res.text(); +} +var UrlBuilder = class { + constructor() { + this.providers = { ...defaultProviders }; + this.provider = "jsdelivr"; + } + async getFastestProvider(timeout = 5e3, path = testPath) { + const controller = new AbortController(); + let timer = 0; + try { + return await new Promise((resolve, reject) => { + Promise.all( + Object.entries(this.providers).map(async ([name2, factory]) => { + try { + await checkUrl(factory(path), controller.signal); + resolve(name2); + } catch (e) { + } + }) + ).then(() => reject(new Error("All providers failed"))); + timer = setTimeout(reject, timeout, new Error("Timed out")); + }); + } finally { + controller.abort(); + clearTimeout(timer); + } + } + async findFastestProvider(timeout, path) { + this.provider = await this.getFastestProvider(timeout, path); + return this.provider; + } + setProvider(name2, factory) { + if (factory) { + this.providers[name2] = factory; + } else { + delete this.providers[name2]; + } + } + getFullUrl(path, provider = this.provider) { + if (path.includes("://")) { + return path; + } + const factory = this.providers[provider]; + if (!factory) { + throw new Error(`Provider ${provider} not found`); + } + return factory(path); + } +}; +var urlBuilder = new UrlBuilder(); +var Hook = class { + constructor() { + this.listeners = []; + } + tap(fn) { + this.listeners.push(fn); + return () => this.revoke(fn); + } + revoke(fn) { + const i = this.listeners.indexOf(fn); + if (i >= 0) + this.listeners.splice(i, 1); + } + revokeAll() { + this.listeners.splice(0); + } + call(...args) { + for (const fn of this.listeners) { + fn(...args); + } + } +}; +var uniqId = Math.random().toString(36).slice(2, 8); +function noop() { +} +function walkTree(tree, callback) { + const walk = (item, parent2) => callback( + item, + () => { + var _a3; + return (_a3 = item.children) == null ? void 0 : _a3.map((child) => walk(child, item)); + }, + parent2 + ); + return walk(tree); +} +function wrapFunction(fn, wrapper) { + return (...args) => wrapper(fn, ...args); +} +function defer() { + const obj = {}; + obj.promise = new Promise((resolve, reject) => { + obj.resolve = resolve; + obj.reject = reject; + }); + return obj; +} +function memoize(fn) { + const cache = {}; + return function memoized(...args) { + const key = `${args[0]}`; + let data2 = cache[key]; + if (!data2) { + data2 = { + value: fn(...args) + }; + cache[key] = data2; + } + return data2.value; + }; +} +var VTYPE_ELEMENT = 1; +var VTYPE_FUNCTION = 2; +var SVG_NS = "http://www.w3.org/2000/svg"; +var XLINK_NS = "http://www.w3.org/1999/xlink"; +var NS_ATTRS = { + show: XLINK_NS, + actuate: XLINK_NS, + href: XLINK_NS +}; +var isLeaf = (c) => typeof c === "string" || typeof c === "number"; +var isElement = (c) => (c == null ? void 0 : c.vtype) === VTYPE_ELEMENT; +var isRenderFunction = (c) => (c == null ? void 0 : c.vtype) === VTYPE_FUNCTION; +function h(type, props, ...children2) { + props = Object.assign({}, props, { + children: children2.length === 1 ? children2[0] : children2 + }); + return jsx(type, props); +} +function jsx(type, props) { + let vtype; + if (typeof type === "string") + vtype = VTYPE_ELEMENT; + else if (typeof type === "function") + vtype = VTYPE_FUNCTION; + else + throw new Error("Invalid VNode type"); + return { + vtype, + type, + props + }; +} +function Fragment(props) { + return props.children; +} +var DEFAULT_ENV = { + isSvg: false +}; +function insertDom(parent2, nodes) { + if (!Array.isArray(nodes)) + nodes = [nodes]; + nodes = nodes.filter(Boolean); + if (nodes.length) + parent2.append(...nodes); +} +function mountAttributes(domElement, props, env) { + for (const key in props) { + if (key === "key" || key === "children" || key === "ref") + continue; + if (key === "dangerouslySetInnerHTML") { + domElement.innerHTML = props[key].__html; + } else if (key === "innerHTML" || key === "textContent" || key === "innerText" || key === "value" && ["textarea", "select"].includes(domElement.tagName)) { + const value = props[key]; + if (value != null) + domElement[key] = value; + } else if (key.startsWith("on")) { + domElement[key.toLowerCase()] = props[key]; + } else { + setDOMAttribute(domElement, key, props[key], env.isSvg); + } + } +} +var attrMap = { + className: "class", + labelFor: "for" +}; +function setDOMAttribute(el, attr2, value, isSVG) { + attr2 = attrMap[attr2] || attr2; + if (value === true) { + el.setAttribute(attr2, ""); + } else if (value === false) { + el.removeAttribute(attr2); + } else { + const namespace = isSVG ? NS_ATTRS[attr2] : void 0; + if (namespace !== void 0) { + el.setAttributeNS(namespace, attr2, value); + } else { + el.setAttribute(attr2, value); + } + } +} +function flatten(arr) { + return arr.reduce((prev2, item) => prev2.concat(item), []); +} +function mountChildren(children2, env) { + return Array.isArray(children2) ? flatten(children2.map((child) => mountChildren(child, env))) : mount(children2, env); +} +function mount(vnode, env = DEFAULT_ENV) { + if (vnode == null || typeof vnode === "boolean") { + return null; + } + if (vnode instanceof Node) { + return vnode; + } + if (isRenderFunction(vnode)) { + const { + type, + props + } = vnode; + if (type === Fragment) { + const node = document.createDocumentFragment(); + if (props.children) { + const children2 = mountChildren(props.children, env); + insertDom(node, children2); + } + return node; + } + const childVNode = type(props); + return mount(childVNode, env); + } + if (isLeaf(vnode)) { + return document.createTextNode(`${vnode}`); + } + if (isElement(vnode)) { + let node; + const { + type, + props + } = vnode; + if (!env.isSvg && type === "svg") { + env = Object.assign({}, env, { + isSvg: true + }); + } + if (!env.isSvg) { + node = document.createElement(type); + } else { + node = document.createElementNS(SVG_NS, type); + } + mountAttributes(node, props, env); + if (props.children) { + let childEnv = env; + if (env.isSvg && type === "foreignObject") { + childEnv = Object.assign({}, childEnv, { + isSvg: false + }); + } + const children2 = mountChildren(props.children, childEnv); + if (children2 != null) + insertDom(node, children2); + } + const { + ref + } = props; + if (typeof ref === "function") + ref(node); + return node; + } + throw new Error("mount: Invalid Vnode!"); +} +function mountDom(vnode) { + return mount(vnode); +} +function hm(...args) { + return mountDom(h(...args)); +} +var memoizedPreloadJS = memoize((url) => { + document.head.append( + hm("link", { + rel: "preload", + as: "script", + href: url + }) + ); +}); +var jsCache = {}; +async function loadJSItem(item, context) { + var _a3; + const src = item.type === "script" && ((_a3 = item.data) == null ? void 0 : _a3.src) || ""; + item.loaded || (item.loaded = jsCache[src]); + if (!item.loaded) { + const deferred = defer(); + item.loaded = deferred.promise; + if (item.type === "script") { + document.head.append( + hm("script", { + ...item.data, + onLoad: () => deferred.resolve(), + onError: deferred.reject + }) + ); + if (!src) { + deferred.resolve(); + } else { + jsCache[src] = item.loaded; + } + } + if (item.type === "iife") { + const { fn, getParams } = item.data; + fn(...(getParams == null ? void 0 : getParams(context)) || []); + deferred.resolve(); + } + } + await item.loaded; +} +async function loadJS(items, context) { + items.forEach((item) => { + var _a3; + if (item.type === "script" && ((_a3 = item.data) == null ? void 0 : _a3.src)) { + memoizedPreloadJS(item.data.src); + } + }); + context = { + getMarkmap: () => window.markmap, + ...context + }; + for (const item of items) { + await loadJSItem(item, context); + } +} +function buildJSItem(path) { + return { + type: "script", + data: { + src: path + } + }; +} +function buildCSSItem(path) { + return { + type: "stylesheet", + data: { + href: path + } + }; +} + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/options.js +var defaultOpts = { + xml: false, + decodeEntities: true +}; +var options_default = defaultOpts; +var xmlModeDefault = { + _useHtmlParser2: true, + xmlMode: true +}; +function flatten2(options) { + return (options === null || options === void 0 ? void 0 : options.xml) ? typeof options.xml === "boolean" ? xmlModeDefault : { ...xmlModeDefault, ...options.xml } : options !== null && options !== void 0 ? options : void 0; +} + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/static.js +var static_exports = {}; +__export(static_exports, { + contains: () => contains, + html: () => html, + merge: () => merge, + parseHTML: () => parseHTML, + root: () => root, + text: () => text, + xml: () => xml +}); + +// ../../node_modules/.pnpm/domutils@3.2.2/node_modules/domutils/lib/esm/index.js +var esm_exports2 = {}; +__export(esm_exports2, { + DocumentPosition: () => DocumentPosition, + append: () => append, + appendChild: () => appendChild, + compareDocumentPosition: () => compareDocumentPosition, + existsOne: () => existsOne, + filter: () => filter, + find: () => find, + findAll: () => findAll, + findOne: () => findOne, + findOneChild: () => findOneChild, + getAttributeValue: () => getAttributeValue, + getChildren: () => getChildren, + getElementById: () => getElementById, + getElements: () => getElements, + getElementsByClassName: () => getElementsByClassName, + getElementsByTagName: () => getElementsByTagName, + getElementsByTagType: () => getElementsByTagType, + getFeed: () => getFeed, + getInnerHTML: () => getInnerHTML, + getName: () => getName, + getOuterHTML: () => getOuterHTML, + getParent: () => getParent, + getSiblings: () => getSiblings, + getText: () => getText, + hasAttrib: () => hasAttrib, + hasChildren: () => hasChildren, + innerText: () => innerText, + isCDATA: () => isCDATA, + isComment: () => isComment, + isDocument: () => isDocument, + isTag: () => isTag2, + isText: () => isText, + nextElementSibling: () => nextElementSibling, + prepend: () => prepend, + prependChild: () => prependChild, + prevElementSibling: () => prevElementSibling, + removeElement: () => removeElement, + removeSubsets: () => removeSubsets, + replaceElement: () => replaceElement, + testElement: () => testElement, + textContent: () => textContent, + uniqueSort: () => uniqueSort +}); + +// ../../node_modules/.pnpm/domelementtype@2.3.0/node_modules/domelementtype/lib/esm/index.js +var esm_exports = {}; +__export(esm_exports, { + CDATA: () => CDATA, + Comment: () => Comment, + Directive: () => Directive, + Doctype: () => Doctype, + ElementType: () => ElementType, + Root: () => Root, + Script: () => Script, + Style: () => Style, + Tag: () => Tag, + Text: () => Text, + isTag: () => isTag +}); +var ElementType; +(function(ElementType2) { + ElementType2["Root"] = "root"; + ElementType2["Text"] = "text"; + ElementType2["Directive"] = "directive"; + ElementType2["Comment"] = "comment"; + ElementType2["Script"] = "script"; + ElementType2["Style"] = "style"; + ElementType2["Tag"] = "tag"; + ElementType2["CDATA"] = "cdata"; + ElementType2["Doctype"] = "doctype"; +})(ElementType || (ElementType = {})); +function isTag(elem) { + return elem.type === ElementType.Tag || elem.type === ElementType.Script || elem.type === ElementType.Style; +} +var Root = ElementType.Root; +var Text = ElementType.Text; +var Directive = ElementType.Directive; +var Comment = ElementType.Comment; +var Script = ElementType.Script; +var Style = ElementType.Style; +var Tag = ElementType.Tag; +var CDATA = ElementType.CDATA; +var Doctype = ElementType.Doctype; + +// ../../node_modules/.pnpm/domhandler@5.0.3/node_modules/domhandler/lib/esm/node.js +var Node2 = class { + constructor() { + this.parent = null; + this.prev = null; + this.next = null; + this.startIndex = null; + this.endIndex = null; + } + get parentNode() { + return this.parent; + } + set parentNode(parent2) { + this.parent = parent2; + } + get previousSibling() { + return this.prev; + } + set previousSibling(prev2) { + this.prev = prev2; + } + get nextSibling() { + return this.next; + } + set nextSibling(next2) { + this.next = next2; + } + cloneNode(recursive = false) { + return cloneNode(this, recursive); + } +}; +var DataNode = class extends Node2 { + constructor(data2) { + super(); + this.data = data2; + } + get nodeValue() { + return this.data; + } + set nodeValue(data2) { + this.data = data2; + } +}; +var Text2 = class extends DataNode { + constructor() { + super(...arguments); + this.type = ElementType.Text; + } + get nodeType() { + return 3; + } +}; +var Comment2 = class extends DataNode { + constructor() { + super(...arguments); + this.type = ElementType.Comment; + } + get nodeType() { + return 8; + } +}; +var ProcessingInstruction = class extends DataNode { + constructor(name2, data2) { + super(data2); + this.name = name2; + this.type = ElementType.Directive; + } + get nodeType() { + return 1; + } +}; +var NodeWithChildren = class extends Node2 { + constructor(children2) { + super(); + this.children = children2; + } + get firstChild() { + var _a3; + return (_a3 = this.children[0]) !== null && _a3 !== void 0 ? _a3 : null; + } + get lastChild() { + return this.children.length > 0 ? this.children[this.children.length - 1] : null; + } + get childNodes() { + return this.children; + } + set childNodes(children2) { + this.children = children2; + } +}; +var CDATA2 = class extends NodeWithChildren { + constructor() { + super(...arguments); + this.type = ElementType.CDATA; + } + get nodeType() { + return 4; + } +}; +var Document = class extends NodeWithChildren { + constructor() { + super(...arguments); + this.type = ElementType.Root; + } + get nodeType() { + return 9; + } +}; +var Element = class extends NodeWithChildren { + constructor(name2, attribs, children2 = [], type = name2 === "script" ? ElementType.Script : name2 === "style" ? ElementType.Style : ElementType.Tag) { + super(children2); + this.name = name2; + this.attribs = attribs; + this.type = type; + } + get nodeType() { + return 1; + } + get tagName() { + return this.name; + } + set tagName(name2) { + this.name = name2; + } + get attributes() { + return Object.keys(this.attribs).map((name2) => { + var _a3, _b; + return { + name: name2, + value: this.attribs[name2], + namespace: (_a3 = this["x-attribsNamespace"]) === null || _a3 === void 0 ? void 0 : _a3[name2], + prefix: (_b = this["x-attribsPrefix"]) === null || _b === void 0 ? void 0 : _b[name2] + }; + }); + } +}; +function isTag2(node) { + return isTag(node); +} +function isCDATA(node) { + return node.type === ElementType.CDATA; +} +function isText(node) { + return node.type === ElementType.Text; +} +function isComment(node) { + return node.type === ElementType.Comment; +} +function isDirective(node) { + return node.type === ElementType.Directive; +} +function isDocument(node) { + return node.type === ElementType.Root; +} +function hasChildren(node) { + return Object.prototype.hasOwnProperty.call(node, "children"); +} +function cloneNode(node, recursive = false) { + let result; + if (isText(node)) { + result = new Text2(node.data); + } else if (isComment(node)) { + result = new Comment2(node.data); + } else if (isTag2(node)) { + const children2 = recursive ? cloneChildren(node.children) : []; + const clone2 = new Element(node.name, { ...node.attribs }, children2); + children2.forEach((child) => child.parent = clone2); + if (node.namespace != null) { + clone2.namespace = node.namespace; + } + if (node["x-attribsNamespace"]) { + clone2["x-attribsNamespace"] = { ...node["x-attribsNamespace"] }; + } + if (node["x-attribsPrefix"]) { + clone2["x-attribsPrefix"] = { ...node["x-attribsPrefix"] }; + } + result = clone2; + } else if (isCDATA(node)) { + const children2 = recursive ? cloneChildren(node.children) : []; + const clone2 = new CDATA2(children2); + children2.forEach((child) => child.parent = clone2); + result = clone2; + } else if (isDocument(node)) { + const children2 = recursive ? cloneChildren(node.children) : []; + const clone2 = new Document(children2); + children2.forEach((child) => child.parent = clone2); + if (node["x-mode"]) { + clone2["x-mode"] = node["x-mode"]; + } + result = clone2; + } else if (isDirective(node)) { + const instruction = new ProcessingInstruction(node.name, node.data); + if (node["x-name"] != null) { + instruction["x-name"] = node["x-name"]; + instruction["x-publicId"] = node["x-publicId"]; + instruction["x-systemId"] = node["x-systemId"]; + } + result = instruction; + } else { + throw new Error(`Not implemented yet: ${node.type}`); + } + result.startIndex = node.startIndex; + result.endIndex = node.endIndex; + if (node.sourceCodeLocation != null) { + result.sourceCodeLocation = node.sourceCodeLocation; + } + return result; +} +function cloneChildren(childs) { + const children2 = childs.map((child) => cloneNode(child, true)); + for (let i = 1; i < children2.length; i++) { + children2[i].prev = children2[i - 1]; + children2[i - 1].next = children2[i]; + } + return children2; +} + +// ../../node_modules/.pnpm/domhandler@5.0.3/node_modules/domhandler/lib/esm/index.js +var defaultOpts2 = { + withStartIndices: false, + withEndIndices: false, + xmlMode: false +}; +var DomHandler = class { + constructor(callback, options, elementCB) { + this.dom = []; + this.root = new Document(this.dom); + this.done = false; + this.tagStack = [this.root]; + this.lastNode = null; + this.parser = null; + if (typeof options === "function") { + elementCB = options; + options = defaultOpts2; + } + if (typeof callback === "object") { + options = callback; + callback = void 0; + } + this.callback = callback !== null && callback !== void 0 ? callback : null; + this.options = options !== null && options !== void 0 ? options : defaultOpts2; + this.elementCB = elementCB !== null && elementCB !== void 0 ? elementCB : null; + } + onparserinit(parser) { + this.parser = parser; + } + onreset() { + this.dom = []; + this.root = new Document(this.dom); + this.done = false; + this.tagStack = [this.root]; + this.lastNode = null; + this.parser = null; + } + onend() { + if (this.done) + return; + this.done = true; + this.parser = null; + this.handleCallback(null); + } + onerror(error2) { + this.handleCallback(error2); + } + onclosetag() { + this.lastNode = null; + const elem = this.tagStack.pop(); + if (this.options.withEndIndices) { + elem.endIndex = this.parser.endIndex; + } + if (this.elementCB) + this.elementCB(elem); + } + onopentag(name2, attribs) { + const type = this.options.xmlMode ? ElementType.Tag : void 0; + const element = new Element(name2, attribs, void 0, type); + this.addNode(element); + this.tagStack.push(element); + } + ontext(data2) { + const { lastNode } = this; + if (lastNode && lastNode.type === ElementType.Text) { + lastNode.data += data2; + if (this.options.withEndIndices) { + lastNode.endIndex = this.parser.endIndex; + } + } else { + const node = new Text2(data2); + this.addNode(node); + this.lastNode = node; + } + } + oncomment(data2) { + if (this.lastNode && this.lastNode.type === ElementType.Comment) { + this.lastNode.data += data2; + return; + } + const node = new Comment2(data2); + this.addNode(node); + this.lastNode = node; + } + oncommentend() { + this.lastNode = null; + } + oncdatastart() { + const text4 = new Text2(""); + const node = new CDATA2([text4]); + this.addNode(node); + text4.parent = node; + this.lastNode = text4; + } + oncdataend() { + this.lastNode = null; + } + onprocessinginstruction(name2, data2) { + const node = new ProcessingInstruction(name2, data2); + this.addNode(node); + } + handleCallback(error2) { + if (typeof this.callback === "function") { + this.callback(error2, this.dom); + } else if (error2) { + throw error2; + } + } + addNode(node) { + const parent2 = this.tagStack[this.tagStack.length - 1]; + const previousSibling = parent2.children[parent2.children.length - 1]; + if (this.options.withStartIndices) { + node.startIndex = this.parser.startIndex; + } + if (this.options.withEndIndices) { + node.endIndex = this.parser.endIndex; + } + parent2.children.push(node); + if (previousSibling) { + node.prev = previousSibling; + previousSibling.next = node; + } + node.parent = parent2; + this.lastNode = null; + } +}; + +// ../../node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/generated/decode-data-html.js +var decode_data_html_default = new Uint16Array( + '\u1D41<\xD5\u0131\u028A\u049D\u057B\u05D0\u0675\u06DE\u07A2\u07D6\u080F\u0A4A\u0A91\u0DA1\u0E6D\u0F09\u0F26\u10CA\u1228\u12E1\u1415\u149D\u14C3\u14DF\u1525\0\0\0\0\0\0\u156B\u16CD\u198D\u1C12\u1DDD\u1F7E\u2060\u21B0\u228D\u23C0\u23FB\u2442\u2824\u2912\u2D08\u2E48\u2FCE\u3016\u32BA\u3639\u37AC\u38FE\u3A28\u3A71\u3AE0\u3B2E\u0800EMabcfglmnoprstu\\bfms\x7F\x84\x8B\x90\x95\x98\xA6\xB3\xB9\xC8\xCFlig\u803B\xC6\u40C6P\u803B&\u4026cute\u803B\xC1\u40C1reve;\u4102\u0100iyx}rc\u803B\xC2\u40C2;\u4410r;\uC000\u{1D504}rave\u803B\xC0\u40C0pha;\u4391acr;\u4100d;\u6A53\u0100gp\x9D\xA1on;\u4104f;\uC000\u{1D538}plyFunction;\u6061ing\u803B\xC5\u40C5\u0100cs\xBE\xC3r;\uC000\u{1D49C}ign;\u6254ilde\u803B\xC3\u40C3ml\u803B\xC4\u40C4\u0400aceforsu\xE5\xFB\xFE\u0117\u011C\u0122\u0127\u012A\u0100cr\xEA\xF2kslash;\u6216\u0176\xF6\xF8;\u6AE7ed;\u6306y;\u4411\u0180crt\u0105\u010B\u0114ause;\u6235noullis;\u612Ca;\u4392r;\uC000\u{1D505}pf;\uC000\u{1D539}eve;\u42D8c\xF2\u0113mpeq;\u624E\u0700HOacdefhilorsu\u014D\u0151\u0156\u0180\u019E\u01A2\u01B5\u01B7\u01BA\u01DC\u0215\u0273\u0278\u027Ecy;\u4427PY\u803B\xA9\u40A9\u0180cpy\u015D\u0162\u017Aute;\u4106\u0100;i\u0167\u0168\u62D2talDifferentialD;\u6145leys;\u612D\u0200aeio\u0189\u018E\u0194\u0198ron;\u410Cdil\u803B\xC7\u40C7rc;\u4108nint;\u6230ot;\u410A\u0100dn\u01A7\u01ADilla;\u40B8terDot;\u40B7\xF2\u017Fi;\u43A7rcle\u0200DMPT\u01C7\u01CB\u01D1\u01D6ot;\u6299inus;\u6296lus;\u6295imes;\u6297o\u0100cs\u01E2\u01F8kwiseContourIntegral;\u6232eCurly\u0100DQ\u0203\u020FoubleQuote;\u601Duote;\u6019\u0200lnpu\u021E\u0228\u0247\u0255on\u0100;e\u0225\u0226\u6237;\u6A74\u0180git\u022F\u0236\u023Aruent;\u6261nt;\u622FourIntegral;\u622E\u0100fr\u024C\u024E;\u6102oduct;\u6210nterClockwiseContourIntegral;\u6233oss;\u6A2Fcr;\uC000\u{1D49E}p\u0100;C\u0284\u0285\u62D3ap;\u624D\u0580DJSZacefios\u02A0\u02AC\u02B0\u02B4\u02B8\u02CB\u02D7\u02E1\u02E6\u0333\u048D\u0100;o\u0179\u02A5trahd;\u6911cy;\u4402cy;\u4405cy;\u440F\u0180grs\u02BF\u02C4\u02C7ger;\u6021r;\u61A1hv;\u6AE4\u0100ay\u02D0\u02D5ron;\u410E;\u4414l\u0100;t\u02DD\u02DE\u6207a;\u4394r;\uC000\u{1D507}\u0100af\u02EB\u0327\u0100cm\u02F0\u0322ritical\u0200ADGT\u0300\u0306\u0316\u031Ccute;\u40B4o\u0174\u030B\u030D;\u42D9bleAcute;\u42DDrave;\u4060ilde;\u42DCond;\u62C4ferentialD;\u6146\u0470\u033D\0\0\0\u0342\u0354\0\u0405f;\uC000\u{1D53B}\u0180;DE\u0348\u0349\u034D\u40A8ot;\u60DCqual;\u6250ble\u0300CDLRUV\u0363\u0372\u0382\u03CF\u03E2\u03F8ontourIntegra\xEC\u0239o\u0274\u0379\0\0\u037B\xBB\u0349nArrow;\u61D3\u0100eo\u0387\u03A4ft\u0180ART\u0390\u0396\u03A1rrow;\u61D0ightArrow;\u61D4e\xE5\u02CAng\u0100LR\u03AB\u03C4eft\u0100AR\u03B3\u03B9rrow;\u67F8ightArrow;\u67FAightArrow;\u67F9ight\u0100AT\u03D8\u03DErrow;\u61D2ee;\u62A8p\u0241\u03E9\0\0\u03EFrrow;\u61D1ownArrow;\u61D5erticalBar;\u6225n\u0300ABLRTa\u0412\u042A\u0430\u045E\u047F\u037Crrow\u0180;BU\u041D\u041E\u0422\u6193ar;\u6913pArrow;\u61F5reve;\u4311eft\u02D2\u043A\0\u0446\0\u0450ightVector;\u6950eeVector;\u695Eector\u0100;B\u0459\u045A\u61BDar;\u6956ight\u01D4\u0467\0\u0471eeVector;\u695Fector\u0100;B\u047A\u047B\u61C1ar;\u6957ee\u0100;A\u0486\u0487\u62A4rrow;\u61A7\u0100ct\u0492\u0497r;\uC000\u{1D49F}rok;\u4110\u0800NTacdfglmopqstux\u04BD\u04C0\u04C4\u04CB\u04DE\u04E2\u04E7\u04EE\u04F5\u0521\u052F\u0536\u0552\u055D\u0560\u0565G;\u414AH\u803B\xD0\u40D0cute\u803B\xC9\u40C9\u0180aiy\u04D2\u04D7\u04DCron;\u411Arc\u803B\xCA\u40CA;\u442Dot;\u4116r;\uC000\u{1D508}rave\u803B\xC8\u40C8ement;\u6208\u0100ap\u04FA\u04FEcr;\u4112ty\u0253\u0506\0\0\u0512mallSquare;\u65FBerySmallSquare;\u65AB\u0100gp\u0526\u052Aon;\u4118f;\uC000\u{1D53C}silon;\u4395u\u0100ai\u053C\u0549l\u0100;T\u0542\u0543\u6A75ilde;\u6242librium;\u61CC\u0100ci\u0557\u055Ar;\u6130m;\u6A73a;\u4397ml\u803B\xCB\u40CB\u0100ip\u056A\u056Fsts;\u6203onentialE;\u6147\u0280cfios\u0585\u0588\u058D\u05B2\u05CCy;\u4424r;\uC000\u{1D509}lled\u0253\u0597\0\0\u05A3mallSquare;\u65FCerySmallSquare;\u65AA\u0370\u05BA\0\u05BF\0\0\u05C4f;\uC000\u{1D53D}All;\u6200riertrf;\u6131c\xF2\u05CB\u0600JTabcdfgorst\u05E8\u05EC\u05EF\u05FA\u0600\u0612\u0616\u061B\u061D\u0623\u066C\u0672cy;\u4403\u803B>\u403Emma\u0100;d\u05F7\u05F8\u4393;\u43DCreve;\u411E\u0180eiy\u0607\u060C\u0610dil;\u4122rc;\u411C;\u4413ot;\u4120r;\uC000\u{1D50A};\u62D9pf;\uC000\u{1D53E}eater\u0300EFGLST\u0635\u0644\u064E\u0656\u065B\u0666qual\u0100;L\u063E\u063F\u6265ess;\u62DBullEqual;\u6267reater;\u6AA2ess;\u6277lantEqual;\u6A7Eilde;\u6273cr;\uC000\u{1D4A2};\u626B\u0400Aacfiosu\u0685\u068B\u0696\u069B\u069E\u06AA\u06BE\u06CARDcy;\u442A\u0100ct\u0690\u0694ek;\u42C7;\u405Eirc;\u4124r;\u610ClbertSpace;\u610B\u01F0\u06AF\0\u06B2f;\u610DizontalLine;\u6500\u0100ct\u06C3\u06C5\xF2\u06A9rok;\u4126mp\u0144\u06D0\u06D8ownHum\xF0\u012Fqual;\u624F\u0700EJOacdfgmnostu\u06FA\u06FE\u0703\u0707\u070E\u071A\u071E\u0721\u0728\u0744\u0778\u078B\u078F\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803B\xCD\u40CD\u0100iy\u0713\u0718rc\u803B\xCE\u40CE;\u4418ot;\u4130r;\u6111rave\u803B\xCC\u40CC\u0180;ap\u0720\u072F\u073F\u0100cg\u0734\u0737r;\u412AinaryI;\u6148lie\xF3\u03DD\u01F4\u0749\0\u0762\u0100;e\u074D\u074E\u622C\u0100gr\u0753\u0758ral;\u622Bsection;\u62C2isible\u0100CT\u076C\u0772omma;\u6063imes;\u6062\u0180gpt\u077F\u0783\u0788on;\u412Ef;\uC000\u{1D540}a;\u4399cr;\u6110ilde;\u4128\u01EB\u079A\0\u079Ecy;\u4406l\u803B\xCF\u40CF\u0280cfosu\u07AC\u07B7\u07BC\u07C2\u07D0\u0100iy\u07B1\u07B5rc;\u4134;\u4419r;\uC000\u{1D50D}pf;\uC000\u{1D541}\u01E3\u07C7\0\u07CCr;\uC000\u{1D4A5}rcy;\u4408kcy;\u4404\u0380HJacfos\u07E4\u07E8\u07EC\u07F1\u07FD\u0802\u0808cy;\u4425cy;\u440Cppa;\u439A\u0100ey\u07F6\u07FBdil;\u4136;\u441Ar;\uC000\u{1D50E}pf;\uC000\u{1D542}cr;\uC000\u{1D4A6}\u0580JTaceflmost\u0825\u0829\u082C\u0850\u0863\u09B3\u09B8\u09C7\u09CD\u0A37\u0A47cy;\u4409\u803B<\u403C\u0280cmnpr\u0837\u083C\u0841\u0844\u084Dute;\u4139bda;\u439Bg;\u67EAlacetrf;\u6112r;\u619E\u0180aey\u0857\u085C\u0861ron;\u413Ddil;\u413B;\u441B\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087E\u08A9\u08B1\u08E0\u08E6\u08FC\u092F\u095B\u0390\u096A\u0100nr\u0883\u088FgleBracket;\u67E8row\u0180;BR\u0899\u089A\u089E\u6190ar;\u61E4ightArrow;\u61C6eiling;\u6308o\u01F5\u08B7\0\u08C3bleBracket;\u67E6n\u01D4\u08C8\0\u08D2eeVector;\u6961ector\u0100;B\u08DB\u08DC\u61C3ar;\u6959loor;\u630Aight\u0100AV\u08EF\u08F5rrow;\u6194ector;\u694E\u0100er\u0901\u0917e\u0180;AV\u0909\u090A\u0910\u62A3rrow;\u61A4ector;\u695Aiangle\u0180;BE\u0924\u0925\u0929\u62B2ar;\u69CFqual;\u62B4p\u0180DTV\u0937\u0942\u094CownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61BFar;\u6958ector\u0100;B\u0965\u0966\u61BCar;\u6952ight\xE1\u039Cs\u0300EFGLST\u097E\u098B\u0995\u099D\u09A2\u09ADqualGreater;\u62DAullEqual;\u6266reater;\u6276ess;\u6AA1lantEqual;\u6A7Dilde;\u6272r;\uC000\u{1D50F}\u0100;e\u09BD\u09BE\u62D8ftarrow;\u61DAidot;\u413F\u0180npw\u09D4\u0A16\u0A1Bg\u0200LRlr\u09DE\u09F7\u0A02\u0A10eft\u0100AR\u09E6\u09ECrrow;\u67F5ightArrow;\u67F7ightArrow;\u67F6eft\u0100ar\u03B3\u0A0Aight\xE1\u03BFight\xE1\u03CAf;\uC000\u{1D543}er\u0100LR\u0A22\u0A2CeftArrow;\u6199ightArrow;\u6198\u0180cht\u0A3E\u0A40\u0A42\xF2\u084C;\u61B0rok;\u4141;\u626A\u0400acefiosu\u0A5A\u0A5D\u0A60\u0A77\u0A7C\u0A85\u0A8B\u0A8Ep;\u6905y;\u441C\u0100dl\u0A65\u0A6FiumSpace;\u605Flintrf;\u6133r;\uC000\u{1D510}nusPlus;\u6213pf;\uC000\u{1D544}c\xF2\u0A76;\u439C\u0480Jacefostu\u0AA3\u0AA7\u0AAD\u0AC0\u0B14\u0B19\u0D91\u0D97\u0D9Ecy;\u440Acute;\u4143\u0180aey\u0AB4\u0AB9\u0ABEron;\u4147dil;\u4145;\u441D\u0180gsw\u0AC7\u0AF0\u0B0Eative\u0180MTV\u0AD3\u0ADF\u0AE8ediumSpace;\u600Bhi\u0100cn\u0AE6\u0AD8\xEB\u0AD9eryThi\xEE\u0AD9ted\u0100GL\u0AF8\u0B06reaterGreate\xF2\u0673essLes\xF3\u0A48Line;\u400Ar;\uC000\u{1D511}\u0200Bnpt\u0B22\u0B28\u0B37\u0B3Areak;\u6060BreakingSpace;\u40A0f;\u6115\u0680;CDEGHLNPRSTV\u0B55\u0B56\u0B6A\u0B7C\u0BA1\u0BEB\u0C04\u0C5E\u0C84\u0CA6\u0CD8\u0D61\u0D85\u6AEC\u0100ou\u0B5B\u0B64ngruent;\u6262pCap;\u626DoubleVerticalBar;\u6226\u0180lqx\u0B83\u0B8A\u0B9Bement;\u6209ual\u0100;T\u0B92\u0B93\u6260ilde;\uC000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0BB6\u0BB7\u0BBD\u0BC9\u0BD3\u0BD8\u0BE5\u626Fqual;\u6271ullEqual;\uC000\u2267\u0338reater;\uC000\u226B\u0338ess;\u6279lantEqual;\uC000\u2A7E\u0338ilde;\u6275ump\u0144\u0BF2\u0BFDownHump;\uC000\u224E\u0338qual;\uC000\u224F\u0338e\u0100fs\u0C0A\u0C27tTriangle\u0180;BE\u0C1A\u0C1B\u0C21\u62EAar;\uC000\u29CF\u0338qual;\u62ECs\u0300;EGLST\u0C35\u0C36\u0C3C\u0C44\u0C4B\u0C58\u626Equal;\u6270reater;\u6278ess;\uC000\u226A\u0338lantEqual;\uC000\u2A7D\u0338ilde;\u6274ested\u0100GL\u0C68\u0C79reaterGreater;\uC000\u2AA2\u0338essLess;\uC000\u2AA1\u0338recedes\u0180;ES\u0C92\u0C93\u0C9B\u6280qual;\uC000\u2AAF\u0338lantEqual;\u62E0\u0100ei\u0CAB\u0CB9verseElement;\u620CghtTriangle\u0180;BE\u0CCB\u0CCC\u0CD2\u62EBar;\uC000\u29D0\u0338qual;\u62ED\u0100qu\u0CDD\u0D0CuareSu\u0100bp\u0CE8\u0CF9set\u0100;E\u0CF0\u0CF3\uC000\u228F\u0338qual;\u62E2erset\u0100;E\u0D03\u0D06\uC000\u2290\u0338qual;\u62E3\u0180bcp\u0D13\u0D24\u0D4Eset\u0100;E\u0D1B\u0D1E\uC000\u2282\u20D2qual;\u6288ceeds\u0200;EST\u0D32\u0D33\u0D3B\u0D46\u6281qual;\uC000\u2AB0\u0338lantEqual;\u62E1ilde;\uC000\u227F\u0338erset\u0100;E\u0D58\u0D5B\uC000\u2283\u20D2qual;\u6289ilde\u0200;EFT\u0D6E\u0D6F\u0D75\u0D7F\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uC000\u{1D4A9}ilde\u803B\xD1\u40D1;\u439D\u0700Eacdfgmoprstuv\u0DBD\u0DC2\u0DC9\u0DD5\u0DDB\u0DE0\u0DE7\u0DFC\u0E02\u0E20\u0E22\u0E32\u0E3F\u0E44lig;\u4152cute\u803B\xD3\u40D3\u0100iy\u0DCE\u0DD3rc\u803B\xD4\u40D4;\u441Eblac;\u4150r;\uC000\u{1D512}rave\u803B\xD2\u40D2\u0180aei\u0DEE\u0DF2\u0DF6cr;\u414Cga;\u43A9cron;\u439Fpf;\uC000\u{1D546}enCurly\u0100DQ\u0E0E\u0E1AoubleQuote;\u601Cuote;\u6018;\u6A54\u0100cl\u0E27\u0E2Cr;\uC000\u{1D4AA}ash\u803B\xD8\u40D8i\u016C\u0E37\u0E3Cde\u803B\xD5\u40D5es;\u6A37ml\u803B\xD6\u40D6er\u0100BP\u0E4B\u0E60\u0100ar\u0E50\u0E53r;\u603Eac\u0100ek\u0E5A\u0E5C;\u63DEet;\u63B4arenthesis;\u63DC\u0480acfhilors\u0E7F\u0E87\u0E8A\u0E8F\u0E92\u0E94\u0E9D\u0EB0\u0EFCrtialD;\u6202y;\u441Fr;\uC000\u{1D513}i;\u43A6;\u43A0usMinus;\u40B1\u0100ip\u0EA2\u0EADncareplan\xE5\u069Df;\u6119\u0200;eio\u0EB9\u0EBA\u0EE0\u0EE4\u6ABBcedes\u0200;EST\u0EC8\u0EC9\u0ECF\u0EDA\u627Aqual;\u6AAFlantEqual;\u627Cilde;\u627Eme;\u6033\u0100dp\u0EE9\u0EEEuct;\u620Fortion\u0100;a\u0225\u0EF9l;\u621D\u0100ci\u0F01\u0F06r;\uC000\u{1D4AB};\u43A8\u0200Ufos\u0F11\u0F16\u0F1B\u0F1FOT\u803B"\u4022r;\uC000\u{1D514}pf;\u611Acr;\uC000\u{1D4AC}\u0600BEacefhiorsu\u0F3E\u0F43\u0F47\u0F60\u0F73\u0FA7\u0FAA\u0FAD\u1096\u10A9\u10B4\u10BEarr;\u6910G\u803B\xAE\u40AE\u0180cnr\u0F4E\u0F53\u0F56ute;\u4154g;\u67EBr\u0100;t\u0F5C\u0F5D\u61A0l;\u6916\u0180aey\u0F67\u0F6C\u0F71ron;\u4158dil;\u4156;\u4420\u0100;v\u0F78\u0F79\u611Cerse\u0100EU\u0F82\u0F99\u0100lq\u0F87\u0F8Eement;\u620Builibrium;\u61CBpEquilibrium;\u696Fr\xBB\u0F79o;\u43A1ght\u0400ACDFTUVa\u0FC1\u0FEB\u0FF3\u1022\u1028\u105B\u1087\u03D8\u0100nr\u0FC6\u0FD2gleBracket;\u67E9row\u0180;BL\u0FDC\u0FDD\u0FE1\u6192ar;\u61E5eftArrow;\u61C4eiling;\u6309o\u01F5\u0FF9\0\u1005bleBracket;\u67E7n\u01D4\u100A\0\u1014eeVector;\u695Dector\u0100;B\u101D\u101E\u61C2ar;\u6955loor;\u630B\u0100er\u102D\u1043e\u0180;AV\u1035\u1036\u103C\u62A2rrow;\u61A6ector;\u695Biangle\u0180;BE\u1050\u1051\u1055\u62B3ar;\u69D0qual;\u62B5p\u0180DTV\u1063\u106E\u1078ownVector;\u694FeeVector;\u695Cector\u0100;B\u1082\u1083\u61BEar;\u6954ector\u0100;B\u1091\u1092\u61C0ar;\u6953\u0100pu\u109B\u109Ef;\u611DndImplies;\u6970ightarrow;\u61DB\u0100ch\u10B9\u10BCr;\u611B;\u61B1leDelayed;\u69F4\u0680HOacfhimoqstu\u10E4\u10F1\u10F7\u10FD\u1119\u111E\u1151\u1156\u1161\u1167\u11B5\u11BB\u11BF\u0100Cc\u10E9\u10EEHcy;\u4429y;\u4428FTcy;\u442Ccute;\u415A\u0280;aeiy\u1108\u1109\u110E\u1113\u1117\u6ABCron;\u4160dil;\u415Erc;\u415C;\u4421r;\uC000\u{1D516}ort\u0200DLRU\u112A\u1134\u113E\u1149ownArrow\xBB\u041EeftArrow\xBB\u089AightArrow\xBB\u0FDDpArrow;\u6191gma;\u43A3allCircle;\u6218pf;\uC000\u{1D54A}\u0272\u116D\0\0\u1170t;\u621Aare\u0200;ISU\u117B\u117C\u1189\u11AF\u65A1ntersection;\u6293u\u0100bp\u118F\u119Eset\u0100;E\u1197\u1198\u628Fqual;\u6291erset\u0100;E\u11A8\u11A9\u6290qual;\u6292nion;\u6294cr;\uC000\u{1D4AE}ar;\u62C6\u0200bcmp\u11C8\u11DB\u1209\u120B\u0100;s\u11CD\u11CE\u62D0et\u0100;E\u11CD\u11D5qual;\u6286\u0100ch\u11E0\u1205eeds\u0200;EST\u11ED\u11EE\u11F4\u11FF\u627Bqual;\u6AB0lantEqual;\u627Dilde;\u627FTh\xE1\u0F8C;\u6211\u0180;es\u1212\u1213\u1223\u62D1rset\u0100;E\u121C\u121D\u6283qual;\u6287et\xBB\u1213\u0580HRSacfhiors\u123E\u1244\u1249\u1255\u125E\u1271\u1276\u129F\u12C2\u12C8\u12D1ORN\u803B\xDE\u40DEADE;\u6122\u0100Hc\u124E\u1252cy;\u440By;\u4426\u0100bu\u125A\u125C;\u4009;\u43A4\u0180aey\u1265\u126A\u126Fron;\u4164dil;\u4162;\u4422r;\uC000\u{1D517}\u0100ei\u127B\u1289\u01F2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128E\u1298kSpace;\uC000\u205F\u200ASpace;\u6009lde\u0200;EFT\u12AB\u12AC\u12B2\u12BC\u623Cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uC000\u{1D54B}ipleDot;\u60DB\u0100ct\u12D6\u12DBr;\uC000\u{1D4AF}rok;\u4166\u0AE1\u12F7\u130E\u131A\u1326\0\u132C\u1331\0\0\0\0\0\u1338\u133D\u1377\u1385\0\u13FF\u1404\u140A\u1410\u0100cr\u12FB\u1301ute\u803B\xDA\u40DAr\u0100;o\u1307\u1308\u619Fcir;\u6949r\u01E3\u1313\0\u1316y;\u440Eve;\u416C\u0100iy\u131E\u1323rc\u803B\xDB\u40DB;\u4423blac;\u4170r;\uC000\u{1D518}rave\u803B\xD9\u40D9acr;\u416A\u0100di\u1341\u1369er\u0100BP\u1348\u135D\u0100ar\u134D\u1350r;\u405Fac\u0100ek\u1357\u1359;\u63DFet;\u63B5arenthesis;\u63DDon\u0100;P\u1370\u1371\u62C3lus;\u628E\u0100gp\u137B\u137Fon;\u4172f;\uC000\u{1D54C}\u0400ADETadps\u1395\u13AE\u13B8\u13C4\u03E8\u13D2\u13D7\u13F3rrow\u0180;BD\u1150\u13A0\u13A4ar;\u6912ownArrow;\u61C5ownArrow;\u6195quilibrium;\u696Eee\u0100;A\u13CB\u13CC\u62A5rrow;\u61A5own\xE1\u03F3er\u0100LR\u13DE\u13E8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13F9\u13FA\u43D2on;\u43A5ing;\u416Ecr;\uC000\u{1D4B0}ilde;\u4168ml\u803B\xDC\u40DC\u0480Dbcdefosv\u1427\u142C\u1430\u1433\u143E\u1485\u148A\u1490\u1496ash;\u62ABar;\u6AEBy;\u4412ash\u0100;l\u143B\u143C\u62A9;\u6AE6\u0100er\u1443\u1445;\u62C1\u0180bty\u144C\u1450\u147Aar;\u6016\u0100;i\u144F\u1455cal\u0200BLST\u1461\u1465\u146A\u1474ar;\u6223ine;\u407Ceparator;\u6758ilde;\u6240ThinSpace;\u600Ar;\uC000\u{1D519}pf;\uC000\u{1D54D}cr;\uC000\u{1D4B1}dash;\u62AA\u0280cefos\u14A7\u14AC\u14B1\u14B6\u14BCirc;\u4174dge;\u62C0r;\uC000\u{1D51A}pf;\uC000\u{1D54E}cr;\uC000\u{1D4B2}\u0200fios\u14CB\u14D0\u14D2\u14D8r;\uC000\u{1D51B};\u439Epf;\uC000\u{1D54F}cr;\uC000\u{1D4B3}\u0480AIUacfosu\u14F1\u14F5\u14F9\u14FD\u1504\u150F\u1514\u151A\u1520cy;\u442Fcy;\u4407cy;\u442Ecute\u803B\xDD\u40DD\u0100iy\u1509\u150Drc;\u4176;\u442Br;\uC000\u{1D51C}pf;\uC000\u{1D550}cr;\uC000\u{1D4B4}ml;\u4178\u0400Hacdefos\u1535\u1539\u153F\u154B\u154F\u155D\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417D;\u4417ot;\u417B\u01F2\u1554\0\u155BoWidt\xE8\u0AD9a;\u4396r;\u6128pf;\u6124cr;\uC000\u{1D4B5}\u0BE1\u1583\u158A\u1590\0\u15B0\u15B6\u15BF\0\0\0\0\u15C6\u15DB\u15EB\u165F\u166D\0\u1695\u169B\u16B2\u16B9\0\u16BEcute\u803B\xE1\u40E1reve;\u4103\u0300;Ediuy\u159C\u159D\u15A1\u15A3\u15A8\u15AD\u623E;\uC000\u223E\u0333;\u623Frc\u803B\xE2\u40E2te\u80BB\xB4\u0306;\u4430lig\u803B\xE6\u40E6\u0100;r\xB2\u15BA;\uC000\u{1D51E}rave\u803B\xE0\u40E0\u0100ep\u15CA\u15D6\u0100fp\u15CF\u15D4sym;\u6135\xE8\u15D3ha;\u43B1\u0100ap\u15DFc\u0100cl\u15E4\u15E7r;\u4101g;\u6A3F\u0264\u15F0\0\0\u160A\u0280;adsv\u15FA\u15FB\u15FF\u1601\u1607\u6227nd;\u6A55;\u6A5Clope;\u6A58;\u6A5A\u0380;elmrsz\u1618\u1619\u161B\u161E\u163F\u164F\u1659\u6220;\u69A4e\xBB\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163A\u163C\u163E;\u69A8;\u69A9;\u69AA;\u69AB;\u69AC;\u69AD;\u69AE;\u69AFt\u0100;v\u1645\u1646\u621Fb\u0100;d\u164C\u164D\u62BE;\u699D\u0100pt\u1654\u1657h;\u6222\xBB\xB9arr;\u637C\u0100gp\u1663\u1667on;\u4105f;\uC000\u{1D552}\u0380;Eaeiop\u12C1\u167B\u167D\u1682\u1684\u1687\u168A;\u6A70cir;\u6A6F;\u624Ad;\u624Bs;\u4027rox\u0100;e\u12C1\u1692\xF1\u1683ing\u803B\xE5\u40E5\u0180cty\u16A1\u16A6\u16A8r;\uC000\u{1D4B6};\u402Amp\u0100;e\u12C1\u16AF\xF1\u0288ilde\u803B\xE3\u40E3ml\u803B\xE4\u40E4\u0100ci\u16C2\u16C8onin\xF4\u0272nt;\u6A11\u0800Nabcdefiklnoprsu\u16ED\u16F1\u1730\u173C\u1743\u1748\u1778\u177D\u17E0\u17E6\u1839\u1850\u170D\u193D\u1948\u1970ot;\u6AED\u0100cr\u16F6\u171Ek\u0200ceps\u1700\u1705\u170D\u1713ong;\u624Cpsilon;\u43F6rime;\u6035im\u0100;e\u171A\u171B\u623Dq;\u62CD\u0176\u1722\u1726ee;\u62BDed\u0100;g\u172C\u172D\u6305e\xBB\u172Drk\u0100;t\u135C\u1737brk;\u63B6\u0100oy\u1701\u1741;\u4431quo;\u601E\u0280cmprt\u1753\u175B\u1761\u1764\u1768aus\u0100;e\u010A\u0109ptyv;\u69B0s\xE9\u170Cno\xF5\u0113\u0180ahw\u176F\u1771\u1773;\u43B2;\u6136een;\u626Cr;\uC000\u{1D51F}g\u0380costuvw\u178D\u179D\u17B3\u17C1\u17D5\u17DB\u17DE\u0180aiu\u1794\u1796\u179A\xF0\u0760rc;\u65EFp\xBB\u1371\u0180dpt\u17A4\u17A8\u17ADot;\u6A00lus;\u6A01imes;\u6A02\u0271\u17B9\0\0\u17BEcup;\u6A06ar;\u6605riangle\u0100du\u17CD\u17D2own;\u65BDp;\u65B3plus;\u6A04e\xE5\u1444\xE5\u14ADarow;\u690D\u0180ako\u17ED\u1826\u1835\u0100cn\u17F2\u1823k\u0180lst\u17FA\u05AB\u1802ozenge;\u69EBriangle\u0200;dlr\u1812\u1813\u1818\u181D\u65B4own;\u65BEeft;\u65C2ight;\u65B8k;\u6423\u01B1\u182B\0\u1833\u01B2\u182F\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183E\u184D\u0100;q\u1843\u1846\uC000=\u20E5uiv;\uC000\u2261\u20E5t;\u6310\u0200ptwx\u1859\u185E\u1867\u186Cf;\uC000\u{1D553}\u0100;t\u13CB\u1863om\xBB\u13CCtie;\u62C8\u0600DHUVbdhmptuv\u1885\u1896\u18AA\u18BB\u18D7\u18DB\u18EC\u18FF\u1905\u190A\u1910\u1921\u0200LRlr\u188E\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18A1\u18A2\u18A4\u18A6\u18A8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18B3\u18B5\u18B7\u18B9;\u655D;\u655A;\u655C;\u6559\u0380;HLRhlr\u18CA\u18CB\u18CD\u18CF\u18D1\u18D3\u18D5\u6551;\u656C;\u6563;\u6560;\u656B;\u6562;\u655Fox;\u69C9\u0200LRlr\u18E4\u18E6\u18E8\u18EA;\u6555;\u6552;\u6510;\u650C\u0280;DUdu\u06BD\u18F7\u18F9\u18FB\u18FD;\u6565;\u6568;\u652C;\u6534inus;\u629Flus;\u629Eimes;\u62A0\u0200LRlr\u1919\u191B\u191D\u191F;\u655B;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193B\u6502;\u656A;\u6561;\u655E;\u653C;\u6524;\u651C\u0100ev\u0123\u1942bar\u803B\xA6\u40A6\u0200ceio\u1951\u1956\u195A\u1960r;\uC000\u{1D4B7}mi;\u604Fm\u0100;e\u171A\u171Cl\u0180;bh\u1968\u1969\u196B\u405C;\u69C5sub;\u67C8\u016C\u1974\u197El\u0100;e\u1979\u197A\u6022t\xBB\u197Ap\u0180;Ee\u012F\u1985\u1987;\u6AAE\u0100;q\u06DC\u06DB\u0CE1\u19A7\0\u19E8\u1A11\u1A15\u1A32\0\u1A37\u1A50\0\0\u1AB4\0\0\u1AC1\0\0\u1B21\u1B2E\u1B4D\u1B52\0\u1BFD\0\u1C0C\u0180cpr\u19AD\u19B2\u19DDute;\u4107\u0300;abcds\u19BF\u19C0\u19C4\u19CA\u19D5\u19D9\u6229nd;\u6A44rcup;\u6A49\u0100au\u19CF\u19D2p;\u6A4Bp;\u6A47ot;\u6A40;\uC000\u2229\uFE00\u0100eo\u19E2\u19E5t;\u6041\xEE\u0693\u0200aeiu\u19F0\u19FB\u1A01\u1A05\u01F0\u19F5\0\u19F8s;\u6A4Don;\u410Ddil\u803B\xE7\u40E7rc;\u4109ps\u0100;s\u1A0C\u1A0D\u6A4Cm;\u6A50ot;\u410B\u0180dmn\u1A1B\u1A20\u1A26il\u80BB\xB8\u01ADptyv;\u69B2t\u8100\xA2;e\u1A2D\u1A2E\u40A2r\xE4\u01B2r;\uC000\u{1D520}\u0180cei\u1A3D\u1A40\u1A4Dy;\u4447ck\u0100;m\u1A47\u1A48\u6713ark\xBB\u1A48;\u43C7r\u0380;Ecefms\u1A5F\u1A60\u1A62\u1A6B\u1AA4\u1AAA\u1AAE\u65CB;\u69C3\u0180;el\u1A69\u1A6A\u1A6D\u42C6q;\u6257e\u0261\u1A74\0\0\u1A88rrow\u0100lr\u1A7C\u1A81eft;\u61BAight;\u61BB\u0280RSacd\u1A92\u1A94\u1A96\u1A9A\u1A9F\xBB\u0F47;\u64C8st;\u629Birc;\u629Aash;\u629Dnint;\u6A10id;\u6AEFcir;\u69C2ubs\u0100;u\u1ABB\u1ABC\u6663it\xBB\u1ABC\u02EC\u1AC7\u1AD4\u1AFA\0\u1B0Aon\u0100;e\u1ACD\u1ACE\u403A\u0100;q\xC7\xC6\u026D\u1AD9\0\0\u1AE2a\u0100;t\u1ADE\u1ADF\u402C;\u4040\u0180;fl\u1AE8\u1AE9\u1AEB\u6201\xEE\u1160e\u0100mx\u1AF1\u1AF6ent\xBB\u1AE9e\xF3\u024D\u01E7\u1AFE\0\u1B07\u0100;d\u12BB\u1B02ot;\u6A6Dn\xF4\u0246\u0180fry\u1B10\u1B14\u1B17;\uC000\u{1D554}o\xE4\u0254\u8100\xA9;s\u0155\u1B1Dr;\u6117\u0100ao\u1B25\u1B29rr;\u61B5ss;\u6717\u0100cu\u1B32\u1B37r;\uC000\u{1D4B8}\u0100bp\u1B3C\u1B44\u0100;e\u1B41\u1B42\u6ACF;\u6AD1\u0100;e\u1B49\u1B4A\u6AD0;\u6AD2dot;\u62EF\u0380delprvw\u1B60\u1B6C\u1B77\u1B82\u1BAC\u1BD4\u1BF9arr\u0100lr\u1B68\u1B6A;\u6938;\u6935\u0270\u1B72\0\0\u1B75r;\u62DEc;\u62DFarr\u0100;p\u1B7F\u1B80\u61B6;\u693D\u0300;bcdos\u1B8F\u1B90\u1B96\u1BA1\u1BA5\u1BA8\u622Arcap;\u6A48\u0100au\u1B9B\u1B9Ep;\u6A46p;\u6A4Aot;\u628Dr;\u6A45;\uC000\u222A\uFE00\u0200alrv\u1BB5\u1BBF\u1BDE\u1BE3rr\u0100;m\u1BBC\u1BBD\u61B7;\u693Cy\u0180evw\u1BC7\u1BD4\u1BD8q\u0270\u1BCE\0\0\u1BD2re\xE3\u1B73u\xE3\u1B75ee;\u62CEedge;\u62CFen\u803B\xA4\u40A4earrow\u0100lr\u1BEE\u1BF3eft\xBB\u1B80ight\xBB\u1BBDe\xE4\u1BDD\u0100ci\u1C01\u1C07onin\xF4\u01F7nt;\u6231lcty;\u632D\u0980AHabcdefhijlorstuwz\u1C38\u1C3B\u1C3F\u1C5D\u1C69\u1C75\u1C8A\u1C9E\u1CAC\u1CB7\u1CFB\u1CFF\u1D0D\u1D7B\u1D91\u1DAB\u1DBB\u1DC6\u1DCDr\xF2\u0381ar;\u6965\u0200glrs\u1C48\u1C4D\u1C52\u1C54ger;\u6020eth;\u6138\xF2\u1133h\u0100;v\u1C5A\u1C5B\u6010\xBB\u090A\u016B\u1C61\u1C67arow;\u690Fa\xE3\u0315\u0100ay\u1C6E\u1C73ron;\u410F;\u4434\u0180;ao\u0332\u1C7C\u1C84\u0100gr\u02BF\u1C81r;\u61CAtseq;\u6A77\u0180glm\u1C91\u1C94\u1C98\u803B\xB0\u40B0ta;\u43B4ptyv;\u69B1\u0100ir\u1CA3\u1CA8sht;\u697F;\uC000\u{1D521}ar\u0100lr\u1CB3\u1CB5\xBB\u08DC\xBB\u101E\u0280aegsv\u1CC2\u0378\u1CD6\u1CDC\u1CE0m\u0180;os\u0326\u1CCA\u1CD4nd\u0100;s\u0326\u1CD1uit;\u6666amma;\u43DDin;\u62F2\u0180;io\u1CE7\u1CE8\u1CF8\u40F7de\u8100\xF7;o\u1CE7\u1CF0ntimes;\u62C7n\xF8\u1CF7cy;\u4452c\u026F\u1D06\0\0\u1D0Arn;\u631Eop;\u630D\u0280lptuw\u1D18\u1D1D\u1D22\u1D49\u1D55lar;\u4024f;\uC000\u{1D555}\u0280;emps\u030B\u1D2D\u1D37\u1D3D\u1D42q\u0100;d\u0352\u1D33ot;\u6251inus;\u6238lus;\u6214quare;\u62A1blebarwedg\xE5\xFAn\u0180adh\u112E\u1D5D\u1D67ownarrow\xF3\u1C83arpoon\u0100lr\u1D72\u1D76ef\xF4\u1CB4igh\xF4\u1CB6\u0162\u1D7F\u1D85karo\xF7\u0F42\u026F\u1D8A\0\0\u1D8Ern;\u631Fop;\u630C\u0180cot\u1D98\u1DA3\u1DA6\u0100ry\u1D9D\u1DA1;\uC000\u{1D4B9};\u4455l;\u69F6rok;\u4111\u0100dr\u1DB0\u1DB4ot;\u62F1i\u0100;f\u1DBA\u1816\u65BF\u0100ah\u1DC0\u1DC3r\xF2\u0429a\xF2\u0FA6angle;\u69A6\u0100ci\u1DD2\u1DD5y;\u445Fgrarr;\u67FF\u0900Dacdefglmnopqrstux\u1E01\u1E09\u1E19\u1E38\u0578\u1E3C\u1E49\u1E61\u1E7E\u1EA5\u1EAF\u1EBD\u1EE1\u1F2A\u1F37\u1F44\u1F4E\u1F5A\u0100Do\u1E06\u1D34o\xF4\u1C89\u0100cs\u1E0E\u1E14ute\u803B\xE9\u40E9ter;\u6A6E\u0200aioy\u1E22\u1E27\u1E31\u1E36ron;\u411Br\u0100;c\u1E2D\u1E2E\u6256\u803B\xEA\u40EAlon;\u6255;\u444Dot;\u4117\u0100Dr\u1E41\u1E45ot;\u6252;\uC000\u{1D522}\u0180;rs\u1E50\u1E51\u1E57\u6A9Aave\u803B\xE8\u40E8\u0100;d\u1E5C\u1E5D\u6A96ot;\u6A98\u0200;ils\u1E6A\u1E6B\u1E72\u1E74\u6A99nters;\u63E7;\u6113\u0100;d\u1E79\u1E7A\u6A95ot;\u6A97\u0180aps\u1E85\u1E89\u1E97cr;\u4113ty\u0180;sv\u1E92\u1E93\u1E95\u6205et\xBB\u1E93p\u01001;\u1E9D\u1EA4\u0133\u1EA1\u1EA3;\u6004;\u6005\u6003\u0100gs\u1EAA\u1EAC;\u414Bp;\u6002\u0100gp\u1EB4\u1EB8on;\u4119f;\uC000\u{1D556}\u0180als\u1EC4\u1ECE\u1ED2r\u0100;s\u1ECA\u1ECB\u62D5l;\u69E3us;\u6A71i\u0180;lv\u1EDA\u1EDB\u1EDF\u43B5on\xBB\u1EDB;\u43F5\u0200csuv\u1EEA\u1EF3\u1F0B\u1F23\u0100io\u1EEF\u1E31rc\xBB\u1E2E\u0269\u1EF9\0\0\u1EFB\xED\u0548ant\u0100gl\u1F02\u1F06tr\xBB\u1E5Dess\xBB\u1E7A\u0180aei\u1F12\u1F16\u1F1Als;\u403Dst;\u625Fv\u0100;D\u0235\u1F20D;\u6A78parsl;\u69E5\u0100Da\u1F2F\u1F33ot;\u6253rr;\u6971\u0180cdi\u1F3E\u1F41\u1EF8r;\u612Fo\xF4\u0352\u0100ah\u1F49\u1F4B;\u43B7\u803B\xF0\u40F0\u0100mr\u1F53\u1F57l\u803B\xEB\u40EBo;\u60AC\u0180cip\u1F61\u1F64\u1F67l;\u4021s\xF4\u056E\u0100eo\u1F6C\u1F74ctatio\xEE\u0559nential\xE5\u0579\u09E1\u1F92\0\u1F9E\0\u1FA1\u1FA7\0\0\u1FC6\u1FCC\0\u1FD3\0\u1FE6\u1FEA\u2000\0\u2008\u205Allingdotse\xF1\u1E44y;\u4444male;\u6640\u0180ilr\u1FAD\u1FB3\u1FC1lig;\u8000\uFB03\u0269\u1FB9\0\0\u1FBDg;\u8000\uFB00ig;\u8000\uFB04;\uC000\u{1D523}lig;\u8000\uFB01lig;\uC000fj\u0180alt\u1FD9\u1FDC\u1FE1t;\u666Dig;\u8000\uFB02ns;\u65B1of;\u4192\u01F0\u1FEE\0\u1FF3f;\uC000\u{1D557}\u0100ak\u05BF\u1FF7\u0100;v\u1FFC\u1FFD\u62D4;\u6AD9artint;\u6A0D\u0100ao\u200C\u2055\u0100cs\u2011\u2052\u03B1\u201A\u2030\u2038\u2045\u2048\0\u2050\u03B2\u2022\u2025\u2027\u202A\u202C\0\u202E\u803B\xBD\u40BD;\u6153\u803B\xBC\u40BC;\u6155;\u6159;\u615B\u01B3\u2034\0\u2036;\u6154;\u6156\u02B4\u203E\u2041\0\0\u2043\u803B\xBE\u40BE;\u6157;\u615C5;\u6158\u01B6\u204C\0\u204E;\u615A;\u615D8;\u615El;\u6044wn;\u6322cr;\uC000\u{1D4BB}\u0880Eabcdefgijlnorstv\u2082\u2089\u209F\u20A5\u20B0\u20B4\u20F0\u20F5\u20FA\u20FF\u2103\u2112\u2138\u0317\u213E\u2152\u219E\u0100;l\u064D\u2087;\u6A8C\u0180cmp\u2090\u2095\u209Dute;\u41F5ma\u0100;d\u209C\u1CDA\u43B3;\u6A86reve;\u411F\u0100iy\u20AA\u20AErc;\u411D;\u4433ot;\u4121\u0200;lqs\u063E\u0642\u20BD\u20C9\u0180;qs\u063E\u064C\u20C4lan\xF4\u0665\u0200;cdl\u0665\u20D2\u20D5\u20E5c;\u6AA9ot\u0100;o\u20DC\u20DD\u6A80\u0100;l\u20E2\u20E3\u6A82;\u6A84\u0100;e\u20EA\u20ED\uC000\u22DB\uFE00s;\u6A94r;\uC000\u{1D524}\u0100;g\u0673\u061Bmel;\u6137cy;\u4453\u0200;Eaj\u065A\u210C\u210E\u2110;\u6A92;\u6AA5;\u6AA4\u0200Eaes\u211B\u211D\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6A8Arox\xBB\u2124\u0100;q\u212E\u212F\u6A88\u0100;q\u212E\u211Bim;\u62E7pf;\uC000\u{1D558}\u0100ci\u2143\u2146r;\u610Am\u0180;el\u066B\u214E\u2150;\u6A8E;\u6A90\u8300>;cdlqr\u05EE\u2160\u216A\u216E\u2173\u2179\u0100ci\u2165\u2167;\u6AA7r;\u6A7Aot;\u62D7Par;\u6995uest;\u6A7C\u0280adels\u2184\u216A\u2190\u0656\u219B\u01F0\u2189\0\u218Epro\xF8\u209Er;\u6978q\u0100lq\u063F\u2196les\xF3\u2088i\xED\u066B\u0100en\u21A3\u21ADrtneqq;\uC000\u2269\uFE00\xC5\u21AA\u0500Aabcefkosy\u21C4\u21C7\u21F1\u21F5\u21FA\u2218\u221D\u222F\u2268\u227Dr\xF2\u03A0\u0200ilmr\u21D0\u21D4\u21D7\u21DBrs\xF0\u1484f\xBB\u2024il\xF4\u06A9\u0100dr\u21E0\u21E4cy;\u444A\u0180;cw\u08F4\u21EB\u21EFir;\u6948;\u61ADar;\u610Firc;\u4125\u0180alr\u2201\u220E\u2213rts\u0100;u\u2209\u220A\u6665it\xBB\u220Alip;\u6026con;\u62B9r;\uC000\u{1D525}s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223A\u223E\u2243\u225E\u2263rr;\u61FFtht;\u623Bk\u0100lr\u2249\u2253eftarrow;\u61A9ightarrow;\u61AAf;\uC000\u{1D559}bar;\u6015\u0180clt\u226F\u2274\u2278r;\uC000\u{1D4BD}as\xE8\u21F4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xBB\u1C5B\u0AE1\u22A3\0\u22AA\0\u22B8\u22C5\u22CE\0\u22D5\u22F3\0\0\u22F8\u2322\u2367\u2362\u237F\0\u2386\u23AA\u23B4cute\u803B\xED\u40ED\u0180;iy\u0771\u22B0\u22B5rc\u803B\xEE\u40EE;\u4438\u0100cx\u22BC\u22BFy;\u4435cl\u803B\xA1\u40A1\u0100fr\u039F\u22C9;\uC000\u{1D526}rave\u803B\xEC\u40EC\u0200;ino\u073E\u22DD\u22E9\u22EE\u0100in\u22E2\u22E6nt;\u6A0Ct;\u622Dfin;\u69DCta;\u6129lig;\u4133\u0180aop\u22FE\u231A\u231D\u0180cgt\u2305\u2308\u2317r;\u412B\u0180elp\u071F\u230F\u2313in\xE5\u078Ear\xF4\u0720h;\u4131f;\u62B7ed;\u41B5\u0280;cfot\u04F4\u232C\u2331\u233D\u2341are;\u6105in\u0100;t\u2338\u2339\u621Eie;\u69DDdo\xF4\u2319\u0280;celp\u0757\u234C\u2350\u235B\u2361al;\u62BA\u0100gr\u2355\u2359er\xF3\u1563\xE3\u234Darhk;\u6A17rod;\u6A3C\u0200cgpt\u236F\u2372\u2376\u237By;\u4451on;\u412Ff;\uC000\u{1D55A}a;\u43B9uest\u803B\xBF\u40BF\u0100ci\u238A\u238Fr;\uC000\u{1D4BE}n\u0280;Edsv\u04F4\u239B\u239D\u23A1\u04F3;\u62F9ot;\u62F5\u0100;v\u23A6\u23A7\u62F4;\u62F3\u0100;i\u0777\u23AElde;\u4129\u01EB\u23B8\0\u23BCcy;\u4456l\u803B\xEF\u40EF\u0300cfmosu\u23CC\u23D7\u23DC\u23E1\u23E7\u23F5\u0100iy\u23D1\u23D5rc;\u4135;\u4439r;\uC000\u{1D527}ath;\u4237pf;\uC000\u{1D55B}\u01E3\u23EC\0\u23F1r;\uC000\u{1D4BF}rcy;\u4458kcy;\u4454\u0400acfghjos\u240B\u2416\u2422\u2427\u242D\u2431\u2435\u243Bppa\u0100;v\u2413\u2414\u43BA;\u43F0\u0100ey\u241B\u2420dil;\u4137;\u443Ar;\uC000\u{1D528}reen;\u4138cy;\u4445cy;\u445Cpf;\uC000\u{1D55C}cr;\uC000\u{1D4C0}\u0B80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248D\u2491\u250E\u253D\u255A\u2580\u264E\u265E\u2665\u2679\u267D\u269A\u26B2\u26D8\u275D\u2768\u278B\u27C0\u2801\u2812\u0180art\u2477\u247A\u247Cr\xF2\u09C6\xF2\u0395ail;\u691Barr;\u690E\u0100;g\u0994\u248B;\u6A8Bar;\u6962\u0963\u24A5\0\u24AA\0\u24B1\0\0\0\0\0\u24B5\u24BA\0\u24C6\u24C8\u24CD\0\u24F9ute;\u413Amptyv;\u69B4ra\xEE\u084Cbda;\u43BBg\u0180;dl\u088E\u24C1\u24C3;\u6991\xE5\u088E;\u6A85uo\u803B\xAB\u40ABr\u0400;bfhlpst\u0899\u24DE\u24E6\u24E9\u24EB\u24EE\u24F1\u24F5\u0100;f\u089D\u24E3s;\u691Fs;\u691D\xEB\u2252p;\u61ABl;\u6939im;\u6973l;\u61A2\u0180;ae\u24FF\u2500\u2504\u6AABil;\u6919\u0100;s\u2509\u250A\u6AAD;\uC000\u2AAD\uFE00\u0180abr\u2515\u2519\u251Drr;\u690Crk;\u6772\u0100ak\u2522\u252Cc\u0100ek\u2528\u252A;\u407B;\u405B\u0100es\u2531\u2533;\u698Bl\u0100du\u2539\u253B;\u698F;\u698D\u0200aeuy\u2546\u254B\u2556\u2558ron;\u413E\u0100di\u2550\u2554il;\u413C\xEC\u08B0\xE2\u2529;\u443B\u0200cqrs\u2563\u2566\u256D\u257Da;\u6936uo\u0100;r\u0E19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694Bh;\u61B2\u0280;fgqs\u258B\u258C\u0989\u25F3\u25FF\u6264t\u0280ahlrt\u2598\u25A4\u25B7\u25C2\u25E8rrow\u0100;t\u0899\u25A1a\xE9\u24F6arpoon\u0100du\u25AF\u25B4own\xBB\u045Ap\xBB\u0966eftarrows;\u61C7ight\u0180ahs\u25CD\u25D6\u25DErrow\u0100;s\u08F4\u08A7arpoon\xF3\u0F98quigarro\xF7\u21F0hreetimes;\u62CB\u0180;qs\u258B\u0993\u25FAlan\xF4\u09AC\u0280;cdgs\u09AC\u260A\u260D\u261D\u2628c;\u6AA8ot\u0100;o\u2614\u2615\u6A7F\u0100;r\u261A\u261B\u6A81;\u6A83\u0100;e\u2622\u2625\uC000\u22DA\uFE00s;\u6A93\u0280adegs\u2633\u2639\u263D\u2649\u264Bppro\xF8\u24C6ot;\u62D6q\u0100gq\u2643\u2645\xF4\u0989gt\xF2\u248C\xF4\u099Bi\xED\u09B2\u0180ilr\u2655\u08E1\u265Asht;\u697C;\uC000\u{1D529}\u0100;E\u099C\u2663;\u6A91\u0161\u2669\u2676r\u0100du\u25B2\u266E\u0100;l\u0965\u2673;\u696Alk;\u6584cy;\u4459\u0280;acht\u0A48\u2688\u268B\u2691\u2696r\xF2\u25C1orne\xF2\u1D08ard;\u696Bri;\u65FA\u0100io\u269F\u26A4dot;\u4140ust\u0100;a\u26AC\u26AD\u63B0che\xBB\u26AD\u0200Eaes\u26BB\u26BD\u26C9\u26D4;\u6268p\u0100;p\u26C3\u26C4\u6A89rox\xBB\u26C4\u0100;q\u26CE\u26CF\u6A87\u0100;q\u26CE\u26BBim;\u62E6\u0400abnoptwz\u26E9\u26F4\u26F7\u271A\u272F\u2741\u2747\u2750\u0100nr\u26EE\u26F1g;\u67ECr;\u61FDr\xEB\u08C1g\u0180lmr\u26FF\u270D\u2714eft\u0100ar\u09E6\u2707ight\xE1\u09F2apsto;\u67FCight\xE1\u09FDparrow\u0100lr\u2725\u2729ef\xF4\u24EDight;\u61AC\u0180afl\u2736\u2739\u273Dr;\u6985;\uC000\u{1D55D}us;\u6A2Dimes;\u6A34\u0161\u274B\u274Fst;\u6217\xE1\u134E\u0180;ef\u2757\u2758\u1800\u65CAnge\xBB\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277C\u2785\u2787r\xF2\u08A8orne\xF2\u1D8Car\u0100;d\u0F98\u2783;\u696D;\u600Eri;\u62BF\u0300achiqt\u2798\u279D\u0A40\u27A2\u27AE\u27BBquo;\u6039r;\uC000\u{1D4C1}m\u0180;eg\u09B2\u27AA\u27AC;\u6A8D;\u6A8F\u0100bu\u252A\u27B3o\u0100;r\u0E1F\u27B9;\u601Arok;\u4142\u8400<;cdhilqr\u082B\u27D2\u2639\u27DC\u27E0\u27E5\u27EA\u27F0\u0100ci\u27D7\u27D9;\u6AA6r;\u6A79re\xE5\u25F2mes;\u62C9arr;\u6976uest;\u6A7B\u0100Pi\u27F5\u27F9ar;\u6996\u0180;ef\u2800\u092D\u181B\u65C3r\u0100du\u2807\u280Dshar;\u694Ahar;\u6966\u0100en\u2817\u2821rtneqq;\uC000\u2268\uFE00\xC5\u281E\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288E\u2893\u28A0\u28A5\u28A8\u28DA\u28E2\u28E4\u0A83\u28F3\u2902Dot;\u623A\u0200clpr\u284E\u2852\u2863\u287Dr\u803B\xAF\u40AF\u0100et\u2857\u2859;\u6642\u0100;e\u285E\u285F\u6720se\xBB\u285F\u0100;s\u103B\u2868to\u0200;dlu\u103B\u2873\u2877\u287Bow\xEE\u048Cef\xF4\u090F\xF0\u13D1ker;\u65AE\u0100oy\u2887\u288Cmma;\u6A29;\u443Cash;\u6014asuredangle\xBB\u1626r;\uC000\u{1D52A}o;\u6127\u0180cdn\u28AF\u28B4\u28C9ro\u803B\xB5\u40B5\u0200;acd\u1464\u28BD\u28C0\u28C4s\xF4\u16A7ir;\u6AF0ot\u80BB\xB7\u01B5us\u0180;bd\u28D2\u1903\u28D3\u6212\u0100;u\u1D3C\u28D8;\u6A2A\u0163\u28DE\u28E1p;\u6ADB\xF2\u2212\xF0\u0A81\u0100dp\u28E9\u28EEels;\u62A7f;\uC000\u{1D55E}\u0100ct\u28F8\u28FDr;\uC000\u{1D4C2}pos\xBB\u159D\u0180;lm\u2909\u290A\u290D\u43BCtimap;\u62B8\u0C00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297E\u2989\u2998\u29DA\u29E9\u2A15\u2A1A\u2A58\u2A5D\u2A83\u2A95\u2AA4\u2AA8\u2B04\u2B07\u2B44\u2B7F\u2BAE\u2C34\u2C67\u2C7C\u2CE9\u0100gt\u2947\u294B;\uC000\u22D9\u0338\u0100;v\u2950\u0BCF\uC000\u226B\u20D2\u0180elt\u295A\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61CDightarrow;\u61CE;\uC000\u22D8\u0338\u0100;v\u297B\u0C47\uC000\u226A\u20D2ightarrow;\u61CF\u0100Dd\u298E\u2993ash;\u62AFash;\u62AE\u0280bcnpt\u29A3\u29A7\u29AC\u29B1\u29CCla\xBB\u02DEute;\u4144g;\uC000\u2220\u20D2\u0280;Eiop\u0D84\u29BC\u29C0\u29C5\u29C8;\uC000\u2A70\u0338d;\uC000\u224B\u0338s;\u4149ro\xF8\u0D84ur\u0100;a\u29D3\u29D4\u666El\u0100;s\u29D3\u0B38\u01F3\u29DF\0\u29E3p\u80BB\xA0\u0B37mp\u0100;e\u0BF9\u0C00\u0280aeouy\u29F4\u29FE\u2A03\u2A10\u2A13\u01F0\u29F9\0\u29FB;\u6A43on;\u4148dil;\u4146ng\u0100;d\u0D7E\u2A0Aot;\uC000\u2A6D\u0338p;\u6A42;\u443Dash;\u6013\u0380;Aadqsx\u0B92\u2A29\u2A2D\u2A3B\u2A41\u2A45\u2A50rr;\u61D7r\u0100hr\u2A33\u2A36k;\u6924\u0100;o\u13F2\u13F0ot;\uC000\u2250\u0338ui\xF6\u0B63\u0100ei\u2A4A\u2A4Ear;\u6928\xED\u0B98ist\u0100;s\u0BA0\u0B9Fr;\uC000\u{1D52B}\u0200Eest\u0BC5\u2A66\u2A79\u2A7C\u0180;qs\u0BBC\u2A6D\u0BE1\u0180;qs\u0BBC\u0BC5\u2A74lan\xF4\u0BE2i\xED\u0BEA\u0100;r\u0BB6\u2A81\xBB\u0BB7\u0180Aap\u2A8A\u2A8D\u2A91r\xF2\u2971rr;\u61AEar;\u6AF2\u0180;sv\u0F8D\u2A9C\u0F8C\u0100;d\u2AA1\u2AA2\u62FC;\u62FAcy;\u445A\u0380AEadest\u2AB7\u2ABA\u2ABE\u2AC2\u2AC5\u2AF6\u2AF9r\xF2\u2966;\uC000\u2266\u0338rr;\u619Ar;\u6025\u0200;fqs\u0C3B\u2ACE\u2AE3\u2AEFt\u0100ar\u2AD4\u2AD9rro\xF7\u2AC1ightarro\xF7\u2A90\u0180;qs\u0C3B\u2ABA\u2AEAlan\xF4\u0C55\u0100;s\u0C55\u2AF4\xBB\u0C36i\xED\u0C5D\u0100;r\u0C35\u2AFEi\u0100;e\u0C1A\u0C25i\xE4\u0D90\u0100pt\u2B0C\u2B11f;\uC000\u{1D55F}\u8180\xAC;in\u2B19\u2B1A\u2B36\u40ACn\u0200;Edv\u0B89\u2B24\u2B28\u2B2E;\uC000\u22F9\u0338ot;\uC000\u22F5\u0338\u01E1\u0B89\u2B33\u2B35;\u62F7;\u62F6i\u0100;v\u0CB8\u2B3C\u01E1\u0CB8\u2B41\u2B43;\u62FE;\u62FD\u0180aor\u2B4B\u2B63\u2B69r\u0200;ast\u0B7B\u2B55\u2B5A\u2B5Flle\xEC\u0B7Bl;\uC000\u2AFD\u20E5;\uC000\u2202\u0338lint;\u6A14\u0180;ce\u0C92\u2B70\u2B73u\xE5\u0CA5\u0100;c\u0C98\u2B78\u0100;e\u0C92\u2B7D\xF1\u0C98\u0200Aait\u2B88\u2B8B\u2B9D\u2BA7r\xF2\u2988rr\u0180;cw\u2B94\u2B95\u2B99\u619B;\uC000\u2933\u0338;\uC000\u219D\u0338ghtarrow\xBB\u2B95ri\u0100;e\u0CCB\u0CD6\u0380chimpqu\u2BBD\u2BCD\u2BD9\u2B04\u0B78\u2BE4\u2BEF\u0200;cer\u0D32\u2BC6\u0D37\u2BC9u\xE5\u0D45;\uC000\u{1D4C3}ort\u026D\u2B05\0\0\u2BD6ar\xE1\u2B56m\u0100;e\u0D6E\u2BDF\u0100;q\u0D74\u0D73su\u0100bp\u2BEB\u2BED\xE5\u0CF8\xE5\u0D0B\u0180bcp\u2BF6\u2C11\u2C19\u0200;Ees\u2BFF\u2C00\u0D22\u2C04\u6284;\uC000\u2AC5\u0338et\u0100;e\u0D1B\u2C0Bq\u0100;q\u0D23\u2C00c\u0100;e\u0D32\u2C17\xF1\u0D38\u0200;Ees\u2C22\u2C23\u0D5F\u2C27\u6285;\uC000\u2AC6\u0338et\u0100;e\u0D58\u2C2Eq\u0100;q\u0D60\u2C23\u0200gilr\u2C3D\u2C3F\u2C45\u2C47\xEC\u0BD7lde\u803B\xF1\u40F1\xE7\u0C43iangle\u0100lr\u2C52\u2C5Ceft\u0100;e\u0C1A\u2C5A\xF1\u0C26ight\u0100;e\u0CCB\u2C65\xF1\u0CD7\u0100;m\u2C6C\u2C6D\u43BD\u0180;es\u2C74\u2C75\u2C79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2C8F\u2C94\u2C99\u2C9E\u2CA3\u2CB0\u2CB6\u2CD3\u2CE3ash;\u62ADarr;\u6904p;\uC000\u224D\u20D2ash;\u62AC\u0100et\u2CA8\u2CAC;\uC000\u2265\u20D2;\uC000>\u20D2nfin;\u69DE\u0180Aet\u2CBD\u2CC1\u2CC5rr;\u6902;\uC000\u2264\u20D2\u0100;r\u2CCA\u2CCD\uC000<\u20D2ie;\uC000\u22B4\u20D2\u0100At\u2CD8\u2CDCrr;\u6903rie;\uC000\u22B5\u20D2im;\uC000\u223C\u20D2\u0180Aan\u2CF0\u2CF4\u2D02rr;\u61D6r\u0100hr\u2CFA\u2CFDk;\u6923\u0100;o\u13E7\u13E5ear;\u6927\u1253\u1A95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2D2D\0\u2D38\u2D48\u2D60\u2D65\u2D72\u2D84\u1B07\0\0\u2D8D\u2DAB\0\u2DC8\u2DCE\0\u2DDC\u2E19\u2E2B\u2E3E\u2E43\u0100cs\u2D31\u1A97ute\u803B\xF3\u40F3\u0100iy\u2D3C\u2D45r\u0100;c\u1A9E\u2D42\u803B\xF4\u40F4;\u443E\u0280abios\u1AA0\u2D52\u2D57\u01C8\u2D5Alac;\u4151v;\u6A38old;\u69BClig;\u4153\u0100cr\u2D69\u2D6Dir;\u69BF;\uC000\u{1D52C}\u036F\u2D79\0\0\u2D7C\0\u2D82n;\u42DBave\u803B\xF2\u40F2;\u69C1\u0100bm\u2D88\u0DF4ar;\u69B5\u0200acit\u2D95\u2D98\u2DA5\u2DA8r\xF2\u1A80\u0100ir\u2D9D\u2DA0r;\u69BEoss;\u69BBn\xE5\u0E52;\u69C0\u0180aei\u2DB1\u2DB5\u2DB9cr;\u414Dga;\u43C9\u0180cdn\u2DC0\u2DC5\u01CDron;\u43BF;\u69B6pf;\uC000\u{1D560}\u0180ael\u2DD4\u2DD7\u01D2r;\u69B7rp;\u69B9\u0380;adiosv\u2DEA\u2DEB\u2DEE\u2E08\u2E0D\u2E10\u2E16\u6228r\xF2\u1A86\u0200;efm\u2DF7\u2DF8\u2E02\u2E05\u6A5Dr\u0100;o\u2DFE\u2DFF\u6134f\xBB\u2DFF\u803B\xAA\u40AA\u803B\xBA\u40BAgof;\u62B6r;\u6A56lope;\u6A57;\u6A5B\u0180clo\u2E1F\u2E21\u2E27\xF2\u2E01ash\u803B\xF8\u40F8l;\u6298i\u016C\u2E2F\u2E34de\u803B\xF5\u40F5es\u0100;a\u01DB\u2E3As;\u6A36ml\u803B\xF6\u40F6bar;\u633D\u0AE1\u2E5E\0\u2E7D\0\u2E80\u2E9D\0\u2EA2\u2EB9\0\0\u2ECB\u0E9C\0\u2F13\0\0\u2F2B\u2FBC\0\u2FC8r\u0200;ast\u0403\u2E67\u2E72\u0E85\u8100\xB6;l\u2E6D\u2E6E\u40B6le\xEC\u0403\u0269\u2E78\0\0\u2E7Bm;\u6AF3;\u6AFDy;\u443Fr\u0280cimpt\u2E8B\u2E8F\u2E93\u1865\u2E97nt;\u4025od;\u402Eil;\u6030enk;\u6031r;\uC000\u{1D52D}\u0180imo\u2EA8\u2EB0\u2EB4\u0100;v\u2EAD\u2EAE\u43C6;\u43D5ma\xF4\u0A76ne;\u660E\u0180;tv\u2EBF\u2EC0\u2EC8\u43C0chfork\xBB\u1FFD;\u43D6\u0100au\u2ECF\u2EDFn\u0100ck\u2ED5\u2EDDk\u0100;h\u21F4\u2EDB;\u610E\xF6\u21F4s\u0480;abcdemst\u2EF3\u2EF4\u1908\u2EF9\u2EFD\u2F04\u2F06\u2F0A\u2F0E\u402Bcir;\u6A23ir;\u6A22\u0100ou\u1D40\u2F02;\u6A25;\u6A72n\u80BB\xB1\u0E9Dim;\u6A26wo;\u6A27\u0180ipu\u2F19\u2F20\u2F25ntint;\u6A15f;\uC000\u{1D561}nd\u803B\xA3\u40A3\u0500;Eaceinosu\u0EC8\u2F3F\u2F41\u2F44\u2F47\u2F81\u2F89\u2F92\u2F7E\u2FB6;\u6AB3p;\u6AB7u\xE5\u0ED9\u0100;c\u0ECE\u2F4C\u0300;acens\u0EC8\u2F59\u2F5F\u2F66\u2F68\u2F7Eppro\xF8\u2F43urlye\xF1\u0ED9\xF1\u0ECE\u0180aes\u2F6F\u2F76\u2F7Approx;\u6AB9qq;\u6AB5im;\u62E8i\xED\u0EDFme\u0100;s\u2F88\u0EAE\u6032\u0180Eas\u2F78\u2F90\u2F7A\xF0\u2F75\u0180dfp\u0EEC\u2F99\u2FAF\u0180als\u2FA0\u2FA5\u2FAAlar;\u632Eine;\u6312urf;\u6313\u0100;t\u0EFB\u2FB4\xEF\u0EFBrel;\u62B0\u0100ci\u2FC0\u2FC5r;\uC000\u{1D4C5};\u43C8ncsp;\u6008\u0300fiopsu\u2FDA\u22E2\u2FDF\u2FE5\u2FEB\u2FF1r;\uC000\u{1D52E}pf;\uC000\u{1D562}rime;\u6057cr;\uC000\u{1D4C6}\u0180aeo\u2FF8\u3009\u3013t\u0100ei\u2FFE\u3005rnion\xF3\u06B0nt;\u6A16st\u0100;e\u3010\u3011\u403F\xF1\u1F19\xF4\u0F14\u0A80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30E0\u310E\u312B\u3147\u3162\u3172\u318E\u3206\u3215\u3224\u3229\u3258\u326E\u3272\u3290\u32B0\u32B7\u0180art\u3047\u304A\u304Cr\xF2\u10B3\xF2\u03DDail;\u691Car\xF2\u1C65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307F\u308F\u3094\u30CC\u0100eu\u306D\u3071;\uC000\u223D\u0331te;\u4155i\xE3\u116Emptyv;\u69B3g\u0200;del\u0FD1\u3089\u308B\u308D;\u6992;\u69A5\xE5\u0FD1uo\u803B\xBB\u40BBr\u0580;abcfhlpstw\u0FDC\u30AC\u30AF\u30B7\u30B9\u30BC\u30BE\u30C0\u30C3\u30C7\u30CAp;\u6975\u0100;f\u0FE0\u30B4s;\u6920;\u6933s;\u691E\xEB\u225D\xF0\u272El;\u6945im;\u6974l;\u61A3;\u619D\u0100ai\u30D1\u30D5il;\u691Ao\u0100;n\u30DB\u30DC\u6236al\xF3\u0F1E\u0180abr\u30E7\u30EA\u30EEr\xF2\u17E5rk;\u6773\u0100ak\u30F3\u30FDc\u0100ek\u30F9\u30FB;\u407D;\u405D\u0100es\u3102\u3104;\u698Cl\u0100du\u310A\u310C;\u698E;\u6990\u0200aeuy\u3117\u311C\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xEC\u0FF2\xE2\u30FA;\u4440\u0200clqs\u3134\u3137\u313D\u3144a;\u6937dhar;\u6969uo\u0100;r\u020E\u020Dh;\u61B3\u0180acg\u314E\u315F\u0F44l\u0200;ips\u0F78\u3158\u315B\u109Cn\xE5\u10BBar\xF4\u0FA9t;\u65AD\u0180ilr\u3169\u1023\u316Esht;\u697D;\uC000\u{1D52F}\u0100ao\u3177\u3186r\u0100du\u317D\u317F\xBB\u047B\u0100;l\u1091\u3184;\u696C\u0100;v\u318B\u318C\u43C1;\u43F1\u0180gns\u3195\u31F9\u31FCht\u0300ahlrst\u31A4\u31B0\u31C2\u31D8\u31E4\u31EErrow\u0100;t\u0FDC\u31ADa\xE9\u30C8arpoon\u0100du\u31BB\u31BFow\xEE\u317Ep\xBB\u1092eft\u0100ah\u31CA\u31D0rrow\xF3\u0FEAarpoon\xF3\u0551ightarrows;\u61C9quigarro\xF7\u30CBhreetimes;\u62CCg;\u42DAingdotse\xF1\u1F32\u0180ahm\u320D\u3210\u3213r\xF2\u0FEAa\xF2\u0551;\u600Foust\u0100;a\u321E\u321F\u63B1che\xBB\u321Fmid;\u6AEE\u0200abpt\u3232\u323D\u3240\u3252\u0100nr\u3237\u323Ag;\u67EDr;\u61FEr\xEB\u1003\u0180afl\u3247\u324A\u324Er;\u6986;\uC000\u{1D563}us;\u6A2Eimes;\u6A35\u0100ap\u325D\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6A12ar\xF2\u31E3\u0200achq\u327B\u3280\u10BC\u3285quo;\u603Ar;\uC000\u{1D4C7}\u0100bu\u30FB\u328Ao\u0100;r\u0214\u0213\u0180hir\u3297\u329B\u32A0re\xE5\u31F8mes;\u62CAi\u0200;efl\u32AA\u1059\u1821\u32AB\u65B9tri;\u69CEluhar;\u6968;\u611E\u0D61\u32D5\u32DB\u32DF\u332C\u3338\u3371\0\u337A\u33A4\0\0\u33EC\u33F0\0\u3428\u3448\u345A\u34AD\u34B1\u34CA\u34F1\0\u3616\0\0\u3633cute;\u415Bqu\xEF\u27BA\u0500;Eaceinpsy\u11ED\u32F3\u32F5\u32FF\u3302\u330B\u330F\u331F\u3326\u3329;\u6AB4\u01F0\u32FA\0\u32FC;\u6AB8on;\u4161u\xE5\u11FE\u0100;d\u11F3\u3307il;\u415Frc;\u415D\u0180Eas\u3316\u3318\u331B;\u6AB6p;\u6ABAim;\u62E9olint;\u6A13i\xED\u1204;\u4441ot\u0180;be\u3334\u1D47\u3335\u62C5;\u6A66\u0380Aacmstx\u3346\u334A\u3357\u335B\u335E\u3363\u336Drr;\u61D8r\u0100hr\u3350\u3352\xEB\u2228\u0100;o\u0A36\u0A34t\u803B\xA7\u40A7i;\u403Bwar;\u6929m\u0100in\u3369\xF0nu\xF3\xF1t;\u6736r\u0100;o\u3376\u2055\uC000\u{1D530}\u0200acoy\u3382\u3386\u3391\u33A0rp;\u666F\u0100hy\u338B\u338Fcy;\u4449;\u4448rt\u026D\u3399\0\0\u339Ci\xE4\u1464ara\xEC\u2E6F\u803B\xAD\u40AD\u0100gm\u33A8\u33B4ma\u0180;fv\u33B1\u33B2\u33B2\u43C3;\u43C2\u0400;deglnpr\u12AB\u33C5\u33C9\u33CE\u33D6\u33DE\u33E1\u33E6ot;\u6A6A\u0100;q\u12B1\u12B0\u0100;E\u33D3\u33D4\u6A9E;\u6AA0\u0100;E\u33DB\u33DC\u6A9D;\u6A9Fe;\u6246lus;\u6A24arr;\u6972ar\xF2\u113D\u0200aeit\u33F8\u3408\u340F\u3417\u0100ls\u33FD\u3404lsetm\xE9\u336Ahp;\u6A33parsl;\u69E4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341C\u341D\u6AAA\u0100;s\u3422\u3423\u6AAC;\uC000\u2AAC\uFE00\u0180flp\u342E\u3433\u3442tcy;\u444C\u0100;b\u3438\u3439\u402F\u0100;a\u343E\u343F\u69C4r;\u633Ff;\uC000\u{1D564}a\u0100dr\u344D\u0402es\u0100;u\u3454\u3455\u6660it\xBB\u3455\u0180csu\u3460\u3479\u349F\u0100au\u3465\u346Fp\u0100;s\u1188\u346B;\uC000\u2293\uFE00p\u0100;s\u11B4\u3475;\uC000\u2294\uFE00u\u0100bp\u347F\u348F\u0180;es\u1197\u119C\u3486et\u0100;e\u1197\u348D\xF1\u119D\u0180;es\u11A8\u11AD\u3496et\u0100;e\u11A8\u349D\xF1\u11AE\u0180;af\u117B\u34A6\u05B0r\u0165\u34AB\u05B1\xBB\u117Car\xF2\u1148\u0200cemt\u34B9\u34BE\u34C2\u34C5r;\uC000\u{1D4C8}tm\xEE\xF1i\xEC\u3415ar\xE6\u11BE\u0100ar\u34CE\u34D5r\u0100;f\u34D4\u17BF\u6606\u0100an\u34DA\u34EDight\u0100ep\u34E3\u34EApsilo\xEE\u1EE0h\xE9\u2EAFs\xBB\u2852\u0280bcmnp\u34FB\u355E\u1209\u358B\u358E\u0480;Edemnprs\u350E\u350F\u3511\u3515\u351E\u3523\u352C\u3531\u3536\u6282;\u6AC5ot;\u6ABD\u0100;d\u11DA\u351Aot;\u6AC3ult;\u6AC1\u0100Ee\u3528\u352A;\u6ACB;\u628Alus;\u6ABFarr;\u6979\u0180eiu\u353D\u3552\u3555t\u0180;en\u350E\u3545\u354Bq\u0100;q\u11DA\u350Feq\u0100;q\u352B\u3528m;\u6AC7\u0100bp\u355A\u355C;\u6AD5;\u6AD3c\u0300;acens\u11ED\u356C\u3572\u3579\u357B\u3326ppro\xF8\u32FAurlye\xF1\u11FE\xF1\u11F3\u0180aes\u3582\u3588\u331Bppro\xF8\u331Aq\xF1\u3317g;\u666A\u0680123;Edehlmnps\u35A9\u35AC\u35AF\u121C\u35B2\u35B4\u35C0\u35C9\u35D5\u35DA\u35DF\u35E8\u35ED\u803B\xB9\u40B9\u803B\xB2\u40B2\u803B\xB3\u40B3;\u6AC6\u0100os\u35B9\u35BCt;\u6ABEub;\u6AD8\u0100;d\u1222\u35C5ot;\u6AC4s\u0100ou\u35CF\u35D2l;\u67C9b;\u6AD7arr;\u697Bult;\u6AC2\u0100Ee\u35E4\u35E6;\u6ACC;\u628Blus;\u6AC0\u0180eiu\u35F4\u3609\u360Ct\u0180;en\u121C\u35FC\u3602q\u0100;q\u1222\u35B2eq\u0100;q\u35E7\u35E4m;\u6AC8\u0100bp\u3611\u3613;\u6AD4;\u6AD6\u0180Aan\u361C\u3620\u362Drr;\u61D9r\u0100hr\u3626\u3628\xEB\u222E\u0100;o\u0A2B\u0A29war;\u692Alig\u803B\xDF\u40DF\u0BE1\u3651\u365D\u3660\u12CE\u3673\u3679\0\u367E\u36C2\0\0\0\0\0\u36DB\u3703\0\u3709\u376C\0\0\0\u3787\u0272\u3656\0\0\u365Bget;\u6316;\u43C4r\xEB\u0E5F\u0180aey\u3666\u366B\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uC000\u{1D531}\u0200eiko\u3686\u369D\u36B5\u36BC\u01F2\u368B\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369B\u43B8ym;\u43D1\u0100cn\u36A2\u36B2k\u0100as\u36A8\u36AEppro\xF8\u12C1im\xBB\u12ACs\xF0\u129E\u0100as\u36BA\u36AE\xF0\u12C1rn\u803B\xFE\u40FE\u01EC\u031F\u36C6\u22E7es\u8180\xD7;bd\u36CF\u36D0\u36D8\u40D7\u0100;a\u190F\u36D5r;\u6A31;\u6A30\u0180eps\u36E1\u36E3\u3700\xE1\u2A4D\u0200;bcf\u0486\u36EC\u36F0\u36F4ot;\u6336ir;\u6AF1\u0100;o\u36F9\u36FC\uC000\u{1D565}rk;\u6ADA\xE1\u3362rime;\u6034\u0180aip\u370F\u3712\u3764d\xE5\u1248\u0380adempst\u3721\u374D\u3740\u3751\u3757\u375C\u375Fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65B5own\xBB\u1DBBeft\u0100;e\u2800\u373E\xF1\u092E;\u625Cight\u0100;e\u32AA\u374B\xF1\u105Aot;\u65ECinus;\u6A3Alus;\u6A39b;\u69CDime;\u6A3Bezium;\u63E2\u0180cht\u3772\u377D\u3781\u0100ry\u3777\u377B;\uC000\u{1D4C9};\u4446cy;\u445Brok;\u4167\u0100io\u378B\u378Ex\xF4\u1777head\u0100lr\u3797\u37A0eftarro\xF7\u084Fightarrow\xBB\u0F5D\u0900AHabcdfghlmoprstuw\u37D0\u37D3\u37D7\u37E4\u37F0\u37FC\u380E\u381C\u3823\u3834\u3851\u385D\u386B\u38A9\u38CC\u38D2\u38EA\u38F6r\xF2\u03EDar;\u6963\u0100cr\u37DC\u37E2ute\u803B\xFA\u40FA\xF2\u1150r\u01E3\u37EA\0\u37EDy;\u445Eve;\u416D\u0100iy\u37F5\u37FArc\u803B\xFB\u40FB;\u4443\u0180abh\u3803\u3806\u380Br\xF2\u13ADlac;\u4171a\xF2\u13C3\u0100ir\u3813\u3818sht;\u697E;\uC000\u{1D532}rave\u803B\xF9\u40F9\u0161\u3827\u3831r\u0100lr\u382C\u382E\xBB\u0957\xBB\u1083lk;\u6580\u0100ct\u3839\u384D\u026F\u383F\0\0\u384Arn\u0100;e\u3845\u3846\u631Cr\xBB\u3846op;\u630Fri;\u65F8\u0100al\u3856\u385Acr;\u416B\u80BB\xA8\u0349\u0100gp\u3862\u3866on;\u4173f;\uC000\u{1D566}\u0300adhlsu\u114B\u3878\u387D\u1372\u3891\u38A0own\xE1\u13B3arpoon\u0100lr\u3888\u388Cef\xF4\u382Digh\xF4\u382Fi\u0180;hl\u3899\u389A\u389C\u43C5\xBB\u13FAon\xBB\u389Aparrows;\u61C8\u0180cit\u38B0\u38C4\u38C8\u026F\u38B6\0\0\u38C1rn\u0100;e\u38BC\u38BD\u631Dr\xBB\u38BDop;\u630Eng;\u416Fri;\u65F9cr;\uC000\u{1D4CA}\u0180dir\u38D9\u38DD\u38E2ot;\u62F0lde;\u4169i\u0100;f\u3730\u38E8\xBB\u1813\u0100am\u38EF\u38F2r\xF2\u38A8l\u803B\xFC\u40FCangle;\u69A7\u0780ABDacdeflnoprsz\u391C\u391F\u3929\u392D\u39B5\u39B8\u39BD\u39DF\u39E4\u39E8\u39F3\u39F9\u39FD\u3A01\u3A20r\xF2\u03F7ar\u0100;v\u3926\u3927\u6AE8;\u6AE9as\xE8\u03E1\u0100nr\u3932\u3937grt;\u699C\u0380eknprst\u34E3\u3946\u394B\u3952\u395D\u3964\u3996app\xE1\u2415othin\xE7\u1E96\u0180hir\u34EB\u2EC8\u3959op\xF4\u2FB5\u0100;h\u13B7\u3962\xEF\u318D\u0100iu\u3969\u396Dgm\xE1\u33B3\u0100bp\u3972\u3984setneq\u0100;q\u397D\u3980\uC000\u228A\uFE00;\uC000\u2ACB\uFE00setneq\u0100;q\u398F\u3992\uC000\u228B\uFE00;\uC000\u2ACC\uFE00\u0100hr\u399B\u399Fet\xE1\u369Ciangle\u0100lr\u39AA\u39AFeft\xBB\u0925ight\xBB\u1051y;\u4432ash\xBB\u1036\u0180elr\u39C4\u39D2\u39D7\u0180;be\u2DEA\u39CB\u39CFar;\u62BBq;\u625Alip;\u62EE\u0100bt\u39DC\u1468a\xF2\u1469r;\uC000\u{1D533}tr\xE9\u39AEsu\u0100bp\u39EF\u39F1\xBB\u0D1C\xBB\u0D59pf;\uC000\u{1D567}ro\xF0\u0EFBtr\xE9\u39B4\u0100cu\u3A06\u3A0Br;\uC000\u{1D4CB}\u0100bp\u3A10\u3A18n\u0100Ee\u3980\u3A16\xBB\u397En\u0100Ee\u3992\u3A1E\xBB\u3990igzag;\u699A\u0380cefoprs\u3A36\u3A3B\u3A56\u3A5B\u3A54\u3A61\u3A6Airc;\u4175\u0100di\u3A40\u3A51\u0100bg\u3A45\u3A49ar;\u6A5Fe\u0100;q\u15FA\u3A4F;\u6259erp;\u6118r;\uC000\u{1D534}pf;\uC000\u{1D568}\u0100;e\u1479\u3A66at\xE8\u1479cr;\uC000\u{1D4CC}\u0AE3\u178E\u3A87\0\u3A8B\0\u3A90\u3A9B\0\0\u3A9D\u3AA8\u3AAB\u3AAF\0\0\u3AC3\u3ACE\0\u3AD8\u17DC\u17DFtr\xE9\u17D1r;\uC000\u{1D535}\u0100Aa\u3A94\u3A97r\xF2\u03C3r\xF2\u09F6;\u43BE\u0100Aa\u3AA1\u3AA4r\xF2\u03B8r\xF2\u09EBa\xF0\u2713is;\u62FB\u0180dpt\u17A4\u3AB5\u3ABE\u0100fl\u3ABA\u17A9;\uC000\u{1D569}im\xE5\u17B2\u0100Aa\u3AC7\u3ACAr\xF2\u03CEr\xF2\u0A01\u0100cq\u3AD2\u17B8r;\uC000\u{1D4CD}\u0100pt\u17D6\u3ADCr\xE9\u17D4\u0400acefiosu\u3AF0\u3AFD\u3B08\u3B0C\u3B11\u3B15\u3B1B\u3B21c\u0100uy\u3AF6\u3AFBte\u803B\xFD\u40FD;\u444F\u0100iy\u3B02\u3B06rc;\u4177;\u444Bn\u803B\xA5\u40A5r;\uC000\u{1D536}cy;\u4457pf;\uC000\u{1D56A}cr;\uC000\u{1D4CE}\u0100cm\u3B26\u3B29y;\u444El\u803B\xFF\u40FF\u0500acdefhiosw\u3B42\u3B48\u3B54\u3B58\u3B64\u3B69\u3B6D\u3B74\u3B7A\u3B80cute;\u417A\u0100ay\u3B4D\u3B52ron;\u417E;\u4437ot;\u417C\u0100et\u3B5D\u3B61tr\xE6\u155Fa;\u43B6r;\uC000\u{1D537}cy;\u4436grarr;\u61DDpf;\uC000\u{1D56B}cr;\uC000\u{1D4CF}\u0100jn\u3B85\u3B87;\u600Dj;\u600C'.split("").map((c) => c.charCodeAt(0)) +); + +// ../../node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/generated/decode-data-xml.js +var decode_data_xml_default = new Uint16Array( + "\u0200aglq \x1B\u026D\0\0p;\u4026os;\u4027t;\u403Et;\u403Cuot;\u4022".split("").map((c) => c.charCodeAt(0)) +); + +// ../../node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/decode_codepoint.js +var _a; +var decodeMap = /* @__PURE__ */ new Map([ + [0, 65533], + [128, 8364], + [130, 8218], + [131, 402], + [132, 8222], + [133, 8230], + [134, 8224], + [135, 8225], + [136, 710], + [137, 8240], + [138, 352], + [139, 8249], + [140, 338], + [142, 381], + [145, 8216], + [146, 8217], + [147, 8220], + [148, 8221], + [149, 8226], + [150, 8211], + [151, 8212], + [152, 732], + [153, 8482], + [154, 353], + [155, 8250], + [156, 339], + [158, 382], + [159, 376] +]); +var fromCodePoint = (_a = String.fromCodePoint) !== null && _a !== void 0 ? _a : function(codePoint) { + let output = ""; + if (codePoint > 65535) { + codePoint -= 65536; + output += String.fromCharCode(codePoint >>> 10 & 1023 | 55296); + codePoint = 56320 | codePoint & 1023; + } + output += String.fromCharCode(codePoint); + return output; +}; +function replaceCodePoint(codePoint) { + var _a3; + if (codePoint >= 55296 && codePoint <= 57343 || codePoint > 1114111) { + return 65533; + } + return (_a3 = decodeMap.get(codePoint)) !== null && _a3 !== void 0 ? _a3 : codePoint; +} + +// ../../node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/decode.js +var CharCodes; +(function(CharCodes4) { + CharCodes4[CharCodes4["NUM"] = 35] = "NUM"; + CharCodes4[CharCodes4["SEMI"] = 59] = "SEMI"; + CharCodes4[CharCodes4["EQUALS"] = 61] = "EQUALS"; + CharCodes4[CharCodes4["ZERO"] = 48] = "ZERO"; + CharCodes4[CharCodes4["NINE"] = 57] = "NINE"; + CharCodes4[CharCodes4["LOWER_A"] = 97] = "LOWER_A"; + CharCodes4[CharCodes4["LOWER_F"] = 102] = "LOWER_F"; + CharCodes4[CharCodes4["LOWER_X"] = 120] = "LOWER_X"; + CharCodes4[CharCodes4["LOWER_Z"] = 122] = "LOWER_Z"; + CharCodes4[CharCodes4["UPPER_A"] = 65] = "UPPER_A"; + CharCodes4[CharCodes4["UPPER_F"] = 70] = "UPPER_F"; + CharCodes4[CharCodes4["UPPER_Z"] = 90] = "UPPER_Z"; +})(CharCodes || (CharCodes = {})); +var TO_LOWER_BIT = 32; +var BinTrieFlags; +(function(BinTrieFlags3) { + BinTrieFlags3[BinTrieFlags3["VALUE_LENGTH"] = 49152] = "VALUE_LENGTH"; + BinTrieFlags3[BinTrieFlags3["BRANCH_LENGTH"] = 16256] = "BRANCH_LENGTH"; + BinTrieFlags3[BinTrieFlags3["JUMP_TABLE"] = 127] = "JUMP_TABLE"; +})(BinTrieFlags || (BinTrieFlags = {})); +function isNumber(code2) { + return code2 >= CharCodes.ZERO && code2 <= CharCodes.NINE; +} +function isHexadecimalCharacter(code2) { + return code2 >= CharCodes.UPPER_A && code2 <= CharCodes.UPPER_F || code2 >= CharCodes.LOWER_A && code2 <= CharCodes.LOWER_F; +} +function isAsciiAlphaNumeric(code2) { + return code2 >= CharCodes.UPPER_A && code2 <= CharCodes.UPPER_Z || code2 >= CharCodes.LOWER_A && code2 <= CharCodes.LOWER_Z || isNumber(code2); +} +function isEntityInAttributeInvalidEnd(code2) { + return code2 === CharCodes.EQUALS || isAsciiAlphaNumeric(code2); +} +var EntityDecoderState; +(function(EntityDecoderState3) { + EntityDecoderState3[EntityDecoderState3["EntityStart"] = 0] = "EntityStart"; + EntityDecoderState3[EntityDecoderState3["NumericStart"] = 1] = "NumericStart"; + EntityDecoderState3[EntityDecoderState3["NumericDecimal"] = 2] = "NumericDecimal"; + EntityDecoderState3[EntityDecoderState3["NumericHex"] = 3] = "NumericHex"; + EntityDecoderState3[EntityDecoderState3["NamedEntity"] = 4] = "NamedEntity"; +})(EntityDecoderState || (EntityDecoderState = {})); +var DecodingMode; +(function(DecodingMode3) { + DecodingMode3[DecodingMode3["Legacy"] = 0] = "Legacy"; + DecodingMode3[DecodingMode3["Strict"] = 1] = "Strict"; + DecodingMode3[DecodingMode3["Attribute"] = 2] = "Attribute"; +})(DecodingMode || (DecodingMode = {})); +var EntityDecoder = class { + constructor(decodeTree, emitCodePoint, errors2) { + this.decodeTree = decodeTree; + this.emitCodePoint = emitCodePoint; + this.errors = errors2; + this.state = EntityDecoderState.EntityStart; + this.consumed = 1; + this.result = 0; + this.treeIndex = 0; + this.excess = 1; + this.decodeMode = DecodingMode.Strict; + } + startEntity(decodeMode) { + this.decodeMode = decodeMode; + this.state = EntityDecoderState.EntityStart; + this.result = 0; + this.treeIndex = 0; + this.excess = 1; + this.consumed = 1; + } + write(str, offset) { + switch (this.state) { + case EntityDecoderState.EntityStart: { + if (str.charCodeAt(offset) === CharCodes.NUM) { + this.state = EntityDecoderState.NumericStart; + this.consumed += 1; + return this.stateNumericStart(str, offset + 1); + } + this.state = EntityDecoderState.NamedEntity; + return this.stateNamedEntity(str, offset); + } + case EntityDecoderState.NumericStart: { + return this.stateNumericStart(str, offset); + } + case EntityDecoderState.NumericDecimal: { + return this.stateNumericDecimal(str, offset); + } + case EntityDecoderState.NumericHex: { + return this.stateNumericHex(str, offset); + } + case EntityDecoderState.NamedEntity: { + return this.stateNamedEntity(str, offset); + } + } + } + stateNumericStart(str, offset) { + if (offset >= str.length) { + return -1; + } + if ((str.charCodeAt(offset) | TO_LOWER_BIT) === CharCodes.LOWER_X) { + this.state = EntityDecoderState.NumericHex; + this.consumed += 1; + return this.stateNumericHex(str, offset + 1); + } + this.state = EntityDecoderState.NumericDecimal; + return this.stateNumericDecimal(str, offset); + } + addToNumericResult(str, start, end2, base2) { + if (start !== end2) { + const digitCount = end2 - start; + this.result = this.result * Math.pow(base2, digitCount) + parseInt(str.substr(start, digitCount), base2); + this.consumed += digitCount; + } + } + stateNumericHex(str, offset) { + const startIdx = offset; + while (offset < str.length) { + const char = str.charCodeAt(offset); + if (isNumber(char) || isHexadecimalCharacter(char)) { + offset += 1; + } else { + this.addToNumericResult(str, startIdx, offset, 16); + return this.emitNumericEntity(char, 3); + } + } + this.addToNumericResult(str, startIdx, offset, 16); + return -1; + } + stateNumericDecimal(str, offset) { + const startIdx = offset; + while (offset < str.length) { + const char = str.charCodeAt(offset); + if (isNumber(char)) { + offset += 1; + } else { + this.addToNumericResult(str, startIdx, offset, 10); + return this.emitNumericEntity(char, 2); + } + } + this.addToNumericResult(str, startIdx, offset, 10); + return -1; + } + emitNumericEntity(lastCp, expectedLength) { + var _a3; + if (this.consumed <= expectedLength) { + (_a3 = this.errors) === null || _a3 === void 0 ? void 0 : _a3.absenceOfDigitsInNumericCharacterReference(this.consumed); + return 0; + } + if (lastCp === CharCodes.SEMI) { + this.consumed += 1; + } else if (this.decodeMode === DecodingMode.Strict) { + return 0; + } + this.emitCodePoint(replaceCodePoint(this.result), this.consumed); + if (this.errors) { + if (lastCp !== CharCodes.SEMI) { + this.errors.missingSemicolonAfterCharacterReference(); + } + this.errors.validateNumericCharacterReference(this.result); + } + return this.consumed; + } + stateNamedEntity(str, offset) { + const { decodeTree } = this; + let current = decodeTree[this.treeIndex]; + let valueLength = (current & BinTrieFlags.VALUE_LENGTH) >> 14; + for (; offset < str.length; offset++, this.excess++) { + const char = str.charCodeAt(offset); + this.treeIndex = determineBranch(decodeTree, current, this.treeIndex + Math.max(1, valueLength), char); + if (this.treeIndex < 0) { + return this.result === 0 || this.decodeMode === DecodingMode.Attribute && (valueLength === 0 || isEntityInAttributeInvalidEnd(char)) ? 0 : this.emitNotTerminatedNamedEntity(); + } + current = decodeTree[this.treeIndex]; + valueLength = (current & BinTrieFlags.VALUE_LENGTH) >> 14; + if (valueLength !== 0) { + if (char === CharCodes.SEMI) { + return this.emitNamedEntityData(this.treeIndex, valueLength, this.consumed + this.excess); + } + if (this.decodeMode !== DecodingMode.Strict) { + this.result = this.treeIndex; + this.consumed += this.excess; + this.excess = 0; + } + } + } + return -1; + } + emitNotTerminatedNamedEntity() { + var _a3; + const { result, decodeTree } = this; + const valueLength = (decodeTree[result] & BinTrieFlags.VALUE_LENGTH) >> 14; + this.emitNamedEntityData(result, valueLength, this.consumed); + (_a3 = this.errors) === null || _a3 === void 0 ? void 0 : _a3.missingSemicolonAfterCharacterReference(); + return this.consumed; + } + emitNamedEntityData(result, valueLength, consumed) { + const { decodeTree } = this; + this.emitCodePoint(valueLength === 1 ? decodeTree[result] & ~BinTrieFlags.VALUE_LENGTH : decodeTree[result + 1], consumed); + if (valueLength === 3) { + this.emitCodePoint(decodeTree[result + 2], consumed); + } + return consumed; + } + end() { + var _a3; + switch (this.state) { + case EntityDecoderState.NamedEntity: { + return this.result !== 0 && (this.decodeMode !== DecodingMode.Attribute || this.result === this.treeIndex) ? this.emitNotTerminatedNamedEntity() : 0; + } + case EntityDecoderState.NumericDecimal: { + return this.emitNumericEntity(0, 2); + } + case EntityDecoderState.NumericHex: { + return this.emitNumericEntity(0, 3); + } + case EntityDecoderState.NumericStart: { + (_a3 = this.errors) === null || _a3 === void 0 ? void 0 : _a3.absenceOfDigitsInNumericCharacterReference(this.consumed); + return 0; + } + case EntityDecoderState.EntityStart: { + return 0; + } + } + } +}; +function getDecoder(decodeTree) { + let ret = ""; + const decoder = new EntityDecoder(decodeTree, (str) => ret += fromCodePoint(str)); + return function decodeWithTrie(str, decodeMode) { + let lastIndex = 0; + let offset = 0; + while ((offset = str.indexOf("&", offset)) >= 0) { + ret += str.slice(lastIndex, offset); + decoder.startEntity(decodeMode); + const len = decoder.write( + str, + offset + 1 + ); + if (len < 0) { + lastIndex = offset + decoder.end(); + break; + } + lastIndex = offset + len; + offset = len === 0 ? lastIndex + 1 : lastIndex; + } + const result = ret + str.slice(lastIndex); + ret = ""; + return result; + }; +} +function determineBranch(decodeTree, current, nodeIdx, char) { + const branchCount = (current & BinTrieFlags.BRANCH_LENGTH) >> 7; + const jumpOffset = current & BinTrieFlags.JUMP_TABLE; + if (branchCount === 0) { + return jumpOffset !== 0 && char === jumpOffset ? nodeIdx : -1; + } + if (jumpOffset) { + const value = char - jumpOffset; + return value < 0 || value >= branchCount ? -1 : decodeTree[nodeIdx + value] - 1; + } + let lo = nodeIdx; + let hi = lo + branchCount - 1; + while (lo <= hi) { + const mid = lo + hi >>> 1; + const midVal = decodeTree[mid]; + if (midVal < char) { + lo = mid + 1; + } else if (midVal > char) { + hi = mid - 1; + } else { + return decodeTree[mid + branchCount]; + } + } + return -1; +} +var htmlDecoder = getDecoder(decode_data_html_default); +var xmlDecoder = getDecoder(decode_data_xml_default); +function decodeHTML(str, mode = DecodingMode.Legacy) { + return htmlDecoder(str, mode); +} + +// ../../node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/generated/encode-html.js +function restoreDiff(arr) { + for (let i = 1; i < arr.length; i++) { + arr[i][0] += arr[i - 1][0] + 1; + } + return arr; +} +var encode_html_default = new Map(/* @__PURE__ */ restoreDiff([[9, " "], [0, " "], [22, "!"], [0, """], [0, "#"], [0, "$"], [0, "%"], [0, "&"], [0, "'"], [0, "("], [0, ")"], [0, "*"], [0, "+"], [0, ","], [1, "."], [0, "/"], [10, ":"], [0, ";"], [0, { v: "<", n: 8402, o: "<⃒" }], [0, { v: "=", n: 8421, o: "=⃥" }], [0, { v: ">", n: 8402, o: ">⃒" }], [0, "?"], [0, "@"], [26, "["], [0, "\"], [0, "]"], [0, "^"], [0, "_"], [0, "`"], [5, { n: 106, o: "fj" }], [20, "{"], [0, "|"], [0, "}"], [34, " "], [0, "¡"], [0, "¢"], [0, "£"], [0, "¤"], [0, "¥"], [0, "¦"], [0, "§"], [0, "¨"], [0, "©"], [0, "ª"], [0, "«"], [0, "¬"], [0, "­"], [0, "®"], [0, "¯"], [0, "°"], [0, "±"], [0, "²"], [0, "³"], [0, "´"], [0, "µ"], [0, "¶"], [0, "·"], [0, "¸"], [0, "¹"], [0, "º"], [0, "»"], [0, "¼"], [0, "½"], [0, "¾"], [0, "¿"], [0, "À"], [0, "Á"], [0, "Â"], [0, "Ã"], [0, "Ä"], [0, "Å"], [0, "Æ"], [0, "Ç"], [0, "È"], [0, "É"], [0, "Ê"], [0, "Ë"], [0, "Ì"], [0, "Í"], [0, "Î"], [0, "Ï"], [0, "Ð"], [0, "Ñ"], [0, "Ò"], [0, "Ó"], [0, "Ô"], [0, "Õ"], [0, "Ö"], [0, "×"], [0, "Ø"], [0, "Ù"], [0, "Ú"], [0, "Û"], [0, "Ü"], [0, "Ý"], [0, "Þ"], [0, "ß"], [0, "à"], [0, "á"], [0, "â"], [0, "ã"], [0, "ä"], [0, "å"], [0, "æ"], [0, "ç"], [0, "è"], [0, "é"], [0, "ê"], [0, "ë"], [0, "ì"], [0, "í"], [0, "î"], [0, "ï"], [0, "ð"], [0, "ñ"], [0, "ò"], [0, "ó"], [0, "ô"], [0, "õ"], [0, "ö"], [0, "÷"], [0, "ø"], [0, "ù"], [0, "ú"], [0, "û"], [0, "ü"], [0, "ý"], [0, "þ"], [0, "ÿ"], [0, "Ā"], [0, "ā"], [0, "Ă"], [0, "ă"], [0, "Ą"], [0, "ą"], [0, "Ć"], [0, "ć"], [0, "Ĉ"], [0, "ĉ"], [0, "Ċ"], [0, "ċ"], [0, "Č"], [0, "č"], [0, "Ď"], [0, "ď"], [0, "Đ"], [0, "đ"], [0, "Ē"], [0, "ē"], [2, "Ė"], [0, "ė"], [0, "Ę"], [0, "ę"], [0, "Ě"], [0, "ě"], [0, "Ĝ"], [0, "ĝ"], [0, "Ğ"], [0, "ğ"], [0, "Ġ"], [0, "ġ"], [0, "Ģ"], [1, "Ĥ"], [0, "ĥ"], [0, "Ħ"], [0, "ħ"], [0, "Ĩ"], [0, "ĩ"], [0, "Ī"], [0, "ī"], [2, "Į"], [0, "į"], [0, "İ"], [0, "ı"], [0, "IJ"], [0, "ij"], [0, "Ĵ"], [0, "ĵ"], [0, "Ķ"], [0, "ķ"], [0, "ĸ"], [0, "Ĺ"], [0, "ĺ"], [0, "Ļ"], [0, "ļ"], [0, "Ľ"], [0, "ľ"], [0, "Ŀ"], [0, "ŀ"], [0, "Ł"], [0, "ł"], [0, "Ń"], [0, "ń"], [0, "Ņ"], [0, "ņ"], [0, "Ň"], [0, "ň"], [0, "ʼn"], [0, "Ŋ"], [0, "ŋ"], [0, "Ō"], [0, "ō"], [2, "Ő"], [0, "ő"], [0, "Œ"], [0, "œ"], [0, "Ŕ"], [0, "ŕ"], [0, "Ŗ"], [0, "ŗ"], [0, "Ř"], [0, "ř"], [0, "Ś"], [0, "ś"], [0, "Ŝ"], [0, "ŝ"], [0, "Ş"], [0, "ş"], [0, "Š"], [0, "š"], [0, "Ţ"], [0, "ţ"], [0, "Ť"], [0, "ť"], [0, "Ŧ"], [0, "ŧ"], [0, "Ũ"], [0, "ũ"], [0, "Ū"], [0, "ū"], [0, "Ŭ"], [0, "ŭ"], [0, "Ů"], [0, "ů"], [0, "Ű"], [0, "ű"], [0, "Ų"], [0, "ų"], [0, "Ŵ"], [0, "ŵ"], [0, "Ŷ"], [0, "ŷ"], [0, "Ÿ"], [0, "Ź"], [0, "ź"], [0, "Ż"], [0, "ż"], [0, "Ž"], [0, "ž"], [19, "ƒ"], [34, "Ƶ"], [63, "ǵ"], [65, "ȷ"], [142, "ˆ"], [0, "ˇ"], [16, "˘"], [0, "˙"], [0, "˚"], [0, "˛"], [0, "˜"], [0, "˝"], [51, "̑"], [127, "Α"], [0, "Β"], [0, "Γ"], [0, "Δ"], [0, "Ε"], [0, "Ζ"], [0, "Η"], [0, "Θ"], [0, "Ι"], [0, "Κ"], [0, "Λ"], [0, "Μ"], [0, "Ν"], [0, "Ξ"], [0, "Ο"], [0, "Π"], [0, "Ρ"], [1, "Σ"], [0, "Τ"], [0, "Υ"], [0, "Φ"], [0, "Χ"], [0, "Ψ"], [0, "Ω"], [7, "α"], [0, "β"], [0, "γ"], [0, "δ"], [0, "ε"], [0, "ζ"], [0, "η"], [0, "θ"], [0, "ι"], [0, "κ"], [0, "λ"], [0, "μ"], [0, "ν"], [0, "ξ"], [0, "ο"], [0, "π"], [0, "ρ"], [0, "ς"], [0, "σ"], [0, "τ"], [0, "υ"], [0, "φ"], [0, "χ"], [0, "ψ"], [0, "ω"], [7, "ϑ"], [0, "ϒ"], [2, "ϕ"], [0, "ϖ"], [5, "Ϝ"], [0, "ϝ"], [18, "ϰ"], [0, "ϱ"], [3, "ϵ"], [0, "϶"], [10, "Ё"], [0, "Ђ"], [0, "Ѓ"], [0, "Є"], [0, "Ѕ"], [0, "І"], [0, "Ї"], [0, "Ј"], [0, "Љ"], [0, "Њ"], [0, "Ћ"], [0, "Ќ"], [1, "Ў"], [0, "Џ"], [0, "А"], [0, "Б"], [0, "В"], [0, "Г"], [0, "Д"], [0, "Е"], [0, "Ж"], [0, "З"], [0, "И"], [0, "Й"], [0, "К"], [0, "Л"], [0, "М"], [0, "Н"], [0, "О"], [0, "П"], [0, "Р"], [0, "С"], [0, "Т"], [0, "У"], [0, "Ф"], [0, "Х"], [0, "Ц"], [0, "Ч"], [0, "Ш"], [0, "Щ"], [0, "Ъ"], [0, "Ы"], [0, "Ь"], [0, "Э"], [0, "Ю"], [0, "Я"], [0, "а"], [0, "б"], [0, "в"], [0, "г"], [0, "д"], [0, "е"], [0, "ж"], [0, "з"], [0, "и"], [0, "й"], [0, "к"], [0, "л"], [0, "м"], [0, "н"], [0, "о"], [0, "п"], [0, "р"], [0, "с"], [0, "т"], [0, "у"], [0, "ф"], [0, "х"], [0, "ц"], [0, "ч"], [0, "ш"], [0, "щ"], [0, "ъ"], [0, "ы"], [0, "ь"], [0, "э"], [0, "ю"], [0, "я"], [1, "ё"], [0, "ђ"], [0, "ѓ"], [0, "є"], [0, "ѕ"], [0, "і"], [0, "ї"], [0, "ј"], [0, "љ"], [0, "њ"], [0, "ћ"], [0, "ќ"], [1, "ў"], [0, "џ"], [7074, " "], [0, " "], [0, " "], [0, " "], [1, " "], [0, " "], [0, " "], [0, " "], [0, "​"], [0, "‌"], [0, "‍"], [0, "‎"], [0, "‏"], [0, "‐"], [2, "–"], [0, "—"], [0, "―"], [0, "‖"], [1, "‘"], [0, "’"], [0, "‚"], [1, "“"], [0, "”"], [0, "„"], [1, "†"], [0, "‡"], [0, "•"], [2, "‥"], [0, "…"], [9, "‰"], [0, "‱"], [0, "′"], [0, "″"], [0, "‴"], [0, "‵"], [3, "‹"], [0, "›"], [3, "‾"], [2, "⁁"], [1, "⁃"], [0, "⁄"], [10, "⁏"], [7, "⁗"], [7, { v: " ", n: 8202, o: "  " }], [0, "⁠"], [0, "⁡"], [0, "⁢"], [0, "⁣"], [72, "€"], [46, "⃛"], [0, "⃜"], [37, "ℂ"], [2, "℅"], [4, "ℊ"], [0, "ℋ"], [0, "ℌ"], [0, "ℍ"], [0, "ℎ"], [0, "ℏ"], [0, "ℐ"], [0, "ℑ"], [0, "ℒ"], [0, "ℓ"], [1, "ℕ"], [0, "№"], [0, "℗"], [0, "℘"], [0, "ℙ"], [0, "ℚ"], [0, "ℛ"], [0, "ℜ"], [0, "ℝ"], [0, "℞"], [3, "™"], [1, "ℤ"], [2, "℧"], [0, "ℨ"], [0, "℩"], [2, "ℬ"], [0, "ℭ"], [1, "ℯ"], [0, "ℰ"], [0, "ℱ"], [1, "ℳ"], [0, "ℴ"], [0, "ℵ"], [0, "ℶ"], [0, "ℷ"], [0, "ℸ"], [12, "ⅅ"], [0, "ⅆ"], [0, "ⅇ"], [0, "ⅈ"], [10, "⅓"], [0, "⅔"], [0, "⅕"], [0, "⅖"], [0, "⅗"], [0, "⅘"], [0, "⅙"], [0, "⅚"], [0, "⅛"], [0, "⅜"], [0, "⅝"], [0, "⅞"], [49, "←"], [0, "↑"], [0, "→"], [0, "↓"], [0, "↔"], [0, "↕"], [0, "↖"], [0, "↗"], [0, "↘"], [0, "↙"], [0, "↚"], [0, "↛"], [1, { v: "↝", n: 824, o: "↝̸" }], [0, "↞"], [0, "↟"], [0, "↠"], [0, "↡"], [0, "↢"], [0, "↣"], [0, "↤"], [0, "↥"], [0, "↦"], [0, "↧"], [1, "↩"], [0, "↪"], [0, "↫"], [0, "↬"], [0, "↭"], [0, "↮"], [1, "↰"], [0, "↱"], [0, "↲"], [0, "↳"], [1, "↵"], [0, "↶"], [0, "↷"], [2, "↺"], [0, "↻"], [0, "↼"], [0, "↽"], [0, "↾"], [0, "↿"], [0, "⇀"], [0, "⇁"], [0, "⇂"], [0, "⇃"], [0, "⇄"], [0, "⇅"], [0, "⇆"], [0, "⇇"], [0, "⇈"], [0, "⇉"], [0, "⇊"], [0, "⇋"], [0, "⇌"], [0, "⇍"], [0, "⇎"], [0, "⇏"], [0, "⇐"], [0, "⇑"], [0, "⇒"], [0, "⇓"], [0, "⇔"], [0, "⇕"], [0, "⇖"], [0, "⇗"], [0, "⇘"], [0, "⇙"], [0, "⇚"], [0, "⇛"], [1, "⇝"], [6, "⇤"], [0, "⇥"], [15, "⇵"], [7, "⇽"], [0, "⇾"], [0, "⇿"], [0, "∀"], [0, "∁"], [0, { v: "∂", n: 824, o: "∂̸" }], [0, "∃"], [0, "∄"], [0, "∅"], [1, "∇"], [0, "∈"], [0, "∉"], [1, "∋"], [0, "∌"], [2, "∏"], [0, "∐"], [0, "∑"], [0, "−"], [0, "∓"], [0, "∔"], [1, "∖"], [0, "∗"], [0, "∘"], [1, "√"], [2, "∝"], [0, "∞"], [0, "∟"], [0, { v: "∠", n: 8402, o: "∠⃒" }], [0, "∡"], [0, "∢"], [0, "∣"], [0, "∤"], [0, "∥"], [0, "∦"], [0, "∧"], [0, "∨"], [0, { v: "∩", n: 65024, o: "∩︀" }], [0, { v: "∪", n: 65024, o: "∪︀" }], [0, "∫"], [0, "∬"], [0, "∭"], [0, "∮"], [0, "∯"], [0, "∰"], [0, "∱"], [0, "∲"], [0, "∳"], [0, "∴"], [0, "∵"], [0, "∶"], [0, "∷"], [0, "∸"], [1, "∺"], [0, "∻"], [0, { v: "∼", n: 8402, o: "∼⃒" }], [0, { v: "∽", n: 817, o: "∽̱" }], [0, { v: "∾", n: 819, o: "∾̳" }], [0, "∿"], [0, "≀"], [0, "≁"], [0, { v: "≂", n: 824, o: "≂̸" }], [0, "≃"], [0, "≄"], [0, "≅"], [0, "≆"], [0, "≇"], [0, "≈"], [0, "≉"], [0, "≊"], [0, { v: "≋", n: 824, o: "≋̸" }], [0, "≌"], [0, { v: "≍", n: 8402, o: "≍⃒" }], [0, { v: "≎", n: 824, o: "≎̸" }], [0, { v: "≏", n: 824, o: "≏̸" }], [0, { v: "≐", n: 824, o: "≐̸" }], [0, "≑"], [0, "≒"], [0, "≓"], [0, "≔"], [0, "≕"], [0, "≖"], [0, "≗"], [1, "≙"], [0, "≚"], [1, "≜"], [2, "≟"], [0, "≠"], [0, { v: "≡", n: 8421, o: "≡⃥" }], [0, "≢"], [1, { v: "≤", n: 8402, o: "≤⃒" }], [0, { v: "≥", n: 8402, o: "≥⃒" }], [0, { v: "≦", n: 824, o: "≦̸" }], [0, { v: "≧", n: 824, o: "≧̸" }], [0, { v: "≨", n: 65024, o: "≨︀" }], [0, { v: "≩", n: 65024, o: "≩︀" }], [0, { v: "≪", n: new Map(/* @__PURE__ */ restoreDiff([[824, "≪̸"], [7577, "≪⃒"]])) }], [0, { v: "≫", n: new Map(/* @__PURE__ */ restoreDiff([[824, "≫̸"], [7577, "≫⃒"]])) }], [0, "≬"], [0, "≭"], [0, "≮"], [0, "≯"], [0, "≰"], [0, "≱"], [0, "≲"], [0, "≳"], [0, "≴"], [0, "≵"], [0, "≶"], [0, "≷"], [0, "≸"], [0, "≹"], [0, "≺"], [0, "≻"], [0, "≼"], [0, "≽"], [0, "≾"], [0, { v: "≿", n: 824, o: "≿̸" }], [0, "⊀"], [0, "⊁"], [0, { v: "⊂", n: 8402, o: "⊂⃒" }], [0, { v: "⊃", n: 8402, o: "⊃⃒" }], [0, "⊄"], [0, "⊅"], [0, "⊆"], [0, "⊇"], [0, "⊈"], [0, "⊉"], [0, { v: "⊊", n: 65024, o: "⊊︀" }], [0, { v: "⊋", n: 65024, o: "⊋︀" }], [1, "⊍"], [0, "⊎"], [0, { v: "⊏", n: 824, o: "⊏̸" }], [0, { v: "⊐", n: 824, o: "⊐̸" }], [0, "⊑"], [0, "⊒"], [0, { v: "⊓", n: 65024, o: "⊓︀" }], [0, { v: "⊔", n: 65024, o: "⊔︀" }], [0, "⊕"], [0, "⊖"], [0, "⊗"], [0, "⊘"], [0, "⊙"], [0, "⊚"], [0, "⊛"], [1, "⊝"], [0, "⊞"], [0, "⊟"], [0, "⊠"], [0, "⊡"], [0, "⊢"], [0, "⊣"], [0, "⊤"], [0, "⊥"], [1, "⊧"], [0, "⊨"], [0, "⊩"], [0, "⊪"], [0, "⊫"], [0, "⊬"], [0, "⊭"], [0, "⊮"], [0, "⊯"], [0, "⊰"], [1, "⊲"], [0, "⊳"], [0, { v: "⊴", n: 8402, o: "⊴⃒" }], [0, { v: "⊵", n: 8402, o: "⊵⃒" }], [0, "⊶"], [0, "⊷"], [0, "⊸"], [0, "⊹"], [0, "⊺"], [0, "⊻"], [1, "⊽"], [0, "⊾"], [0, "⊿"], [0, "⋀"], [0, "⋁"], [0, "⋂"], [0, "⋃"], [0, "⋄"], [0, "⋅"], [0, "⋆"], [0, "⋇"], [0, "⋈"], [0, "⋉"], [0, "⋊"], [0, "⋋"], [0, "⋌"], [0, "⋍"], [0, "⋎"], [0, "⋏"], [0, "⋐"], [0, "⋑"], [0, "⋒"], [0, "⋓"], [0, "⋔"], [0, "⋕"], [0, "⋖"], [0, "⋗"], [0, { v: "⋘", n: 824, o: "⋘̸" }], [0, { v: "⋙", n: 824, o: "⋙̸" }], [0, { v: "⋚", n: 65024, o: "⋚︀" }], [0, { v: "⋛", n: 65024, o: "⋛︀" }], [2, "⋞"], [0, "⋟"], [0, "⋠"], [0, "⋡"], [0, "⋢"], [0, "⋣"], [2, "⋦"], [0, "⋧"], [0, "⋨"], [0, "⋩"], [0, "⋪"], [0, "⋫"], [0, "⋬"], [0, "⋭"], [0, "⋮"], [0, "⋯"], [0, "⋰"], [0, "⋱"], [0, "⋲"], [0, "⋳"], [0, "⋴"], [0, { v: "⋵", n: 824, o: "⋵̸" }], [0, "⋶"], [0, "⋷"], [1, { v: "⋹", n: 824, o: "⋹̸" }], [0, "⋺"], [0, "⋻"], [0, "⋼"], [0, "⋽"], [0, "⋾"], [6, "⌅"], [0, "⌆"], [1, "⌈"], [0, "⌉"], [0, "⌊"], [0, "⌋"], [0, "⌌"], [0, "⌍"], [0, "⌎"], [0, "⌏"], [0, "⌐"], [1, "⌒"], [0, "⌓"], [1, "⌕"], [0, "⌖"], [5, "⌜"], [0, "⌝"], [0, "⌞"], [0, "⌟"], [2, "⌢"], [0, "⌣"], [9, "⌭"], [0, "⌮"], [7, "⌶"], [6, "⌽"], [1, "⌿"], [60, "⍼"], [51, "⎰"], [0, "⎱"], [2, "⎴"], [0, "⎵"], [0, "⎶"], [37, "⏜"], [0, "⏝"], [0, "⏞"], [0, "⏟"], [2, "⏢"], [4, "⏧"], [59, "␣"], [164, "Ⓢ"], [55, "─"], [1, "│"], [9, "┌"], [3, "┐"], [3, "└"], [3, "┘"], [3, "├"], [7, "┤"], [7, "┬"], [7, "┴"], [7, "┼"], [19, "═"], [0, "║"], [0, "╒"], [0, "╓"], [0, "╔"], [0, "╕"], [0, "╖"], [0, "╗"], [0, "╘"], [0, "╙"], [0, "╚"], [0, "╛"], [0, "╜"], [0, "╝"], [0, "╞"], [0, "╟"], [0, "╠"], [0, "╡"], [0, "╢"], [0, "╣"], [0, "╤"], [0, "╥"], [0, "╦"], [0, "╧"], [0, "╨"], [0, "╩"], [0, "╪"], [0, "╫"], [0, "╬"], [19, "▀"], [3, "▄"], [3, "█"], [8, "░"], [0, "▒"], [0, "▓"], [13, "□"], [8, "▪"], [0, "▫"], [1, "▭"], [0, "▮"], [2, "▱"], [1, "△"], [0, "▴"], [0, "▵"], [2, "▸"], [0, "▹"], [3, "▽"], [0, "▾"], [0, "▿"], [2, "◂"], [0, "◃"], [6, "◊"], [0, "○"], [32, "◬"], [2, "◯"], [8, "◸"], [0, "◹"], [0, "◺"], [0, "◻"], [0, "◼"], [8, "★"], [0, "☆"], [7, "☎"], [49, "♀"], [1, "♂"], [29, "♠"], [2, "♣"], [1, "♥"], [0, "♦"], [3, "♪"], [2, "♭"], [0, "♮"], [0, "♯"], [163, "✓"], [3, "✗"], [8, "✠"], [21, "✶"], [33, "❘"], [25, "❲"], [0, "❳"], [84, "⟈"], [0, "⟉"], [28, "⟦"], [0, "⟧"], [0, "⟨"], [0, "⟩"], [0, "⟪"], [0, "⟫"], [0, "⟬"], [0, "⟭"], [7, "⟵"], [0, "⟶"], [0, "⟷"], [0, "⟸"], [0, "⟹"], [0, "⟺"], [1, "⟼"], [2, "⟿"], [258, "⤂"], [0, "⤃"], [0, "⤄"], [0, "⤅"], [6, "⤌"], [0, "⤍"], [0, "⤎"], [0, "⤏"], [0, "⤐"], [0, "⤑"], [0, "⤒"], [0, "⤓"], [2, "⤖"], [2, "⤙"], [0, "⤚"], [0, "⤛"], [0, "⤜"], [0, "⤝"], [0, "⤞"], [0, "⤟"], [0, "⤠"], [2, "⤣"], [0, "⤤"], [0, "⤥"], [0, "⤦"], [0, "⤧"], [0, "⤨"], [0, "⤩"], [0, "⤪"], [8, { v: "⤳", n: 824, o: "⤳̸" }], [1, "⤵"], [0, "⤶"], [0, "⤷"], [0, "⤸"], [0, "⤹"], [2, "⤼"], [0, "⤽"], [7, "⥅"], [2, "⥈"], [0, "⥉"], [0, "⥊"], [0, "⥋"], [2, "⥎"], [0, "⥏"], [0, "⥐"], [0, "⥑"], [0, "⥒"], [0, "⥓"], [0, "⥔"], [0, "⥕"], [0, "⥖"], [0, "⥗"], [0, "⥘"], [0, "⥙"], [0, "⥚"], [0, "⥛"], [0, "⥜"], [0, "⥝"], [0, "⥞"], [0, "⥟"], [0, "⥠"], [0, "⥡"], [0, "⥢"], [0, "⥣"], [0, "⥤"], [0, "⥥"], [0, "⥦"], [0, "⥧"], [0, "⥨"], [0, "⥩"], [0, "⥪"], [0, "⥫"], [0, "⥬"], [0, "⥭"], [0, "⥮"], [0, "⥯"], [0, "⥰"], [0, "⥱"], [0, "⥲"], [0, "⥳"], [0, "⥴"], [0, "⥵"], [0, "⥶"], [1, "⥸"], [0, "⥹"], [1, "⥻"], [0, "⥼"], [0, "⥽"], [0, "⥾"], [0, "⥿"], [5, "⦅"], [0, "⦆"], [4, "⦋"], [0, "⦌"], [0, "⦍"], [0, "⦎"], [0, "⦏"], [0, "⦐"], [0, "⦑"], [0, "⦒"], [0, "⦓"], [0, "⦔"], [0, "⦕"], [0, "⦖"], [3, "⦚"], [1, "⦜"], [0, "⦝"], [6, "⦤"], [0, "⦥"], [0, "⦦"], [0, "⦧"], [0, "⦨"], [0, "⦩"], [0, "⦪"], [0, "⦫"], [0, "⦬"], [0, "⦭"], [0, "⦮"], [0, "⦯"], [0, "⦰"], [0, "⦱"], [0, "⦲"], [0, "⦳"], [0, "⦴"], [0, "⦵"], [0, "⦶"], [0, "⦷"], [1, "⦹"], [1, "⦻"], [0, "⦼"], [1, "⦾"], [0, "⦿"], [0, "⧀"], [0, "⧁"], [0, "⧂"], [0, "⧃"], [0, "⧄"], [0, "⧅"], [3, "⧉"], [3, "⧍"], [0, "⧎"], [0, { v: "⧏", n: 824, o: "⧏̸" }], [0, { v: "⧐", n: 824, o: "⧐̸" }], [11, "⧜"], [0, "⧝"], [0, "⧞"], [4, "⧣"], [0, "⧤"], [0, "⧥"], [5, "⧫"], [8, "⧴"], [1, "⧶"], [9, "⨀"], [0, "⨁"], [0, "⨂"], [1, "⨄"], [1, "⨆"], [5, "⨌"], [0, "⨍"], [2, "⨐"], [0, "⨑"], [0, "⨒"], [0, "⨓"], [0, "⨔"], [0, "⨕"], [0, "⨖"], [0, "⨗"], [10, "⨢"], [0, "⨣"], [0, "⨤"], [0, "⨥"], [0, "⨦"], [0, "⨧"], [1, "⨩"], [0, "⨪"], [2, "⨭"], [0, "⨮"], [0, "⨯"], [0, "⨰"], [0, "⨱"], [1, "⨳"], [0, "⨴"], [0, "⨵"], [0, "⨶"], [0, "⨷"], [0, "⨸"], [0, "⨹"], [0, "⨺"], [0, "⨻"], [0, "⨼"], [2, "⨿"], [0, "⩀"], [1, "⩂"], [0, "⩃"], [0, "⩄"], [0, "⩅"], [0, "⩆"], [0, "⩇"], [0, "⩈"], [0, "⩉"], [0, "⩊"], [0, "⩋"], [0, "⩌"], [0, "⩍"], [2, "⩐"], [2, "⩓"], [0, "⩔"], [0, "⩕"], [0, "⩖"], [0, "⩗"], [0, "⩘"], [1, "⩚"], [0, "⩛"], [0, "⩜"], [0, "⩝"], [1, "⩟"], [6, "⩦"], [3, "⩪"], [2, { v: "⩭", n: 824, o: "⩭̸" }], [0, "⩮"], [0, "⩯"], [0, { v: "⩰", n: 824, o: "⩰̸" }], [0, "⩱"], [0, "⩲"], [0, "⩳"], [0, "⩴"], [0, "⩵"], [1, "⩷"], [0, "⩸"], [0, "⩹"], [0, "⩺"], [0, "⩻"], [0, "⩼"], [0, { v: "⩽", n: 824, o: "⩽̸" }], [0, { v: "⩾", n: 824, o: "⩾̸" }], [0, "⩿"], [0, "⪀"], [0, "⪁"], [0, "⪂"], [0, "⪃"], [0, "⪄"], [0, "⪅"], [0, "⪆"], [0, "⪇"], [0, "⪈"], [0, "⪉"], [0, "⪊"], [0, "⪋"], [0, "⪌"], [0, "⪍"], [0, "⪎"], [0, "⪏"], [0, "⪐"], [0, "⪑"], [0, "⪒"], [0, "⪓"], [0, "⪔"], [0, "⪕"], [0, "⪖"], [0, "⪗"], [0, "⪘"], [0, "⪙"], [0, "⪚"], [2, "⪝"], [0, "⪞"], [0, "⪟"], [0, "⪠"], [0, { v: "⪡", n: 824, o: "⪡̸" }], [0, { v: "⪢", n: 824, o: "⪢̸" }], [1, "⪤"], [0, "⪥"], [0, "⪦"], [0, "⪧"], [0, "⪨"], [0, "⪩"], [0, "⪪"], [0, "⪫"], [0, { v: "⪬", n: 65024, o: "⪬︀" }], [0, { v: "⪭", n: 65024, o: "⪭︀" }], [0, "⪮"], [0, { v: "⪯", n: 824, o: "⪯̸" }], [0, { v: "⪰", n: 824, o: "⪰̸" }], [2, "⪳"], [0, "⪴"], [0, "⪵"], [0, "⪶"], [0, "⪷"], [0, "⪸"], [0, "⪹"], [0, "⪺"], [0, "⪻"], [0, "⪼"], [0, "⪽"], [0, "⪾"], [0, "⪿"], [0, "⫀"], [0, "⫁"], [0, "⫂"], [0, "⫃"], [0, "⫄"], [0, { v: "⫅", n: 824, o: "⫅̸" }], [0, { v: "⫆", n: 824, o: "⫆̸" }], [0, "⫇"], [0, "⫈"], [2, { v: "⫋", n: 65024, o: "⫋︀" }], [0, { v: "⫌", n: 65024, o: "⫌︀" }], [2, "⫏"], [0, "⫐"], [0, "⫑"], [0, "⫒"], [0, "⫓"], [0, "⫔"], [0, "⫕"], [0, "⫖"], [0, "⫗"], [0, "⫘"], [0, "⫙"], [0, "⫚"], [0, "⫛"], [8, "⫤"], [1, "⫦"], [0, "⫧"], [0, "⫨"], [0, "⫩"], [1, "⫫"], [0, "⫬"], [0, "⫭"], [0, "⫮"], [0, "⫯"], [0, "⫰"], [0, "⫱"], [0, "⫲"], [0, "⫳"], [9, { v: "⫽", n: 8421, o: "⫽⃥" }], [44343, { n: new Map(/* @__PURE__ */ restoreDiff([[56476, "𝒜"], [1, "𝒞"], [0, "𝒟"], [2, "𝒢"], [2, "𝒥"], [0, "𝒦"], [2, "𝒩"], [0, "𝒪"], [0, "𝒫"], [0, "𝒬"], [1, "𝒮"], [0, "𝒯"], [0, "𝒰"], [0, "𝒱"], [0, "𝒲"], [0, "𝒳"], [0, "𝒴"], [0, "𝒵"], [0, "𝒶"], [0, "𝒷"], [0, "𝒸"], [0, "𝒹"], [1, "𝒻"], [1, "𝒽"], [0, "𝒾"], [0, "𝒿"], [0, "𝓀"], [0, "𝓁"], [0, "𝓂"], [0, "𝓃"], [1, "𝓅"], [0, "𝓆"], [0, "𝓇"], [0, "𝓈"], [0, "𝓉"], [0, "𝓊"], [0, "𝓋"], [0, "𝓌"], [0, "𝓍"], [0, "𝓎"], [0, "𝓏"], [52, "𝔄"], [0, "𝔅"], [1, "𝔇"], [0, "𝔈"], [0, "𝔉"], [0, "𝔊"], [2, "𝔍"], [0, "𝔎"], [0, "𝔏"], [0, "𝔐"], [0, "𝔑"], [0, "𝔒"], [0, "𝔓"], [0, "𝔔"], [1, "𝔖"], [0, "𝔗"], [0, "𝔘"], [0, "𝔙"], [0, "𝔚"], [0, "𝔛"], [0, "𝔜"], [1, "𝔞"], [0, "𝔟"], [0, "𝔠"], [0, "𝔡"], [0, "𝔢"], [0, "𝔣"], [0, "𝔤"], [0, "𝔥"], [0, "𝔦"], [0, "𝔧"], [0, "𝔨"], [0, "𝔩"], [0, "𝔪"], [0, "𝔫"], [0, "𝔬"], [0, "𝔭"], [0, "𝔮"], [0, "𝔯"], [0, "𝔰"], [0, "𝔱"], [0, "𝔲"], [0, "𝔳"], [0, "𝔴"], [0, "𝔵"], [0, "𝔶"], [0, "𝔷"], [0, "𝔸"], [0, "𝔹"], [1, "𝔻"], [0, "𝔼"], [0, "𝔽"], [0, "𝔾"], [1, "𝕀"], [0, "𝕁"], [0, "𝕂"], [0, "𝕃"], [0, "𝕄"], [1, "𝕆"], [3, "𝕊"], [0, "𝕋"], [0, "𝕌"], [0, "𝕍"], [0, "𝕎"], [0, "𝕏"], [0, "𝕐"], [1, "𝕒"], [0, "𝕓"], [0, "𝕔"], [0, "𝕕"], [0, "𝕖"], [0, "𝕗"], [0, "𝕘"], [0, "𝕙"], [0, "𝕚"], [0, "𝕛"], [0, "𝕜"], [0, "𝕝"], [0, "𝕞"], [0, "𝕟"], [0, "𝕠"], [0, "𝕡"], [0, "𝕢"], [0, "𝕣"], [0, "𝕤"], [0, "𝕥"], [0, "𝕦"], [0, "𝕧"], [0, "𝕨"], [0, "𝕩"], [0, "𝕪"], [0, "𝕫"]])) }], [8906, "ff"], [0, "fi"], [0, "fl"], [0, "ffi"], [0, "ffl"]])); + +// ../../node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/escape.js +var xmlReplacer = /["&'<>$\x80-\uFFFF]/g; +var xmlCodeMap = /* @__PURE__ */ new Map([ + [34, """], + [38, "&"], + [39, "'"], + [60, "<"], + [62, ">"] +]); +var getCodePoint = String.prototype.codePointAt != null ? (str, index2) => str.codePointAt(index2) : (c, index2) => (c.charCodeAt(index2) & 64512) === 55296 ? (c.charCodeAt(index2) - 55296) * 1024 + c.charCodeAt(index2 + 1) - 56320 + 65536 : c.charCodeAt(index2); +function encodeXML(str) { + let ret = ""; + let lastIdx = 0; + let match2; + while ((match2 = xmlReplacer.exec(str)) !== null) { + const i = match2.index; + const char = str.charCodeAt(i); + const next2 = xmlCodeMap.get(char); + if (next2 !== void 0) { + ret += str.substring(lastIdx, i) + next2; + lastIdx = i + 1; + } else { + ret += `${str.substring(lastIdx, i)}&#x${getCodePoint(str, i).toString(16)};`; + lastIdx = xmlReplacer.lastIndex += Number((char & 64512) === 55296); + } + } + return ret + str.substr(lastIdx); +} +function getEscaper(regex, map4) { + return function escape3(data2) { + let match2; + let lastIdx = 0; + let result = ""; + while (match2 = regex.exec(data2)) { + if (lastIdx !== match2.index) { + result += data2.substring(lastIdx, match2.index); + } + result += map4.get(match2[0].charCodeAt(0)); + lastIdx = match2.index + 1; + } + return result + data2.substring(lastIdx); + }; +} +var escapeUTF8 = getEscaper(/[&<>'"]/g, xmlCodeMap); +var escapeAttribute = getEscaper(/["&\u00A0]/g, /* @__PURE__ */ new Map([ + [34, """], + [38, "&"], + [160, " "] +])); +var escapeText = getEscaper(/[&<>\u00A0]/g, /* @__PURE__ */ new Map([ + [38, "&"], + [60, "<"], + [62, ">"], + [160, " "] +])); + +// ../../node_modules/.pnpm/entities@4.5.0/node_modules/entities/lib/esm/index.js +var EntityLevel; +(function(EntityLevel2) { + EntityLevel2[EntityLevel2["XML"] = 0] = "XML"; + EntityLevel2[EntityLevel2["HTML"] = 1] = "HTML"; +})(EntityLevel || (EntityLevel = {})); +var EncodingMode; +(function(EncodingMode2) { + EncodingMode2[EncodingMode2["UTF8"] = 0] = "UTF8"; + EncodingMode2[EncodingMode2["ASCII"] = 1] = "ASCII"; + EncodingMode2[EncodingMode2["Extensive"] = 2] = "Extensive"; + EncodingMode2[EncodingMode2["Attribute"] = 3] = "Attribute"; + EncodingMode2[EncodingMode2["Text"] = 4] = "Text"; +})(EncodingMode || (EncodingMode = {})); + +// ../../node_modules/.pnpm/dom-serializer@2.0.0/node_modules/dom-serializer/lib/esm/foreignNames.js +var elementNames = new Map([ + "altGlyph", + "altGlyphDef", + "altGlyphItem", + "animateColor", + "animateMotion", + "animateTransform", + "clipPath", + "feBlend", + "feColorMatrix", + "feComponentTransfer", + "feComposite", + "feConvolveMatrix", + "feDiffuseLighting", + "feDisplacementMap", + "feDistantLight", + "feDropShadow", + "feFlood", + "feFuncA", + "feFuncB", + "feFuncG", + "feFuncR", + "feGaussianBlur", + "feImage", + "feMerge", + "feMergeNode", + "feMorphology", + "feOffset", + "fePointLight", + "feSpecularLighting", + "feSpotLight", + "feTile", + "feTurbulence", + "foreignObject", + "glyphRef", + "linearGradient", + "radialGradient", + "textPath" +].map((val2) => [val2.toLowerCase(), val2])); +var attributeNames = new Map([ + "definitionURL", + "attributeName", + "attributeType", + "baseFrequency", + "baseProfile", + "calcMode", + "clipPathUnits", + "diffuseConstant", + "edgeMode", + "filterUnits", + "glyphRef", + "gradientTransform", + "gradientUnits", + "kernelMatrix", + "kernelUnitLength", + "keyPoints", + "keySplines", + "keyTimes", + "lengthAdjust", + "limitingConeAngle", + "markerHeight", + "markerUnits", + "markerWidth", + "maskContentUnits", + "maskUnits", + "numOctaves", + "pathLength", + "patternContentUnits", + "patternTransform", + "patternUnits", + "pointsAtX", + "pointsAtY", + "pointsAtZ", + "preserveAlpha", + "preserveAspectRatio", + "primitiveUnits", + "refX", + "refY", + "repeatCount", + "repeatDur", + "requiredExtensions", + "requiredFeatures", + "specularConstant", + "specularExponent", + "spreadMethod", + "startOffset", + "stdDeviation", + "stitchTiles", + "surfaceScale", + "systemLanguage", + "tableValues", + "targetX", + "targetY", + "textLength", + "viewBox", + "viewTarget", + "xChannelSelector", + "yChannelSelector", + "zoomAndPan" +].map((val2) => [val2.toLowerCase(), val2])); + +// ../../node_modules/.pnpm/dom-serializer@2.0.0/node_modules/dom-serializer/lib/esm/index.js +var unencodedElements = /* @__PURE__ */ new Set([ + "style", + "script", + "xmp", + "iframe", + "noembed", + "noframes", + "plaintext", + "noscript" +]); +function replaceQuotes(value) { + return value.replace(/"/g, """); +} +function formatAttributes(attributes2, opts) { + var _a3; + if (!attributes2) + return; + const encode3 = ((_a3 = opts.encodeEntities) !== null && _a3 !== void 0 ? _a3 : opts.decodeEntities) === false ? replaceQuotes : opts.xmlMode || opts.encodeEntities !== "utf8" ? encodeXML : escapeAttribute; + return Object.keys(attributes2).map((key) => { + var _a4, _b; + const value = (_a4 = attributes2[key]) !== null && _a4 !== void 0 ? _a4 : ""; + if (opts.xmlMode === "foreign") { + key = (_b = attributeNames.get(key)) !== null && _b !== void 0 ? _b : key; + } + if (!opts.emptyAttrs && !opts.xmlMode && value === "") { + return key; + } + return `${key}="${encode3(value)}"`; + }).join(" "); +} +var singleTag = /* @__PURE__ */ new Set([ + "area", + "base", + "basefont", + "br", + "col", + "command", + "embed", + "frame", + "hr", + "img", + "input", + "isindex", + "keygen", + "link", + "meta", + "param", + "source", + "track", + "wbr" +]); +function render(node, options = {}) { + const nodes = "length" in node ? node : [node]; + let output = ""; + for (let i = 0; i < nodes.length; i++) { + output += renderNode(nodes[i], options); + } + return output; +} +var esm_default = render; +function renderNode(node, options) { + switch (node.type) { + case Root: + return render(node.children, options); + case Doctype: + case Directive: + return renderDirective(node); + case Comment: + return renderComment(node); + case CDATA: + return renderCdata(node); + case Script: + case Style: + case Tag: + return renderTag(node, options); + case Text: + return renderText(node, options); + } +} +var foreignModeIntegrationPoints = /* @__PURE__ */ new Set([ + "mi", + "mo", + "mn", + "ms", + "mtext", + "annotation-xml", + "foreignObject", + "desc", + "title" +]); +var foreignElements = /* @__PURE__ */ new Set(["svg", "math"]); +function renderTag(elem, opts) { + var _a3; + if (opts.xmlMode === "foreign") { + elem.name = (_a3 = elementNames.get(elem.name)) !== null && _a3 !== void 0 ? _a3 : elem.name; + if (elem.parent && foreignModeIntegrationPoints.has(elem.parent.name)) { + opts = { ...opts, xmlMode: false }; + } + } + if (!opts.xmlMode && foreignElements.has(elem.name)) { + opts = { ...opts, xmlMode: "foreign" }; + } + let tag = `<${elem.name}`; + const attribs = formatAttributes(elem.attribs, opts); + if (attribs) { + tag += ` ${attribs}`; + } + if (elem.children.length === 0 && (opts.xmlMode ? opts.selfClosingTags !== false : opts.selfClosingTags && singleTag.has(elem.name))) { + if (!opts.xmlMode) + tag += " "; + tag += "/>"; + } else { + tag += ">"; + if (elem.children.length > 0) { + tag += render(elem.children, opts); + } + if (opts.xmlMode || !singleTag.has(elem.name)) { + tag += ``; + } + } + return tag; +} +function renderDirective(elem) { + return `<${elem.data}>`; +} +function renderText(elem, opts) { + var _a3; + let data2 = elem.data || ""; + if (((_a3 = opts.encodeEntities) !== null && _a3 !== void 0 ? _a3 : opts.decodeEntities) !== false && !(!opts.xmlMode && elem.parent && unencodedElements.has(elem.parent.name))) { + data2 = opts.xmlMode || opts.encodeEntities !== "utf8" ? encodeXML(data2) : escapeText(data2); + } + return data2; +} +function renderCdata(elem) { + return ``; +} +function renderComment(elem) { + return ``; +} + +// ../../node_modules/.pnpm/domutils@3.2.2/node_modules/domutils/lib/esm/stringify.js +function getOuterHTML(node, options) { + return esm_default(node, options); +} +function getInnerHTML(node, options) { + return hasChildren(node) ? node.children.map((node2) => getOuterHTML(node2, options)).join("") : ""; +} +function getText(node) { + if (Array.isArray(node)) + return node.map(getText).join(""); + if (isTag2(node)) + return node.name === "br" ? "\n" : getText(node.children); + if (isCDATA(node)) + return getText(node.children); + if (isText(node)) + return node.data; + return ""; +} +function textContent(node) { + if (Array.isArray(node)) + return node.map(textContent).join(""); + if (hasChildren(node) && !isComment(node)) { + return textContent(node.children); + } + if (isText(node)) + return node.data; + return ""; +} +function innerText(node) { + if (Array.isArray(node)) + return node.map(innerText).join(""); + if (hasChildren(node) && (node.type === ElementType.Tag || isCDATA(node))) { + return innerText(node.children); + } + if (isText(node)) + return node.data; + return ""; +} + +// ../../node_modules/.pnpm/domutils@3.2.2/node_modules/domutils/lib/esm/traversal.js +function getChildren(elem) { + return hasChildren(elem) ? elem.children : []; +} +function getParent(elem) { + return elem.parent || null; +} +function getSiblings(elem) { + const parent2 = getParent(elem); + if (parent2 != null) + return getChildren(parent2); + const siblings2 = [elem]; + let { prev: prev2, next: next2 } = elem; + while (prev2 != null) { + siblings2.unshift(prev2); + ({ prev: prev2 } = prev2); + } + while (next2 != null) { + siblings2.push(next2); + ({ next: next2 } = next2); + } + return siblings2; +} +function getAttributeValue(elem, name2) { + var _a3; + return (_a3 = elem.attribs) === null || _a3 === void 0 ? void 0 : _a3[name2]; +} +function hasAttrib(elem, name2) { + return elem.attribs != null && Object.prototype.hasOwnProperty.call(elem.attribs, name2) && elem.attribs[name2] != null; +} +function getName(elem) { + return elem.name; +} +function nextElementSibling(elem) { + let { next: next2 } = elem; + while (next2 !== null && !isTag2(next2)) + ({ next: next2 } = next2); + return next2; +} +function prevElementSibling(elem) { + let { prev: prev2 } = elem; + while (prev2 !== null && !isTag2(prev2)) + ({ prev: prev2 } = prev2); + return prev2; +} + +// ../../node_modules/.pnpm/domutils@3.2.2/node_modules/domutils/lib/esm/manipulation.js +function removeElement(elem) { + if (elem.prev) + elem.prev.next = elem.next; + if (elem.next) + elem.next.prev = elem.prev; + if (elem.parent) { + const childs = elem.parent.children; + const childsIndex = childs.lastIndexOf(elem); + if (childsIndex >= 0) { + childs.splice(childsIndex, 1); + } + } + elem.next = null; + elem.prev = null; + elem.parent = null; +} +function replaceElement(elem, replacement) { + const prev2 = replacement.prev = elem.prev; + if (prev2) { + prev2.next = replacement; + } + const next2 = replacement.next = elem.next; + if (next2) { + next2.prev = replacement; + } + const parent2 = replacement.parent = elem.parent; + if (parent2) { + const childs = parent2.children; + childs[childs.lastIndexOf(elem)] = replacement; + elem.parent = null; + } +} +function appendChild(parent2, child) { + removeElement(child); + child.next = null; + child.parent = parent2; + if (parent2.children.push(child) > 1) { + const sibling = parent2.children[parent2.children.length - 2]; + sibling.next = child; + child.prev = sibling; + } else { + child.prev = null; + } +} +function append(elem, next2) { + removeElement(next2); + const { parent: parent2 } = elem; + const currNext = elem.next; + next2.next = currNext; + next2.prev = elem; + elem.next = next2; + next2.parent = parent2; + if (currNext) { + currNext.prev = next2; + if (parent2) { + const childs = parent2.children; + childs.splice(childs.lastIndexOf(currNext), 0, next2); + } + } else if (parent2) { + parent2.children.push(next2); + } +} +function prependChild(parent2, child) { + removeElement(child); + child.parent = parent2; + child.prev = null; + if (parent2.children.unshift(child) !== 1) { + const sibling = parent2.children[1]; + sibling.prev = child; + child.next = sibling; + } else { + child.next = null; + } +} +function prepend(elem, prev2) { + removeElement(prev2); + const { parent: parent2 } = elem; + if (parent2) { + const childs = parent2.children; + childs.splice(childs.indexOf(elem), 0, prev2); + } + if (elem.prev) { + elem.prev.next = prev2; + } + prev2.parent = parent2; + prev2.prev = elem.prev; + prev2.next = elem; + elem.prev = prev2; +} + +// ../../node_modules/.pnpm/domutils@3.2.2/node_modules/domutils/lib/esm/querying.js +function filter(test2, node, recurse = true, limit = Infinity) { + return find(test2, Array.isArray(node) ? node : [node], recurse, limit); +} +function find(test2, nodes, recurse, limit) { + const result = []; + const nodeStack = [Array.isArray(nodes) ? nodes : [nodes]]; + const indexStack = [0]; + for (; ; ) { + if (indexStack[0] >= nodeStack[0].length) { + if (indexStack.length === 1) { + return result; + } + nodeStack.shift(); + indexStack.shift(); + continue; + } + const elem = nodeStack[0][indexStack[0]++]; + if (test2(elem)) { + result.push(elem); + if (--limit <= 0) + return result; + } + if (recurse && hasChildren(elem) && elem.children.length > 0) { + indexStack.unshift(0); + nodeStack.unshift(elem.children); + } + } +} +function findOneChild(test2, nodes) { + return nodes.find(test2); +} +function findOne(test2, nodes, recurse = true) { + const searchedNodes = Array.isArray(nodes) ? nodes : [nodes]; + for (let i = 0; i < searchedNodes.length; i++) { + const node = searchedNodes[i]; + if (isTag2(node) && test2(node)) { + return node; + } + if (recurse && hasChildren(node) && node.children.length > 0) { + const found = findOne(test2, node.children, true); + if (found) + return found; + } + } + return null; +} +function existsOne(test2, nodes) { + return (Array.isArray(nodes) ? nodes : [nodes]).some((node) => isTag2(node) && test2(node) || hasChildren(node) && existsOne(test2, node.children)); +} +function findAll(test2, nodes) { + const result = []; + const nodeStack = [Array.isArray(nodes) ? nodes : [nodes]]; + const indexStack = [0]; + for (; ; ) { + if (indexStack[0] >= nodeStack[0].length) { + if (nodeStack.length === 1) { + return result; + } + nodeStack.shift(); + indexStack.shift(); + continue; + } + const elem = nodeStack[0][indexStack[0]++]; + if (isTag2(elem) && test2(elem)) + result.push(elem); + if (hasChildren(elem) && elem.children.length > 0) { + indexStack.unshift(0); + nodeStack.unshift(elem.children); + } + } +} + +// ../../node_modules/.pnpm/domutils@3.2.2/node_modules/domutils/lib/esm/legacy.js +var Checks = { + tag_name(name2) { + if (typeof name2 === "function") { + return (elem) => isTag2(elem) && name2(elem.name); + } else if (name2 === "*") { + return isTag2; + } + return (elem) => isTag2(elem) && elem.name === name2; + }, + tag_type(type) { + if (typeof type === "function") { + return (elem) => type(elem.type); + } + return (elem) => elem.type === type; + }, + tag_contains(data2) { + if (typeof data2 === "function") { + return (elem) => isText(elem) && data2(elem.data); + } + return (elem) => isText(elem) && elem.data === data2; + } +}; +function getAttribCheck(attrib, value) { + if (typeof value === "function") { + return (elem) => isTag2(elem) && value(elem.attribs[attrib]); + } + return (elem) => isTag2(elem) && elem.attribs[attrib] === value; +} +function combineFuncs(a, b) { + return (elem) => a(elem) || b(elem); +} +function compileTest(options) { + const funcs = Object.keys(options).map((key) => { + const value = options[key]; + return Object.prototype.hasOwnProperty.call(Checks, key) ? Checks[key](value) : getAttribCheck(key, value); + }); + return funcs.length === 0 ? null : funcs.reduce(combineFuncs); +} +function testElement(options, node) { + const test2 = compileTest(options); + return test2 ? test2(node) : true; +} +function getElements(options, nodes, recurse, limit = Infinity) { + const test2 = compileTest(options); + return test2 ? filter(test2, nodes, recurse, limit) : []; +} +function getElementById(id, nodes, recurse = true) { + if (!Array.isArray(nodes)) + nodes = [nodes]; + return findOne(getAttribCheck("id", id), nodes, recurse); +} +function getElementsByTagName(tagName, nodes, recurse = true, limit = Infinity) { + return filter(Checks["tag_name"](tagName), nodes, recurse, limit); +} +function getElementsByClassName(className, nodes, recurse = true, limit = Infinity) { + return filter(getAttribCheck("class", className), nodes, recurse, limit); +} +function getElementsByTagType(type, nodes, recurse = true, limit = Infinity) { + return filter(Checks["tag_type"](type), nodes, recurse, limit); +} + +// ../../node_modules/.pnpm/domutils@3.2.2/node_modules/domutils/lib/esm/helpers.js +function removeSubsets(nodes) { + let idx = nodes.length; + while (--idx >= 0) { + const node = nodes[idx]; + if (idx > 0 && nodes.lastIndexOf(node, idx - 1) >= 0) { + nodes.splice(idx, 1); + continue; + } + for (let ancestor = node.parent; ancestor; ancestor = ancestor.parent) { + if (nodes.includes(ancestor)) { + nodes.splice(idx, 1); + break; + } + } + } + return nodes; +} +var DocumentPosition; +(function(DocumentPosition2) { + DocumentPosition2[DocumentPosition2["DISCONNECTED"] = 1] = "DISCONNECTED"; + DocumentPosition2[DocumentPosition2["PRECEDING"] = 2] = "PRECEDING"; + DocumentPosition2[DocumentPosition2["FOLLOWING"] = 4] = "FOLLOWING"; + DocumentPosition2[DocumentPosition2["CONTAINS"] = 8] = "CONTAINS"; + DocumentPosition2[DocumentPosition2["CONTAINED_BY"] = 16] = "CONTAINED_BY"; +})(DocumentPosition || (DocumentPosition = {})); +function compareDocumentPosition(nodeA, nodeB) { + const aParents = []; + const bParents = []; + if (nodeA === nodeB) { + return 0; + } + let current = hasChildren(nodeA) ? nodeA : nodeA.parent; + while (current) { + aParents.unshift(current); + current = current.parent; + } + current = hasChildren(nodeB) ? nodeB : nodeB.parent; + while (current) { + bParents.unshift(current); + current = current.parent; + } + const maxIdx = Math.min(aParents.length, bParents.length); + let idx = 0; + while (idx < maxIdx && aParents[idx] === bParents[idx]) { + idx++; + } + if (idx === 0) { + return DocumentPosition.DISCONNECTED; + } + const sharedParent = aParents[idx - 1]; + const siblings2 = sharedParent.children; + const aSibling = aParents[idx]; + const bSibling = bParents[idx]; + if (siblings2.indexOf(aSibling) > siblings2.indexOf(bSibling)) { + if (sharedParent === nodeB) { + return DocumentPosition.FOLLOWING | DocumentPosition.CONTAINED_BY; + } + return DocumentPosition.FOLLOWING; + } + if (sharedParent === nodeA) { + return DocumentPosition.PRECEDING | DocumentPosition.CONTAINS; + } + return DocumentPosition.PRECEDING; +} +function uniqueSort(nodes) { + nodes = nodes.filter((node, i, arr) => !arr.includes(node, i + 1)); + nodes.sort((a, b) => { + const relative = compareDocumentPosition(a, b); + if (relative & DocumentPosition.PRECEDING) { + return -1; + } else if (relative & DocumentPosition.FOLLOWING) { + return 1; + } + return 0; + }); + return nodes; +} + +// ../../node_modules/.pnpm/domutils@3.2.2/node_modules/domutils/lib/esm/feeds.js +function getFeed(doc) { + const feedRoot = getOneElement(isValidFeed, doc); + return !feedRoot ? null : feedRoot.name === "feed" ? getAtomFeed(feedRoot) : getRssFeed(feedRoot); +} +function getAtomFeed(feedRoot) { + var _a3; + const childs = feedRoot.children; + const feed = { + type: "atom", + items: getElementsByTagName("entry", childs).map((item) => { + var _a4; + const { children: children2 } = item; + const entry = { media: getMediaElements(children2) }; + addConditionally(entry, "id", "id", children2); + addConditionally(entry, "title", "title", children2); + const href2 = (_a4 = getOneElement("link", children2)) === null || _a4 === void 0 ? void 0 : _a4.attribs["href"]; + if (href2) { + entry.link = href2; + } + const description = fetch2("summary", children2) || fetch2("content", children2); + if (description) { + entry.description = description; + } + const pubDate = fetch2("updated", children2); + if (pubDate) { + entry.pubDate = new Date(pubDate); + } + return entry; + }) + }; + addConditionally(feed, "id", "id", childs); + addConditionally(feed, "title", "title", childs); + const href = (_a3 = getOneElement("link", childs)) === null || _a3 === void 0 ? void 0 : _a3.attribs["href"]; + if (href) { + feed.link = href; + } + addConditionally(feed, "description", "subtitle", childs); + const updated = fetch2("updated", childs); + if (updated) { + feed.updated = new Date(updated); + } + addConditionally(feed, "author", "email", childs, true); + return feed; +} +function getRssFeed(feedRoot) { + var _a3, _b; + const childs = (_b = (_a3 = getOneElement("channel", feedRoot.children)) === null || _a3 === void 0 ? void 0 : _a3.children) !== null && _b !== void 0 ? _b : []; + const feed = { + type: feedRoot.name.substr(0, 3), + id: "", + items: getElementsByTagName("item", feedRoot.children).map((item) => { + const { children: children2 } = item; + const entry = { media: getMediaElements(children2) }; + addConditionally(entry, "id", "guid", children2); + addConditionally(entry, "title", "title", children2); + addConditionally(entry, "link", "link", children2); + addConditionally(entry, "description", "description", children2); + const pubDate = fetch2("pubDate", children2) || fetch2("dc:date", children2); + if (pubDate) + entry.pubDate = new Date(pubDate); + return entry; + }) + }; + addConditionally(feed, "title", "title", childs); + addConditionally(feed, "link", "link", childs); + addConditionally(feed, "description", "description", childs); + const updated = fetch2("lastBuildDate", childs); + if (updated) { + feed.updated = new Date(updated); + } + addConditionally(feed, "author", "managingEditor", childs, true); + return feed; +} +var MEDIA_KEYS_STRING = ["url", "type", "lang"]; +var MEDIA_KEYS_INT = [ + "fileSize", + "bitrate", + "framerate", + "samplingrate", + "channels", + "duration", + "height", + "width" +]; +function getMediaElements(where) { + return getElementsByTagName("media:content", where).map((elem) => { + const { attribs } = elem; + const media = { + medium: attribs["medium"], + isDefault: !!attribs["isDefault"] + }; + for (const attrib of MEDIA_KEYS_STRING) { + if (attribs[attrib]) { + media[attrib] = attribs[attrib]; + } + } + for (const attrib of MEDIA_KEYS_INT) { + if (attribs[attrib]) { + media[attrib] = parseInt(attribs[attrib], 10); + } + } + if (attribs["expression"]) { + media.expression = attribs["expression"]; + } + return media; + }); +} +function getOneElement(tagName, node) { + return getElementsByTagName(tagName, node, true, 1)[0]; +} +function fetch2(tagName, where, recurse = false) { + return textContent(getElementsByTagName(tagName, where, recurse, 1)).trim(); +} +function addConditionally(obj, prop2, tagName, where, recurse = false) { + const val2 = fetch2(tagName, where, recurse); + if (val2) + obj[prop2] = val2; +} +function isValidFeed(value) { + return value === "rss" || value === "feed" || value === "rdf:RDF"; +} + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/static.js +function render2(that, dom, options) { + if (!that) + return ""; + return that(dom !== null && dom !== void 0 ? dom : that._root.children, null, void 0, options).toString(); +} +function isOptions(dom, options) { + return !options && typeof dom === "object" && dom != null && !("length" in dom) && !("type" in dom); +} +function html(dom, options) { + const toRender = isOptions(dom) ? (options = dom, void 0) : dom; + const opts = { + ...options_default, + ...this === null || this === void 0 ? void 0 : this._options, + ...flatten2(options !== null && options !== void 0 ? options : {}) + }; + return render2(this, toRender, opts); +} +function xml(dom) { + const options = { ...this._options, xmlMode: true }; + return render2(this, dom, options); +} +function text(elements) { + const elems = elements ? elements : this ? this.root() : []; + let ret = ""; + for (let i = 0; i < elems.length; i++) { + ret += textContent(elems[i]); + } + return ret; +} +function parseHTML(data2, context, keepScripts = typeof context === "boolean" ? context : false) { + if (!data2 || typeof data2 !== "string") { + return null; + } + if (typeof context === "boolean") { + keepScripts = context; + } + const parsed = this.load(data2, options_default, false); + if (!keepScripts) { + parsed("script").remove(); + } + return parsed.root()[0].children.slice(); +} +function root() { + return this(this._root); +} +function contains(container, contained) { + if (contained === container) { + return false; + } + let next2 = contained; + while (next2 && next2 !== next2.parent) { + next2 = next2.parent; + if (next2 === container) { + return true; + } + } + return false; +} +function merge(arr1, arr2) { + if (!isArrayLike(arr1) || !isArrayLike(arr2)) { + return; + } + let newLength = arr1.length; + const len = +arr2.length; + for (let i = 0; i < len; i++) { + arr1[newLength++] = arr2[i]; + } + arr1.length = newLength; + return arr1; +} +function isArrayLike(item) { + if (Array.isArray(item)) { + return true; + } + if (typeof item !== "object" || !Object.prototype.hasOwnProperty.call(item, "length") || typeof item.length !== "number" || item.length < 0) { + return false; + } + for (let i = 0; i < item.length; i++) { + if (!(i in item)) { + return false; + } + } + return true; +} + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/api/attributes.js +var attributes_exports = {}; +__export(attributes_exports, { + addClass: () => addClass, + attr: () => attr, + data: () => data, + hasClass: () => hasClass, + prop: () => prop, + removeAttr: () => removeAttr, + removeClass: () => removeClass, + toggleClass: () => toggleClass, + val: () => val +}); + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/utils.js +function isCheerio(maybeCheerio) { + return maybeCheerio.cheerio != null; +} +function camelCase(str) { + return str.replace(/[_.-](\w|$)/g, (_, x) => x.toUpperCase()); +} +function cssCase(str) { + return str.replace(/[A-Z]/g, "-$&").toLowerCase(); +} +function domEach(array, fn) { + const len = array.length; + for (let i = 0; i < len; i++) + fn(array[i], i); + return array; +} +function cloneDom(dom) { + const clone2 = "length" in dom ? Array.prototype.map.call(dom, (el) => cloneNode(el, true)) : [cloneNode(dom, true)]; + const root3 = new Document(clone2); + clone2.forEach((node) => { + node.parent = root3; + }); + return clone2; +} +var CharacterCodes; +(function(CharacterCodes2) { + CharacterCodes2[CharacterCodes2["LowerA"] = 97] = "LowerA"; + CharacterCodes2[CharacterCodes2["LowerZ"] = 122] = "LowerZ"; + CharacterCodes2[CharacterCodes2["UpperA"] = 65] = "UpperA"; + CharacterCodes2[CharacterCodes2["UpperZ"] = 90] = "UpperZ"; + CharacterCodes2[CharacterCodes2["Exclamation"] = 33] = "Exclamation"; +})(CharacterCodes || (CharacterCodes = {})); +function isHtml(str) { + const tagStart = str.indexOf("<"); + if (tagStart < 0 || tagStart > str.length - 3) + return false; + const tagChar = str.charCodeAt(tagStart + 1); + return (tagChar >= CharacterCodes.LowerA && tagChar <= CharacterCodes.LowerZ || tagChar >= CharacterCodes.UpperA && tagChar <= CharacterCodes.UpperZ || tagChar === CharacterCodes.Exclamation) && str.includes(">", tagStart + 2); +} + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/api/attributes.js +var hasOwn = Object.prototype.hasOwnProperty; +var rspace = /\s+/; +var dataAttrPrefix = "data-"; +var primitives = { + null: null, + true: true, + false: false +}; +var rboolean = /^(?:autofocus|autoplay|async|checked|controls|defer|disabled|hidden|loop|multiple|open|readonly|required|scoped|selected)$/i; +var rbrace = /^{[^]*}$|^\[[^]*]$/; +function getAttr(elem, name2, xmlMode) { + var _a3; + if (!elem || !isTag2(elem)) + return void 0; + (_a3 = elem.attribs) !== null && _a3 !== void 0 ? _a3 : elem.attribs = {}; + if (!name2) { + return elem.attribs; + } + if (hasOwn.call(elem.attribs, name2)) { + return !xmlMode && rboolean.test(name2) ? name2 : elem.attribs[name2]; + } + if (elem.name === "option" && name2 === "value") { + return text(elem.children); + } + if (elem.name === "input" && (elem.attribs["type"] === "radio" || elem.attribs["type"] === "checkbox") && name2 === "value") { + return "on"; + } + return void 0; +} +function setAttr(el, name2, value) { + if (value === null) { + removeAttribute(el, name2); + } else { + el.attribs[name2] = `${value}`; + } +} +function attr(name2, value) { + if (typeof name2 === "object" || value !== void 0) { + if (typeof value === "function") { + if (typeof name2 !== "string") { + { + throw new Error("Bad combination of arguments."); + } + } + return domEach(this, (el, i) => { + if (isTag2(el)) + setAttr(el, name2, value.call(el, i, el.attribs[name2])); + }); + } + return domEach(this, (el) => { + if (!isTag2(el)) + return; + if (typeof name2 === "object") { + Object.keys(name2).forEach((objName) => { + const objValue = name2[objName]; + setAttr(el, objName, objValue); + }); + } else { + setAttr(el, name2, value); + } + }); + } + return arguments.length > 1 ? this : getAttr(this[0], name2, this.options.xmlMode); +} +function getProp(el, name2, xmlMode) { + return name2 in el ? el[name2] : !xmlMode && rboolean.test(name2) ? getAttr(el, name2, false) !== void 0 : getAttr(el, name2, xmlMode); +} +function setProp(el, name2, value, xmlMode) { + if (name2 in el) { + el[name2] = value; + } else { + setAttr(el, name2, !xmlMode && rboolean.test(name2) ? value ? "" : null : `${value}`); + } +} +function prop(name2, value) { + var _a3; + if (typeof name2 === "string" && value === void 0) { + const el = this[0]; + if (!el || !isTag2(el)) + return void 0; + switch (name2) { + case "style": { + const property = this.css(); + const keys = Object.keys(property); + keys.forEach((p, i) => { + property[i] = p; + }); + property.length = keys.length; + return property; + } + case "tagName": + case "nodeName": { + return el.name.toUpperCase(); + } + case "href": + case "src": { + const prop2 = (_a3 = el.attribs) === null || _a3 === void 0 ? void 0 : _a3[name2]; + if (typeof URL !== "undefined" && (name2 === "href" && (el.tagName === "a" || el.name === "link") || name2 === "src" && (el.tagName === "img" || el.tagName === "iframe" || el.tagName === "audio" || el.tagName === "video" || el.tagName === "source")) && prop2 !== void 0 && this.options.baseURI) { + return new URL(prop2, this.options.baseURI).href; + } + return prop2; + } + case "innerText": { + return innerText(el); + } + case "textContent": { + return textContent(el); + } + case "outerHTML": + return this.clone().wrap("").parent().html(); + case "innerHTML": + return this.html(); + default: + return getProp(el, name2, this.options.xmlMode); + } + } + if (typeof name2 === "object" || value !== void 0) { + if (typeof value === "function") { + if (typeof name2 === "object") { + throw new Error("Bad combination of arguments."); + } + return domEach(this, (el, i) => { + if (isTag2(el)) { + setProp(el, name2, value.call(el, i, getProp(el, name2, this.options.xmlMode)), this.options.xmlMode); + } + }); + } + return domEach(this, (el) => { + if (!isTag2(el)) + return; + if (typeof name2 === "object") { + Object.keys(name2).forEach((key) => { + const val2 = name2[key]; + setProp(el, key, val2, this.options.xmlMode); + }); + } else { + setProp(el, name2, value, this.options.xmlMode); + } + }); + } + return void 0; +} +function setData(el, name2, value) { + var _a3; + const elem = el; + (_a3 = elem.data) !== null && _a3 !== void 0 ? _a3 : elem.data = {}; + if (typeof name2 === "object") + Object.assign(elem.data, name2); + else if (typeof name2 === "string" && value !== void 0) { + elem.data[name2] = value; + } +} +function readData(el, name2) { + let domNames; + let jsNames; + let value; + if (name2 == null) { + domNames = Object.keys(el.attribs).filter((attrName) => attrName.startsWith(dataAttrPrefix)); + jsNames = domNames.map((domName) => camelCase(domName.slice(dataAttrPrefix.length))); + } else { + domNames = [dataAttrPrefix + cssCase(name2)]; + jsNames = [name2]; + } + for (let idx = 0; idx < domNames.length; ++idx) { + const domName = domNames[idx]; + const jsName = jsNames[idx]; + if (hasOwn.call(el.attribs, domName) && !hasOwn.call(el.data, jsName)) { + value = el.attribs[domName]; + if (hasOwn.call(primitives, value)) { + value = primitives[value]; + } else if (value === String(Number(value))) { + value = Number(value); + } else if (rbrace.test(value)) { + try { + value = JSON.parse(value); + } catch (e) { + } + } + el.data[jsName] = value; + } + } + return name2 == null ? el.data : value; +} +function data(name2, value) { + var _a3; + const elem = this[0]; + if (!elem || !isTag2(elem)) + return; + const dataEl = elem; + (_a3 = dataEl.data) !== null && _a3 !== void 0 ? _a3 : dataEl.data = {}; + if (!name2) { + return readData(dataEl); + } + if (typeof name2 === "object" || value !== void 0) { + domEach(this, (el) => { + if (isTag2(el)) { + if (typeof name2 === "object") + setData(el, name2); + else + setData(el, name2, value); + } + }); + return this; + } + if (hasOwn.call(dataEl.data, name2)) { + return dataEl.data[name2]; + } + return readData(dataEl, name2); +} +function val(value) { + const querying = arguments.length === 0; + const element = this[0]; + if (!element || !isTag2(element)) + return querying ? void 0 : this; + switch (element.name) { + case "textarea": + return this.text(value); + case "select": { + const option = this.find("option:selected"); + if (!querying) { + if (this.attr("multiple") == null && typeof value === "object") { + return this; + } + this.find("option").removeAttr("selected"); + const values = typeof value !== "object" ? [value] : value; + for (let i = 0; i < values.length; i++) { + this.find(`option[value="${values[i]}"]`).attr("selected", ""); + } + return this; + } + return this.attr("multiple") ? option.toArray().map((el) => text(el.children)) : option.attr("value"); + } + case "input": + case "option": + return querying ? this.attr("value") : this.attr("value", value); + } + return void 0; +} +function removeAttribute(elem, name2) { + if (!elem.attribs || !hasOwn.call(elem.attribs, name2)) + return; + delete elem.attribs[name2]; +} +function splitNames(names) { + return names ? names.trim().split(rspace) : []; +} +function removeAttr(name2) { + const attrNames = splitNames(name2); + for (let i = 0; i < attrNames.length; i++) { + domEach(this, (elem) => { + if (isTag2(elem)) + removeAttribute(elem, attrNames[i]); + }); + } + return this; +} +function hasClass(className) { + return this.toArray().some((elem) => { + const clazz = isTag2(elem) && elem.attribs["class"]; + let idx = -1; + if (clazz && className.length) { + while ((idx = clazz.indexOf(className, idx + 1)) > -1) { + const end2 = idx + className.length; + if ((idx === 0 || rspace.test(clazz[idx - 1])) && (end2 === clazz.length || rspace.test(clazz[end2]))) { + return true; + } + } + } + return false; + }); +} +function addClass(value) { + if (typeof value === "function") { + return domEach(this, (el, i) => { + if (isTag2(el)) { + const className = el.attribs["class"] || ""; + addClass.call([el], value.call(el, i, className)); + } + }); + } + if (!value || typeof value !== "string") + return this; + const classNames = value.split(rspace); + const numElements = this.length; + for (let i = 0; i < numElements; i++) { + const el = this[i]; + if (!isTag2(el)) + continue; + const className = getAttr(el, "class", false); + if (!className) { + setAttr(el, "class", classNames.join(" ").trim()); + } else { + let setClass = ` ${className} `; + for (let j = 0; j < classNames.length; j++) { + const appendClass = `${classNames[j]} `; + if (!setClass.includes(` ${appendClass}`)) + setClass += appendClass; + } + setAttr(el, "class", setClass.trim()); + } + } + return this; +} +function removeClass(name2) { + if (typeof name2 === "function") { + return domEach(this, (el, i) => { + if (isTag2(el)) { + removeClass.call([el], name2.call(el, i, el.attribs["class"] || "")); + } + }); + } + const classes = splitNames(name2); + const numClasses = classes.length; + const removeAll = arguments.length === 0; + return domEach(this, (el) => { + if (!isTag2(el)) + return; + if (removeAll) { + el.attribs["class"] = ""; + } else { + const elClasses = splitNames(el.attribs["class"]); + let changed = false; + for (let j = 0; j < numClasses; j++) { + const index2 = elClasses.indexOf(classes[j]); + if (index2 >= 0) { + elClasses.splice(index2, 1); + changed = true; + j--; + } + } + if (changed) { + el.attribs["class"] = elClasses.join(" "); + } + } + }); +} +function toggleClass(value, stateVal) { + if (typeof value === "function") { + return domEach(this, (el, i) => { + if (isTag2(el)) { + toggleClass.call([el], value.call(el, i, el.attribs["class"] || "", stateVal), stateVal); + } + }); + } + if (!value || typeof value !== "string") + return this; + const classNames = value.split(rspace); + const numClasses = classNames.length; + const state = typeof stateVal === "boolean" ? stateVal ? 1 : -1 : 0; + const numElements = this.length; + for (let i = 0; i < numElements; i++) { + const el = this[i]; + if (!isTag2(el)) + continue; + const elementClasses = splitNames(el.attribs["class"]); + for (let j = 0; j < numClasses; j++) { + const index2 = elementClasses.indexOf(classNames[j]); + if (state >= 0 && index2 < 0) { + elementClasses.push(classNames[j]); + } else if (state <= 0 && index2 >= 0) { + elementClasses.splice(index2, 1); + } + } + el.attribs["class"] = elementClasses.join(" "); + } + return this; +} + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/api/traversing.js +var traversing_exports = {}; +__export(traversing_exports, { + add: () => add, + addBack: () => addBack, + children: () => children, + closest: () => closest, + contents: () => contents, + each: () => each, + end: () => end, + eq: () => eq, + filter: () => filter3, + filterArray: () => filterArray, + find: () => find3, + first: () => first, + get: () => get, + has: () => has, + index: () => index, + is: () => is3, + last: () => last, + map: () => map, + next: () => next, + nextAll: () => nextAll, + nextUntil: () => nextUntil, + not: () => not, + parent: () => parent, + parents: () => parents, + parentsUntil: () => parentsUntil, + prev: () => prev, + prevAll: () => prevAll, + prevUntil: () => prevUntil, + siblings: () => siblings, + slice: () => slice, + toArray: () => toArray +}); + +// ../../node_modules/.pnpm/css-what@6.1.0/node_modules/css-what/lib/es/types.js +var SelectorType; +(function(SelectorType2) { + SelectorType2["Attribute"] = "attribute"; + SelectorType2["Pseudo"] = "pseudo"; + SelectorType2["PseudoElement"] = "pseudo-element"; + SelectorType2["Tag"] = "tag"; + SelectorType2["Universal"] = "universal"; + SelectorType2["Adjacent"] = "adjacent"; + SelectorType2["Child"] = "child"; + SelectorType2["Descendant"] = "descendant"; + SelectorType2["Parent"] = "parent"; + SelectorType2["Sibling"] = "sibling"; + SelectorType2["ColumnCombinator"] = "column-combinator"; +})(SelectorType || (SelectorType = {})); +var AttributeAction; +(function(AttributeAction2) { + AttributeAction2["Any"] = "any"; + AttributeAction2["Element"] = "element"; + AttributeAction2["End"] = "end"; + AttributeAction2["Equals"] = "equals"; + AttributeAction2["Exists"] = "exists"; + AttributeAction2["Hyphen"] = "hyphen"; + AttributeAction2["Not"] = "not"; + AttributeAction2["Start"] = "start"; +})(AttributeAction || (AttributeAction = {})); + +// ../../node_modules/.pnpm/css-what@6.1.0/node_modules/css-what/lib/es/parse.js +var reName = /^[^\\#]?(?:\\(?:[\da-f]{1,6}\s?|.)|[\w\-\u00b0-\uFFFF])+/; +var reEscape = /\\([\da-f]{1,6}\s?|(\s)|.)/gi; +var actionTypes = /* @__PURE__ */ new Map([ + [126, AttributeAction.Element], + [94, AttributeAction.Start], + [36, AttributeAction.End], + [42, AttributeAction.Any], + [33, AttributeAction.Not], + [124, AttributeAction.Hyphen] +]); +var unpackPseudos = /* @__PURE__ */ new Set([ + "has", + "not", + "matches", + "is", + "where", + "host", + "host-context" +]); +function isTraversal(selector) { + switch (selector.type) { + case SelectorType.Adjacent: + case SelectorType.Child: + case SelectorType.Descendant: + case SelectorType.Parent: + case SelectorType.Sibling: + case SelectorType.ColumnCombinator: + return true; + default: + return false; + } +} +var stripQuotesFromPseudos = /* @__PURE__ */ new Set(["contains", "icontains"]); +function funescape(_, escaped, escapedWhitespace) { + const high = parseInt(escaped, 16) - 65536; + return high !== high || escapedWhitespace ? escaped : high < 0 ? String.fromCharCode(high + 65536) : String.fromCharCode(high >> 10 | 55296, high & 1023 | 56320); +} +function unescapeCSS(str) { + return str.replace(reEscape, funescape); +} +function isQuote(c) { + return c === 39 || c === 34; +} +function isWhitespace(c) { + return c === 32 || c === 9 || c === 10 || c === 12 || c === 13; +} +function parse(selector) { + const subselects2 = []; + const endIndex = parseSelector(subselects2, `${selector}`, 0); + if (endIndex < selector.length) { + throw new Error(`Unmatched selector: ${selector.slice(endIndex)}`); + } + return subselects2; +} +function parseSelector(subselects2, selector, selectorIndex) { + let tokens = []; + function getName2(offset) { + const match2 = selector.slice(selectorIndex + offset).match(reName); + if (!match2) { + throw new Error(`Expected name, found ${selector.slice(selectorIndex)}`); + } + const [name2] = match2; + selectorIndex += offset + name2.length; + return unescapeCSS(name2); + } + function stripWhitespace(offset) { + selectorIndex += offset; + while (selectorIndex < selector.length && isWhitespace(selector.charCodeAt(selectorIndex))) { + selectorIndex++; + } + } + function readValueWithParenthesis() { + selectorIndex += 1; + const start = selectorIndex; + let counter = 1; + for (; counter > 0 && selectorIndex < selector.length; selectorIndex++) { + if (selector.charCodeAt(selectorIndex) === 40 && !isEscaped(selectorIndex)) { + counter++; + } else if (selector.charCodeAt(selectorIndex) === 41 && !isEscaped(selectorIndex)) { + counter--; + } + } + if (counter) { + throw new Error("Parenthesis not matched"); + } + return unescapeCSS(selector.slice(start, selectorIndex - 1)); + } + function isEscaped(pos) { + let slashCount = 0; + while (selector.charCodeAt(--pos) === 92) + slashCount++; + return (slashCount & 1) === 1; + } + function ensureNotTraversal() { + if (tokens.length > 0 && isTraversal(tokens[tokens.length - 1])) { + throw new Error("Did not expect successive traversals."); + } + } + function addTraversal(type) { + if (tokens.length > 0 && tokens[tokens.length - 1].type === SelectorType.Descendant) { + tokens[tokens.length - 1].type = type; + return; + } + ensureNotTraversal(); + tokens.push({ type }); + } + function addSpecialAttribute(name2, action) { + tokens.push({ + type: SelectorType.Attribute, + name: name2, + action, + value: getName2(1), + namespace: null, + ignoreCase: "quirks" + }); + } + function finalizeSubselector() { + if (tokens.length && tokens[tokens.length - 1].type === SelectorType.Descendant) { + tokens.pop(); + } + if (tokens.length === 0) { + throw new Error("Empty sub-selector"); + } + subselects2.push(tokens); + } + stripWhitespace(0); + if (selector.length === selectorIndex) { + return selectorIndex; + } + loop: + while (selectorIndex < selector.length) { + const firstChar = selector.charCodeAt(selectorIndex); + switch (firstChar) { + case 32: + case 9: + case 10: + case 12: + case 13: { + if (tokens.length === 0 || tokens[0].type !== SelectorType.Descendant) { + ensureNotTraversal(); + tokens.push({ type: SelectorType.Descendant }); + } + stripWhitespace(1); + break; + } + case 62: { + addTraversal(SelectorType.Child); + stripWhitespace(1); + break; + } + case 60: { + addTraversal(SelectorType.Parent); + stripWhitespace(1); + break; + } + case 126: { + addTraversal(SelectorType.Sibling); + stripWhitespace(1); + break; + } + case 43: { + addTraversal(SelectorType.Adjacent); + stripWhitespace(1); + break; + } + case 46: { + addSpecialAttribute("class", AttributeAction.Element); + break; + } + case 35: { + addSpecialAttribute("id", AttributeAction.Equals); + break; + } + case 91: { + stripWhitespace(1); + let name2; + let namespace = null; + if (selector.charCodeAt(selectorIndex) === 124) { + name2 = getName2(1); + } else if (selector.startsWith("*|", selectorIndex)) { + namespace = "*"; + name2 = getName2(2); + } else { + name2 = getName2(0); + if (selector.charCodeAt(selectorIndex) === 124 && selector.charCodeAt(selectorIndex + 1) !== 61) { + namespace = name2; + name2 = getName2(1); + } + } + stripWhitespace(0); + let action = AttributeAction.Exists; + const possibleAction = actionTypes.get(selector.charCodeAt(selectorIndex)); + if (possibleAction) { + action = possibleAction; + if (selector.charCodeAt(selectorIndex + 1) !== 61) { + throw new Error("Expected `=`"); + } + stripWhitespace(2); + } else if (selector.charCodeAt(selectorIndex) === 61) { + action = AttributeAction.Equals; + stripWhitespace(1); + } + let value = ""; + let ignoreCase = null; + if (action !== "exists") { + if (isQuote(selector.charCodeAt(selectorIndex))) { + const quote = selector.charCodeAt(selectorIndex); + let sectionEnd = selectorIndex + 1; + while (sectionEnd < selector.length && (selector.charCodeAt(sectionEnd) !== quote || isEscaped(sectionEnd))) { + sectionEnd += 1; + } + if (selector.charCodeAt(sectionEnd) !== quote) { + throw new Error("Attribute value didn't end"); + } + value = unescapeCSS(selector.slice(selectorIndex + 1, sectionEnd)); + selectorIndex = sectionEnd + 1; + } else { + const valueStart = selectorIndex; + while (selectorIndex < selector.length && (!isWhitespace(selector.charCodeAt(selectorIndex)) && selector.charCodeAt(selectorIndex) !== 93 || isEscaped(selectorIndex))) { + selectorIndex += 1; + } + value = unescapeCSS(selector.slice(valueStart, selectorIndex)); + } + stripWhitespace(0); + const forceIgnore = selector.charCodeAt(selectorIndex) | 32; + if (forceIgnore === 115) { + ignoreCase = false; + stripWhitespace(1); + } else if (forceIgnore === 105) { + ignoreCase = true; + stripWhitespace(1); + } + } + if (selector.charCodeAt(selectorIndex) !== 93) { + throw new Error("Attribute selector didn't terminate"); + } + selectorIndex += 1; + const attributeSelector = { + type: SelectorType.Attribute, + name: name2, + action, + value, + namespace, + ignoreCase + }; + tokens.push(attributeSelector); + break; + } + case 58: { + if (selector.charCodeAt(selectorIndex + 1) === 58) { + tokens.push({ + type: SelectorType.PseudoElement, + name: getName2(2).toLowerCase(), + data: selector.charCodeAt(selectorIndex) === 40 ? readValueWithParenthesis() : null + }); + continue; + } + const name2 = getName2(1).toLowerCase(); + let data2 = null; + if (selector.charCodeAt(selectorIndex) === 40) { + if (unpackPseudos.has(name2)) { + if (isQuote(selector.charCodeAt(selectorIndex + 1))) { + throw new Error(`Pseudo-selector ${name2} cannot be quoted`); + } + data2 = []; + selectorIndex = parseSelector(data2, selector, selectorIndex + 1); + if (selector.charCodeAt(selectorIndex) !== 41) { + throw new Error(`Missing closing parenthesis in :${name2} (${selector})`); + } + selectorIndex += 1; + } else { + data2 = readValueWithParenthesis(); + if (stripQuotesFromPseudos.has(name2)) { + const quot = data2.charCodeAt(0); + if (quot === data2.charCodeAt(data2.length - 1) && isQuote(quot)) { + data2 = data2.slice(1, -1); + } + } + data2 = unescapeCSS(data2); + } + } + tokens.push({ type: SelectorType.Pseudo, name: name2, data: data2 }); + break; + } + case 44: { + finalizeSubselector(); + tokens = []; + stripWhitespace(1); + break; + } + default: { + if (selector.startsWith("/*", selectorIndex)) { + const endIndex = selector.indexOf("*/", selectorIndex + 2); + if (endIndex < 0) { + throw new Error("Comment was not terminated"); + } + selectorIndex = endIndex + 2; + if (tokens.length === 0) { + stripWhitespace(0); + } + break; + } + let namespace = null; + let name2; + if (firstChar === 42) { + selectorIndex += 1; + name2 = "*"; + } else if (firstChar === 124) { + name2 = ""; + if (selector.charCodeAt(selectorIndex + 1) === 124) { + addTraversal(SelectorType.ColumnCombinator); + stripWhitespace(2); + break; + } + } else if (reName.test(selector.slice(selectorIndex))) { + name2 = getName2(0); + } else { + break loop; + } + if (selector.charCodeAt(selectorIndex) === 124 && selector.charCodeAt(selectorIndex + 1) !== 124) { + namespace = name2; + if (selector.charCodeAt(selectorIndex + 1) === 42) { + name2 = "*"; + selectorIndex += 2; + } else { + name2 = getName2(1); + } + } + tokens.push(name2 === "*" ? { type: SelectorType.Universal, namespace } : { type: SelectorType.Tag, name: name2, namespace }); + } + } + } + finalizeSubselector(); + return selectorIndex; +} + +// ../../node_modules/.pnpm/css-select@5.1.0/node_modules/css-select/lib/esm/index.js +var import_boolbase6 = __toESM(require_boolbase(), 1); + +// ../../node_modules/.pnpm/css-select@5.1.0/node_modules/css-select/lib/esm/compile.js +var import_boolbase5 = __toESM(require_boolbase(), 1); + +// ../../node_modules/.pnpm/css-select@5.1.0/node_modules/css-select/lib/esm/sort.js +var procedure = /* @__PURE__ */ new Map([ + [SelectorType.Universal, 50], + [SelectorType.Tag, 30], + [SelectorType.Attribute, 1], + [SelectorType.Pseudo, 0] +]); +function isTraversal2(token) { + return !procedure.has(token.type); +} +var attributes = /* @__PURE__ */ new Map([ + [AttributeAction.Exists, 10], + [AttributeAction.Equals, 8], + [AttributeAction.Not, 7], + [AttributeAction.Start, 6], + [AttributeAction.End, 6], + [AttributeAction.Any, 5] +]); +function sortByProcedure(arr) { + const procs = arr.map(getProcedure); + for (let i = 1; i < arr.length; i++) { + const procNew = procs[i]; + if (procNew < 0) + continue; + for (let j = i - 1; j >= 0 && procNew < procs[j]; j--) { + const token = arr[j + 1]; + arr[j + 1] = arr[j]; + arr[j] = token; + procs[j + 1] = procs[j]; + procs[j] = procNew; + } + } +} +function getProcedure(token) { + var _a3, _b; + let proc = (_a3 = procedure.get(token.type)) !== null && _a3 !== void 0 ? _a3 : -1; + if (token.type === SelectorType.Attribute) { + proc = (_b = attributes.get(token.action)) !== null && _b !== void 0 ? _b : 4; + if (token.action === AttributeAction.Equals && token.name === "id") { + proc = 9; + } + if (token.ignoreCase) { + proc >>= 1; + } + } else if (token.type === SelectorType.Pseudo) { + if (!token.data) { + proc = 3; + } else if (token.name === "has" || token.name === "contains") { + proc = 0; + } else if (Array.isArray(token.data)) { + proc = Math.min(...token.data.map((d) => Math.min(...d.map(getProcedure)))); + if (proc < 0) { + proc = 0; + } + } else { + proc = 2; + } + } + return proc; +} + +// ../../node_modules/.pnpm/css-select@5.1.0/node_modules/css-select/lib/esm/attributes.js +var import_boolbase = __toESM(require_boolbase(), 1); +var reChars = /[-[\]{}()*+?.,\\^$|#\s]/g; +function escapeRegex(value) { + return value.replace(reChars, "\\$&"); +} +var caseInsensitiveAttributes = /* @__PURE__ */ new Set([ + "accept", + "accept-charset", + "align", + "alink", + "axis", + "bgcolor", + "charset", + "checked", + "clear", + "codetype", + "color", + "compact", + "declare", + "defer", + "dir", + "direction", + "disabled", + "enctype", + "face", + "frame", + "hreflang", + "http-equiv", + "lang", + "language", + "link", + "media", + "method", + "multiple", + "nohref", + "noresize", + "noshade", + "nowrap", + "readonly", + "rel", + "rev", + "rules", + "scope", + "scrolling", + "selected", + "shape", + "target", + "text", + "type", + "valign", + "valuetype", + "vlink" +]); +function shouldIgnoreCase(selector, options) { + return typeof selector.ignoreCase === "boolean" ? selector.ignoreCase : selector.ignoreCase === "quirks" ? !!options.quirksMode : !options.xmlMode && caseInsensitiveAttributes.has(selector.name); +} +var attributeRules = { + equals(next2, data2, options) { + const { adapter: adapter2 } = options; + const { name: name2 } = data2; + let { value } = data2; + if (shouldIgnoreCase(data2, options)) { + value = value.toLowerCase(); + return (elem) => { + const attr2 = adapter2.getAttributeValue(elem, name2); + return attr2 != null && attr2.length === value.length && attr2.toLowerCase() === value && next2(elem); + }; + } + return (elem) => adapter2.getAttributeValue(elem, name2) === value && next2(elem); + }, + hyphen(next2, data2, options) { + const { adapter: adapter2 } = options; + const { name: name2 } = data2; + let { value } = data2; + const len = value.length; + if (shouldIgnoreCase(data2, options)) { + value = value.toLowerCase(); + return function hyphenIC(elem) { + const attr2 = adapter2.getAttributeValue(elem, name2); + return attr2 != null && (attr2.length === len || attr2.charAt(len) === "-") && attr2.substr(0, len).toLowerCase() === value && next2(elem); + }; + } + return function hyphen(elem) { + const attr2 = adapter2.getAttributeValue(elem, name2); + return attr2 != null && (attr2.length === len || attr2.charAt(len) === "-") && attr2.substr(0, len) === value && next2(elem); + }; + }, + element(next2, data2, options) { + const { adapter: adapter2 } = options; + const { name: name2, value } = data2; + if (/\s/.test(value)) { + return import_boolbase.default.falseFunc; + } + const regex = new RegExp(`(?:^|\\s)${escapeRegex(value)}(?:$|\\s)`, shouldIgnoreCase(data2, options) ? "i" : ""); + return function element(elem) { + const attr2 = adapter2.getAttributeValue(elem, name2); + return attr2 != null && attr2.length >= value.length && regex.test(attr2) && next2(elem); + }; + }, + exists(next2, { name: name2 }, { adapter: adapter2 }) { + return (elem) => adapter2.hasAttrib(elem, name2) && next2(elem); + }, + start(next2, data2, options) { + const { adapter: adapter2 } = options; + const { name: name2 } = data2; + let { value } = data2; + const len = value.length; + if (len === 0) { + return import_boolbase.default.falseFunc; + } + if (shouldIgnoreCase(data2, options)) { + value = value.toLowerCase(); + return (elem) => { + const attr2 = adapter2.getAttributeValue(elem, name2); + return attr2 != null && attr2.length >= len && attr2.substr(0, len).toLowerCase() === value && next2(elem); + }; + } + return (elem) => { + var _a3; + return !!((_a3 = adapter2.getAttributeValue(elem, name2)) === null || _a3 === void 0 ? void 0 : _a3.startsWith(value)) && next2(elem); + }; + }, + end(next2, data2, options) { + const { adapter: adapter2 } = options; + const { name: name2 } = data2; + let { value } = data2; + const len = -value.length; + if (len === 0) { + return import_boolbase.default.falseFunc; + } + if (shouldIgnoreCase(data2, options)) { + value = value.toLowerCase(); + return (elem) => { + var _a3; + return ((_a3 = adapter2.getAttributeValue(elem, name2)) === null || _a3 === void 0 ? void 0 : _a3.substr(len).toLowerCase()) === value && next2(elem); + }; + } + return (elem) => { + var _a3; + return !!((_a3 = adapter2.getAttributeValue(elem, name2)) === null || _a3 === void 0 ? void 0 : _a3.endsWith(value)) && next2(elem); + }; + }, + any(next2, data2, options) { + const { adapter: adapter2 } = options; + const { name: name2, value } = data2; + if (value === "") { + return import_boolbase.default.falseFunc; + } + if (shouldIgnoreCase(data2, options)) { + const regex = new RegExp(escapeRegex(value), "i"); + return function anyIC(elem) { + const attr2 = adapter2.getAttributeValue(elem, name2); + return attr2 != null && attr2.length >= value.length && regex.test(attr2) && next2(elem); + }; + } + return (elem) => { + var _a3; + return !!((_a3 = adapter2.getAttributeValue(elem, name2)) === null || _a3 === void 0 ? void 0 : _a3.includes(value)) && next2(elem); + }; + }, + not(next2, data2, options) { + const { adapter: adapter2 } = options; + const { name: name2 } = data2; + let { value } = data2; + if (value === "") { + return (elem) => !!adapter2.getAttributeValue(elem, name2) && next2(elem); + } else if (shouldIgnoreCase(data2, options)) { + value = value.toLowerCase(); + return (elem) => { + const attr2 = adapter2.getAttributeValue(elem, name2); + return (attr2 == null || attr2.length !== value.length || attr2.toLowerCase() !== value) && next2(elem); + }; + } + return (elem) => adapter2.getAttributeValue(elem, name2) !== value && next2(elem); + } +}; + +// ../../node_modules/.pnpm/nth-check@2.1.1/node_modules/nth-check/lib/esm/parse.js +var whitespace = /* @__PURE__ */ new Set([9, 10, 12, 13, 32]); +var ZERO = "0".charCodeAt(0); +var NINE = "9".charCodeAt(0); +function parse2(formula) { + formula = formula.trim().toLowerCase(); + if (formula === "even") { + return [2, 0]; + } else if (formula === "odd") { + return [2, 1]; + } + let idx = 0; + let a = 0; + let sign = readSign(); + let number = readNumber(); + if (idx < formula.length && formula.charAt(idx) === "n") { + idx++; + a = sign * (number !== null && number !== void 0 ? number : 1); + skipWhitespace(); + if (idx < formula.length) { + sign = readSign(); + skipWhitespace(); + number = readNumber(); + } else { + sign = number = 0; + } + } + if (number === null || idx < formula.length) { + throw new Error(`n-th rule couldn't be parsed ('${formula}')`); + } + return [a, sign * number]; + function readSign() { + if (formula.charAt(idx) === "-") { + idx++; + return -1; + } + if (formula.charAt(idx) === "+") { + idx++; + } + return 1; + } + function readNumber() { + const start = idx; + let value = 0; + while (idx < formula.length && formula.charCodeAt(idx) >= ZERO && formula.charCodeAt(idx) <= NINE) { + value = value * 10 + (formula.charCodeAt(idx) - ZERO); + idx++; + } + return idx === start ? null : value; + } + function skipWhitespace() { + while (idx < formula.length && whitespace.has(formula.charCodeAt(idx))) { + idx++; + } + } +} + +// ../../node_modules/.pnpm/nth-check@2.1.1/node_modules/nth-check/lib/esm/compile.js +var import_boolbase2 = __toESM(require_boolbase(), 1); +function compile(parsed) { + const a = parsed[0]; + const b = parsed[1] - 1; + if (b < 0 && a <= 0) + return import_boolbase2.default.falseFunc; + if (a === -1) + return (index2) => index2 <= b; + if (a === 0) + return (index2) => index2 === b; + if (a === 1) + return b < 0 ? import_boolbase2.default.trueFunc : (index2) => index2 >= b; + const absA = Math.abs(a); + const bMod = (b % absA + absA) % absA; + return a > 1 ? (index2) => index2 >= b && index2 % absA === bMod : (index2) => index2 <= b && index2 % absA === bMod; +} + +// ../../node_modules/.pnpm/nth-check@2.1.1/node_modules/nth-check/lib/esm/index.js +function nthCheck(formula) { + return compile(parse2(formula)); +} + +// ../../node_modules/.pnpm/css-select@5.1.0/node_modules/css-select/lib/esm/pseudo-selectors/filters.js +var import_boolbase3 = __toESM(require_boolbase(), 1); +function getChildFunc(next2, adapter2) { + return (elem) => { + const parent2 = adapter2.getParent(elem); + return parent2 != null && adapter2.isTag(parent2) && next2(elem); + }; +} +var filters = { + contains(next2, text4, { adapter: adapter2 }) { + return function contains3(elem) { + return next2(elem) && adapter2.getText(elem).includes(text4); + }; + }, + icontains(next2, text4, { adapter: adapter2 }) { + const itext = text4.toLowerCase(); + return function icontains(elem) { + return next2(elem) && adapter2.getText(elem).toLowerCase().includes(itext); + }; + }, + "nth-child"(next2, rule, { adapter: adapter2, equals }) { + const func = nthCheck(rule); + if (func === import_boolbase3.default.falseFunc) + return import_boolbase3.default.falseFunc; + if (func === import_boolbase3.default.trueFunc) + return getChildFunc(next2, adapter2); + return function nthChild(elem) { + const siblings2 = adapter2.getSiblings(elem); + let pos = 0; + for (let i = 0; i < siblings2.length; i++) { + if (equals(elem, siblings2[i])) + break; + if (adapter2.isTag(siblings2[i])) { + pos++; + } + } + return func(pos) && next2(elem); + }; + }, + "nth-last-child"(next2, rule, { adapter: adapter2, equals }) { + const func = nthCheck(rule); + if (func === import_boolbase3.default.falseFunc) + return import_boolbase3.default.falseFunc; + if (func === import_boolbase3.default.trueFunc) + return getChildFunc(next2, adapter2); + return function nthLastChild(elem) { + const siblings2 = adapter2.getSiblings(elem); + let pos = 0; + for (let i = siblings2.length - 1; i >= 0; i--) { + if (equals(elem, siblings2[i])) + break; + if (adapter2.isTag(siblings2[i])) { + pos++; + } + } + return func(pos) && next2(elem); + }; + }, + "nth-of-type"(next2, rule, { adapter: adapter2, equals }) { + const func = nthCheck(rule); + if (func === import_boolbase3.default.falseFunc) + return import_boolbase3.default.falseFunc; + if (func === import_boolbase3.default.trueFunc) + return getChildFunc(next2, adapter2); + return function nthOfType(elem) { + const siblings2 = adapter2.getSiblings(elem); + let pos = 0; + for (let i = 0; i < siblings2.length; i++) { + const currentSibling = siblings2[i]; + if (equals(elem, currentSibling)) + break; + if (adapter2.isTag(currentSibling) && adapter2.getName(currentSibling) === adapter2.getName(elem)) { + pos++; + } + } + return func(pos) && next2(elem); + }; + }, + "nth-last-of-type"(next2, rule, { adapter: adapter2, equals }) { + const func = nthCheck(rule); + if (func === import_boolbase3.default.falseFunc) + return import_boolbase3.default.falseFunc; + if (func === import_boolbase3.default.trueFunc) + return getChildFunc(next2, adapter2); + return function nthLastOfType(elem) { + const siblings2 = adapter2.getSiblings(elem); + let pos = 0; + for (let i = siblings2.length - 1; i >= 0; i--) { + const currentSibling = siblings2[i]; + if (equals(elem, currentSibling)) + break; + if (adapter2.isTag(currentSibling) && adapter2.getName(currentSibling) === adapter2.getName(elem)) { + pos++; + } + } + return func(pos) && next2(elem); + }; + }, + root(next2, _rule, { adapter: adapter2 }) { + return (elem) => { + const parent2 = adapter2.getParent(elem); + return (parent2 == null || !adapter2.isTag(parent2)) && next2(elem); + }; + }, + scope(next2, rule, options, context) { + const { equals } = options; + if (!context || context.length === 0) { + return filters["root"](next2, rule, options); + } + if (context.length === 1) { + return (elem) => equals(context[0], elem) && next2(elem); + } + return (elem) => context.includes(elem) && next2(elem); + }, + hover: dynamicStatePseudo("isHovered"), + visited: dynamicStatePseudo("isVisited"), + active: dynamicStatePseudo("isActive") +}; +function dynamicStatePseudo(name2) { + return function dynamicPseudo(next2, _rule, { adapter: adapter2 }) { + const func = adapter2[name2]; + if (typeof func !== "function") { + return import_boolbase3.default.falseFunc; + } + return function active(elem) { + return func(elem) && next2(elem); + }; + }; +} + +// ../../node_modules/.pnpm/css-select@5.1.0/node_modules/css-select/lib/esm/pseudo-selectors/pseudos.js +var pseudos = { + empty(elem, { adapter: adapter2 }) { + return !adapter2.getChildren(elem).some((elem2) => adapter2.isTag(elem2) || adapter2.getText(elem2) !== ""); + }, + "first-child"(elem, { adapter: adapter2, equals }) { + if (adapter2.prevElementSibling) { + return adapter2.prevElementSibling(elem) == null; + } + const firstChild = adapter2.getSiblings(elem).find((elem2) => adapter2.isTag(elem2)); + return firstChild != null && equals(elem, firstChild); + }, + "last-child"(elem, { adapter: adapter2, equals }) { + const siblings2 = adapter2.getSiblings(elem); + for (let i = siblings2.length - 1; i >= 0; i--) { + if (equals(elem, siblings2[i])) + return true; + if (adapter2.isTag(siblings2[i])) + break; + } + return false; + }, + "first-of-type"(elem, { adapter: adapter2, equals }) { + const siblings2 = adapter2.getSiblings(elem); + const elemName = adapter2.getName(elem); + for (let i = 0; i < siblings2.length; i++) { + const currentSibling = siblings2[i]; + if (equals(elem, currentSibling)) + return true; + if (adapter2.isTag(currentSibling) && adapter2.getName(currentSibling) === elemName) { + break; + } + } + return false; + }, + "last-of-type"(elem, { adapter: adapter2, equals }) { + const siblings2 = adapter2.getSiblings(elem); + const elemName = adapter2.getName(elem); + for (let i = siblings2.length - 1; i >= 0; i--) { + const currentSibling = siblings2[i]; + if (equals(elem, currentSibling)) + return true; + if (adapter2.isTag(currentSibling) && adapter2.getName(currentSibling) === elemName) { + break; + } + } + return false; + }, + "only-of-type"(elem, { adapter: adapter2, equals }) { + const elemName = adapter2.getName(elem); + return adapter2.getSiblings(elem).every((sibling) => equals(elem, sibling) || !adapter2.isTag(sibling) || adapter2.getName(sibling) !== elemName); + }, + "only-child"(elem, { adapter: adapter2, equals }) { + return adapter2.getSiblings(elem).every((sibling) => equals(elem, sibling) || !adapter2.isTag(sibling)); + } +}; +function verifyPseudoArgs(func, name2, subselect, argIndex) { + if (subselect === null) { + if (func.length > argIndex) { + throw new Error(`Pseudo-class :${name2} requires an argument`); + } + } else if (func.length === argIndex) { + throw new Error(`Pseudo-class :${name2} doesn't have any arguments`); + } +} + +// ../../node_modules/.pnpm/css-select@5.1.0/node_modules/css-select/lib/esm/pseudo-selectors/aliases.js +var aliases = { + "any-link": ":is(a, area, link)[href]", + link: ":any-link:not(:visited)", + disabled: `:is( + :is(button, input, select, textarea, optgroup, option)[disabled], + optgroup[disabled] > option, + fieldset[disabled]:not(fieldset[disabled] legend:first-of-type *) + )`, + enabled: ":not(:disabled)", + checked: ":is(:is(input[type=radio], input[type=checkbox])[checked], option:selected)", + required: ":is(input, select, textarea)[required]", + optional: ":is(input, select, textarea):not([required])", + selected: "option:is([selected], select:not([multiple]):not(:has(> option[selected])) > :first-of-type)", + checkbox: "[type=checkbox]", + file: "[type=file]", + password: "[type=password]", + radio: "[type=radio]", + reset: "[type=reset]", + image: "[type=image]", + submit: "[type=submit]", + parent: ":not(:empty)", + header: ":is(h1, h2, h3, h4, h5, h6)", + button: ":is(button, input[type=button])", + input: ":is(input, textarea, select, button)", + text: "input:is(:not([type!='']), [type=text])" +}; + +// ../../node_modules/.pnpm/css-select@5.1.0/node_modules/css-select/lib/esm/pseudo-selectors/subselects.js +var import_boolbase4 = __toESM(require_boolbase(), 1); +var PLACEHOLDER_ELEMENT = {}; +function ensureIsTag(next2, adapter2) { + if (next2 === import_boolbase4.default.falseFunc) + return import_boolbase4.default.falseFunc; + return (elem) => adapter2.isTag(elem) && next2(elem); +} +function getNextSiblings(elem, adapter2) { + const siblings2 = adapter2.getSiblings(elem); + if (siblings2.length <= 1) + return []; + const elemIndex = siblings2.indexOf(elem); + if (elemIndex < 0 || elemIndex === siblings2.length - 1) + return []; + return siblings2.slice(elemIndex + 1).filter(adapter2.isTag); +} +function copyOptions(options) { + return { + xmlMode: !!options.xmlMode, + lowerCaseAttributeNames: !!options.lowerCaseAttributeNames, + lowerCaseTags: !!options.lowerCaseTags, + quirksMode: !!options.quirksMode, + cacheResults: !!options.cacheResults, + pseudos: options.pseudos, + adapter: options.adapter, + equals: options.equals + }; +} +var is = (next2, token, options, context, compileToken2) => { + const func = compileToken2(token, copyOptions(options), context); + return func === import_boolbase4.default.trueFunc ? next2 : func === import_boolbase4.default.falseFunc ? import_boolbase4.default.falseFunc : (elem) => func(elem) && next2(elem); +}; +var subselects = { + is, + matches: is, + where: is, + not(next2, token, options, context, compileToken2) { + const func = compileToken2(token, copyOptions(options), context); + return func === import_boolbase4.default.falseFunc ? next2 : func === import_boolbase4.default.trueFunc ? import_boolbase4.default.falseFunc : (elem) => !func(elem) && next2(elem); + }, + has(next2, subselect, options, _context, compileToken2) { + const { adapter: adapter2 } = options; + const opts = copyOptions(options); + opts.relativeSelector = true; + const context = subselect.some((s) => s.some(isTraversal2)) ? [PLACEHOLDER_ELEMENT] : void 0; + const compiled = compileToken2(subselect, opts, context); + if (compiled === import_boolbase4.default.falseFunc) + return import_boolbase4.default.falseFunc; + const hasElement = ensureIsTag(compiled, adapter2); + if (context && compiled !== import_boolbase4.default.trueFunc) { + const { shouldTestNextSiblings = false } = compiled; + return (elem) => { + if (!next2(elem)) + return false; + context[0] = elem; + const childs = adapter2.getChildren(elem); + const nextElements = shouldTestNextSiblings ? [...childs, ...getNextSiblings(elem, adapter2)] : childs; + return adapter2.existsOne(hasElement, nextElements); + }; + } + return (elem) => next2(elem) && adapter2.existsOne(hasElement, adapter2.getChildren(elem)); + } +}; + +// ../../node_modules/.pnpm/css-select@5.1.0/node_modules/css-select/lib/esm/pseudo-selectors/index.js +function compilePseudoSelector(next2, selector, options, context, compileToken2) { + var _a3; + const { name: name2, data: data2 } = selector; + if (Array.isArray(data2)) { + if (!(name2 in subselects)) { + throw new Error(`Unknown pseudo-class :${name2}(${data2})`); + } + return subselects[name2](next2, data2, options, context, compileToken2); + } + const userPseudo = (_a3 = options.pseudos) === null || _a3 === void 0 ? void 0 : _a3[name2]; + const stringPseudo = typeof userPseudo === "string" ? userPseudo : aliases[name2]; + if (typeof stringPseudo === "string") { + if (data2 != null) { + throw new Error(`Pseudo ${name2} doesn't have any arguments`); + } + const alias = parse(stringPseudo); + return subselects["is"](next2, alias, options, context, compileToken2); + } + if (typeof userPseudo === "function") { + verifyPseudoArgs(userPseudo, name2, data2, 1); + return (elem) => userPseudo(elem, data2) && next2(elem); + } + if (name2 in filters) { + return filters[name2](next2, data2, options, context); + } + if (name2 in pseudos) { + const pseudo = pseudos[name2]; + verifyPseudoArgs(pseudo, name2, data2, 2); + return (elem) => pseudo(elem, options, data2) && next2(elem); + } + throw new Error(`Unknown pseudo-class :${name2}`); +} + +// ../../node_modules/.pnpm/css-select@5.1.0/node_modules/css-select/lib/esm/general.js +function getElementParent(node, adapter2) { + const parent2 = adapter2.getParent(node); + if (parent2 && adapter2.isTag(parent2)) { + return parent2; + } + return null; +} +function compileGeneralSelector(next2, selector, options, context, compileToken2) { + const { adapter: adapter2, equals } = options; + switch (selector.type) { + case SelectorType.PseudoElement: { + throw new Error("Pseudo-elements are not supported by css-select"); + } + case SelectorType.ColumnCombinator: { + throw new Error("Column combinators are not yet supported by css-select"); + } + case SelectorType.Attribute: { + if (selector.namespace != null) { + throw new Error("Namespaced attributes are not yet supported by css-select"); + } + if (!options.xmlMode || options.lowerCaseAttributeNames) { + selector.name = selector.name.toLowerCase(); + } + return attributeRules[selector.action](next2, selector, options); + } + case SelectorType.Pseudo: { + return compilePseudoSelector(next2, selector, options, context, compileToken2); + } + case SelectorType.Tag: { + if (selector.namespace != null) { + throw new Error("Namespaced tag names are not yet supported by css-select"); + } + let { name: name2 } = selector; + if (!options.xmlMode || options.lowerCaseTags) { + name2 = name2.toLowerCase(); + } + return function tag(elem) { + return adapter2.getName(elem) === name2 && next2(elem); + }; + } + case SelectorType.Descendant: { + if (options.cacheResults === false || typeof WeakSet === "undefined") { + return function descendant(elem) { + let current = elem; + while (current = getElementParent(current, adapter2)) { + if (next2(current)) { + return true; + } + } + return false; + }; + } + const isFalseCache = /* @__PURE__ */ new WeakSet(); + return function cachedDescendant(elem) { + let current = elem; + while (current = getElementParent(current, adapter2)) { + if (!isFalseCache.has(current)) { + if (adapter2.isTag(current) && next2(current)) { + return true; + } + isFalseCache.add(current); + } + } + return false; + }; + } + case "_flexibleDescendant": { + return function flexibleDescendant(elem) { + let current = elem; + do { + if (next2(current)) + return true; + } while (current = getElementParent(current, adapter2)); + return false; + }; + } + case SelectorType.Parent: { + return function parent2(elem) { + return adapter2.getChildren(elem).some((elem2) => adapter2.isTag(elem2) && next2(elem2)); + }; + } + case SelectorType.Child: { + return function child(elem) { + const parent2 = adapter2.getParent(elem); + return parent2 != null && adapter2.isTag(parent2) && next2(parent2); + }; + } + case SelectorType.Sibling: { + return function sibling(elem) { + const siblings2 = adapter2.getSiblings(elem); + for (let i = 0; i < siblings2.length; i++) { + const currentSibling = siblings2[i]; + if (equals(elem, currentSibling)) + break; + if (adapter2.isTag(currentSibling) && next2(currentSibling)) { + return true; + } + } + return false; + }; + } + case SelectorType.Adjacent: { + if (adapter2.prevElementSibling) { + return function adjacent(elem) { + const previous = adapter2.prevElementSibling(elem); + return previous != null && next2(previous); + }; + } + return function adjacent(elem) { + const siblings2 = adapter2.getSiblings(elem); + let lastElement; + for (let i = 0; i < siblings2.length; i++) { + const currentSibling = siblings2[i]; + if (equals(elem, currentSibling)) + break; + if (adapter2.isTag(currentSibling)) { + lastElement = currentSibling; + } + } + return !!lastElement && next2(lastElement); + }; + } + case SelectorType.Universal: { + if (selector.namespace != null && selector.namespace !== "*") { + throw new Error("Namespaced universal selectors are not yet supported by css-select"); + } + return next2; + } + } +} + +// ../../node_modules/.pnpm/css-select@5.1.0/node_modules/css-select/lib/esm/compile.js +function compile2(selector, options, context) { + const next2 = compileUnsafe(selector, options, context); + return ensureIsTag(next2, options.adapter); +} +function compileUnsafe(selector, options, context) { + const token = typeof selector === "string" ? parse(selector) : selector; + return compileToken(token, options, context); +} +function includesScopePseudo(t2) { + return t2.type === SelectorType.Pseudo && (t2.name === "scope" || Array.isArray(t2.data) && t2.data.some((data2) => data2.some(includesScopePseudo))); +} +var DESCENDANT_TOKEN = { type: SelectorType.Descendant }; +var FLEXIBLE_DESCENDANT_TOKEN = { + type: "_flexibleDescendant" +}; +var SCOPE_TOKEN = { + type: SelectorType.Pseudo, + name: "scope", + data: null +}; +function absolutize(token, { adapter: adapter2 }, context) { + const hasContext = !!(context === null || context === void 0 ? void 0 : context.every((e) => { + const parent2 = adapter2.isTag(e) && adapter2.getParent(e); + return e === PLACEHOLDER_ELEMENT || parent2 && adapter2.isTag(parent2); + })); + for (const t2 of token) { + if (t2.length > 0 && isTraversal2(t2[0]) && t2[0].type !== SelectorType.Descendant) { + } else if (hasContext && !t2.some(includesScopePseudo)) { + t2.unshift(DESCENDANT_TOKEN); + } else { + continue; + } + t2.unshift(SCOPE_TOKEN); + } +} +function compileToken(token, options, context) { + var _a3; + token.forEach(sortByProcedure); + context = (_a3 = options.context) !== null && _a3 !== void 0 ? _a3 : context; + const isArrayContext = Array.isArray(context); + const finalContext = context && (Array.isArray(context) ? context : [context]); + if (options.relativeSelector !== false) { + absolutize(token, options, finalContext); + } else if (token.some((t2) => t2.length > 0 && isTraversal2(t2[0]))) { + throw new Error("Relative selectors are not allowed when the `relativeSelector` option is disabled"); + } + let shouldTestNextSiblings = false; + const query = token.map((rules) => { + if (rules.length >= 2) { + const [first2, second] = rules; + if (first2.type !== SelectorType.Pseudo || first2.name !== "scope") { + } else if (isArrayContext && second.type === SelectorType.Descendant) { + rules[1] = FLEXIBLE_DESCENDANT_TOKEN; + } else if (second.type === SelectorType.Adjacent || second.type === SelectorType.Sibling) { + shouldTestNextSiblings = true; + } + } + return compileRules(rules, options, finalContext); + }).reduce(reduceRules, import_boolbase5.default.falseFunc); + query.shouldTestNextSiblings = shouldTestNextSiblings; + return query; +} +function compileRules(rules, options, context) { + var _a3; + return rules.reduce((previous, rule) => previous === import_boolbase5.default.falseFunc ? import_boolbase5.default.falseFunc : compileGeneralSelector(previous, rule, options, context, compileToken), (_a3 = options.rootFunc) !== null && _a3 !== void 0 ? _a3 : import_boolbase5.default.trueFunc); +} +function reduceRules(a, b) { + if (b === import_boolbase5.default.falseFunc || a === import_boolbase5.default.trueFunc) { + return a; + } + if (a === import_boolbase5.default.falseFunc || b === import_boolbase5.default.trueFunc) { + return b; + } + return function combine(elem) { + return a(elem) || b(elem); + }; +} + +// ../../node_modules/.pnpm/css-select@5.1.0/node_modules/css-select/lib/esm/index.js +var defaultEquals = (a, b) => a === b; +var defaultOptions = { + adapter: esm_exports2, + equals: defaultEquals +}; +function convertOptionFormats(options) { + var _a3, _b, _c, _d; + const opts = options !== null && options !== void 0 ? options : defaultOptions; + (_a3 = opts.adapter) !== null && _a3 !== void 0 ? _a3 : opts.adapter = esm_exports2; + (_b = opts.equals) !== null && _b !== void 0 ? _b : opts.equals = (_d = (_c = opts.adapter) === null || _c === void 0 ? void 0 : _c.equals) !== null && _d !== void 0 ? _d : defaultEquals; + return opts; +} +function wrapCompile(func) { + return function addAdapter(selector, options, context) { + const opts = convertOptionFormats(options); + return func(selector, opts, context); + }; +} +var compile3 = wrapCompile(compile2); +var _compileUnsafe = wrapCompile(compileUnsafe); +var _compileToken = wrapCompile(compileToken); +function getSelectorFunc(searchFunc) { + return function select2(query, elements, options) { + const opts = convertOptionFormats(options); + if (typeof query !== "function") { + query = compileUnsafe(query, opts, elements); + } + const filteredElements = prepareContext(elements, opts.adapter, query.shouldTestNextSiblings); + return searchFunc(query, filteredElements, opts); + }; +} +function prepareContext(elems, adapter2, shouldTestNextSiblings = false) { + if (shouldTestNextSiblings) { + elems = appendNextSiblings(elems, adapter2); + } + return Array.isArray(elems) ? adapter2.removeSubsets(elems) : adapter2.getChildren(elems); +} +function appendNextSiblings(elem, adapter2) { + const elems = Array.isArray(elem) ? elem.slice(0) : [elem]; + const elemsLength = elems.length; + for (let i = 0; i < elemsLength; i++) { + const nextSiblings = getNextSiblings(elems[i], adapter2); + elems.push(...nextSiblings); + } + return elems; +} +var selectAll = getSelectorFunc((query, elems, options) => query === import_boolbase6.default.falseFunc || !elems || elems.length === 0 ? [] : options.adapter.findAll(query, elems)); +var selectOne = getSelectorFunc((query, elems, options) => query === import_boolbase6.default.falseFunc || !elems || elems.length === 0 ? null : options.adapter.findOne(query, elems)); + +// ../../node_modules/.pnpm/cheerio-select@2.1.0/node_modules/cheerio-select/lib/esm/index.js +var boolbase7 = __toESM(require_boolbase(), 1); + +// ../../node_modules/.pnpm/cheerio-select@2.1.0/node_modules/cheerio-select/lib/esm/positionals.js +var filterNames = /* @__PURE__ */ new Set([ + "first", + "last", + "eq", + "gt", + "nth", + "lt", + "even", + "odd" +]); +function isFilter(s) { + if (s.type !== "pseudo") + return false; + if (filterNames.has(s.name)) + return true; + if (s.name === "not" && Array.isArray(s.data)) { + return s.data.some((s2) => s2.some(isFilter)); + } + return false; +} +function getLimit(filter4, data2, partLimit) { + const num = data2 != null ? parseInt(data2, 10) : NaN; + switch (filter4) { + case "first": + return 1; + case "nth": + case "eq": + return isFinite(num) ? num >= 0 ? num + 1 : Infinity : 0; + case "lt": + return isFinite(num) ? num >= 0 ? Math.min(num, partLimit) : Infinity : 0; + case "gt": + return isFinite(num) ? Infinity : 0; + case "odd": + return 2 * partLimit; + case "even": + return 2 * partLimit - 1; + case "last": + case "not": + return Infinity; + } +} + +// ../../node_modules/.pnpm/cheerio-select@2.1.0/node_modules/cheerio-select/lib/esm/helpers.js +function getDocumentRoot(node) { + while (node.parent) + node = node.parent; + return node; +} +function groupSelectors(selectors) { + const filteredSelectors = []; + const plainSelectors = []; + for (const selector of selectors) { + if (selector.some(isFilter)) { + filteredSelectors.push(selector); + } else { + plainSelectors.push(selector); + } + } + return [plainSelectors, filteredSelectors]; +} + +// ../../node_modules/.pnpm/cheerio-select@2.1.0/node_modules/cheerio-select/lib/esm/index.js +var UNIVERSAL_SELECTOR = { + type: SelectorType.Universal, + namespace: null +}; +var SCOPE_PSEUDO = { + type: SelectorType.Pseudo, + name: "scope", + data: null +}; +function is2(element, selector, options = {}) { + return some([element], selector, options); +} +function some(elements, selector, options = {}) { + if (typeof selector === "function") + return elements.some(selector); + const [plain, filtered] = groupSelectors(parse(selector)); + return plain.length > 0 && elements.some(_compileToken(plain, options)) || filtered.some((sel) => filterBySelector(sel, elements, options).length > 0); +} +function filterByPosition(filter4, elems, data2, options) { + const num = typeof data2 === "string" ? parseInt(data2, 10) : NaN; + switch (filter4) { + case "first": + case "lt": + return elems; + case "last": + return elems.length > 0 ? [elems[elems.length - 1]] : elems; + case "nth": + case "eq": + return isFinite(num) && Math.abs(num) < elems.length ? [num < 0 ? elems[elems.length + num] : elems[num]] : []; + case "gt": + return isFinite(num) ? elems.slice(num + 1) : []; + case "even": + return elems.filter((_, i) => i % 2 === 0); + case "odd": + return elems.filter((_, i) => i % 2 === 1); + case "not": { + const filtered = new Set(filterParsed(data2, elems, options)); + return elems.filter((e) => !filtered.has(e)); + } + } +} +function filter2(selector, elements, options = {}) { + return filterParsed(parse(selector), elements, options); +} +function filterParsed(selector, elements, options) { + if (elements.length === 0) + return []; + const [plainSelectors, filteredSelectors] = groupSelectors(selector); + let found; + if (plainSelectors.length) { + const filtered = filterElements(elements, plainSelectors, options); + if (filteredSelectors.length === 0) { + return filtered; + } + if (filtered.length) { + found = new Set(filtered); + } + } + for (let i = 0; i < filteredSelectors.length && (found === null || found === void 0 ? void 0 : found.size) !== elements.length; i++) { + const filteredSelector = filteredSelectors[i]; + const missing = found ? elements.filter((e) => isTag2(e) && !found.has(e)) : elements; + if (missing.length === 0) + break; + const filtered = filterBySelector(filteredSelector, elements, options); + if (filtered.length) { + if (!found) { + if (i === filteredSelectors.length - 1) { + return filtered; + } + found = new Set(filtered); + } else { + filtered.forEach((el) => found.add(el)); + } + } + } + return typeof found !== "undefined" ? found.size === elements.length ? elements : elements.filter((el) => found.has(el)) : []; +} +function filterBySelector(selector, elements, options) { + var _a3; + if (selector.some(isTraversal)) { + const root3 = (_a3 = options.root) !== null && _a3 !== void 0 ? _a3 : getDocumentRoot(elements[0]); + const opts = { ...options, context: elements, relativeSelector: false }; + selector.push(SCOPE_PSEUDO); + return findFilterElements(root3, selector, opts, true, elements.length); + } + return findFilterElements(elements, selector, options, false, elements.length); +} +function select(selector, root3, options = {}, limit = Infinity) { + if (typeof selector === "function") { + return find2(root3, selector); + } + const [plain, filtered] = groupSelectors(parse(selector)); + const results = filtered.map((sel) => findFilterElements(root3, sel, options, true, limit)); + if (plain.length) { + results.push(findElements(root3, plain, options, limit)); + } + if (results.length === 0) { + return []; + } + if (results.length === 1) { + return results[0]; + } + return uniqueSort(results.reduce((a, b) => [...a, ...b])); +} +function findFilterElements(root3, selector, options, queryForSelector, totalLimit) { + const filterIndex = selector.findIndex(isFilter); + const sub = selector.slice(0, filterIndex); + const filter4 = selector[filterIndex]; + const partLimit = selector.length - 1 === filterIndex ? totalLimit : Infinity; + const limit = getLimit(filter4.name, filter4.data, partLimit); + if (limit === 0) + return []; + const elemsNoLimit = sub.length === 0 && !Array.isArray(root3) ? getChildren(root3).filter(isTag2) : sub.length === 0 ? (Array.isArray(root3) ? root3 : [root3]).filter(isTag2) : queryForSelector || sub.some(isTraversal) ? findElements(root3, [sub], options, limit) : filterElements(root3, [sub], options); + const elems = elemsNoLimit.slice(0, limit); + let result = filterByPosition(filter4.name, elems, filter4.data, options); + if (result.length === 0 || selector.length === filterIndex + 1) { + return result; + } + const remainingSelector = selector.slice(filterIndex + 1); + const remainingHasTraversal = remainingSelector.some(isTraversal); + if (remainingHasTraversal) { + if (isTraversal(remainingSelector[0])) { + const { type } = remainingSelector[0]; + if (type === SelectorType.Sibling || type === SelectorType.Adjacent) { + result = prepareContext(result, esm_exports2, true); + } + remainingSelector.unshift(UNIVERSAL_SELECTOR); + } + options = { + ...options, + relativeSelector: false, + rootFunc: (el) => result.includes(el) + }; + } else if (options.rootFunc && options.rootFunc !== boolbase7.trueFunc) { + options = { ...options, rootFunc: boolbase7.trueFunc }; + } + return remainingSelector.some(isFilter) ? findFilterElements(result, remainingSelector, options, false, totalLimit) : remainingHasTraversal ? findElements(result, [remainingSelector], options, totalLimit) : filterElements(result, [remainingSelector], options); +} +function findElements(root3, sel, options, limit) { + const query = _compileToken(sel, options, root3); + return find2(root3, query, limit); +} +function find2(root3, query, limit = Infinity) { + const elems = prepareContext(root3, esm_exports2, query.shouldTestNextSiblings); + return find((node) => isTag2(node) && query(node), elems, true, limit); +} +function filterElements(elements, sel, options) { + const els = (Array.isArray(elements) ? elements : [elements]).filter(isTag2); + if (els.length === 0) + return els; + const query = _compileToken(sel, options); + return query === boolbase7.trueFunc ? els : els.filter(query); +} + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/api/traversing.js +var reSiblingSelector = /^\s*[~+]/; +function find3(selectorOrHaystack) { + var _a3; + if (!selectorOrHaystack) { + return this._make([]); + } + const context = this.toArray(); + if (typeof selectorOrHaystack !== "string") { + const haystack = isCheerio(selectorOrHaystack) ? selectorOrHaystack.toArray() : [selectorOrHaystack]; + return this._make(haystack.filter((elem) => context.some((node) => contains(node, elem)))); + } + const elems = reSiblingSelector.test(selectorOrHaystack) ? context : this.children().toArray(); + const options = { + context, + root: (_a3 = this._root) === null || _a3 === void 0 ? void 0 : _a3[0], + xmlMode: this.options.xmlMode, + lowerCaseTags: this.options.lowerCaseTags, + lowerCaseAttributeNames: this.options.lowerCaseAttributeNames, + pseudos: this.options.pseudos, + quirksMode: this.options.quirksMode + }; + return this._make(select(selectorOrHaystack, elems, options)); +} +function _getMatcher(matchMap) { + return function(fn, ...postFns) { + return function(selector) { + var _a3; + let matched = matchMap(fn, this); + if (selector) { + matched = filterArray(matched, selector, this.options.xmlMode, (_a3 = this._root) === null || _a3 === void 0 ? void 0 : _a3[0]); + } + return this._make( + this.length > 1 && matched.length > 1 ? postFns.reduce((elems, fn2) => fn2(elems), matched) : matched + ); + }; + }; +} +var _matcher = _getMatcher((fn, elems) => { + const ret = []; + for (let i = 0; i < elems.length; i++) { + const value = fn(elems[i]); + ret.push(value); + } + return new Array().concat(...ret); +}); +var _singleMatcher = _getMatcher((fn, elems) => { + const ret = []; + for (let i = 0; i < elems.length; i++) { + const value = fn(elems[i]); + if (value !== null) { + ret.push(value); + } + } + return ret; +}); +function _matchUntil(nextElem, ...postFns) { + let matches = null; + const innerMatcher = _getMatcher((nextElem2, elems) => { + const matched = []; + domEach(elems, (elem) => { + for (let next2; next2 = nextElem2(elem); elem = next2) { + if (matches === null || matches === void 0 ? void 0 : matches(next2, matched.length)) + break; + matched.push(next2); + } + }); + return matched; + })(nextElem, ...postFns); + return function(selector, filterSelector) { + matches = typeof selector === "string" ? (elem) => is2(elem, selector, this.options) : selector ? getFilterFn(selector) : null; + const ret = innerMatcher.call(this, filterSelector); + matches = null; + return ret; + }; +} +function _removeDuplicates(elems) { + return Array.from(new Set(elems)); +} +var parent = _singleMatcher(({ parent: parent2 }) => parent2 && !isDocument(parent2) ? parent2 : null, _removeDuplicates); +var parents = _matcher((elem) => { + const matched = []; + while (elem.parent && !isDocument(elem.parent)) { + matched.push(elem.parent); + elem = elem.parent; + } + return matched; +}, uniqueSort, (elems) => elems.reverse()); +var parentsUntil = _matchUntil(({ parent: parent2 }) => parent2 && !isDocument(parent2) ? parent2 : null, uniqueSort, (elems) => elems.reverse()); +function closest(selector) { + var _a3; + const set3 = []; + if (!selector) { + return this._make(set3); + } + const selectOpts = { + xmlMode: this.options.xmlMode, + root: (_a3 = this._root) === null || _a3 === void 0 ? void 0 : _a3[0] + }; + const selectFn = typeof selector === "string" ? (elem) => is2(elem, selector, selectOpts) : getFilterFn(selector); + domEach(this, (elem) => { + while (elem && isTag2(elem)) { + if (selectFn(elem, 0)) { + if (!set3.includes(elem)) { + set3.push(elem); + } + break; + } + elem = elem.parent; + } + }); + return this._make(set3); +} +var next = _singleMatcher((elem) => nextElementSibling(elem)); +var nextAll = _matcher((elem) => { + const matched = []; + while (elem.next) { + elem = elem.next; + if (isTag2(elem)) + matched.push(elem); + } + return matched; +}, _removeDuplicates); +var nextUntil = _matchUntil((el) => nextElementSibling(el), _removeDuplicates); +var prev = _singleMatcher((elem) => prevElementSibling(elem)); +var prevAll = _matcher((elem) => { + const matched = []; + while (elem.prev) { + elem = elem.prev; + if (isTag2(elem)) + matched.push(elem); + } + return matched; +}, _removeDuplicates); +var prevUntil = _matchUntil((el) => prevElementSibling(el), _removeDuplicates); +var siblings = _matcher((elem) => getSiblings(elem).filter((el) => isTag2(el) && el !== elem), uniqueSort); +var children = _matcher((elem) => getChildren(elem).filter(isTag2), _removeDuplicates); +function contents() { + const elems = this.toArray().reduce((newElems, elem) => hasChildren(elem) ? newElems.concat(elem.children) : newElems, []); + return this._make(elems); +} +function each(fn) { + let i = 0; + const len = this.length; + while (i < len && fn.call(this[i], i, this[i]) !== false) + ++i; + return this; +} +function map(fn) { + let elems = []; + for (let i = 0; i < this.length; i++) { + const el = this[i]; + const val2 = fn.call(el, i, el); + if (val2 != null) { + elems = elems.concat(val2); + } + } + return this._make(elems); +} +function getFilterFn(match2) { + if (typeof match2 === "function") { + return (el, i) => match2.call(el, i, el); + } + if (isCheerio(match2)) { + return (el) => Array.prototype.includes.call(match2, el); + } + return function(el) { + return match2 === el; + }; +} +function filter3(match2) { + var _a3; + return this._make(filterArray(this.toArray(), match2, this.options.xmlMode, (_a3 = this._root) === null || _a3 === void 0 ? void 0 : _a3[0])); +} +function filterArray(nodes, match2, xmlMode, root3) { + return typeof match2 === "string" ? filter2(match2, nodes, { xmlMode, root: root3 }) : nodes.filter(getFilterFn(match2)); +} +function is3(selector) { + const nodes = this.toArray(); + return typeof selector === "string" ? some(nodes.filter(isTag2), selector, this.options) : selector ? nodes.some(getFilterFn(selector)) : false; +} +function not(match2) { + let nodes = this.toArray(); + if (typeof match2 === "string") { + const matches = new Set(filter2(match2, nodes, this.options)); + nodes = nodes.filter((el) => !matches.has(el)); + } else { + const filterFn = getFilterFn(match2); + nodes = nodes.filter((el, i) => !filterFn(el, i)); + } + return this._make(nodes); +} +function has(selectorOrHaystack) { + return this.filter(typeof selectorOrHaystack === "string" ? `:has(${selectorOrHaystack})` : (_, el) => this._make(el).find(selectorOrHaystack).length > 0); +} +function first() { + return this.length > 1 ? this._make(this[0]) : this; +} +function last() { + return this.length > 0 ? this._make(this[this.length - 1]) : this; +} +function eq(i) { + var _a3; + i = +i; + if (i === 0 && this.length <= 1) + return this; + if (i < 0) + i = this.length + i; + return this._make((_a3 = this[i]) !== null && _a3 !== void 0 ? _a3 : []); +} +function get(i) { + if (i == null) { + return this.toArray(); + } + return this[i < 0 ? this.length + i : i]; +} +function toArray() { + return Array.prototype.slice.call(this); +} +function index(selectorOrNeedle) { + let $haystack; + let needle; + if (selectorOrNeedle == null) { + $haystack = this.parent().children(); + needle = this[0]; + } else if (typeof selectorOrNeedle === "string") { + $haystack = this._make(selectorOrNeedle); + needle = this[0]; + } else { + $haystack = this; + needle = isCheerio(selectorOrNeedle) ? selectorOrNeedle[0] : selectorOrNeedle; + } + return Array.prototype.indexOf.call($haystack, needle); +} +function slice(start, end2) { + return this._make(Array.prototype.slice.call(this, start, end2)); +} +function end() { + var _a3; + return (_a3 = this.prevObject) !== null && _a3 !== void 0 ? _a3 : this._make([]); +} +function add(other, context) { + const selection = this._make(other, context); + const contents2 = uniqueSort([...this.get(), ...selection.get()]); + return this._make(contents2); +} +function addBack(selector) { + return this.prevObject ? this.add(selector ? this.prevObject.filter(selector) : this.prevObject) : this; +} + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/api/manipulation.js +var manipulation_exports = {}; +__export(manipulation_exports, { + _makeDomArray: () => _makeDomArray, + after: () => after, + append: () => append2, + appendTo: () => appendTo, + before: () => before, + clone: () => clone, + empty: () => empty, + html: () => html2, + insertAfter: () => insertAfter, + insertBefore: () => insertBefore, + prepend: () => prepend2, + prependTo: () => prependTo, + remove: () => remove, + replaceWith: () => replaceWith, + text: () => text2, + toString: () => toString, + unwrap: () => unwrap, + wrap: () => wrap, + wrapAll: () => wrapAll, + wrapInner: () => wrapInner +}); + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/parse.js +function getParse(parser) { + return function parse7(content, options, isDocument3, context) { + if (typeof Buffer !== "undefined" && Buffer.isBuffer(content)) { + content = content.toString(); + } + if (typeof content === "string") { + return parser(content, options, isDocument3, context); + } + const doc = content; + if (!Array.isArray(doc) && isDocument(doc)) { + return doc; + } + const root3 = new Document([]); + update(doc, root3); + return root3; + }; +} +function update(newChilds, parent2) { + const arr = Array.isArray(newChilds) ? newChilds : [newChilds]; + if (parent2) { + parent2.children = arr; + } else { + parent2 = null; + } + for (let i = 0; i < arr.length; i++) { + const node = arr[i]; + if (node.parent && node.parent.children !== arr) { + removeElement(node); + } + if (parent2) { + node.prev = arr[i - 1] || null; + node.next = arr[i + 1] || null; + } else { + node.prev = node.next = null; + } + node.parent = parent2; + } + return parent2; +} + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/api/manipulation.js +function _makeDomArray(elem, clone2) { + if (elem == null) { + return []; + } + if (isCheerio(elem)) { + return clone2 ? cloneDom(elem.get()) : elem.get(); + } + if (Array.isArray(elem)) { + return elem.reduce((newElems, el) => newElems.concat(this._makeDomArray(el, clone2)), []); + } + if (typeof elem === "string") { + return this._parse(elem, this.options, false, null).children; + } + return clone2 ? cloneDom([elem]) : [elem]; +} +function _insert(concatenator) { + return function(...elems) { + const lastIdx = this.length - 1; + return domEach(this, (el, i) => { + if (!hasChildren(el)) + return; + const domSrc = typeof elems[0] === "function" ? elems[0].call(el, i, this._render(el.children)) : elems; + const dom = this._makeDomArray(domSrc, i < lastIdx); + concatenator(dom, el.children, el); + }); + }; +} +function uniqueSplice(array, spliceIdx, spliceCount, newElems, parent2) { + var _a3, _b; + const spliceArgs = [ + spliceIdx, + spliceCount, + ...newElems + ]; + const prev2 = spliceIdx === 0 ? null : array[spliceIdx - 1]; + const next2 = spliceIdx + spliceCount >= array.length ? null : array[spliceIdx + spliceCount]; + for (let idx = 0; idx < newElems.length; ++idx) { + const node = newElems[idx]; + const oldParent = node.parent; + if (oldParent) { + const oldSiblings = oldParent.children; + const prevIdx = oldSiblings.indexOf(node); + if (prevIdx > -1) { + oldParent.children.splice(prevIdx, 1); + if (parent2 === oldParent && spliceIdx > prevIdx) { + spliceArgs[0]--; + } + } + } + node.parent = parent2; + if (node.prev) { + node.prev.next = (_a3 = node.next) !== null && _a3 !== void 0 ? _a3 : null; + } + if (node.next) { + node.next.prev = (_b = node.prev) !== null && _b !== void 0 ? _b : null; + } + node.prev = idx === 0 ? prev2 : newElems[idx - 1]; + node.next = idx === newElems.length - 1 ? next2 : newElems[idx + 1]; + } + if (prev2) { + prev2.next = newElems[0]; + } + if (next2) { + next2.prev = newElems[newElems.length - 1]; + } + return array.splice(...spliceArgs); +} +function appendTo(target) { + const appendTarget = isCheerio(target) ? target : this._make(target); + appendTarget.append(this); + return this; +} +function prependTo(target) { + const prependTarget = isCheerio(target) ? target : this._make(target); + prependTarget.prepend(this); + return this; +} +var append2 = _insert((dom, children2, parent2) => { + uniqueSplice(children2, children2.length, 0, dom, parent2); +}); +var prepend2 = _insert((dom, children2, parent2) => { + uniqueSplice(children2, 0, 0, dom, parent2); +}); +function _wrap(insert) { + return function(wrapper) { + const lastIdx = this.length - 1; + const lastParent = this.parents().last(); + for (let i = 0; i < this.length; i++) { + const el = this[i]; + const wrap2 = typeof wrapper === "function" ? wrapper.call(el, i, el) : typeof wrapper === "string" && !isHtml(wrapper) ? lastParent.find(wrapper).clone() : wrapper; + const [wrapperDom] = this._makeDomArray(wrap2, i < lastIdx); + if (!wrapperDom || !hasChildren(wrapperDom)) + continue; + let elInsertLocation = wrapperDom; + let j = 0; + while (j < elInsertLocation.children.length) { + const child = elInsertLocation.children[j]; + if (isTag2(child)) { + elInsertLocation = child; + j = 0; + } else { + j++; + } + } + insert(el, elInsertLocation, [wrapperDom]); + } + return this; + }; +} +var wrap = _wrap((el, elInsertLocation, wrapperDom) => { + const { parent: parent2 } = el; + if (!parent2) + return; + const siblings2 = parent2.children; + const index2 = siblings2.indexOf(el); + update([el], elInsertLocation); + uniqueSplice(siblings2, index2, 0, wrapperDom, parent2); +}); +var wrapInner = _wrap((el, elInsertLocation, wrapperDom) => { + if (!hasChildren(el)) + return; + update(el.children, elInsertLocation); + update(wrapperDom, el); +}); +function unwrap(selector) { + this.parent(selector).not("body").each((_, el) => { + this._make(el).replaceWith(el.children); + }); + return this; +} +function wrapAll(wrapper) { + const el = this[0]; + if (el) { + const wrap2 = this._make(typeof wrapper === "function" ? wrapper.call(el, 0, el) : wrapper).insertBefore(el); + let elInsertLocation; + for (let i = 0; i < wrap2.length; i++) { + if (wrap2[i].type === "tag") + elInsertLocation = wrap2[i]; + } + let j = 0; + while (elInsertLocation && j < elInsertLocation.children.length) { + const child = elInsertLocation.children[j]; + if (child.type === "tag") { + elInsertLocation = child; + j = 0; + } else { + j++; + } + } + if (elInsertLocation) + this._make(elInsertLocation).append(this); + } + return this; +} +function after(...elems) { + const lastIdx = this.length - 1; + return domEach(this, (el, i) => { + const { parent: parent2 } = el; + if (!hasChildren(el) || !parent2) { + return; + } + const siblings2 = parent2.children; + const index2 = siblings2.indexOf(el); + if (index2 < 0) + return; + const domSrc = typeof elems[0] === "function" ? elems[0].call(el, i, this._render(el.children)) : elems; + const dom = this._makeDomArray(domSrc, i < lastIdx); + uniqueSplice(siblings2, index2 + 1, 0, dom, parent2); + }); +} +function insertAfter(target) { + if (typeof target === "string") { + target = this._make(target); + } + this.remove(); + const clones = []; + this._makeDomArray(target).forEach((el) => { + const clonedSelf = this.clone().toArray(); + const { parent: parent2 } = el; + if (!parent2) { + return; + } + const siblings2 = parent2.children; + const index2 = siblings2.indexOf(el); + if (index2 < 0) + return; + uniqueSplice(siblings2, index2 + 1, 0, clonedSelf, parent2); + clones.push(...clonedSelf); + }); + return this._make(clones); +} +function before(...elems) { + const lastIdx = this.length - 1; + return domEach(this, (el, i) => { + const { parent: parent2 } = el; + if (!hasChildren(el) || !parent2) { + return; + } + const siblings2 = parent2.children; + const index2 = siblings2.indexOf(el); + if (index2 < 0) + return; + const domSrc = typeof elems[0] === "function" ? elems[0].call(el, i, this._render(el.children)) : elems; + const dom = this._makeDomArray(domSrc, i < lastIdx); + uniqueSplice(siblings2, index2, 0, dom, parent2); + }); +} +function insertBefore(target) { + const targetArr = this._make(target); + this.remove(); + const clones = []; + domEach(targetArr, (el) => { + const clonedSelf = this.clone().toArray(); + const { parent: parent2 } = el; + if (!parent2) { + return; + } + const siblings2 = parent2.children; + const index2 = siblings2.indexOf(el); + if (index2 < 0) + return; + uniqueSplice(siblings2, index2, 0, clonedSelf, parent2); + clones.push(...clonedSelf); + }); + return this._make(clones); +} +function remove(selector) { + const elems = selector ? this.filter(selector) : this; + domEach(elems, (el) => { + removeElement(el); + el.prev = el.next = el.parent = null; + }); + return this; +} +function replaceWith(content) { + return domEach(this, (el, i) => { + const { parent: parent2 } = el; + if (!parent2) { + return; + } + const siblings2 = parent2.children; + const cont = typeof content === "function" ? content.call(el, i, el) : content; + const dom = this._makeDomArray(cont); + update(dom, null); + const index2 = siblings2.indexOf(el); + uniqueSplice(siblings2, index2, 1, dom, parent2); + if (!dom.includes(el)) { + el.parent = el.prev = el.next = null; + } + }); +} +function empty() { + return domEach(this, (el) => { + if (!hasChildren(el)) + return; + el.children.forEach((child) => { + child.next = child.prev = child.parent = null; + }); + el.children.length = 0; + }); +} +function html2(str) { + if (str === void 0) { + const el = this[0]; + if (!el || !hasChildren(el)) + return null; + return this._render(el.children); + } + return domEach(this, (el) => { + if (!hasChildren(el)) + return; + el.children.forEach((child) => { + child.next = child.prev = child.parent = null; + }); + const content = isCheerio(str) ? str.toArray() : this._parse(`${str}`, this.options, false, el).children; + update(content, el); + }); +} +function toString() { + return this._render(this); +} +function text2(str) { + if (str === void 0) { + return text(this); + } + if (typeof str === "function") { + return domEach(this, (el, i) => this._make(el).text(str.call(el, i, text([el])))); + } + return domEach(this, (el) => { + if (!hasChildren(el)) + return; + el.children.forEach((child) => { + child.next = child.prev = child.parent = null; + }); + const textNode = new Text2(`${str}`); + update(textNode, el); + }); +} +function clone() { + return this._make(cloneDom(this.get())); +} + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/api/css.js +var css_exports = {}; +__export(css_exports, { + css: () => css +}); +function css(prop2, val2) { + if (prop2 != null && val2 != null || typeof prop2 === "object" && !Array.isArray(prop2)) { + return domEach(this, (el, i) => { + if (isTag2(el)) { + setCss(el, prop2, val2, i); + } + }); + } + if (this.length === 0) { + return void 0; + } + return getCss(this[0], prop2); +} +function setCss(el, prop2, value, idx) { + if (typeof prop2 === "string") { + const styles2 = getCss(el); + const val2 = typeof value === "function" ? value.call(el, idx, styles2[prop2]) : value; + if (val2 === "") { + delete styles2[prop2]; + } else if (val2 != null) { + styles2[prop2] = val2; + } + el.attribs["style"] = stringify(styles2); + } else if (typeof prop2 === "object") { + Object.keys(prop2).forEach((k, i) => { + setCss(el, k, prop2[k], i); + }); + } +} +function getCss(el, prop2) { + if (!el || !isTag2(el)) + return; + const styles2 = parse3(el.attribs["style"]); + if (typeof prop2 === "string") { + return styles2[prop2]; + } + if (Array.isArray(prop2)) { + const newStyles = {}; + prop2.forEach((item) => { + if (styles2[item] != null) { + newStyles[item] = styles2[item]; + } + }); + return newStyles; + } + return styles2; +} +function stringify(obj) { + return Object.keys(obj).reduce((str, prop2) => `${str}${str ? " " : ""}${prop2}: ${obj[prop2]};`, ""); +} +function parse3(styles2) { + styles2 = (styles2 || "").trim(); + if (!styles2) + return {}; + const obj = {}; + let key; + for (const str of styles2.split(";")) { + const n = str.indexOf(":"); + if (n < 1 || n === str.length - 1) { + const trimmed = str.trimEnd(); + if (trimmed.length > 0 && key !== void 0) { + obj[key] += `;${trimmed}`; + } + } else { + key = str.slice(0, n).trim(); + obj[key] = str.slice(n + 1).trim(); + } + } + return obj; +} + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/api/forms.js +var forms_exports = {}; +__export(forms_exports, { + serialize: () => serialize, + serializeArray: () => serializeArray +}); +var submittableSelector = "input,select,textarea,keygen"; +var r20 = /%20/g; +var rCRLF = /\r?\n/g; +function serialize() { + const arr = this.serializeArray(); + const retArr = arr.map((data2) => `${encodeURIComponent(data2.name)}=${encodeURIComponent(data2.value)}`); + return retArr.join("&").replace(r20, "+"); +} +function serializeArray() { + return this.map((_, elem) => { + const $elem = this._make(elem); + if (isTag2(elem) && elem.name === "form") { + return $elem.find(submittableSelector).toArray(); + } + return $elem.filter(submittableSelector).toArray(); + }).filter( + '[name!=""]:enabled:not(:submit, :button, :image, :reset, :file):matches([checked], :not(:checkbox, :radio))' + ).map((_, elem) => { + var _a3; + const $elem = this._make(elem); + const name2 = $elem.attr("name"); + const value = (_a3 = $elem.val()) !== null && _a3 !== void 0 ? _a3 : ""; + if (Array.isArray(value)) { + return value.map((val2) => ({ name: name2, value: val2.replace(rCRLF, "\r\n") })); + } + return { name: name2, value: value.replace(rCRLF, "\r\n") }; + }).toArray(); +} + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/cheerio.js +var Cheerio = class { + constructor(elements, root3, options) { + this.length = 0; + this.options = options; + this._root = root3; + if (elements) { + for (let idx = 0; idx < elements.length; idx++) { + this[idx] = elements[idx]; + } + this.length = elements.length; + } + } +}; +Cheerio.prototype.cheerio = "[cheerio object]"; +Cheerio.prototype.splice = Array.prototype.splice; +Cheerio.prototype[Symbol.iterator] = Array.prototype[Symbol.iterator]; +Object.assign(Cheerio.prototype, attributes_exports, traversing_exports, manipulation_exports, css_exports, forms_exports); + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/load.js +function getLoad(parse7, render3) { + return function load2(content, options, isDocument3 = true) { + if (content == null) { + throw new Error("cheerio.load() expects a string"); + } + const internalOpts = { ...options_default, ...flatten2(options) }; + const initialRoot = parse7(content, internalOpts, isDocument3, null); + class LoadedCheerio extends Cheerio { + _make(selector, context) { + const cheerio = initialize(selector, context); + cheerio.prevObject = this; + return cheerio; + } + _parse(content2, options2, isDocument4, context) { + return parse7(content2, options2, isDocument4, context); + } + _render(dom) { + return render3(dom, this.options); + } + } + function initialize(selector, context, root3 = initialRoot, opts) { + if (selector && isCheerio(selector)) + return selector; + const options2 = { + ...internalOpts, + ...flatten2(opts) + }; + const r = typeof root3 === "string" ? [parse7(root3, options2, false, null)] : "length" in root3 ? root3 : [root3]; + const rootInstance = isCheerio(r) ? r : new LoadedCheerio(r, null, options2); + rootInstance._root = rootInstance; + if (!selector) { + return new LoadedCheerio(void 0, rootInstance, options2); + } + const elements = typeof selector === "string" && isHtml(selector) ? parse7(selector, options2, false, null).children : isNode(selector) ? [selector] : Array.isArray(selector) ? selector : void 0; + const instance = new LoadedCheerio(elements, rootInstance, options2); + if (elements) { + return instance; + } + if (typeof selector !== "string") { + throw new Error("Unexpected type of selector"); + } + let search = selector; + const searchContext = !context ? rootInstance : typeof context === "string" ? isHtml(context) ? new LoadedCheerio([parse7(context, options2, false, null)], rootInstance, options2) : (search = `${context} ${search}`, rootInstance) : isCheerio(context) ? context : new LoadedCheerio(Array.isArray(context) ? context : [context], rootInstance, options2); + if (!searchContext) + return instance; + return searchContext.find(search); + } + Object.assign(initialize, static_exports, { + load: load2, + _root: initialRoot, + _options: internalOpts, + fn: LoadedCheerio.prototype, + prototype: LoadedCheerio.prototype + }); + return initialize; + }; +} +function isNode(obj) { + return !!obj.name || obj.type === "root" || obj.type === "text" || obj.type === "comment"; +} + +// ../../node_modules/.pnpm/parse5@7.3.0/node_modules/parse5/dist/common/unicode.js +var UNDEFINED_CODE_POINTS = /* @__PURE__ */ new Set([ + 65534, + 65535, + 131070, + 131071, + 196606, + 196607, + 262142, + 262143, + 327678, + 327679, + 393214, + 393215, + 458750, + 458751, + 524286, + 524287, + 589822, + 589823, + 655358, + 655359, + 720894, + 720895, + 786430, + 786431, + 851966, + 851967, + 917502, + 917503, + 983038, + 983039, + 1048574, + 1048575, + 1114110, + 1114111 +]); +var REPLACEMENT_CHARACTER = "\uFFFD"; +var CODE_POINTS; +(function(CODE_POINTS2) { + CODE_POINTS2[CODE_POINTS2["EOF"] = -1] = "EOF"; + CODE_POINTS2[CODE_POINTS2["NULL"] = 0] = "NULL"; + CODE_POINTS2[CODE_POINTS2["TABULATION"] = 9] = "TABULATION"; + CODE_POINTS2[CODE_POINTS2["CARRIAGE_RETURN"] = 13] = "CARRIAGE_RETURN"; + CODE_POINTS2[CODE_POINTS2["LINE_FEED"] = 10] = "LINE_FEED"; + CODE_POINTS2[CODE_POINTS2["FORM_FEED"] = 12] = "FORM_FEED"; + CODE_POINTS2[CODE_POINTS2["SPACE"] = 32] = "SPACE"; + CODE_POINTS2[CODE_POINTS2["EXCLAMATION_MARK"] = 33] = "EXCLAMATION_MARK"; + CODE_POINTS2[CODE_POINTS2["QUOTATION_MARK"] = 34] = "QUOTATION_MARK"; + CODE_POINTS2[CODE_POINTS2["AMPERSAND"] = 38] = "AMPERSAND"; + CODE_POINTS2[CODE_POINTS2["APOSTROPHE"] = 39] = "APOSTROPHE"; + CODE_POINTS2[CODE_POINTS2["HYPHEN_MINUS"] = 45] = "HYPHEN_MINUS"; + CODE_POINTS2[CODE_POINTS2["SOLIDUS"] = 47] = "SOLIDUS"; + CODE_POINTS2[CODE_POINTS2["DIGIT_0"] = 48] = "DIGIT_0"; + CODE_POINTS2[CODE_POINTS2["DIGIT_9"] = 57] = "DIGIT_9"; + CODE_POINTS2[CODE_POINTS2["SEMICOLON"] = 59] = "SEMICOLON"; + CODE_POINTS2[CODE_POINTS2["LESS_THAN_SIGN"] = 60] = "LESS_THAN_SIGN"; + CODE_POINTS2[CODE_POINTS2["EQUALS_SIGN"] = 61] = "EQUALS_SIGN"; + CODE_POINTS2[CODE_POINTS2["GREATER_THAN_SIGN"] = 62] = "GREATER_THAN_SIGN"; + CODE_POINTS2[CODE_POINTS2["QUESTION_MARK"] = 63] = "QUESTION_MARK"; + CODE_POINTS2[CODE_POINTS2["LATIN_CAPITAL_A"] = 65] = "LATIN_CAPITAL_A"; + CODE_POINTS2[CODE_POINTS2["LATIN_CAPITAL_Z"] = 90] = "LATIN_CAPITAL_Z"; + CODE_POINTS2[CODE_POINTS2["RIGHT_SQUARE_BRACKET"] = 93] = "RIGHT_SQUARE_BRACKET"; + CODE_POINTS2[CODE_POINTS2["GRAVE_ACCENT"] = 96] = "GRAVE_ACCENT"; + CODE_POINTS2[CODE_POINTS2["LATIN_SMALL_A"] = 97] = "LATIN_SMALL_A"; + CODE_POINTS2[CODE_POINTS2["LATIN_SMALL_Z"] = 122] = "LATIN_SMALL_Z"; +})(CODE_POINTS || (CODE_POINTS = {})); +var SEQUENCES = { + DASH_DASH: "--", + CDATA_START: "[CDATA[", + DOCTYPE: "doctype", + SCRIPT: "script", + PUBLIC: "public", + SYSTEM: "system" +}; +function isSurrogate(cp) { + return cp >= 55296 && cp <= 57343; +} +function isSurrogatePair(cp) { + return cp >= 56320 && cp <= 57343; +} +function getSurrogatePairCodePoint(cp1, cp2) { + return (cp1 - 55296) * 1024 + 9216 + cp2; +} +function isControlCodePoint(cp) { + return cp !== 32 && cp !== 10 && cp !== 13 && cp !== 9 && cp !== 12 && cp >= 1 && cp <= 31 || cp >= 127 && cp <= 159; +} +function isUndefinedCodePoint(cp) { + return cp >= 64976 && cp <= 65007 || UNDEFINED_CODE_POINTS.has(cp); +} + +// ../../node_modules/.pnpm/parse5@7.3.0/node_modules/parse5/dist/common/error-codes.js +var ERR; +(function(ERR2) { + ERR2["controlCharacterInInputStream"] = "control-character-in-input-stream"; + ERR2["noncharacterInInputStream"] = "noncharacter-in-input-stream"; + ERR2["surrogateInInputStream"] = "surrogate-in-input-stream"; + ERR2["nonVoidHtmlElementStartTagWithTrailingSolidus"] = "non-void-html-element-start-tag-with-trailing-solidus"; + ERR2["endTagWithAttributes"] = "end-tag-with-attributes"; + ERR2["endTagWithTrailingSolidus"] = "end-tag-with-trailing-solidus"; + ERR2["unexpectedSolidusInTag"] = "unexpected-solidus-in-tag"; + ERR2["unexpectedNullCharacter"] = "unexpected-null-character"; + ERR2["unexpectedQuestionMarkInsteadOfTagName"] = "unexpected-question-mark-instead-of-tag-name"; + ERR2["invalidFirstCharacterOfTagName"] = "invalid-first-character-of-tag-name"; + ERR2["unexpectedEqualsSignBeforeAttributeName"] = "unexpected-equals-sign-before-attribute-name"; + ERR2["missingEndTagName"] = "missing-end-tag-name"; + ERR2["unexpectedCharacterInAttributeName"] = "unexpected-character-in-attribute-name"; + ERR2["unknownNamedCharacterReference"] = "unknown-named-character-reference"; + ERR2["missingSemicolonAfterCharacterReference"] = "missing-semicolon-after-character-reference"; + ERR2["unexpectedCharacterAfterDoctypeSystemIdentifier"] = "unexpected-character-after-doctype-system-identifier"; + ERR2["unexpectedCharacterInUnquotedAttributeValue"] = "unexpected-character-in-unquoted-attribute-value"; + ERR2["eofBeforeTagName"] = "eof-before-tag-name"; + ERR2["eofInTag"] = "eof-in-tag"; + ERR2["missingAttributeValue"] = "missing-attribute-value"; + ERR2["missingWhitespaceBetweenAttributes"] = "missing-whitespace-between-attributes"; + ERR2["missingWhitespaceAfterDoctypePublicKeyword"] = "missing-whitespace-after-doctype-public-keyword"; + ERR2["missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers"] = "missing-whitespace-between-doctype-public-and-system-identifiers"; + ERR2["missingWhitespaceAfterDoctypeSystemKeyword"] = "missing-whitespace-after-doctype-system-keyword"; + ERR2["missingQuoteBeforeDoctypePublicIdentifier"] = "missing-quote-before-doctype-public-identifier"; + ERR2["missingQuoteBeforeDoctypeSystemIdentifier"] = "missing-quote-before-doctype-system-identifier"; + ERR2["missingDoctypePublicIdentifier"] = "missing-doctype-public-identifier"; + ERR2["missingDoctypeSystemIdentifier"] = "missing-doctype-system-identifier"; + ERR2["abruptDoctypePublicIdentifier"] = "abrupt-doctype-public-identifier"; + ERR2["abruptDoctypeSystemIdentifier"] = "abrupt-doctype-system-identifier"; + ERR2["cdataInHtmlContent"] = "cdata-in-html-content"; + ERR2["incorrectlyOpenedComment"] = "incorrectly-opened-comment"; + ERR2["eofInScriptHtmlCommentLikeText"] = "eof-in-script-html-comment-like-text"; + ERR2["eofInDoctype"] = "eof-in-doctype"; + ERR2["nestedComment"] = "nested-comment"; + ERR2["abruptClosingOfEmptyComment"] = "abrupt-closing-of-empty-comment"; + ERR2["eofInComment"] = "eof-in-comment"; + ERR2["incorrectlyClosedComment"] = "incorrectly-closed-comment"; + ERR2["eofInCdata"] = "eof-in-cdata"; + ERR2["absenceOfDigitsInNumericCharacterReference"] = "absence-of-digits-in-numeric-character-reference"; + ERR2["nullCharacterReference"] = "null-character-reference"; + ERR2["surrogateCharacterReference"] = "surrogate-character-reference"; + ERR2["characterReferenceOutsideUnicodeRange"] = "character-reference-outside-unicode-range"; + ERR2["controlCharacterReference"] = "control-character-reference"; + ERR2["noncharacterCharacterReference"] = "noncharacter-character-reference"; + ERR2["missingWhitespaceBeforeDoctypeName"] = "missing-whitespace-before-doctype-name"; + ERR2["missingDoctypeName"] = "missing-doctype-name"; + ERR2["invalidCharacterSequenceAfterDoctypeName"] = "invalid-character-sequence-after-doctype-name"; + ERR2["duplicateAttribute"] = "duplicate-attribute"; + ERR2["nonConformingDoctype"] = "non-conforming-doctype"; + ERR2["missingDoctype"] = "missing-doctype"; + ERR2["misplacedDoctype"] = "misplaced-doctype"; + ERR2["endTagWithoutMatchingOpenElement"] = "end-tag-without-matching-open-element"; + ERR2["closingOfElementWithOpenChildElements"] = "closing-of-element-with-open-child-elements"; + ERR2["disallowedContentInNoscriptInHead"] = "disallowed-content-in-noscript-in-head"; + ERR2["openElementsLeftAfterEof"] = "open-elements-left-after-eof"; + ERR2["abandonedHeadElementChild"] = "abandoned-head-element-child"; + ERR2["misplacedStartTagForHeadElement"] = "misplaced-start-tag-for-head-element"; + ERR2["nestedNoscriptInHead"] = "nested-noscript-in-head"; + ERR2["eofInElementThatCanContainOnlyText"] = "eof-in-element-that-can-contain-only-text"; +})(ERR || (ERR = {})); + +// ../../node_modules/.pnpm/parse5@7.3.0/node_modules/parse5/dist/tokenizer/preprocessor.js +var DEFAULT_BUFFER_WATERLINE = 1 << 16; +var Preprocessor = class { + constructor(handler) { + this.handler = handler; + this.html = ""; + this.pos = -1; + this.lastGapPos = -2; + this.gapStack = []; + this.skipNextNewLine = false; + this.lastChunkWritten = false; + this.endOfChunkHit = false; + this.bufferWaterline = DEFAULT_BUFFER_WATERLINE; + this.isEol = false; + this.lineStartPos = 0; + this.droppedBufferSize = 0; + this.line = 1; + this.lastErrOffset = -1; + } + get col() { + return this.pos - this.lineStartPos + Number(this.lastGapPos !== this.pos); + } + get offset() { + return this.droppedBufferSize + this.pos; + } + getError(code2, cpOffset) { + const { line, col, offset } = this; + const startCol = col + cpOffset; + const startOffset = offset + cpOffset; + return { + code: code2, + startLine: line, + endLine: line, + startCol, + endCol: startCol, + startOffset, + endOffset: startOffset + }; + } + _err(code2) { + if (this.handler.onParseError && this.lastErrOffset !== this.offset) { + this.lastErrOffset = this.offset; + this.handler.onParseError(this.getError(code2, 0)); + } + } + _addGap() { + this.gapStack.push(this.lastGapPos); + this.lastGapPos = this.pos; + } + _processSurrogate(cp) { + if (this.pos !== this.html.length - 1) { + const nextCp = this.html.charCodeAt(this.pos + 1); + if (isSurrogatePair(nextCp)) { + this.pos++; + this._addGap(); + return getSurrogatePairCodePoint(cp, nextCp); + } + } else if (!this.lastChunkWritten) { + this.endOfChunkHit = true; + return CODE_POINTS.EOF; + } + this._err(ERR.surrogateInInputStream); + return cp; + } + willDropParsedChunk() { + return this.pos > this.bufferWaterline; + } + dropParsedChunk() { + if (this.willDropParsedChunk()) { + this.html = this.html.substring(this.pos); + this.lineStartPos -= this.pos; + this.droppedBufferSize += this.pos; + this.pos = 0; + this.lastGapPos = -2; + this.gapStack.length = 0; + } + } + write(chunk, isLastChunk) { + if (this.html.length > 0) { + this.html += chunk; + } else { + this.html = chunk; + } + this.endOfChunkHit = false; + this.lastChunkWritten = isLastChunk; + } + insertHtmlAtCurrentPos(chunk) { + this.html = this.html.substring(0, this.pos + 1) + chunk + this.html.substring(this.pos + 1); + this.endOfChunkHit = false; + } + startsWith(pattern, caseSensitive) { + if (this.pos + pattern.length > this.html.length) { + this.endOfChunkHit = !this.lastChunkWritten; + return false; + } + if (caseSensitive) { + return this.html.startsWith(pattern, this.pos); + } + for (let i = 0; i < pattern.length; i++) { + const cp = this.html.charCodeAt(this.pos + i) | 32; + if (cp !== pattern.charCodeAt(i)) { + return false; + } + } + return true; + } + peek(offset) { + const pos = this.pos + offset; + if (pos >= this.html.length) { + this.endOfChunkHit = !this.lastChunkWritten; + return CODE_POINTS.EOF; + } + const code2 = this.html.charCodeAt(pos); + return code2 === CODE_POINTS.CARRIAGE_RETURN ? CODE_POINTS.LINE_FEED : code2; + } + advance() { + this.pos++; + if (this.isEol) { + this.isEol = false; + this.line++; + this.lineStartPos = this.pos; + } + if (this.pos >= this.html.length) { + this.endOfChunkHit = !this.lastChunkWritten; + return CODE_POINTS.EOF; + } + let cp = this.html.charCodeAt(this.pos); + if (cp === CODE_POINTS.CARRIAGE_RETURN) { + this.isEol = true; + this.skipNextNewLine = true; + return CODE_POINTS.LINE_FEED; + } + if (cp === CODE_POINTS.LINE_FEED) { + this.isEol = true; + if (this.skipNextNewLine) { + this.line--; + this.skipNextNewLine = false; + this._addGap(); + return this.advance(); + } + } + this.skipNextNewLine = false; + if (isSurrogate(cp)) { + cp = this._processSurrogate(cp); + } + const isCommonValidRange = this.handler.onParseError === null || cp > 31 && cp < 127 || cp === CODE_POINTS.LINE_FEED || cp === CODE_POINTS.CARRIAGE_RETURN || cp > 159 && cp < 64976; + if (!isCommonValidRange) { + this._checkForProblematicCharacters(cp); + } + return cp; + } + _checkForProblematicCharacters(cp) { + if (isControlCodePoint(cp)) { + this._err(ERR.controlCharacterInInputStream); + } else if (isUndefinedCodePoint(cp)) { + this._err(ERR.noncharacterInInputStream); + } + } + retreat(count) { + this.pos -= count; + while (this.pos < this.lastGapPos) { + this.lastGapPos = this.gapStack.pop(); + this.pos--; + } + this.isEol = false; + } +}; + +// ../../node_modules/.pnpm/parse5@7.3.0/node_modules/parse5/dist/common/token.js +var token_exports = {}; +__export(token_exports, { + TokenType: () => TokenType, + getTokenAttr: () => getTokenAttr +}); +var TokenType; +(function(TokenType2) { + TokenType2[TokenType2["CHARACTER"] = 0] = "CHARACTER"; + TokenType2[TokenType2["NULL_CHARACTER"] = 1] = "NULL_CHARACTER"; + TokenType2[TokenType2["WHITESPACE_CHARACTER"] = 2] = "WHITESPACE_CHARACTER"; + TokenType2[TokenType2["START_TAG"] = 3] = "START_TAG"; + TokenType2[TokenType2["END_TAG"] = 4] = "END_TAG"; + TokenType2[TokenType2["COMMENT"] = 5] = "COMMENT"; + TokenType2[TokenType2["DOCTYPE"] = 6] = "DOCTYPE"; + TokenType2[TokenType2["EOF"] = 7] = "EOF"; + TokenType2[TokenType2["HIBERNATION"] = 8] = "HIBERNATION"; +})(TokenType || (TokenType = {})); +function getTokenAttr(token, attrName) { + for (let i = token.attrs.length - 1; i >= 0; i--) { + if (token.attrs[i].name === attrName) { + return token.attrs[i].value; + } + } + return null; +} + +// ../../node_modules/.pnpm/entities@6.0.0/node_modules/entities/dist/esm/generated/decode-data-html.js +var htmlDecodeTree = /* @__PURE__ */ new Uint16Array( + /* @__PURE__ */ '\u1D41<\xD5\u0131\u028A\u049D\u057B\u05D0\u0675\u06DE\u07A2\u07D6\u080F\u0A4A\u0A91\u0DA1\u0E6D\u0F09\u0F26\u10CA\u1228\u12E1\u1415\u149D\u14C3\u14DF\u1525\0\0\0\0\0\0\u156B\u16CD\u198D\u1C12\u1DDD\u1F7E\u2060\u21B0\u228D\u23C0\u23FB\u2442\u2824\u2912\u2D08\u2E48\u2FCE\u3016\u32BA\u3639\u37AC\u38FE\u3A28\u3A71\u3AE0\u3B2E\u0800EMabcfglmnoprstu\\bfms\x7F\x84\x8B\x90\x95\x98\xA6\xB3\xB9\xC8\xCFlig\u803B\xC6\u40C6P\u803B&\u4026cute\u803B\xC1\u40C1reve;\u4102\u0100iyx}rc\u803B\xC2\u40C2;\u4410r;\uC000\u{1D504}rave\u803B\xC0\u40C0pha;\u4391acr;\u4100d;\u6A53\u0100gp\x9D\xA1on;\u4104f;\uC000\u{1D538}plyFunction;\u6061ing\u803B\xC5\u40C5\u0100cs\xBE\xC3r;\uC000\u{1D49C}ign;\u6254ilde\u803B\xC3\u40C3ml\u803B\xC4\u40C4\u0400aceforsu\xE5\xFB\xFE\u0117\u011C\u0122\u0127\u012A\u0100cr\xEA\xF2kslash;\u6216\u0176\xF6\xF8;\u6AE7ed;\u6306y;\u4411\u0180crt\u0105\u010B\u0114ause;\u6235noullis;\u612Ca;\u4392r;\uC000\u{1D505}pf;\uC000\u{1D539}eve;\u42D8c\xF2\u0113mpeq;\u624E\u0700HOacdefhilorsu\u014D\u0151\u0156\u0180\u019E\u01A2\u01B5\u01B7\u01BA\u01DC\u0215\u0273\u0278\u027Ecy;\u4427PY\u803B\xA9\u40A9\u0180cpy\u015D\u0162\u017Aute;\u4106\u0100;i\u0167\u0168\u62D2talDifferentialD;\u6145leys;\u612D\u0200aeio\u0189\u018E\u0194\u0198ron;\u410Cdil\u803B\xC7\u40C7rc;\u4108nint;\u6230ot;\u410A\u0100dn\u01A7\u01ADilla;\u40B8terDot;\u40B7\xF2\u017Fi;\u43A7rcle\u0200DMPT\u01C7\u01CB\u01D1\u01D6ot;\u6299inus;\u6296lus;\u6295imes;\u6297o\u0100cs\u01E2\u01F8kwiseContourIntegral;\u6232eCurly\u0100DQ\u0203\u020FoubleQuote;\u601Duote;\u6019\u0200lnpu\u021E\u0228\u0247\u0255on\u0100;e\u0225\u0226\u6237;\u6A74\u0180git\u022F\u0236\u023Aruent;\u6261nt;\u622FourIntegral;\u622E\u0100fr\u024C\u024E;\u6102oduct;\u6210nterClockwiseContourIntegral;\u6233oss;\u6A2Fcr;\uC000\u{1D49E}p\u0100;C\u0284\u0285\u62D3ap;\u624D\u0580DJSZacefios\u02A0\u02AC\u02B0\u02B4\u02B8\u02CB\u02D7\u02E1\u02E6\u0333\u048D\u0100;o\u0179\u02A5trahd;\u6911cy;\u4402cy;\u4405cy;\u440F\u0180grs\u02BF\u02C4\u02C7ger;\u6021r;\u61A1hv;\u6AE4\u0100ay\u02D0\u02D5ron;\u410E;\u4414l\u0100;t\u02DD\u02DE\u6207a;\u4394r;\uC000\u{1D507}\u0100af\u02EB\u0327\u0100cm\u02F0\u0322ritical\u0200ADGT\u0300\u0306\u0316\u031Ccute;\u40B4o\u0174\u030B\u030D;\u42D9bleAcute;\u42DDrave;\u4060ilde;\u42DCond;\u62C4ferentialD;\u6146\u0470\u033D\0\0\0\u0342\u0354\0\u0405f;\uC000\u{1D53B}\u0180;DE\u0348\u0349\u034D\u40A8ot;\u60DCqual;\u6250ble\u0300CDLRUV\u0363\u0372\u0382\u03CF\u03E2\u03F8ontourIntegra\xEC\u0239o\u0274\u0379\0\0\u037B\xBB\u0349nArrow;\u61D3\u0100eo\u0387\u03A4ft\u0180ART\u0390\u0396\u03A1rrow;\u61D0ightArrow;\u61D4e\xE5\u02CAng\u0100LR\u03AB\u03C4eft\u0100AR\u03B3\u03B9rrow;\u67F8ightArrow;\u67FAightArrow;\u67F9ight\u0100AT\u03D8\u03DErrow;\u61D2ee;\u62A8p\u0241\u03E9\0\0\u03EFrrow;\u61D1ownArrow;\u61D5erticalBar;\u6225n\u0300ABLRTa\u0412\u042A\u0430\u045E\u047F\u037Crrow\u0180;BU\u041D\u041E\u0422\u6193ar;\u6913pArrow;\u61F5reve;\u4311eft\u02D2\u043A\0\u0446\0\u0450ightVector;\u6950eeVector;\u695Eector\u0100;B\u0459\u045A\u61BDar;\u6956ight\u01D4\u0467\0\u0471eeVector;\u695Fector\u0100;B\u047A\u047B\u61C1ar;\u6957ee\u0100;A\u0486\u0487\u62A4rrow;\u61A7\u0100ct\u0492\u0497r;\uC000\u{1D49F}rok;\u4110\u0800NTacdfglmopqstux\u04BD\u04C0\u04C4\u04CB\u04DE\u04E2\u04E7\u04EE\u04F5\u0521\u052F\u0536\u0552\u055D\u0560\u0565G;\u414AH\u803B\xD0\u40D0cute\u803B\xC9\u40C9\u0180aiy\u04D2\u04D7\u04DCron;\u411Arc\u803B\xCA\u40CA;\u442Dot;\u4116r;\uC000\u{1D508}rave\u803B\xC8\u40C8ement;\u6208\u0100ap\u04FA\u04FEcr;\u4112ty\u0253\u0506\0\0\u0512mallSquare;\u65FBerySmallSquare;\u65AB\u0100gp\u0526\u052Aon;\u4118f;\uC000\u{1D53C}silon;\u4395u\u0100ai\u053C\u0549l\u0100;T\u0542\u0543\u6A75ilde;\u6242librium;\u61CC\u0100ci\u0557\u055Ar;\u6130m;\u6A73a;\u4397ml\u803B\xCB\u40CB\u0100ip\u056A\u056Fsts;\u6203onentialE;\u6147\u0280cfios\u0585\u0588\u058D\u05B2\u05CCy;\u4424r;\uC000\u{1D509}lled\u0253\u0597\0\0\u05A3mallSquare;\u65FCerySmallSquare;\u65AA\u0370\u05BA\0\u05BF\0\0\u05C4f;\uC000\u{1D53D}All;\u6200riertrf;\u6131c\xF2\u05CB\u0600JTabcdfgorst\u05E8\u05EC\u05EF\u05FA\u0600\u0612\u0616\u061B\u061D\u0623\u066C\u0672cy;\u4403\u803B>\u403Emma\u0100;d\u05F7\u05F8\u4393;\u43DCreve;\u411E\u0180eiy\u0607\u060C\u0610dil;\u4122rc;\u411C;\u4413ot;\u4120r;\uC000\u{1D50A};\u62D9pf;\uC000\u{1D53E}eater\u0300EFGLST\u0635\u0644\u064E\u0656\u065B\u0666qual\u0100;L\u063E\u063F\u6265ess;\u62DBullEqual;\u6267reater;\u6AA2ess;\u6277lantEqual;\u6A7Eilde;\u6273cr;\uC000\u{1D4A2};\u626B\u0400Aacfiosu\u0685\u068B\u0696\u069B\u069E\u06AA\u06BE\u06CARDcy;\u442A\u0100ct\u0690\u0694ek;\u42C7;\u405Eirc;\u4124r;\u610ClbertSpace;\u610B\u01F0\u06AF\0\u06B2f;\u610DizontalLine;\u6500\u0100ct\u06C3\u06C5\xF2\u06A9rok;\u4126mp\u0144\u06D0\u06D8ownHum\xF0\u012Fqual;\u624F\u0700EJOacdfgmnostu\u06FA\u06FE\u0703\u0707\u070E\u071A\u071E\u0721\u0728\u0744\u0778\u078B\u078F\u0795cy;\u4415lig;\u4132cy;\u4401cute\u803B\xCD\u40CD\u0100iy\u0713\u0718rc\u803B\xCE\u40CE;\u4418ot;\u4130r;\u6111rave\u803B\xCC\u40CC\u0180;ap\u0720\u072F\u073F\u0100cg\u0734\u0737r;\u412AinaryI;\u6148lie\xF3\u03DD\u01F4\u0749\0\u0762\u0100;e\u074D\u074E\u622C\u0100gr\u0753\u0758ral;\u622Bsection;\u62C2isible\u0100CT\u076C\u0772omma;\u6063imes;\u6062\u0180gpt\u077F\u0783\u0788on;\u412Ef;\uC000\u{1D540}a;\u4399cr;\u6110ilde;\u4128\u01EB\u079A\0\u079Ecy;\u4406l\u803B\xCF\u40CF\u0280cfosu\u07AC\u07B7\u07BC\u07C2\u07D0\u0100iy\u07B1\u07B5rc;\u4134;\u4419r;\uC000\u{1D50D}pf;\uC000\u{1D541}\u01E3\u07C7\0\u07CCr;\uC000\u{1D4A5}rcy;\u4408kcy;\u4404\u0380HJacfos\u07E4\u07E8\u07EC\u07F1\u07FD\u0802\u0808cy;\u4425cy;\u440Cppa;\u439A\u0100ey\u07F6\u07FBdil;\u4136;\u441Ar;\uC000\u{1D50E}pf;\uC000\u{1D542}cr;\uC000\u{1D4A6}\u0580JTaceflmost\u0825\u0829\u082C\u0850\u0863\u09B3\u09B8\u09C7\u09CD\u0A37\u0A47cy;\u4409\u803B<\u403C\u0280cmnpr\u0837\u083C\u0841\u0844\u084Dute;\u4139bda;\u439Bg;\u67EAlacetrf;\u6112r;\u619E\u0180aey\u0857\u085C\u0861ron;\u413Ddil;\u413B;\u441B\u0100fs\u0868\u0970t\u0500ACDFRTUVar\u087E\u08A9\u08B1\u08E0\u08E6\u08FC\u092F\u095B\u0390\u096A\u0100nr\u0883\u088FgleBracket;\u67E8row\u0180;BR\u0899\u089A\u089E\u6190ar;\u61E4ightArrow;\u61C6eiling;\u6308o\u01F5\u08B7\0\u08C3bleBracket;\u67E6n\u01D4\u08C8\0\u08D2eeVector;\u6961ector\u0100;B\u08DB\u08DC\u61C3ar;\u6959loor;\u630Aight\u0100AV\u08EF\u08F5rrow;\u6194ector;\u694E\u0100er\u0901\u0917e\u0180;AV\u0909\u090A\u0910\u62A3rrow;\u61A4ector;\u695Aiangle\u0180;BE\u0924\u0925\u0929\u62B2ar;\u69CFqual;\u62B4p\u0180DTV\u0937\u0942\u094CownVector;\u6951eeVector;\u6960ector\u0100;B\u0956\u0957\u61BFar;\u6958ector\u0100;B\u0965\u0966\u61BCar;\u6952ight\xE1\u039Cs\u0300EFGLST\u097E\u098B\u0995\u099D\u09A2\u09ADqualGreater;\u62DAullEqual;\u6266reater;\u6276ess;\u6AA1lantEqual;\u6A7Dilde;\u6272r;\uC000\u{1D50F}\u0100;e\u09BD\u09BE\u62D8ftarrow;\u61DAidot;\u413F\u0180npw\u09D4\u0A16\u0A1Bg\u0200LRlr\u09DE\u09F7\u0A02\u0A10eft\u0100AR\u09E6\u09ECrrow;\u67F5ightArrow;\u67F7ightArrow;\u67F6eft\u0100ar\u03B3\u0A0Aight\xE1\u03BFight\xE1\u03CAf;\uC000\u{1D543}er\u0100LR\u0A22\u0A2CeftArrow;\u6199ightArrow;\u6198\u0180cht\u0A3E\u0A40\u0A42\xF2\u084C;\u61B0rok;\u4141;\u626A\u0400acefiosu\u0A5A\u0A5D\u0A60\u0A77\u0A7C\u0A85\u0A8B\u0A8Ep;\u6905y;\u441C\u0100dl\u0A65\u0A6FiumSpace;\u605Flintrf;\u6133r;\uC000\u{1D510}nusPlus;\u6213pf;\uC000\u{1D544}c\xF2\u0A76;\u439C\u0480Jacefostu\u0AA3\u0AA7\u0AAD\u0AC0\u0B14\u0B19\u0D91\u0D97\u0D9Ecy;\u440Acute;\u4143\u0180aey\u0AB4\u0AB9\u0ABEron;\u4147dil;\u4145;\u441D\u0180gsw\u0AC7\u0AF0\u0B0Eative\u0180MTV\u0AD3\u0ADF\u0AE8ediumSpace;\u600Bhi\u0100cn\u0AE6\u0AD8\xEB\u0AD9eryThi\xEE\u0AD9ted\u0100GL\u0AF8\u0B06reaterGreate\xF2\u0673essLes\xF3\u0A48Line;\u400Ar;\uC000\u{1D511}\u0200Bnpt\u0B22\u0B28\u0B37\u0B3Areak;\u6060BreakingSpace;\u40A0f;\u6115\u0680;CDEGHLNPRSTV\u0B55\u0B56\u0B6A\u0B7C\u0BA1\u0BEB\u0C04\u0C5E\u0C84\u0CA6\u0CD8\u0D61\u0D85\u6AEC\u0100ou\u0B5B\u0B64ngruent;\u6262pCap;\u626DoubleVerticalBar;\u6226\u0180lqx\u0B83\u0B8A\u0B9Bement;\u6209ual\u0100;T\u0B92\u0B93\u6260ilde;\uC000\u2242\u0338ists;\u6204reater\u0380;EFGLST\u0BB6\u0BB7\u0BBD\u0BC9\u0BD3\u0BD8\u0BE5\u626Fqual;\u6271ullEqual;\uC000\u2267\u0338reater;\uC000\u226B\u0338ess;\u6279lantEqual;\uC000\u2A7E\u0338ilde;\u6275ump\u0144\u0BF2\u0BFDownHump;\uC000\u224E\u0338qual;\uC000\u224F\u0338e\u0100fs\u0C0A\u0C27tTriangle\u0180;BE\u0C1A\u0C1B\u0C21\u62EAar;\uC000\u29CF\u0338qual;\u62ECs\u0300;EGLST\u0C35\u0C36\u0C3C\u0C44\u0C4B\u0C58\u626Equal;\u6270reater;\u6278ess;\uC000\u226A\u0338lantEqual;\uC000\u2A7D\u0338ilde;\u6274ested\u0100GL\u0C68\u0C79reaterGreater;\uC000\u2AA2\u0338essLess;\uC000\u2AA1\u0338recedes\u0180;ES\u0C92\u0C93\u0C9B\u6280qual;\uC000\u2AAF\u0338lantEqual;\u62E0\u0100ei\u0CAB\u0CB9verseElement;\u620CghtTriangle\u0180;BE\u0CCB\u0CCC\u0CD2\u62EBar;\uC000\u29D0\u0338qual;\u62ED\u0100qu\u0CDD\u0D0CuareSu\u0100bp\u0CE8\u0CF9set\u0100;E\u0CF0\u0CF3\uC000\u228F\u0338qual;\u62E2erset\u0100;E\u0D03\u0D06\uC000\u2290\u0338qual;\u62E3\u0180bcp\u0D13\u0D24\u0D4Eset\u0100;E\u0D1B\u0D1E\uC000\u2282\u20D2qual;\u6288ceeds\u0200;EST\u0D32\u0D33\u0D3B\u0D46\u6281qual;\uC000\u2AB0\u0338lantEqual;\u62E1ilde;\uC000\u227F\u0338erset\u0100;E\u0D58\u0D5B\uC000\u2283\u20D2qual;\u6289ilde\u0200;EFT\u0D6E\u0D6F\u0D75\u0D7F\u6241qual;\u6244ullEqual;\u6247ilde;\u6249erticalBar;\u6224cr;\uC000\u{1D4A9}ilde\u803B\xD1\u40D1;\u439D\u0700Eacdfgmoprstuv\u0DBD\u0DC2\u0DC9\u0DD5\u0DDB\u0DE0\u0DE7\u0DFC\u0E02\u0E20\u0E22\u0E32\u0E3F\u0E44lig;\u4152cute\u803B\xD3\u40D3\u0100iy\u0DCE\u0DD3rc\u803B\xD4\u40D4;\u441Eblac;\u4150r;\uC000\u{1D512}rave\u803B\xD2\u40D2\u0180aei\u0DEE\u0DF2\u0DF6cr;\u414Cga;\u43A9cron;\u439Fpf;\uC000\u{1D546}enCurly\u0100DQ\u0E0E\u0E1AoubleQuote;\u601Cuote;\u6018;\u6A54\u0100cl\u0E27\u0E2Cr;\uC000\u{1D4AA}ash\u803B\xD8\u40D8i\u016C\u0E37\u0E3Cde\u803B\xD5\u40D5es;\u6A37ml\u803B\xD6\u40D6er\u0100BP\u0E4B\u0E60\u0100ar\u0E50\u0E53r;\u603Eac\u0100ek\u0E5A\u0E5C;\u63DEet;\u63B4arenthesis;\u63DC\u0480acfhilors\u0E7F\u0E87\u0E8A\u0E8F\u0E92\u0E94\u0E9D\u0EB0\u0EFCrtialD;\u6202y;\u441Fr;\uC000\u{1D513}i;\u43A6;\u43A0usMinus;\u40B1\u0100ip\u0EA2\u0EADncareplan\xE5\u069Df;\u6119\u0200;eio\u0EB9\u0EBA\u0EE0\u0EE4\u6ABBcedes\u0200;EST\u0EC8\u0EC9\u0ECF\u0EDA\u627Aqual;\u6AAFlantEqual;\u627Cilde;\u627Eme;\u6033\u0100dp\u0EE9\u0EEEuct;\u620Fortion\u0100;a\u0225\u0EF9l;\u621D\u0100ci\u0F01\u0F06r;\uC000\u{1D4AB};\u43A8\u0200Ufos\u0F11\u0F16\u0F1B\u0F1FOT\u803B"\u4022r;\uC000\u{1D514}pf;\u611Acr;\uC000\u{1D4AC}\u0600BEacefhiorsu\u0F3E\u0F43\u0F47\u0F60\u0F73\u0FA7\u0FAA\u0FAD\u1096\u10A9\u10B4\u10BEarr;\u6910G\u803B\xAE\u40AE\u0180cnr\u0F4E\u0F53\u0F56ute;\u4154g;\u67EBr\u0100;t\u0F5C\u0F5D\u61A0l;\u6916\u0180aey\u0F67\u0F6C\u0F71ron;\u4158dil;\u4156;\u4420\u0100;v\u0F78\u0F79\u611Cerse\u0100EU\u0F82\u0F99\u0100lq\u0F87\u0F8Eement;\u620Builibrium;\u61CBpEquilibrium;\u696Fr\xBB\u0F79o;\u43A1ght\u0400ACDFTUVa\u0FC1\u0FEB\u0FF3\u1022\u1028\u105B\u1087\u03D8\u0100nr\u0FC6\u0FD2gleBracket;\u67E9row\u0180;BL\u0FDC\u0FDD\u0FE1\u6192ar;\u61E5eftArrow;\u61C4eiling;\u6309o\u01F5\u0FF9\0\u1005bleBracket;\u67E7n\u01D4\u100A\0\u1014eeVector;\u695Dector\u0100;B\u101D\u101E\u61C2ar;\u6955loor;\u630B\u0100er\u102D\u1043e\u0180;AV\u1035\u1036\u103C\u62A2rrow;\u61A6ector;\u695Biangle\u0180;BE\u1050\u1051\u1055\u62B3ar;\u69D0qual;\u62B5p\u0180DTV\u1063\u106E\u1078ownVector;\u694FeeVector;\u695Cector\u0100;B\u1082\u1083\u61BEar;\u6954ector\u0100;B\u1091\u1092\u61C0ar;\u6953\u0100pu\u109B\u109Ef;\u611DndImplies;\u6970ightarrow;\u61DB\u0100ch\u10B9\u10BCr;\u611B;\u61B1leDelayed;\u69F4\u0680HOacfhimoqstu\u10E4\u10F1\u10F7\u10FD\u1119\u111E\u1151\u1156\u1161\u1167\u11B5\u11BB\u11BF\u0100Cc\u10E9\u10EEHcy;\u4429y;\u4428FTcy;\u442Ccute;\u415A\u0280;aeiy\u1108\u1109\u110E\u1113\u1117\u6ABCron;\u4160dil;\u415Erc;\u415C;\u4421r;\uC000\u{1D516}ort\u0200DLRU\u112A\u1134\u113E\u1149ownArrow\xBB\u041EeftArrow\xBB\u089AightArrow\xBB\u0FDDpArrow;\u6191gma;\u43A3allCircle;\u6218pf;\uC000\u{1D54A}\u0272\u116D\0\0\u1170t;\u621Aare\u0200;ISU\u117B\u117C\u1189\u11AF\u65A1ntersection;\u6293u\u0100bp\u118F\u119Eset\u0100;E\u1197\u1198\u628Fqual;\u6291erset\u0100;E\u11A8\u11A9\u6290qual;\u6292nion;\u6294cr;\uC000\u{1D4AE}ar;\u62C6\u0200bcmp\u11C8\u11DB\u1209\u120B\u0100;s\u11CD\u11CE\u62D0et\u0100;E\u11CD\u11D5qual;\u6286\u0100ch\u11E0\u1205eeds\u0200;EST\u11ED\u11EE\u11F4\u11FF\u627Bqual;\u6AB0lantEqual;\u627Dilde;\u627FTh\xE1\u0F8C;\u6211\u0180;es\u1212\u1213\u1223\u62D1rset\u0100;E\u121C\u121D\u6283qual;\u6287et\xBB\u1213\u0580HRSacfhiors\u123E\u1244\u1249\u1255\u125E\u1271\u1276\u129F\u12C2\u12C8\u12D1ORN\u803B\xDE\u40DEADE;\u6122\u0100Hc\u124E\u1252cy;\u440By;\u4426\u0100bu\u125A\u125C;\u4009;\u43A4\u0180aey\u1265\u126A\u126Fron;\u4164dil;\u4162;\u4422r;\uC000\u{1D517}\u0100ei\u127B\u1289\u01F2\u1280\0\u1287efore;\u6234a;\u4398\u0100cn\u128E\u1298kSpace;\uC000\u205F\u200ASpace;\u6009lde\u0200;EFT\u12AB\u12AC\u12B2\u12BC\u623Cqual;\u6243ullEqual;\u6245ilde;\u6248pf;\uC000\u{1D54B}ipleDot;\u60DB\u0100ct\u12D6\u12DBr;\uC000\u{1D4AF}rok;\u4166\u0AE1\u12F7\u130E\u131A\u1326\0\u132C\u1331\0\0\0\0\0\u1338\u133D\u1377\u1385\0\u13FF\u1404\u140A\u1410\u0100cr\u12FB\u1301ute\u803B\xDA\u40DAr\u0100;o\u1307\u1308\u619Fcir;\u6949r\u01E3\u1313\0\u1316y;\u440Eve;\u416C\u0100iy\u131E\u1323rc\u803B\xDB\u40DB;\u4423blac;\u4170r;\uC000\u{1D518}rave\u803B\xD9\u40D9acr;\u416A\u0100di\u1341\u1369er\u0100BP\u1348\u135D\u0100ar\u134D\u1350r;\u405Fac\u0100ek\u1357\u1359;\u63DFet;\u63B5arenthesis;\u63DDon\u0100;P\u1370\u1371\u62C3lus;\u628E\u0100gp\u137B\u137Fon;\u4172f;\uC000\u{1D54C}\u0400ADETadps\u1395\u13AE\u13B8\u13C4\u03E8\u13D2\u13D7\u13F3rrow\u0180;BD\u1150\u13A0\u13A4ar;\u6912ownArrow;\u61C5ownArrow;\u6195quilibrium;\u696Eee\u0100;A\u13CB\u13CC\u62A5rrow;\u61A5own\xE1\u03F3er\u0100LR\u13DE\u13E8eftArrow;\u6196ightArrow;\u6197i\u0100;l\u13F9\u13FA\u43D2on;\u43A5ing;\u416Ecr;\uC000\u{1D4B0}ilde;\u4168ml\u803B\xDC\u40DC\u0480Dbcdefosv\u1427\u142C\u1430\u1433\u143E\u1485\u148A\u1490\u1496ash;\u62ABar;\u6AEBy;\u4412ash\u0100;l\u143B\u143C\u62A9;\u6AE6\u0100er\u1443\u1445;\u62C1\u0180bty\u144C\u1450\u147Aar;\u6016\u0100;i\u144F\u1455cal\u0200BLST\u1461\u1465\u146A\u1474ar;\u6223ine;\u407Ceparator;\u6758ilde;\u6240ThinSpace;\u600Ar;\uC000\u{1D519}pf;\uC000\u{1D54D}cr;\uC000\u{1D4B1}dash;\u62AA\u0280cefos\u14A7\u14AC\u14B1\u14B6\u14BCirc;\u4174dge;\u62C0r;\uC000\u{1D51A}pf;\uC000\u{1D54E}cr;\uC000\u{1D4B2}\u0200fios\u14CB\u14D0\u14D2\u14D8r;\uC000\u{1D51B};\u439Epf;\uC000\u{1D54F}cr;\uC000\u{1D4B3}\u0480AIUacfosu\u14F1\u14F5\u14F9\u14FD\u1504\u150F\u1514\u151A\u1520cy;\u442Fcy;\u4407cy;\u442Ecute\u803B\xDD\u40DD\u0100iy\u1509\u150Drc;\u4176;\u442Br;\uC000\u{1D51C}pf;\uC000\u{1D550}cr;\uC000\u{1D4B4}ml;\u4178\u0400Hacdefos\u1535\u1539\u153F\u154B\u154F\u155D\u1560\u1564cy;\u4416cute;\u4179\u0100ay\u1544\u1549ron;\u417D;\u4417ot;\u417B\u01F2\u1554\0\u155BoWidt\xE8\u0AD9a;\u4396r;\u6128pf;\u6124cr;\uC000\u{1D4B5}\u0BE1\u1583\u158A\u1590\0\u15B0\u15B6\u15BF\0\0\0\0\u15C6\u15DB\u15EB\u165F\u166D\0\u1695\u169B\u16B2\u16B9\0\u16BEcute\u803B\xE1\u40E1reve;\u4103\u0300;Ediuy\u159C\u159D\u15A1\u15A3\u15A8\u15AD\u623E;\uC000\u223E\u0333;\u623Frc\u803B\xE2\u40E2te\u80BB\xB4\u0306;\u4430lig\u803B\xE6\u40E6\u0100;r\xB2\u15BA;\uC000\u{1D51E}rave\u803B\xE0\u40E0\u0100ep\u15CA\u15D6\u0100fp\u15CF\u15D4sym;\u6135\xE8\u15D3ha;\u43B1\u0100ap\u15DFc\u0100cl\u15E4\u15E7r;\u4101g;\u6A3F\u0264\u15F0\0\0\u160A\u0280;adsv\u15FA\u15FB\u15FF\u1601\u1607\u6227nd;\u6A55;\u6A5Clope;\u6A58;\u6A5A\u0380;elmrsz\u1618\u1619\u161B\u161E\u163F\u164F\u1659\u6220;\u69A4e\xBB\u1619sd\u0100;a\u1625\u1626\u6221\u0461\u1630\u1632\u1634\u1636\u1638\u163A\u163C\u163E;\u69A8;\u69A9;\u69AA;\u69AB;\u69AC;\u69AD;\u69AE;\u69AFt\u0100;v\u1645\u1646\u621Fb\u0100;d\u164C\u164D\u62BE;\u699D\u0100pt\u1654\u1657h;\u6222\xBB\xB9arr;\u637C\u0100gp\u1663\u1667on;\u4105f;\uC000\u{1D552}\u0380;Eaeiop\u12C1\u167B\u167D\u1682\u1684\u1687\u168A;\u6A70cir;\u6A6F;\u624Ad;\u624Bs;\u4027rox\u0100;e\u12C1\u1692\xF1\u1683ing\u803B\xE5\u40E5\u0180cty\u16A1\u16A6\u16A8r;\uC000\u{1D4B6};\u402Amp\u0100;e\u12C1\u16AF\xF1\u0288ilde\u803B\xE3\u40E3ml\u803B\xE4\u40E4\u0100ci\u16C2\u16C8onin\xF4\u0272nt;\u6A11\u0800Nabcdefiklnoprsu\u16ED\u16F1\u1730\u173C\u1743\u1748\u1778\u177D\u17E0\u17E6\u1839\u1850\u170D\u193D\u1948\u1970ot;\u6AED\u0100cr\u16F6\u171Ek\u0200ceps\u1700\u1705\u170D\u1713ong;\u624Cpsilon;\u43F6rime;\u6035im\u0100;e\u171A\u171B\u623Dq;\u62CD\u0176\u1722\u1726ee;\u62BDed\u0100;g\u172C\u172D\u6305e\xBB\u172Drk\u0100;t\u135C\u1737brk;\u63B6\u0100oy\u1701\u1741;\u4431quo;\u601E\u0280cmprt\u1753\u175B\u1761\u1764\u1768aus\u0100;e\u010A\u0109ptyv;\u69B0s\xE9\u170Cno\xF5\u0113\u0180ahw\u176F\u1771\u1773;\u43B2;\u6136een;\u626Cr;\uC000\u{1D51F}g\u0380costuvw\u178D\u179D\u17B3\u17C1\u17D5\u17DB\u17DE\u0180aiu\u1794\u1796\u179A\xF0\u0760rc;\u65EFp\xBB\u1371\u0180dpt\u17A4\u17A8\u17ADot;\u6A00lus;\u6A01imes;\u6A02\u0271\u17B9\0\0\u17BEcup;\u6A06ar;\u6605riangle\u0100du\u17CD\u17D2own;\u65BDp;\u65B3plus;\u6A04e\xE5\u1444\xE5\u14ADarow;\u690D\u0180ako\u17ED\u1826\u1835\u0100cn\u17F2\u1823k\u0180lst\u17FA\u05AB\u1802ozenge;\u69EBriangle\u0200;dlr\u1812\u1813\u1818\u181D\u65B4own;\u65BEeft;\u65C2ight;\u65B8k;\u6423\u01B1\u182B\0\u1833\u01B2\u182F\0\u1831;\u6592;\u65914;\u6593ck;\u6588\u0100eo\u183E\u184D\u0100;q\u1843\u1846\uC000=\u20E5uiv;\uC000\u2261\u20E5t;\u6310\u0200ptwx\u1859\u185E\u1867\u186Cf;\uC000\u{1D553}\u0100;t\u13CB\u1863om\xBB\u13CCtie;\u62C8\u0600DHUVbdhmptuv\u1885\u1896\u18AA\u18BB\u18D7\u18DB\u18EC\u18FF\u1905\u190A\u1910\u1921\u0200LRlr\u188E\u1890\u1892\u1894;\u6557;\u6554;\u6556;\u6553\u0280;DUdu\u18A1\u18A2\u18A4\u18A6\u18A8\u6550;\u6566;\u6569;\u6564;\u6567\u0200LRlr\u18B3\u18B5\u18B7\u18B9;\u655D;\u655A;\u655C;\u6559\u0380;HLRhlr\u18CA\u18CB\u18CD\u18CF\u18D1\u18D3\u18D5\u6551;\u656C;\u6563;\u6560;\u656B;\u6562;\u655Fox;\u69C9\u0200LRlr\u18E4\u18E6\u18E8\u18EA;\u6555;\u6552;\u6510;\u650C\u0280;DUdu\u06BD\u18F7\u18F9\u18FB\u18FD;\u6565;\u6568;\u652C;\u6534inus;\u629Flus;\u629Eimes;\u62A0\u0200LRlr\u1919\u191B\u191D\u191F;\u655B;\u6558;\u6518;\u6514\u0380;HLRhlr\u1930\u1931\u1933\u1935\u1937\u1939\u193B\u6502;\u656A;\u6561;\u655E;\u653C;\u6524;\u651C\u0100ev\u0123\u1942bar\u803B\xA6\u40A6\u0200ceio\u1951\u1956\u195A\u1960r;\uC000\u{1D4B7}mi;\u604Fm\u0100;e\u171A\u171Cl\u0180;bh\u1968\u1969\u196B\u405C;\u69C5sub;\u67C8\u016C\u1974\u197El\u0100;e\u1979\u197A\u6022t\xBB\u197Ap\u0180;Ee\u012F\u1985\u1987;\u6AAE\u0100;q\u06DC\u06DB\u0CE1\u19A7\0\u19E8\u1A11\u1A15\u1A32\0\u1A37\u1A50\0\0\u1AB4\0\0\u1AC1\0\0\u1B21\u1B2E\u1B4D\u1B52\0\u1BFD\0\u1C0C\u0180cpr\u19AD\u19B2\u19DDute;\u4107\u0300;abcds\u19BF\u19C0\u19C4\u19CA\u19D5\u19D9\u6229nd;\u6A44rcup;\u6A49\u0100au\u19CF\u19D2p;\u6A4Bp;\u6A47ot;\u6A40;\uC000\u2229\uFE00\u0100eo\u19E2\u19E5t;\u6041\xEE\u0693\u0200aeiu\u19F0\u19FB\u1A01\u1A05\u01F0\u19F5\0\u19F8s;\u6A4Don;\u410Ddil\u803B\xE7\u40E7rc;\u4109ps\u0100;s\u1A0C\u1A0D\u6A4Cm;\u6A50ot;\u410B\u0180dmn\u1A1B\u1A20\u1A26il\u80BB\xB8\u01ADptyv;\u69B2t\u8100\xA2;e\u1A2D\u1A2E\u40A2r\xE4\u01B2r;\uC000\u{1D520}\u0180cei\u1A3D\u1A40\u1A4Dy;\u4447ck\u0100;m\u1A47\u1A48\u6713ark\xBB\u1A48;\u43C7r\u0380;Ecefms\u1A5F\u1A60\u1A62\u1A6B\u1AA4\u1AAA\u1AAE\u65CB;\u69C3\u0180;el\u1A69\u1A6A\u1A6D\u42C6q;\u6257e\u0261\u1A74\0\0\u1A88rrow\u0100lr\u1A7C\u1A81eft;\u61BAight;\u61BB\u0280RSacd\u1A92\u1A94\u1A96\u1A9A\u1A9F\xBB\u0F47;\u64C8st;\u629Birc;\u629Aash;\u629Dnint;\u6A10id;\u6AEFcir;\u69C2ubs\u0100;u\u1ABB\u1ABC\u6663it\xBB\u1ABC\u02EC\u1AC7\u1AD4\u1AFA\0\u1B0Aon\u0100;e\u1ACD\u1ACE\u403A\u0100;q\xC7\xC6\u026D\u1AD9\0\0\u1AE2a\u0100;t\u1ADE\u1ADF\u402C;\u4040\u0180;fl\u1AE8\u1AE9\u1AEB\u6201\xEE\u1160e\u0100mx\u1AF1\u1AF6ent\xBB\u1AE9e\xF3\u024D\u01E7\u1AFE\0\u1B07\u0100;d\u12BB\u1B02ot;\u6A6Dn\xF4\u0246\u0180fry\u1B10\u1B14\u1B17;\uC000\u{1D554}o\xE4\u0254\u8100\xA9;s\u0155\u1B1Dr;\u6117\u0100ao\u1B25\u1B29rr;\u61B5ss;\u6717\u0100cu\u1B32\u1B37r;\uC000\u{1D4B8}\u0100bp\u1B3C\u1B44\u0100;e\u1B41\u1B42\u6ACF;\u6AD1\u0100;e\u1B49\u1B4A\u6AD0;\u6AD2dot;\u62EF\u0380delprvw\u1B60\u1B6C\u1B77\u1B82\u1BAC\u1BD4\u1BF9arr\u0100lr\u1B68\u1B6A;\u6938;\u6935\u0270\u1B72\0\0\u1B75r;\u62DEc;\u62DFarr\u0100;p\u1B7F\u1B80\u61B6;\u693D\u0300;bcdos\u1B8F\u1B90\u1B96\u1BA1\u1BA5\u1BA8\u622Arcap;\u6A48\u0100au\u1B9B\u1B9Ep;\u6A46p;\u6A4Aot;\u628Dr;\u6A45;\uC000\u222A\uFE00\u0200alrv\u1BB5\u1BBF\u1BDE\u1BE3rr\u0100;m\u1BBC\u1BBD\u61B7;\u693Cy\u0180evw\u1BC7\u1BD4\u1BD8q\u0270\u1BCE\0\0\u1BD2re\xE3\u1B73u\xE3\u1B75ee;\u62CEedge;\u62CFen\u803B\xA4\u40A4earrow\u0100lr\u1BEE\u1BF3eft\xBB\u1B80ight\xBB\u1BBDe\xE4\u1BDD\u0100ci\u1C01\u1C07onin\xF4\u01F7nt;\u6231lcty;\u632D\u0980AHabcdefhijlorstuwz\u1C38\u1C3B\u1C3F\u1C5D\u1C69\u1C75\u1C8A\u1C9E\u1CAC\u1CB7\u1CFB\u1CFF\u1D0D\u1D7B\u1D91\u1DAB\u1DBB\u1DC6\u1DCDr\xF2\u0381ar;\u6965\u0200glrs\u1C48\u1C4D\u1C52\u1C54ger;\u6020eth;\u6138\xF2\u1133h\u0100;v\u1C5A\u1C5B\u6010\xBB\u090A\u016B\u1C61\u1C67arow;\u690Fa\xE3\u0315\u0100ay\u1C6E\u1C73ron;\u410F;\u4434\u0180;ao\u0332\u1C7C\u1C84\u0100gr\u02BF\u1C81r;\u61CAtseq;\u6A77\u0180glm\u1C91\u1C94\u1C98\u803B\xB0\u40B0ta;\u43B4ptyv;\u69B1\u0100ir\u1CA3\u1CA8sht;\u697F;\uC000\u{1D521}ar\u0100lr\u1CB3\u1CB5\xBB\u08DC\xBB\u101E\u0280aegsv\u1CC2\u0378\u1CD6\u1CDC\u1CE0m\u0180;os\u0326\u1CCA\u1CD4nd\u0100;s\u0326\u1CD1uit;\u6666amma;\u43DDin;\u62F2\u0180;io\u1CE7\u1CE8\u1CF8\u40F7de\u8100\xF7;o\u1CE7\u1CF0ntimes;\u62C7n\xF8\u1CF7cy;\u4452c\u026F\u1D06\0\0\u1D0Arn;\u631Eop;\u630D\u0280lptuw\u1D18\u1D1D\u1D22\u1D49\u1D55lar;\u4024f;\uC000\u{1D555}\u0280;emps\u030B\u1D2D\u1D37\u1D3D\u1D42q\u0100;d\u0352\u1D33ot;\u6251inus;\u6238lus;\u6214quare;\u62A1blebarwedg\xE5\xFAn\u0180adh\u112E\u1D5D\u1D67ownarrow\xF3\u1C83arpoon\u0100lr\u1D72\u1D76ef\xF4\u1CB4igh\xF4\u1CB6\u0162\u1D7F\u1D85karo\xF7\u0F42\u026F\u1D8A\0\0\u1D8Ern;\u631Fop;\u630C\u0180cot\u1D98\u1DA3\u1DA6\u0100ry\u1D9D\u1DA1;\uC000\u{1D4B9};\u4455l;\u69F6rok;\u4111\u0100dr\u1DB0\u1DB4ot;\u62F1i\u0100;f\u1DBA\u1816\u65BF\u0100ah\u1DC0\u1DC3r\xF2\u0429a\xF2\u0FA6angle;\u69A6\u0100ci\u1DD2\u1DD5y;\u445Fgrarr;\u67FF\u0900Dacdefglmnopqrstux\u1E01\u1E09\u1E19\u1E38\u0578\u1E3C\u1E49\u1E61\u1E7E\u1EA5\u1EAF\u1EBD\u1EE1\u1F2A\u1F37\u1F44\u1F4E\u1F5A\u0100Do\u1E06\u1D34o\xF4\u1C89\u0100cs\u1E0E\u1E14ute\u803B\xE9\u40E9ter;\u6A6E\u0200aioy\u1E22\u1E27\u1E31\u1E36ron;\u411Br\u0100;c\u1E2D\u1E2E\u6256\u803B\xEA\u40EAlon;\u6255;\u444Dot;\u4117\u0100Dr\u1E41\u1E45ot;\u6252;\uC000\u{1D522}\u0180;rs\u1E50\u1E51\u1E57\u6A9Aave\u803B\xE8\u40E8\u0100;d\u1E5C\u1E5D\u6A96ot;\u6A98\u0200;ils\u1E6A\u1E6B\u1E72\u1E74\u6A99nters;\u63E7;\u6113\u0100;d\u1E79\u1E7A\u6A95ot;\u6A97\u0180aps\u1E85\u1E89\u1E97cr;\u4113ty\u0180;sv\u1E92\u1E93\u1E95\u6205et\xBB\u1E93p\u01001;\u1E9D\u1EA4\u0133\u1EA1\u1EA3;\u6004;\u6005\u6003\u0100gs\u1EAA\u1EAC;\u414Bp;\u6002\u0100gp\u1EB4\u1EB8on;\u4119f;\uC000\u{1D556}\u0180als\u1EC4\u1ECE\u1ED2r\u0100;s\u1ECA\u1ECB\u62D5l;\u69E3us;\u6A71i\u0180;lv\u1EDA\u1EDB\u1EDF\u43B5on\xBB\u1EDB;\u43F5\u0200csuv\u1EEA\u1EF3\u1F0B\u1F23\u0100io\u1EEF\u1E31rc\xBB\u1E2E\u0269\u1EF9\0\0\u1EFB\xED\u0548ant\u0100gl\u1F02\u1F06tr\xBB\u1E5Dess\xBB\u1E7A\u0180aei\u1F12\u1F16\u1F1Als;\u403Dst;\u625Fv\u0100;D\u0235\u1F20D;\u6A78parsl;\u69E5\u0100Da\u1F2F\u1F33ot;\u6253rr;\u6971\u0180cdi\u1F3E\u1F41\u1EF8r;\u612Fo\xF4\u0352\u0100ah\u1F49\u1F4B;\u43B7\u803B\xF0\u40F0\u0100mr\u1F53\u1F57l\u803B\xEB\u40EBo;\u60AC\u0180cip\u1F61\u1F64\u1F67l;\u4021s\xF4\u056E\u0100eo\u1F6C\u1F74ctatio\xEE\u0559nential\xE5\u0579\u09E1\u1F92\0\u1F9E\0\u1FA1\u1FA7\0\0\u1FC6\u1FCC\0\u1FD3\0\u1FE6\u1FEA\u2000\0\u2008\u205Allingdotse\xF1\u1E44y;\u4444male;\u6640\u0180ilr\u1FAD\u1FB3\u1FC1lig;\u8000\uFB03\u0269\u1FB9\0\0\u1FBDg;\u8000\uFB00ig;\u8000\uFB04;\uC000\u{1D523}lig;\u8000\uFB01lig;\uC000fj\u0180alt\u1FD9\u1FDC\u1FE1t;\u666Dig;\u8000\uFB02ns;\u65B1of;\u4192\u01F0\u1FEE\0\u1FF3f;\uC000\u{1D557}\u0100ak\u05BF\u1FF7\u0100;v\u1FFC\u1FFD\u62D4;\u6AD9artint;\u6A0D\u0100ao\u200C\u2055\u0100cs\u2011\u2052\u03B1\u201A\u2030\u2038\u2045\u2048\0\u2050\u03B2\u2022\u2025\u2027\u202A\u202C\0\u202E\u803B\xBD\u40BD;\u6153\u803B\xBC\u40BC;\u6155;\u6159;\u615B\u01B3\u2034\0\u2036;\u6154;\u6156\u02B4\u203E\u2041\0\0\u2043\u803B\xBE\u40BE;\u6157;\u615C5;\u6158\u01B6\u204C\0\u204E;\u615A;\u615D8;\u615El;\u6044wn;\u6322cr;\uC000\u{1D4BB}\u0880Eabcdefgijlnorstv\u2082\u2089\u209F\u20A5\u20B0\u20B4\u20F0\u20F5\u20FA\u20FF\u2103\u2112\u2138\u0317\u213E\u2152\u219E\u0100;l\u064D\u2087;\u6A8C\u0180cmp\u2090\u2095\u209Dute;\u41F5ma\u0100;d\u209C\u1CDA\u43B3;\u6A86reve;\u411F\u0100iy\u20AA\u20AErc;\u411D;\u4433ot;\u4121\u0200;lqs\u063E\u0642\u20BD\u20C9\u0180;qs\u063E\u064C\u20C4lan\xF4\u0665\u0200;cdl\u0665\u20D2\u20D5\u20E5c;\u6AA9ot\u0100;o\u20DC\u20DD\u6A80\u0100;l\u20E2\u20E3\u6A82;\u6A84\u0100;e\u20EA\u20ED\uC000\u22DB\uFE00s;\u6A94r;\uC000\u{1D524}\u0100;g\u0673\u061Bmel;\u6137cy;\u4453\u0200;Eaj\u065A\u210C\u210E\u2110;\u6A92;\u6AA5;\u6AA4\u0200Eaes\u211B\u211D\u2129\u2134;\u6269p\u0100;p\u2123\u2124\u6A8Arox\xBB\u2124\u0100;q\u212E\u212F\u6A88\u0100;q\u212E\u211Bim;\u62E7pf;\uC000\u{1D558}\u0100ci\u2143\u2146r;\u610Am\u0180;el\u066B\u214E\u2150;\u6A8E;\u6A90\u8300>;cdlqr\u05EE\u2160\u216A\u216E\u2173\u2179\u0100ci\u2165\u2167;\u6AA7r;\u6A7Aot;\u62D7Par;\u6995uest;\u6A7C\u0280adels\u2184\u216A\u2190\u0656\u219B\u01F0\u2189\0\u218Epro\xF8\u209Er;\u6978q\u0100lq\u063F\u2196les\xF3\u2088i\xED\u066B\u0100en\u21A3\u21ADrtneqq;\uC000\u2269\uFE00\xC5\u21AA\u0500Aabcefkosy\u21C4\u21C7\u21F1\u21F5\u21FA\u2218\u221D\u222F\u2268\u227Dr\xF2\u03A0\u0200ilmr\u21D0\u21D4\u21D7\u21DBrs\xF0\u1484f\xBB\u2024il\xF4\u06A9\u0100dr\u21E0\u21E4cy;\u444A\u0180;cw\u08F4\u21EB\u21EFir;\u6948;\u61ADar;\u610Firc;\u4125\u0180alr\u2201\u220E\u2213rts\u0100;u\u2209\u220A\u6665it\xBB\u220Alip;\u6026con;\u62B9r;\uC000\u{1D525}s\u0100ew\u2223\u2229arow;\u6925arow;\u6926\u0280amopr\u223A\u223E\u2243\u225E\u2263rr;\u61FFtht;\u623Bk\u0100lr\u2249\u2253eftarrow;\u61A9ightarrow;\u61AAf;\uC000\u{1D559}bar;\u6015\u0180clt\u226F\u2274\u2278r;\uC000\u{1D4BD}as\xE8\u21F4rok;\u4127\u0100bp\u2282\u2287ull;\u6043hen\xBB\u1C5B\u0AE1\u22A3\0\u22AA\0\u22B8\u22C5\u22CE\0\u22D5\u22F3\0\0\u22F8\u2322\u2367\u2362\u237F\0\u2386\u23AA\u23B4cute\u803B\xED\u40ED\u0180;iy\u0771\u22B0\u22B5rc\u803B\xEE\u40EE;\u4438\u0100cx\u22BC\u22BFy;\u4435cl\u803B\xA1\u40A1\u0100fr\u039F\u22C9;\uC000\u{1D526}rave\u803B\xEC\u40EC\u0200;ino\u073E\u22DD\u22E9\u22EE\u0100in\u22E2\u22E6nt;\u6A0Ct;\u622Dfin;\u69DCta;\u6129lig;\u4133\u0180aop\u22FE\u231A\u231D\u0180cgt\u2305\u2308\u2317r;\u412B\u0180elp\u071F\u230F\u2313in\xE5\u078Ear\xF4\u0720h;\u4131f;\u62B7ed;\u41B5\u0280;cfot\u04F4\u232C\u2331\u233D\u2341are;\u6105in\u0100;t\u2338\u2339\u621Eie;\u69DDdo\xF4\u2319\u0280;celp\u0757\u234C\u2350\u235B\u2361al;\u62BA\u0100gr\u2355\u2359er\xF3\u1563\xE3\u234Darhk;\u6A17rod;\u6A3C\u0200cgpt\u236F\u2372\u2376\u237By;\u4451on;\u412Ff;\uC000\u{1D55A}a;\u43B9uest\u803B\xBF\u40BF\u0100ci\u238A\u238Fr;\uC000\u{1D4BE}n\u0280;Edsv\u04F4\u239B\u239D\u23A1\u04F3;\u62F9ot;\u62F5\u0100;v\u23A6\u23A7\u62F4;\u62F3\u0100;i\u0777\u23AElde;\u4129\u01EB\u23B8\0\u23BCcy;\u4456l\u803B\xEF\u40EF\u0300cfmosu\u23CC\u23D7\u23DC\u23E1\u23E7\u23F5\u0100iy\u23D1\u23D5rc;\u4135;\u4439r;\uC000\u{1D527}ath;\u4237pf;\uC000\u{1D55B}\u01E3\u23EC\0\u23F1r;\uC000\u{1D4BF}rcy;\u4458kcy;\u4454\u0400acfghjos\u240B\u2416\u2422\u2427\u242D\u2431\u2435\u243Bppa\u0100;v\u2413\u2414\u43BA;\u43F0\u0100ey\u241B\u2420dil;\u4137;\u443Ar;\uC000\u{1D528}reen;\u4138cy;\u4445cy;\u445Cpf;\uC000\u{1D55C}cr;\uC000\u{1D4C0}\u0B80ABEHabcdefghjlmnoprstuv\u2470\u2481\u2486\u248D\u2491\u250E\u253D\u255A\u2580\u264E\u265E\u2665\u2679\u267D\u269A\u26B2\u26D8\u275D\u2768\u278B\u27C0\u2801\u2812\u0180art\u2477\u247A\u247Cr\xF2\u09C6\xF2\u0395ail;\u691Barr;\u690E\u0100;g\u0994\u248B;\u6A8Bar;\u6962\u0963\u24A5\0\u24AA\0\u24B1\0\0\0\0\0\u24B5\u24BA\0\u24C6\u24C8\u24CD\0\u24F9ute;\u413Amptyv;\u69B4ra\xEE\u084Cbda;\u43BBg\u0180;dl\u088E\u24C1\u24C3;\u6991\xE5\u088E;\u6A85uo\u803B\xAB\u40ABr\u0400;bfhlpst\u0899\u24DE\u24E6\u24E9\u24EB\u24EE\u24F1\u24F5\u0100;f\u089D\u24E3s;\u691Fs;\u691D\xEB\u2252p;\u61ABl;\u6939im;\u6973l;\u61A2\u0180;ae\u24FF\u2500\u2504\u6AABil;\u6919\u0100;s\u2509\u250A\u6AAD;\uC000\u2AAD\uFE00\u0180abr\u2515\u2519\u251Drr;\u690Crk;\u6772\u0100ak\u2522\u252Cc\u0100ek\u2528\u252A;\u407B;\u405B\u0100es\u2531\u2533;\u698Bl\u0100du\u2539\u253B;\u698F;\u698D\u0200aeuy\u2546\u254B\u2556\u2558ron;\u413E\u0100di\u2550\u2554il;\u413C\xEC\u08B0\xE2\u2529;\u443B\u0200cqrs\u2563\u2566\u256D\u257Da;\u6936uo\u0100;r\u0E19\u1746\u0100du\u2572\u2577har;\u6967shar;\u694Bh;\u61B2\u0280;fgqs\u258B\u258C\u0989\u25F3\u25FF\u6264t\u0280ahlrt\u2598\u25A4\u25B7\u25C2\u25E8rrow\u0100;t\u0899\u25A1a\xE9\u24F6arpoon\u0100du\u25AF\u25B4own\xBB\u045Ap\xBB\u0966eftarrows;\u61C7ight\u0180ahs\u25CD\u25D6\u25DErrow\u0100;s\u08F4\u08A7arpoon\xF3\u0F98quigarro\xF7\u21F0hreetimes;\u62CB\u0180;qs\u258B\u0993\u25FAlan\xF4\u09AC\u0280;cdgs\u09AC\u260A\u260D\u261D\u2628c;\u6AA8ot\u0100;o\u2614\u2615\u6A7F\u0100;r\u261A\u261B\u6A81;\u6A83\u0100;e\u2622\u2625\uC000\u22DA\uFE00s;\u6A93\u0280adegs\u2633\u2639\u263D\u2649\u264Bppro\xF8\u24C6ot;\u62D6q\u0100gq\u2643\u2645\xF4\u0989gt\xF2\u248C\xF4\u099Bi\xED\u09B2\u0180ilr\u2655\u08E1\u265Asht;\u697C;\uC000\u{1D529}\u0100;E\u099C\u2663;\u6A91\u0161\u2669\u2676r\u0100du\u25B2\u266E\u0100;l\u0965\u2673;\u696Alk;\u6584cy;\u4459\u0280;acht\u0A48\u2688\u268B\u2691\u2696r\xF2\u25C1orne\xF2\u1D08ard;\u696Bri;\u65FA\u0100io\u269F\u26A4dot;\u4140ust\u0100;a\u26AC\u26AD\u63B0che\xBB\u26AD\u0200Eaes\u26BB\u26BD\u26C9\u26D4;\u6268p\u0100;p\u26C3\u26C4\u6A89rox\xBB\u26C4\u0100;q\u26CE\u26CF\u6A87\u0100;q\u26CE\u26BBim;\u62E6\u0400abnoptwz\u26E9\u26F4\u26F7\u271A\u272F\u2741\u2747\u2750\u0100nr\u26EE\u26F1g;\u67ECr;\u61FDr\xEB\u08C1g\u0180lmr\u26FF\u270D\u2714eft\u0100ar\u09E6\u2707ight\xE1\u09F2apsto;\u67FCight\xE1\u09FDparrow\u0100lr\u2725\u2729ef\xF4\u24EDight;\u61AC\u0180afl\u2736\u2739\u273Dr;\u6985;\uC000\u{1D55D}us;\u6A2Dimes;\u6A34\u0161\u274B\u274Fst;\u6217\xE1\u134E\u0180;ef\u2757\u2758\u1800\u65CAnge\xBB\u2758ar\u0100;l\u2764\u2765\u4028t;\u6993\u0280achmt\u2773\u2776\u277C\u2785\u2787r\xF2\u08A8orne\xF2\u1D8Car\u0100;d\u0F98\u2783;\u696D;\u600Eri;\u62BF\u0300achiqt\u2798\u279D\u0A40\u27A2\u27AE\u27BBquo;\u6039r;\uC000\u{1D4C1}m\u0180;eg\u09B2\u27AA\u27AC;\u6A8D;\u6A8F\u0100bu\u252A\u27B3o\u0100;r\u0E1F\u27B9;\u601Arok;\u4142\u8400<;cdhilqr\u082B\u27D2\u2639\u27DC\u27E0\u27E5\u27EA\u27F0\u0100ci\u27D7\u27D9;\u6AA6r;\u6A79re\xE5\u25F2mes;\u62C9arr;\u6976uest;\u6A7B\u0100Pi\u27F5\u27F9ar;\u6996\u0180;ef\u2800\u092D\u181B\u65C3r\u0100du\u2807\u280Dshar;\u694Ahar;\u6966\u0100en\u2817\u2821rtneqq;\uC000\u2268\uFE00\xC5\u281E\u0700Dacdefhilnopsu\u2840\u2845\u2882\u288E\u2893\u28A0\u28A5\u28A8\u28DA\u28E2\u28E4\u0A83\u28F3\u2902Dot;\u623A\u0200clpr\u284E\u2852\u2863\u287Dr\u803B\xAF\u40AF\u0100et\u2857\u2859;\u6642\u0100;e\u285E\u285F\u6720se\xBB\u285F\u0100;s\u103B\u2868to\u0200;dlu\u103B\u2873\u2877\u287Bow\xEE\u048Cef\xF4\u090F\xF0\u13D1ker;\u65AE\u0100oy\u2887\u288Cmma;\u6A29;\u443Cash;\u6014asuredangle\xBB\u1626r;\uC000\u{1D52A}o;\u6127\u0180cdn\u28AF\u28B4\u28C9ro\u803B\xB5\u40B5\u0200;acd\u1464\u28BD\u28C0\u28C4s\xF4\u16A7ir;\u6AF0ot\u80BB\xB7\u01B5us\u0180;bd\u28D2\u1903\u28D3\u6212\u0100;u\u1D3C\u28D8;\u6A2A\u0163\u28DE\u28E1p;\u6ADB\xF2\u2212\xF0\u0A81\u0100dp\u28E9\u28EEels;\u62A7f;\uC000\u{1D55E}\u0100ct\u28F8\u28FDr;\uC000\u{1D4C2}pos\xBB\u159D\u0180;lm\u2909\u290A\u290D\u43BCtimap;\u62B8\u0C00GLRVabcdefghijlmoprstuvw\u2942\u2953\u297E\u2989\u2998\u29DA\u29E9\u2A15\u2A1A\u2A58\u2A5D\u2A83\u2A95\u2AA4\u2AA8\u2B04\u2B07\u2B44\u2B7F\u2BAE\u2C34\u2C67\u2C7C\u2CE9\u0100gt\u2947\u294B;\uC000\u22D9\u0338\u0100;v\u2950\u0BCF\uC000\u226B\u20D2\u0180elt\u295A\u2972\u2976ft\u0100ar\u2961\u2967rrow;\u61CDightarrow;\u61CE;\uC000\u22D8\u0338\u0100;v\u297B\u0C47\uC000\u226A\u20D2ightarrow;\u61CF\u0100Dd\u298E\u2993ash;\u62AFash;\u62AE\u0280bcnpt\u29A3\u29A7\u29AC\u29B1\u29CCla\xBB\u02DEute;\u4144g;\uC000\u2220\u20D2\u0280;Eiop\u0D84\u29BC\u29C0\u29C5\u29C8;\uC000\u2A70\u0338d;\uC000\u224B\u0338s;\u4149ro\xF8\u0D84ur\u0100;a\u29D3\u29D4\u666El\u0100;s\u29D3\u0B38\u01F3\u29DF\0\u29E3p\u80BB\xA0\u0B37mp\u0100;e\u0BF9\u0C00\u0280aeouy\u29F4\u29FE\u2A03\u2A10\u2A13\u01F0\u29F9\0\u29FB;\u6A43on;\u4148dil;\u4146ng\u0100;d\u0D7E\u2A0Aot;\uC000\u2A6D\u0338p;\u6A42;\u443Dash;\u6013\u0380;Aadqsx\u0B92\u2A29\u2A2D\u2A3B\u2A41\u2A45\u2A50rr;\u61D7r\u0100hr\u2A33\u2A36k;\u6924\u0100;o\u13F2\u13F0ot;\uC000\u2250\u0338ui\xF6\u0B63\u0100ei\u2A4A\u2A4Ear;\u6928\xED\u0B98ist\u0100;s\u0BA0\u0B9Fr;\uC000\u{1D52B}\u0200Eest\u0BC5\u2A66\u2A79\u2A7C\u0180;qs\u0BBC\u2A6D\u0BE1\u0180;qs\u0BBC\u0BC5\u2A74lan\xF4\u0BE2i\xED\u0BEA\u0100;r\u0BB6\u2A81\xBB\u0BB7\u0180Aap\u2A8A\u2A8D\u2A91r\xF2\u2971rr;\u61AEar;\u6AF2\u0180;sv\u0F8D\u2A9C\u0F8C\u0100;d\u2AA1\u2AA2\u62FC;\u62FAcy;\u445A\u0380AEadest\u2AB7\u2ABA\u2ABE\u2AC2\u2AC5\u2AF6\u2AF9r\xF2\u2966;\uC000\u2266\u0338rr;\u619Ar;\u6025\u0200;fqs\u0C3B\u2ACE\u2AE3\u2AEFt\u0100ar\u2AD4\u2AD9rro\xF7\u2AC1ightarro\xF7\u2A90\u0180;qs\u0C3B\u2ABA\u2AEAlan\xF4\u0C55\u0100;s\u0C55\u2AF4\xBB\u0C36i\xED\u0C5D\u0100;r\u0C35\u2AFEi\u0100;e\u0C1A\u0C25i\xE4\u0D90\u0100pt\u2B0C\u2B11f;\uC000\u{1D55F}\u8180\xAC;in\u2B19\u2B1A\u2B36\u40ACn\u0200;Edv\u0B89\u2B24\u2B28\u2B2E;\uC000\u22F9\u0338ot;\uC000\u22F5\u0338\u01E1\u0B89\u2B33\u2B35;\u62F7;\u62F6i\u0100;v\u0CB8\u2B3C\u01E1\u0CB8\u2B41\u2B43;\u62FE;\u62FD\u0180aor\u2B4B\u2B63\u2B69r\u0200;ast\u0B7B\u2B55\u2B5A\u2B5Flle\xEC\u0B7Bl;\uC000\u2AFD\u20E5;\uC000\u2202\u0338lint;\u6A14\u0180;ce\u0C92\u2B70\u2B73u\xE5\u0CA5\u0100;c\u0C98\u2B78\u0100;e\u0C92\u2B7D\xF1\u0C98\u0200Aait\u2B88\u2B8B\u2B9D\u2BA7r\xF2\u2988rr\u0180;cw\u2B94\u2B95\u2B99\u619B;\uC000\u2933\u0338;\uC000\u219D\u0338ghtarrow\xBB\u2B95ri\u0100;e\u0CCB\u0CD6\u0380chimpqu\u2BBD\u2BCD\u2BD9\u2B04\u0B78\u2BE4\u2BEF\u0200;cer\u0D32\u2BC6\u0D37\u2BC9u\xE5\u0D45;\uC000\u{1D4C3}ort\u026D\u2B05\0\0\u2BD6ar\xE1\u2B56m\u0100;e\u0D6E\u2BDF\u0100;q\u0D74\u0D73su\u0100bp\u2BEB\u2BED\xE5\u0CF8\xE5\u0D0B\u0180bcp\u2BF6\u2C11\u2C19\u0200;Ees\u2BFF\u2C00\u0D22\u2C04\u6284;\uC000\u2AC5\u0338et\u0100;e\u0D1B\u2C0Bq\u0100;q\u0D23\u2C00c\u0100;e\u0D32\u2C17\xF1\u0D38\u0200;Ees\u2C22\u2C23\u0D5F\u2C27\u6285;\uC000\u2AC6\u0338et\u0100;e\u0D58\u2C2Eq\u0100;q\u0D60\u2C23\u0200gilr\u2C3D\u2C3F\u2C45\u2C47\xEC\u0BD7lde\u803B\xF1\u40F1\xE7\u0C43iangle\u0100lr\u2C52\u2C5Ceft\u0100;e\u0C1A\u2C5A\xF1\u0C26ight\u0100;e\u0CCB\u2C65\xF1\u0CD7\u0100;m\u2C6C\u2C6D\u43BD\u0180;es\u2C74\u2C75\u2C79\u4023ro;\u6116p;\u6007\u0480DHadgilrs\u2C8F\u2C94\u2C99\u2C9E\u2CA3\u2CB0\u2CB6\u2CD3\u2CE3ash;\u62ADarr;\u6904p;\uC000\u224D\u20D2ash;\u62AC\u0100et\u2CA8\u2CAC;\uC000\u2265\u20D2;\uC000>\u20D2nfin;\u69DE\u0180Aet\u2CBD\u2CC1\u2CC5rr;\u6902;\uC000\u2264\u20D2\u0100;r\u2CCA\u2CCD\uC000<\u20D2ie;\uC000\u22B4\u20D2\u0100At\u2CD8\u2CDCrr;\u6903rie;\uC000\u22B5\u20D2im;\uC000\u223C\u20D2\u0180Aan\u2CF0\u2CF4\u2D02rr;\u61D6r\u0100hr\u2CFA\u2CFDk;\u6923\u0100;o\u13E7\u13E5ear;\u6927\u1253\u1A95\0\0\0\0\0\0\0\0\0\0\0\0\0\u2D2D\0\u2D38\u2D48\u2D60\u2D65\u2D72\u2D84\u1B07\0\0\u2D8D\u2DAB\0\u2DC8\u2DCE\0\u2DDC\u2E19\u2E2B\u2E3E\u2E43\u0100cs\u2D31\u1A97ute\u803B\xF3\u40F3\u0100iy\u2D3C\u2D45r\u0100;c\u1A9E\u2D42\u803B\xF4\u40F4;\u443E\u0280abios\u1AA0\u2D52\u2D57\u01C8\u2D5Alac;\u4151v;\u6A38old;\u69BClig;\u4153\u0100cr\u2D69\u2D6Dir;\u69BF;\uC000\u{1D52C}\u036F\u2D79\0\0\u2D7C\0\u2D82n;\u42DBave\u803B\xF2\u40F2;\u69C1\u0100bm\u2D88\u0DF4ar;\u69B5\u0200acit\u2D95\u2D98\u2DA5\u2DA8r\xF2\u1A80\u0100ir\u2D9D\u2DA0r;\u69BEoss;\u69BBn\xE5\u0E52;\u69C0\u0180aei\u2DB1\u2DB5\u2DB9cr;\u414Dga;\u43C9\u0180cdn\u2DC0\u2DC5\u01CDron;\u43BF;\u69B6pf;\uC000\u{1D560}\u0180ael\u2DD4\u2DD7\u01D2r;\u69B7rp;\u69B9\u0380;adiosv\u2DEA\u2DEB\u2DEE\u2E08\u2E0D\u2E10\u2E16\u6228r\xF2\u1A86\u0200;efm\u2DF7\u2DF8\u2E02\u2E05\u6A5Dr\u0100;o\u2DFE\u2DFF\u6134f\xBB\u2DFF\u803B\xAA\u40AA\u803B\xBA\u40BAgof;\u62B6r;\u6A56lope;\u6A57;\u6A5B\u0180clo\u2E1F\u2E21\u2E27\xF2\u2E01ash\u803B\xF8\u40F8l;\u6298i\u016C\u2E2F\u2E34de\u803B\xF5\u40F5es\u0100;a\u01DB\u2E3As;\u6A36ml\u803B\xF6\u40F6bar;\u633D\u0AE1\u2E5E\0\u2E7D\0\u2E80\u2E9D\0\u2EA2\u2EB9\0\0\u2ECB\u0E9C\0\u2F13\0\0\u2F2B\u2FBC\0\u2FC8r\u0200;ast\u0403\u2E67\u2E72\u0E85\u8100\xB6;l\u2E6D\u2E6E\u40B6le\xEC\u0403\u0269\u2E78\0\0\u2E7Bm;\u6AF3;\u6AFDy;\u443Fr\u0280cimpt\u2E8B\u2E8F\u2E93\u1865\u2E97nt;\u4025od;\u402Eil;\u6030enk;\u6031r;\uC000\u{1D52D}\u0180imo\u2EA8\u2EB0\u2EB4\u0100;v\u2EAD\u2EAE\u43C6;\u43D5ma\xF4\u0A76ne;\u660E\u0180;tv\u2EBF\u2EC0\u2EC8\u43C0chfork\xBB\u1FFD;\u43D6\u0100au\u2ECF\u2EDFn\u0100ck\u2ED5\u2EDDk\u0100;h\u21F4\u2EDB;\u610E\xF6\u21F4s\u0480;abcdemst\u2EF3\u2EF4\u1908\u2EF9\u2EFD\u2F04\u2F06\u2F0A\u2F0E\u402Bcir;\u6A23ir;\u6A22\u0100ou\u1D40\u2F02;\u6A25;\u6A72n\u80BB\xB1\u0E9Dim;\u6A26wo;\u6A27\u0180ipu\u2F19\u2F20\u2F25ntint;\u6A15f;\uC000\u{1D561}nd\u803B\xA3\u40A3\u0500;Eaceinosu\u0EC8\u2F3F\u2F41\u2F44\u2F47\u2F81\u2F89\u2F92\u2F7E\u2FB6;\u6AB3p;\u6AB7u\xE5\u0ED9\u0100;c\u0ECE\u2F4C\u0300;acens\u0EC8\u2F59\u2F5F\u2F66\u2F68\u2F7Eppro\xF8\u2F43urlye\xF1\u0ED9\xF1\u0ECE\u0180aes\u2F6F\u2F76\u2F7Approx;\u6AB9qq;\u6AB5im;\u62E8i\xED\u0EDFme\u0100;s\u2F88\u0EAE\u6032\u0180Eas\u2F78\u2F90\u2F7A\xF0\u2F75\u0180dfp\u0EEC\u2F99\u2FAF\u0180als\u2FA0\u2FA5\u2FAAlar;\u632Eine;\u6312urf;\u6313\u0100;t\u0EFB\u2FB4\xEF\u0EFBrel;\u62B0\u0100ci\u2FC0\u2FC5r;\uC000\u{1D4C5};\u43C8ncsp;\u6008\u0300fiopsu\u2FDA\u22E2\u2FDF\u2FE5\u2FEB\u2FF1r;\uC000\u{1D52E}pf;\uC000\u{1D562}rime;\u6057cr;\uC000\u{1D4C6}\u0180aeo\u2FF8\u3009\u3013t\u0100ei\u2FFE\u3005rnion\xF3\u06B0nt;\u6A16st\u0100;e\u3010\u3011\u403F\xF1\u1F19\xF4\u0F14\u0A80ABHabcdefhilmnoprstux\u3040\u3051\u3055\u3059\u30E0\u310E\u312B\u3147\u3162\u3172\u318E\u3206\u3215\u3224\u3229\u3258\u326E\u3272\u3290\u32B0\u32B7\u0180art\u3047\u304A\u304Cr\xF2\u10B3\xF2\u03DDail;\u691Car\xF2\u1C65ar;\u6964\u0380cdenqrt\u3068\u3075\u3078\u307F\u308F\u3094\u30CC\u0100eu\u306D\u3071;\uC000\u223D\u0331te;\u4155i\xE3\u116Emptyv;\u69B3g\u0200;del\u0FD1\u3089\u308B\u308D;\u6992;\u69A5\xE5\u0FD1uo\u803B\xBB\u40BBr\u0580;abcfhlpstw\u0FDC\u30AC\u30AF\u30B7\u30B9\u30BC\u30BE\u30C0\u30C3\u30C7\u30CAp;\u6975\u0100;f\u0FE0\u30B4s;\u6920;\u6933s;\u691E\xEB\u225D\xF0\u272El;\u6945im;\u6974l;\u61A3;\u619D\u0100ai\u30D1\u30D5il;\u691Ao\u0100;n\u30DB\u30DC\u6236al\xF3\u0F1E\u0180abr\u30E7\u30EA\u30EEr\xF2\u17E5rk;\u6773\u0100ak\u30F3\u30FDc\u0100ek\u30F9\u30FB;\u407D;\u405D\u0100es\u3102\u3104;\u698Cl\u0100du\u310A\u310C;\u698E;\u6990\u0200aeuy\u3117\u311C\u3127\u3129ron;\u4159\u0100di\u3121\u3125il;\u4157\xEC\u0FF2\xE2\u30FA;\u4440\u0200clqs\u3134\u3137\u313D\u3144a;\u6937dhar;\u6969uo\u0100;r\u020E\u020Dh;\u61B3\u0180acg\u314E\u315F\u0F44l\u0200;ips\u0F78\u3158\u315B\u109Cn\xE5\u10BBar\xF4\u0FA9t;\u65AD\u0180ilr\u3169\u1023\u316Esht;\u697D;\uC000\u{1D52F}\u0100ao\u3177\u3186r\u0100du\u317D\u317F\xBB\u047B\u0100;l\u1091\u3184;\u696C\u0100;v\u318B\u318C\u43C1;\u43F1\u0180gns\u3195\u31F9\u31FCht\u0300ahlrst\u31A4\u31B0\u31C2\u31D8\u31E4\u31EErrow\u0100;t\u0FDC\u31ADa\xE9\u30C8arpoon\u0100du\u31BB\u31BFow\xEE\u317Ep\xBB\u1092eft\u0100ah\u31CA\u31D0rrow\xF3\u0FEAarpoon\xF3\u0551ightarrows;\u61C9quigarro\xF7\u30CBhreetimes;\u62CCg;\u42DAingdotse\xF1\u1F32\u0180ahm\u320D\u3210\u3213r\xF2\u0FEAa\xF2\u0551;\u600Foust\u0100;a\u321E\u321F\u63B1che\xBB\u321Fmid;\u6AEE\u0200abpt\u3232\u323D\u3240\u3252\u0100nr\u3237\u323Ag;\u67EDr;\u61FEr\xEB\u1003\u0180afl\u3247\u324A\u324Er;\u6986;\uC000\u{1D563}us;\u6A2Eimes;\u6A35\u0100ap\u325D\u3267r\u0100;g\u3263\u3264\u4029t;\u6994olint;\u6A12ar\xF2\u31E3\u0200achq\u327B\u3280\u10BC\u3285quo;\u603Ar;\uC000\u{1D4C7}\u0100bu\u30FB\u328Ao\u0100;r\u0214\u0213\u0180hir\u3297\u329B\u32A0re\xE5\u31F8mes;\u62CAi\u0200;efl\u32AA\u1059\u1821\u32AB\u65B9tri;\u69CEluhar;\u6968;\u611E\u0D61\u32D5\u32DB\u32DF\u332C\u3338\u3371\0\u337A\u33A4\0\0\u33EC\u33F0\0\u3428\u3448\u345A\u34AD\u34B1\u34CA\u34F1\0\u3616\0\0\u3633cute;\u415Bqu\xEF\u27BA\u0500;Eaceinpsy\u11ED\u32F3\u32F5\u32FF\u3302\u330B\u330F\u331F\u3326\u3329;\u6AB4\u01F0\u32FA\0\u32FC;\u6AB8on;\u4161u\xE5\u11FE\u0100;d\u11F3\u3307il;\u415Frc;\u415D\u0180Eas\u3316\u3318\u331B;\u6AB6p;\u6ABAim;\u62E9olint;\u6A13i\xED\u1204;\u4441ot\u0180;be\u3334\u1D47\u3335\u62C5;\u6A66\u0380Aacmstx\u3346\u334A\u3357\u335B\u335E\u3363\u336Drr;\u61D8r\u0100hr\u3350\u3352\xEB\u2228\u0100;o\u0A36\u0A34t\u803B\xA7\u40A7i;\u403Bwar;\u6929m\u0100in\u3369\xF0nu\xF3\xF1t;\u6736r\u0100;o\u3376\u2055\uC000\u{1D530}\u0200acoy\u3382\u3386\u3391\u33A0rp;\u666F\u0100hy\u338B\u338Fcy;\u4449;\u4448rt\u026D\u3399\0\0\u339Ci\xE4\u1464ara\xEC\u2E6F\u803B\xAD\u40AD\u0100gm\u33A8\u33B4ma\u0180;fv\u33B1\u33B2\u33B2\u43C3;\u43C2\u0400;deglnpr\u12AB\u33C5\u33C9\u33CE\u33D6\u33DE\u33E1\u33E6ot;\u6A6A\u0100;q\u12B1\u12B0\u0100;E\u33D3\u33D4\u6A9E;\u6AA0\u0100;E\u33DB\u33DC\u6A9D;\u6A9Fe;\u6246lus;\u6A24arr;\u6972ar\xF2\u113D\u0200aeit\u33F8\u3408\u340F\u3417\u0100ls\u33FD\u3404lsetm\xE9\u336Ahp;\u6A33parsl;\u69E4\u0100dl\u1463\u3414e;\u6323\u0100;e\u341C\u341D\u6AAA\u0100;s\u3422\u3423\u6AAC;\uC000\u2AAC\uFE00\u0180flp\u342E\u3433\u3442tcy;\u444C\u0100;b\u3438\u3439\u402F\u0100;a\u343E\u343F\u69C4r;\u633Ff;\uC000\u{1D564}a\u0100dr\u344D\u0402es\u0100;u\u3454\u3455\u6660it\xBB\u3455\u0180csu\u3460\u3479\u349F\u0100au\u3465\u346Fp\u0100;s\u1188\u346B;\uC000\u2293\uFE00p\u0100;s\u11B4\u3475;\uC000\u2294\uFE00u\u0100bp\u347F\u348F\u0180;es\u1197\u119C\u3486et\u0100;e\u1197\u348D\xF1\u119D\u0180;es\u11A8\u11AD\u3496et\u0100;e\u11A8\u349D\xF1\u11AE\u0180;af\u117B\u34A6\u05B0r\u0165\u34AB\u05B1\xBB\u117Car\xF2\u1148\u0200cemt\u34B9\u34BE\u34C2\u34C5r;\uC000\u{1D4C8}tm\xEE\xF1i\xEC\u3415ar\xE6\u11BE\u0100ar\u34CE\u34D5r\u0100;f\u34D4\u17BF\u6606\u0100an\u34DA\u34EDight\u0100ep\u34E3\u34EApsilo\xEE\u1EE0h\xE9\u2EAFs\xBB\u2852\u0280bcmnp\u34FB\u355E\u1209\u358B\u358E\u0480;Edemnprs\u350E\u350F\u3511\u3515\u351E\u3523\u352C\u3531\u3536\u6282;\u6AC5ot;\u6ABD\u0100;d\u11DA\u351Aot;\u6AC3ult;\u6AC1\u0100Ee\u3528\u352A;\u6ACB;\u628Alus;\u6ABFarr;\u6979\u0180eiu\u353D\u3552\u3555t\u0180;en\u350E\u3545\u354Bq\u0100;q\u11DA\u350Feq\u0100;q\u352B\u3528m;\u6AC7\u0100bp\u355A\u355C;\u6AD5;\u6AD3c\u0300;acens\u11ED\u356C\u3572\u3579\u357B\u3326ppro\xF8\u32FAurlye\xF1\u11FE\xF1\u11F3\u0180aes\u3582\u3588\u331Bppro\xF8\u331Aq\xF1\u3317g;\u666A\u0680123;Edehlmnps\u35A9\u35AC\u35AF\u121C\u35B2\u35B4\u35C0\u35C9\u35D5\u35DA\u35DF\u35E8\u35ED\u803B\xB9\u40B9\u803B\xB2\u40B2\u803B\xB3\u40B3;\u6AC6\u0100os\u35B9\u35BCt;\u6ABEub;\u6AD8\u0100;d\u1222\u35C5ot;\u6AC4s\u0100ou\u35CF\u35D2l;\u67C9b;\u6AD7arr;\u697Bult;\u6AC2\u0100Ee\u35E4\u35E6;\u6ACC;\u628Blus;\u6AC0\u0180eiu\u35F4\u3609\u360Ct\u0180;en\u121C\u35FC\u3602q\u0100;q\u1222\u35B2eq\u0100;q\u35E7\u35E4m;\u6AC8\u0100bp\u3611\u3613;\u6AD4;\u6AD6\u0180Aan\u361C\u3620\u362Drr;\u61D9r\u0100hr\u3626\u3628\xEB\u222E\u0100;o\u0A2B\u0A29war;\u692Alig\u803B\xDF\u40DF\u0BE1\u3651\u365D\u3660\u12CE\u3673\u3679\0\u367E\u36C2\0\0\0\0\0\u36DB\u3703\0\u3709\u376C\0\0\0\u3787\u0272\u3656\0\0\u365Bget;\u6316;\u43C4r\xEB\u0E5F\u0180aey\u3666\u366B\u3670ron;\u4165dil;\u4163;\u4442lrec;\u6315r;\uC000\u{1D531}\u0200eiko\u3686\u369D\u36B5\u36BC\u01F2\u368B\0\u3691e\u01004f\u1284\u1281a\u0180;sv\u3698\u3699\u369B\u43B8ym;\u43D1\u0100cn\u36A2\u36B2k\u0100as\u36A8\u36AEppro\xF8\u12C1im\xBB\u12ACs\xF0\u129E\u0100as\u36BA\u36AE\xF0\u12C1rn\u803B\xFE\u40FE\u01EC\u031F\u36C6\u22E7es\u8180\xD7;bd\u36CF\u36D0\u36D8\u40D7\u0100;a\u190F\u36D5r;\u6A31;\u6A30\u0180eps\u36E1\u36E3\u3700\xE1\u2A4D\u0200;bcf\u0486\u36EC\u36F0\u36F4ot;\u6336ir;\u6AF1\u0100;o\u36F9\u36FC\uC000\u{1D565}rk;\u6ADA\xE1\u3362rime;\u6034\u0180aip\u370F\u3712\u3764d\xE5\u1248\u0380adempst\u3721\u374D\u3740\u3751\u3757\u375C\u375Fngle\u0280;dlqr\u3730\u3731\u3736\u3740\u3742\u65B5own\xBB\u1DBBeft\u0100;e\u2800\u373E\xF1\u092E;\u625Cight\u0100;e\u32AA\u374B\xF1\u105Aot;\u65ECinus;\u6A3Alus;\u6A39b;\u69CDime;\u6A3Bezium;\u63E2\u0180cht\u3772\u377D\u3781\u0100ry\u3777\u377B;\uC000\u{1D4C9};\u4446cy;\u445Brok;\u4167\u0100io\u378B\u378Ex\xF4\u1777head\u0100lr\u3797\u37A0eftarro\xF7\u084Fightarrow\xBB\u0F5D\u0900AHabcdfghlmoprstuw\u37D0\u37D3\u37D7\u37E4\u37F0\u37FC\u380E\u381C\u3823\u3834\u3851\u385D\u386B\u38A9\u38CC\u38D2\u38EA\u38F6r\xF2\u03EDar;\u6963\u0100cr\u37DC\u37E2ute\u803B\xFA\u40FA\xF2\u1150r\u01E3\u37EA\0\u37EDy;\u445Eve;\u416D\u0100iy\u37F5\u37FArc\u803B\xFB\u40FB;\u4443\u0180abh\u3803\u3806\u380Br\xF2\u13ADlac;\u4171a\xF2\u13C3\u0100ir\u3813\u3818sht;\u697E;\uC000\u{1D532}rave\u803B\xF9\u40F9\u0161\u3827\u3831r\u0100lr\u382C\u382E\xBB\u0957\xBB\u1083lk;\u6580\u0100ct\u3839\u384D\u026F\u383F\0\0\u384Arn\u0100;e\u3845\u3846\u631Cr\xBB\u3846op;\u630Fri;\u65F8\u0100al\u3856\u385Acr;\u416B\u80BB\xA8\u0349\u0100gp\u3862\u3866on;\u4173f;\uC000\u{1D566}\u0300adhlsu\u114B\u3878\u387D\u1372\u3891\u38A0own\xE1\u13B3arpoon\u0100lr\u3888\u388Cef\xF4\u382Digh\xF4\u382Fi\u0180;hl\u3899\u389A\u389C\u43C5\xBB\u13FAon\xBB\u389Aparrows;\u61C8\u0180cit\u38B0\u38C4\u38C8\u026F\u38B6\0\0\u38C1rn\u0100;e\u38BC\u38BD\u631Dr\xBB\u38BDop;\u630Eng;\u416Fri;\u65F9cr;\uC000\u{1D4CA}\u0180dir\u38D9\u38DD\u38E2ot;\u62F0lde;\u4169i\u0100;f\u3730\u38E8\xBB\u1813\u0100am\u38EF\u38F2r\xF2\u38A8l\u803B\xFC\u40FCangle;\u69A7\u0780ABDacdeflnoprsz\u391C\u391F\u3929\u392D\u39B5\u39B8\u39BD\u39DF\u39E4\u39E8\u39F3\u39F9\u39FD\u3A01\u3A20r\xF2\u03F7ar\u0100;v\u3926\u3927\u6AE8;\u6AE9as\xE8\u03E1\u0100nr\u3932\u3937grt;\u699C\u0380eknprst\u34E3\u3946\u394B\u3952\u395D\u3964\u3996app\xE1\u2415othin\xE7\u1E96\u0180hir\u34EB\u2EC8\u3959op\xF4\u2FB5\u0100;h\u13B7\u3962\xEF\u318D\u0100iu\u3969\u396Dgm\xE1\u33B3\u0100bp\u3972\u3984setneq\u0100;q\u397D\u3980\uC000\u228A\uFE00;\uC000\u2ACB\uFE00setneq\u0100;q\u398F\u3992\uC000\u228B\uFE00;\uC000\u2ACC\uFE00\u0100hr\u399B\u399Fet\xE1\u369Ciangle\u0100lr\u39AA\u39AFeft\xBB\u0925ight\xBB\u1051y;\u4432ash\xBB\u1036\u0180elr\u39C4\u39D2\u39D7\u0180;be\u2DEA\u39CB\u39CFar;\u62BBq;\u625Alip;\u62EE\u0100bt\u39DC\u1468a\xF2\u1469r;\uC000\u{1D533}tr\xE9\u39AEsu\u0100bp\u39EF\u39F1\xBB\u0D1C\xBB\u0D59pf;\uC000\u{1D567}ro\xF0\u0EFBtr\xE9\u39B4\u0100cu\u3A06\u3A0Br;\uC000\u{1D4CB}\u0100bp\u3A10\u3A18n\u0100Ee\u3980\u3A16\xBB\u397En\u0100Ee\u3992\u3A1E\xBB\u3990igzag;\u699A\u0380cefoprs\u3A36\u3A3B\u3A56\u3A5B\u3A54\u3A61\u3A6Airc;\u4175\u0100di\u3A40\u3A51\u0100bg\u3A45\u3A49ar;\u6A5Fe\u0100;q\u15FA\u3A4F;\u6259erp;\u6118r;\uC000\u{1D534}pf;\uC000\u{1D568}\u0100;e\u1479\u3A66at\xE8\u1479cr;\uC000\u{1D4CC}\u0AE3\u178E\u3A87\0\u3A8B\0\u3A90\u3A9B\0\0\u3A9D\u3AA8\u3AAB\u3AAF\0\0\u3AC3\u3ACE\0\u3AD8\u17DC\u17DFtr\xE9\u17D1r;\uC000\u{1D535}\u0100Aa\u3A94\u3A97r\xF2\u03C3r\xF2\u09F6;\u43BE\u0100Aa\u3AA1\u3AA4r\xF2\u03B8r\xF2\u09EBa\xF0\u2713is;\u62FB\u0180dpt\u17A4\u3AB5\u3ABE\u0100fl\u3ABA\u17A9;\uC000\u{1D569}im\xE5\u17B2\u0100Aa\u3AC7\u3ACAr\xF2\u03CEr\xF2\u0A01\u0100cq\u3AD2\u17B8r;\uC000\u{1D4CD}\u0100pt\u17D6\u3ADCr\xE9\u17D4\u0400acefiosu\u3AF0\u3AFD\u3B08\u3B0C\u3B11\u3B15\u3B1B\u3B21c\u0100uy\u3AF6\u3AFBte\u803B\xFD\u40FD;\u444F\u0100iy\u3B02\u3B06rc;\u4177;\u444Bn\u803B\xA5\u40A5r;\uC000\u{1D536}cy;\u4457pf;\uC000\u{1D56A}cr;\uC000\u{1D4CE}\u0100cm\u3B26\u3B29y;\u444El\u803B\xFF\u40FF\u0500acdefhiosw\u3B42\u3B48\u3B54\u3B58\u3B64\u3B69\u3B6D\u3B74\u3B7A\u3B80cute;\u417A\u0100ay\u3B4D\u3B52ron;\u417E;\u4437ot;\u417C\u0100et\u3B5D\u3B61tr\xE6\u155Fa;\u43B6r;\uC000\u{1D537}cy;\u4436grarr;\u61DDpf;\uC000\u{1D56B}cr;\uC000\u{1D4CF}\u0100jn\u3B85\u3B87;\u600Dj;\u600C'.split("").map((c) => c.charCodeAt(0)) +); + +// ../../node_modules/.pnpm/entities@6.0.0/node_modules/entities/dist/esm/decode-codepoint.js +var _a2; +var decodeMap2 = /* @__PURE__ */ new Map([ + [0, 65533], + [128, 8364], + [130, 8218], + [131, 402], + [132, 8222], + [133, 8230], + [134, 8224], + [135, 8225], + [136, 710], + [137, 8240], + [138, 352], + [139, 8249], + [140, 338], + [142, 381], + [145, 8216], + [146, 8217], + [147, 8220], + [148, 8221], + [149, 8226], + [150, 8211], + [151, 8212], + [152, 732], + [153, 8482], + [154, 353], + [155, 8250], + [156, 339], + [158, 382], + [159, 376] +]); +var fromCodePoint2 = (_a2 = String.fromCodePoint) !== null && _a2 !== void 0 ? _a2 : function(codePoint) { + let output = ""; + if (codePoint > 65535) { + codePoint -= 65536; + output += String.fromCharCode(codePoint >>> 10 & 1023 | 55296); + codePoint = 56320 | codePoint & 1023; + } + output += String.fromCharCode(codePoint); + return output; +}; +function replaceCodePoint2(codePoint) { + var _a3; + if (codePoint >= 55296 && codePoint <= 57343 || codePoint > 1114111) { + return 65533; + } + return (_a3 = decodeMap2.get(codePoint)) !== null && _a3 !== void 0 ? _a3 : codePoint; +} + +// ../../node_modules/.pnpm/entities@6.0.0/node_modules/entities/dist/esm/decode.js +var CharCodes2; +(function(CharCodes4) { + CharCodes4[CharCodes4["NUM"] = 35] = "NUM"; + CharCodes4[CharCodes4["SEMI"] = 59] = "SEMI"; + CharCodes4[CharCodes4["EQUALS"] = 61] = "EQUALS"; + CharCodes4[CharCodes4["ZERO"] = 48] = "ZERO"; + CharCodes4[CharCodes4["NINE"] = 57] = "NINE"; + CharCodes4[CharCodes4["LOWER_A"] = 97] = "LOWER_A"; + CharCodes4[CharCodes4["LOWER_F"] = 102] = "LOWER_F"; + CharCodes4[CharCodes4["LOWER_X"] = 120] = "LOWER_X"; + CharCodes4[CharCodes4["LOWER_Z"] = 122] = "LOWER_Z"; + CharCodes4[CharCodes4["UPPER_A"] = 65] = "UPPER_A"; + CharCodes4[CharCodes4["UPPER_F"] = 70] = "UPPER_F"; + CharCodes4[CharCodes4["UPPER_Z"] = 90] = "UPPER_Z"; +})(CharCodes2 || (CharCodes2 = {})); +var TO_LOWER_BIT2 = 32; +var BinTrieFlags2; +(function(BinTrieFlags3) { + BinTrieFlags3[BinTrieFlags3["VALUE_LENGTH"] = 49152] = "VALUE_LENGTH"; + BinTrieFlags3[BinTrieFlags3["BRANCH_LENGTH"] = 16256] = "BRANCH_LENGTH"; + BinTrieFlags3[BinTrieFlags3["JUMP_TABLE"] = 127] = "JUMP_TABLE"; +})(BinTrieFlags2 || (BinTrieFlags2 = {})); +function isNumber2(code2) { + return code2 >= CharCodes2.ZERO && code2 <= CharCodes2.NINE; +} +function isHexadecimalCharacter2(code2) { + return code2 >= CharCodes2.UPPER_A && code2 <= CharCodes2.UPPER_F || code2 >= CharCodes2.LOWER_A && code2 <= CharCodes2.LOWER_F; +} +function isAsciiAlphaNumeric2(code2) { + return code2 >= CharCodes2.UPPER_A && code2 <= CharCodes2.UPPER_Z || code2 >= CharCodes2.LOWER_A && code2 <= CharCodes2.LOWER_Z || isNumber2(code2); +} +function isEntityInAttributeInvalidEnd2(code2) { + return code2 === CharCodes2.EQUALS || isAsciiAlphaNumeric2(code2); +} +var EntityDecoderState2; +(function(EntityDecoderState3) { + EntityDecoderState3[EntityDecoderState3["EntityStart"] = 0] = "EntityStart"; + EntityDecoderState3[EntityDecoderState3["NumericStart"] = 1] = "NumericStart"; + EntityDecoderState3[EntityDecoderState3["NumericDecimal"] = 2] = "NumericDecimal"; + EntityDecoderState3[EntityDecoderState3["NumericHex"] = 3] = "NumericHex"; + EntityDecoderState3[EntityDecoderState3["NamedEntity"] = 4] = "NamedEntity"; +})(EntityDecoderState2 || (EntityDecoderState2 = {})); +var DecodingMode2; +(function(DecodingMode3) { + DecodingMode3[DecodingMode3["Legacy"] = 0] = "Legacy"; + DecodingMode3[DecodingMode3["Strict"] = 1] = "Strict"; + DecodingMode3[DecodingMode3["Attribute"] = 2] = "Attribute"; +})(DecodingMode2 || (DecodingMode2 = {})); +var EntityDecoder2 = class { + constructor(decodeTree, emitCodePoint, errors2) { + this.decodeTree = decodeTree; + this.emitCodePoint = emitCodePoint; + this.errors = errors2; + this.state = EntityDecoderState2.EntityStart; + this.consumed = 1; + this.result = 0; + this.treeIndex = 0; + this.excess = 1; + this.decodeMode = DecodingMode2.Strict; + } + startEntity(decodeMode) { + this.decodeMode = decodeMode; + this.state = EntityDecoderState2.EntityStart; + this.result = 0; + this.treeIndex = 0; + this.excess = 1; + this.consumed = 1; + } + write(input, offset) { + switch (this.state) { + case EntityDecoderState2.EntityStart: { + if (input.charCodeAt(offset) === CharCodes2.NUM) { + this.state = EntityDecoderState2.NumericStart; + this.consumed += 1; + return this.stateNumericStart(input, offset + 1); + } + this.state = EntityDecoderState2.NamedEntity; + return this.stateNamedEntity(input, offset); + } + case EntityDecoderState2.NumericStart: { + return this.stateNumericStart(input, offset); + } + case EntityDecoderState2.NumericDecimal: { + return this.stateNumericDecimal(input, offset); + } + case EntityDecoderState2.NumericHex: { + return this.stateNumericHex(input, offset); + } + case EntityDecoderState2.NamedEntity: { + return this.stateNamedEntity(input, offset); + } + } + } + stateNumericStart(input, offset) { + if (offset >= input.length) { + return -1; + } + if ((input.charCodeAt(offset) | TO_LOWER_BIT2) === CharCodes2.LOWER_X) { + this.state = EntityDecoderState2.NumericHex; + this.consumed += 1; + return this.stateNumericHex(input, offset + 1); + } + this.state = EntityDecoderState2.NumericDecimal; + return this.stateNumericDecimal(input, offset); + } + addToNumericResult(input, start, end2, base2) { + if (start !== end2) { + const digitCount = end2 - start; + this.result = this.result * Math.pow(base2, digitCount) + Number.parseInt(input.substr(start, digitCount), base2); + this.consumed += digitCount; + } + } + stateNumericHex(input, offset) { + const startIndex = offset; + while (offset < input.length) { + const char = input.charCodeAt(offset); + if (isNumber2(char) || isHexadecimalCharacter2(char)) { + offset += 1; + } else { + this.addToNumericResult(input, startIndex, offset, 16); + return this.emitNumericEntity(char, 3); + } + } + this.addToNumericResult(input, startIndex, offset, 16); + return -1; + } + stateNumericDecimal(input, offset) { + const startIndex = offset; + while (offset < input.length) { + const char = input.charCodeAt(offset); + if (isNumber2(char)) { + offset += 1; + } else { + this.addToNumericResult(input, startIndex, offset, 10); + return this.emitNumericEntity(char, 2); + } + } + this.addToNumericResult(input, startIndex, offset, 10); + return -1; + } + emitNumericEntity(lastCp, expectedLength) { + var _a3; + if (this.consumed <= expectedLength) { + (_a3 = this.errors) === null || _a3 === void 0 ? void 0 : _a3.absenceOfDigitsInNumericCharacterReference(this.consumed); + return 0; + } + if (lastCp === CharCodes2.SEMI) { + this.consumed += 1; + } else if (this.decodeMode === DecodingMode2.Strict) { + return 0; + } + this.emitCodePoint(replaceCodePoint2(this.result), this.consumed); + if (this.errors) { + if (lastCp !== CharCodes2.SEMI) { + this.errors.missingSemicolonAfterCharacterReference(); + } + this.errors.validateNumericCharacterReference(this.result); + } + return this.consumed; + } + stateNamedEntity(input, offset) { + const { decodeTree } = this; + let current = decodeTree[this.treeIndex]; + let valueLength = (current & BinTrieFlags2.VALUE_LENGTH) >> 14; + for (; offset < input.length; offset++, this.excess++) { + const char = input.charCodeAt(offset); + this.treeIndex = determineBranch2(decodeTree, current, this.treeIndex + Math.max(1, valueLength), char); + if (this.treeIndex < 0) { + return this.result === 0 || this.decodeMode === DecodingMode2.Attribute && (valueLength === 0 || isEntityInAttributeInvalidEnd2(char)) ? 0 : this.emitNotTerminatedNamedEntity(); + } + current = decodeTree[this.treeIndex]; + valueLength = (current & BinTrieFlags2.VALUE_LENGTH) >> 14; + if (valueLength !== 0) { + if (char === CharCodes2.SEMI) { + return this.emitNamedEntityData(this.treeIndex, valueLength, this.consumed + this.excess); + } + if (this.decodeMode !== DecodingMode2.Strict) { + this.result = this.treeIndex; + this.consumed += this.excess; + this.excess = 0; + } + } + } + return -1; + } + emitNotTerminatedNamedEntity() { + var _a3; + const { result, decodeTree } = this; + const valueLength = (decodeTree[result] & BinTrieFlags2.VALUE_LENGTH) >> 14; + this.emitNamedEntityData(result, valueLength, this.consumed); + (_a3 = this.errors) === null || _a3 === void 0 ? void 0 : _a3.missingSemicolonAfterCharacterReference(); + return this.consumed; + } + emitNamedEntityData(result, valueLength, consumed) { + const { decodeTree } = this; + this.emitCodePoint(valueLength === 1 ? decodeTree[result] & ~BinTrieFlags2.VALUE_LENGTH : decodeTree[result + 1], consumed); + if (valueLength === 3) { + this.emitCodePoint(decodeTree[result + 2], consumed); + } + return consumed; + } + end() { + var _a3; + switch (this.state) { + case EntityDecoderState2.NamedEntity: { + return this.result !== 0 && (this.decodeMode !== DecodingMode2.Attribute || this.result === this.treeIndex) ? this.emitNotTerminatedNamedEntity() : 0; + } + case EntityDecoderState2.NumericDecimal: { + return this.emitNumericEntity(0, 2); + } + case EntityDecoderState2.NumericHex: { + return this.emitNumericEntity(0, 3); + } + case EntityDecoderState2.NumericStart: { + (_a3 = this.errors) === null || _a3 === void 0 ? void 0 : _a3.absenceOfDigitsInNumericCharacterReference(this.consumed); + return 0; + } + case EntityDecoderState2.EntityStart: { + return 0; + } + } + } +}; +function determineBranch2(decodeTree, current, nodeIndex, char) { + const branchCount = (current & BinTrieFlags2.BRANCH_LENGTH) >> 7; + const jumpOffset = current & BinTrieFlags2.JUMP_TABLE; + if (branchCount === 0) { + return jumpOffset !== 0 && char === jumpOffset ? nodeIndex : -1; + } + if (jumpOffset) { + const value = char - jumpOffset; + return value < 0 || value >= branchCount ? -1 : decodeTree[nodeIndex + value] - 1; + } + let lo = nodeIndex; + let hi = lo + branchCount - 1; + while (lo <= hi) { + const mid = lo + hi >>> 1; + const midValue = decodeTree[mid]; + if (midValue < char) { + lo = mid + 1; + } else if (midValue > char) { + hi = mid - 1; + } else { + return decodeTree[mid + branchCount]; + } + } + return -1; +} + +// ../../node_modules/.pnpm/parse5@7.3.0/node_modules/parse5/dist/common/html.js +var html_exports = {}; +__export(html_exports, { + ATTRS: () => ATTRS, + DOCUMENT_MODE: () => DOCUMENT_MODE, + NS: () => NS, + NUMBERED_HEADERS: () => NUMBERED_HEADERS, + SPECIAL_ELEMENTS: () => SPECIAL_ELEMENTS, + TAG_ID: () => TAG_ID, + TAG_NAMES: () => TAG_NAMES, + getTagID: () => getTagID, + hasUnescapedText: () => hasUnescapedText +}); +var NS; +(function(NS2) { + NS2["HTML"] = "http://www.w3.org/1999/xhtml"; + NS2["MATHML"] = "http://www.w3.org/1998/Math/MathML"; + NS2["SVG"] = "http://www.w3.org/2000/svg"; + NS2["XLINK"] = "http://www.w3.org/1999/xlink"; + NS2["XML"] = "http://www.w3.org/XML/1998/namespace"; + NS2["XMLNS"] = "http://www.w3.org/2000/xmlns/"; +})(NS || (NS = {})); +var ATTRS; +(function(ATTRS2) { + ATTRS2["TYPE"] = "type"; + ATTRS2["ACTION"] = "action"; + ATTRS2["ENCODING"] = "encoding"; + ATTRS2["PROMPT"] = "prompt"; + ATTRS2["NAME"] = "name"; + ATTRS2["COLOR"] = "color"; + ATTRS2["FACE"] = "face"; + ATTRS2["SIZE"] = "size"; +})(ATTRS || (ATTRS = {})); +var DOCUMENT_MODE; +(function(DOCUMENT_MODE2) { + DOCUMENT_MODE2["NO_QUIRKS"] = "no-quirks"; + DOCUMENT_MODE2["QUIRKS"] = "quirks"; + DOCUMENT_MODE2["LIMITED_QUIRKS"] = "limited-quirks"; +})(DOCUMENT_MODE || (DOCUMENT_MODE = {})); +var TAG_NAMES; +(function(TAG_NAMES2) { + TAG_NAMES2["A"] = "a"; + TAG_NAMES2["ADDRESS"] = "address"; + TAG_NAMES2["ANNOTATION_XML"] = "annotation-xml"; + TAG_NAMES2["APPLET"] = "applet"; + TAG_NAMES2["AREA"] = "area"; + TAG_NAMES2["ARTICLE"] = "article"; + TAG_NAMES2["ASIDE"] = "aside"; + TAG_NAMES2["B"] = "b"; + TAG_NAMES2["BASE"] = "base"; + TAG_NAMES2["BASEFONT"] = "basefont"; + TAG_NAMES2["BGSOUND"] = "bgsound"; + TAG_NAMES2["BIG"] = "big"; + TAG_NAMES2["BLOCKQUOTE"] = "blockquote"; + TAG_NAMES2["BODY"] = "body"; + TAG_NAMES2["BR"] = "br"; + TAG_NAMES2["BUTTON"] = "button"; + TAG_NAMES2["CAPTION"] = "caption"; + TAG_NAMES2["CENTER"] = "center"; + TAG_NAMES2["CODE"] = "code"; + TAG_NAMES2["COL"] = "col"; + TAG_NAMES2["COLGROUP"] = "colgroup"; + TAG_NAMES2["DD"] = "dd"; + TAG_NAMES2["DESC"] = "desc"; + TAG_NAMES2["DETAILS"] = "details"; + TAG_NAMES2["DIALOG"] = "dialog"; + TAG_NAMES2["DIR"] = "dir"; + TAG_NAMES2["DIV"] = "div"; + TAG_NAMES2["DL"] = "dl"; + TAG_NAMES2["DT"] = "dt"; + TAG_NAMES2["EM"] = "em"; + TAG_NAMES2["EMBED"] = "embed"; + TAG_NAMES2["FIELDSET"] = "fieldset"; + TAG_NAMES2["FIGCAPTION"] = "figcaption"; + TAG_NAMES2["FIGURE"] = "figure"; + TAG_NAMES2["FONT"] = "font"; + TAG_NAMES2["FOOTER"] = "footer"; + TAG_NAMES2["FOREIGN_OBJECT"] = "foreignObject"; + TAG_NAMES2["FORM"] = "form"; + TAG_NAMES2["FRAME"] = "frame"; + TAG_NAMES2["FRAMESET"] = "frameset"; + TAG_NAMES2["H1"] = "h1"; + TAG_NAMES2["H2"] = "h2"; + TAG_NAMES2["H3"] = "h3"; + TAG_NAMES2["H4"] = "h4"; + TAG_NAMES2["H5"] = "h5"; + TAG_NAMES2["H6"] = "h6"; + TAG_NAMES2["HEAD"] = "head"; + TAG_NAMES2["HEADER"] = "header"; + TAG_NAMES2["HGROUP"] = "hgroup"; + TAG_NAMES2["HR"] = "hr"; + TAG_NAMES2["HTML"] = "html"; + TAG_NAMES2["I"] = "i"; + TAG_NAMES2["IMG"] = "img"; + TAG_NAMES2["IMAGE"] = "image"; + TAG_NAMES2["INPUT"] = "input"; + TAG_NAMES2["IFRAME"] = "iframe"; + TAG_NAMES2["KEYGEN"] = "keygen"; + TAG_NAMES2["LABEL"] = "label"; + TAG_NAMES2["LI"] = "li"; + TAG_NAMES2["LINK"] = "link"; + TAG_NAMES2["LISTING"] = "listing"; + TAG_NAMES2["MAIN"] = "main"; + TAG_NAMES2["MALIGNMARK"] = "malignmark"; + TAG_NAMES2["MARQUEE"] = "marquee"; + TAG_NAMES2["MATH"] = "math"; + TAG_NAMES2["MENU"] = "menu"; + TAG_NAMES2["META"] = "meta"; + TAG_NAMES2["MGLYPH"] = "mglyph"; + TAG_NAMES2["MI"] = "mi"; + TAG_NAMES2["MO"] = "mo"; + TAG_NAMES2["MN"] = "mn"; + TAG_NAMES2["MS"] = "ms"; + TAG_NAMES2["MTEXT"] = "mtext"; + TAG_NAMES2["NAV"] = "nav"; + TAG_NAMES2["NOBR"] = "nobr"; + TAG_NAMES2["NOFRAMES"] = "noframes"; + TAG_NAMES2["NOEMBED"] = "noembed"; + TAG_NAMES2["NOSCRIPT"] = "noscript"; + TAG_NAMES2["OBJECT"] = "object"; + TAG_NAMES2["OL"] = "ol"; + TAG_NAMES2["OPTGROUP"] = "optgroup"; + TAG_NAMES2["OPTION"] = "option"; + TAG_NAMES2["P"] = "p"; + TAG_NAMES2["PARAM"] = "param"; + TAG_NAMES2["PLAINTEXT"] = "plaintext"; + TAG_NAMES2["PRE"] = "pre"; + TAG_NAMES2["RB"] = "rb"; + TAG_NAMES2["RP"] = "rp"; + TAG_NAMES2["RT"] = "rt"; + TAG_NAMES2["RTC"] = "rtc"; + TAG_NAMES2["RUBY"] = "ruby"; + TAG_NAMES2["S"] = "s"; + TAG_NAMES2["SCRIPT"] = "script"; + TAG_NAMES2["SEARCH"] = "search"; + TAG_NAMES2["SECTION"] = "section"; + TAG_NAMES2["SELECT"] = "select"; + TAG_NAMES2["SOURCE"] = "source"; + TAG_NAMES2["SMALL"] = "small"; + TAG_NAMES2["SPAN"] = "span"; + TAG_NAMES2["STRIKE"] = "strike"; + TAG_NAMES2["STRONG"] = "strong"; + TAG_NAMES2["STYLE"] = "style"; + TAG_NAMES2["SUB"] = "sub"; + TAG_NAMES2["SUMMARY"] = "summary"; + TAG_NAMES2["SUP"] = "sup"; + TAG_NAMES2["TABLE"] = "table"; + TAG_NAMES2["TBODY"] = "tbody"; + TAG_NAMES2["TEMPLATE"] = "template"; + TAG_NAMES2["TEXTAREA"] = "textarea"; + TAG_NAMES2["TFOOT"] = "tfoot"; + TAG_NAMES2["TD"] = "td"; + TAG_NAMES2["TH"] = "th"; + TAG_NAMES2["THEAD"] = "thead"; + TAG_NAMES2["TITLE"] = "title"; + TAG_NAMES2["TR"] = "tr"; + TAG_NAMES2["TRACK"] = "track"; + TAG_NAMES2["TT"] = "tt"; + TAG_NAMES2["U"] = "u"; + TAG_NAMES2["UL"] = "ul"; + TAG_NAMES2["SVG"] = "svg"; + TAG_NAMES2["VAR"] = "var"; + TAG_NAMES2["WBR"] = "wbr"; + TAG_NAMES2["XMP"] = "xmp"; +})(TAG_NAMES || (TAG_NAMES = {})); +var TAG_ID; +(function(TAG_ID2) { + TAG_ID2[TAG_ID2["UNKNOWN"] = 0] = "UNKNOWN"; + TAG_ID2[TAG_ID2["A"] = 1] = "A"; + TAG_ID2[TAG_ID2["ADDRESS"] = 2] = "ADDRESS"; + TAG_ID2[TAG_ID2["ANNOTATION_XML"] = 3] = "ANNOTATION_XML"; + TAG_ID2[TAG_ID2["APPLET"] = 4] = "APPLET"; + TAG_ID2[TAG_ID2["AREA"] = 5] = "AREA"; + TAG_ID2[TAG_ID2["ARTICLE"] = 6] = "ARTICLE"; + TAG_ID2[TAG_ID2["ASIDE"] = 7] = "ASIDE"; + TAG_ID2[TAG_ID2["B"] = 8] = "B"; + TAG_ID2[TAG_ID2["BASE"] = 9] = "BASE"; + TAG_ID2[TAG_ID2["BASEFONT"] = 10] = "BASEFONT"; + TAG_ID2[TAG_ID2["BGSOUND"] = 11] = "BGSOUND"; + TAG_ID2[TAG_ID2["BIG"] = 12] = "BIG"; + TAG_ID2[TAG_ID2["BLOCKQUOTE"] = 13] = "BLOCKQUOTE"; + TAG_ID2[TAG_ID2["BODY"] = 14] = "BODY"; + TAG_ID2[TAG_ID2["BR"] = 15] = "BR"; + TAG_ID2[TAG_ID2["BUTTON"] = 16] = "BUTTON"; + TAG_ID2[TAG_ID2["CAPTION"] = 17] = "CAPTION"; + TAG_ID2[TAG_ID2["CENTER"] = 18] = "CENTER"; + TAG_ID2[TAG_ID2["CODE"] = 19] = "CODE"; + TAG_ID2[TAG_ID2["COL"] = 20] = "COL"; + TAG_ID2[TAG_ID2["COLGROUP"] = 21] = "COLGROUP"; + TAG_ID2[TAG_ID2["DD"] = 22] = "DD"; + TAG_ID2[TAG_ID2["DESC"] = 23] = "DESC"; + TAG_ID2[TAG_ID2["DETAILS"] = 24] = "DETAILS"; + TAG_ID2[TAG_ID2["DIALOG"] = 25] = "DIALOG"; + TAG_ID2[TAG_ID2["DIR"] = 26] = "DIR"; + TAG_ID2[TAG_ID2["DIV"] = 27] = "DIV"; + TAG_ID2[TAG_ID2["DL"] = 28] = "DL"; + TAG_ID2[TAG_ID2["DT"] = 29] = "DT"; + TAG_ID2[TAG_ID2["EM"] = 30] = "EM"; + TAG_ID2[TAG_ID2["EMBED"] = 31] = "EMBED"; + TAG_ID2[TAG_ID2["FIELDSET"] = 32] = "FIELDSET"; + TAG_ID2[TAG_ID2["FIGCAPTION"] = 33] = "FIGCAPTION"; + TAG_ID2[TAG_ID2["FIGURE"] = 34] = "FIGURE"; + TAG_ID2[TAG_ID2["FONT"] = 35] = "FONT"; + TAG_ID2[TAG_ID2["FOOTER"] = 36] = "FOOTER"; + TAG_ID2[TAG_ID2["FOREIGN_OBJECT"] = 37] = "FOREIGN_OBJECT"; + TAG_ID2[TAG_ID2["FORM"] = 38] = "FORM"; + TAG_ID2[TAG_ID2["FRAME"] = 39] = "FRAME"; + TAG_ID2[TAG_ID2["FRAMESET"] = 40] = "FRAMESET"; + TAG_ID2[TAG_ID2["H1"] = 41] = "H1"; + TAG_ID2[TAG_ID2["H2"] = 42] = "H2"; + TAG_ID2[TAG_ID2["H3"] = 43] = "H3"; + TAG_ID2[TAG_ID2["H4"] = 44] = "H4"; + TAG_ID2[TAG_ID2["H5"] = 45] = "H5"; + TAG_ID2[TAG_ID2["H6"] = 46] = "H6"; + TAG_ID2[TAG_ID2["HEAD"] = 47] = "HEAD"; + TAG_ID2[TAG_ID2["HEADER"] = 48] = "HEADER"; + TAG_ID2[TAG_ID2["HGROUP"] = 49] = "HGROUP"; + TAG_ID2[TAG_ID2["HR"] = 50] = "HR"; + TAG_ID2[TAG_ID2["HTML"] = 51] = "HTML"; + TAG_ID2[TAG_ID2["I"] = 52] = "I"; + TAG_ID2[TAG_ID2["IMG"] = 53] = "IMG"; + TAG_ID2[TAG_ID2["IMAGE"] = 54] = "IMAGE"; + TAG_ID2[TAG_ID2["INPUT"] = 55] = "INPUT"; + TAG_ID2[TAG_ID2["IFRAME"] = 56] = "IFRAME"; + TAG_ID2[TAG_ID2["KEYGEN"] = 57] = "KEYGEN"; + TAG_ID2[TAG_ID2["LABEL"] = 58] = "LABEL"; + TAG_ID2[TAG_ID2["LI"] = 59] = "LI"; + TAG_ID2[TAG_ID2["LINK"] = 60] = "LINK"; + TAG_ID2[TAG_ID2["LISTING"] = 61] = "LISTING"; + TAG_ID2[TAG_ID2["MAIN"] = 62] = "MAIN"; + TAG_ID2[TAG_ID2["MALIGNMARK"] = 63] = "MALIGNMARK"; + TAG_ID2[TAG_ID2["MARQUEE"] = 64] = "MARQUEE"; + TAG_ID2[TAG_ID2["MATH"] = 65] = "MATH"; + TAG_ID2[TAG_ID2["MENU"] = 66] = "MENU"; + TAG_ID2[TAG_ID2["META"] = 67] = "META"; + TAG_ID2[TAG_ID2["MGLYPH"] = 68] = "MGLYPH"; + TAG_ID2[TAG_ID2["MI"] = 69] = "MI"; + TAG_ID2[TAG_ID2["MO"] = 70] = "MO"; + TAG_ID2[TAG_ID2["MN"] = 71] = "MN"; + TAG_ID2[TAG_ID2["MS"] = 72] = "MS"; + TAG_ID2[TAG_ID2["MTEXT"] = 73] = "MTEXT"; + TAG_ID2[TAG_ID2["NAV"] = 74] = "NAV"; + TAG_ID2[TAG_ID2["NOBR"] = 75] = "NOBR"; + TAG_ID2[TAG_ID2["NOFRAMES"] = 76] = "NOFRAMES"; + TAG_ID2[TAG_ID2["NOEMBED"] = 77] = "NOEMBED"; + TAG_ID2[TAG_ID2["NOSCRIPT"] = 78] = "NOSCRIPT"; + TAG_ID2[TAG_ID2["OBJECT"] = 79] = "OBJECT"; + TAG_ID2[TAG_ID2["OL"] = 80] = "OL"; + TAG_ID2[TAG_ID2["OPTGROUP"] = 81] = "OPTGROUP"; + TAG_ID2[TAG_ID2["OPTION"] = 82] = "OPTION"; + TAG_ID2[TAG_ID2["P"] = 83] = "P"; + TAG_ID2[TAG_ID2["PARAM"] = 84] = "PARAM"; + TAG_ID2[TAG_ID2["PLAINTEXT"] = 85] = "PLAINTEXT"; + TAG_ID2[TAG_ID2["PRE"] = 86] = "PRE"; + TAG_ID2[TAG_ID2["RB"] = 87] = "RB"; + TAG_ID2[TAG_ID2["RP"] = 88] = "RP"; + TAG_ID2[TAG_ID2["RT"] = 89] = "RT"; + TAG_ID2[TAG_ID2["RTC"] = 90] = "RTC"; + TAG_ID2[TAG_ID2["RUBY"] = 91] = "RUBY"; + TAG_ID2[TAG_ID2["S"] = 92] = "S"; + TAG_ID2[TAG_ID2["SCRIPT"] = 93] = "SCRIPT"; + TAG_ID2[TAG_ID2["SEARCH"] = 94] = "SEARCH"; + TAG_ID2[TAG_ID2["SECTION"] = 95] = "SECTION"; + TAG_ID2[TAG_ID2["SELECT"] = 96] = "SELECT"; + TAG_ID2[TAG_ID2["SOURCE"] = 97] = "SOURCE"; + TAG_ID2[TAG_ID2["SMALL"] = 98] = "SMALL"; + TAG_ID2[TAG_ID2["SPAN"] = 99] = "SPAN"; + TAG_ID2[TAG_ID2["STRIKE"] = 100] = "STRIKE"; + TAG_ID2[TAG_ID2["STRONG"] = 101] = "STRONG"; + TAG_ID2[TAG_ID2["STYLE"] = 102] = "STYLE"; + TAG_ID2[TAG_ID2["SUB"] = 103] = "SUB"; + TAG_ID2[TAG_ID2["SUMMARY"] = 104] = "SUMMARY"; + TAG_ID2[TAG_ID2["SUP"] = 105] = "SUP"; + TAG_ID2[TAG_ID2["TABLE"] = 106] = "TABLE"; + TAG_ID2[TAG_ID2["TBODY"] = 107] = "TBODY"; + TAG_ID2[TAG_ID2["TEMPLATE"] = 108] = "TEMPLATE"; + TAG_ID2[TAG_ID2["TEXTAREA"] = 109] = "TEXTAREA"; + TAG_ID2[TAG_ID2["TFOOT"] = 110] = "TFOOT"; + TAG_ID2[TAG_ID2["TD"] = 111] = "TD"; + TAG_ID2[TAG_ID2["TH"] = 112] = "TH"; + TAG_ID2[TAG_ID2["THEAD"] = 113] = "THEAD"; + TAG_ID2[TAG_ID2["TITLE"] = 114] = "TITLE"; + TAG_ID2[TAG_ID2["TR"] = 115] = "TR"; + TAG_ID2[TAG_ID2["TRACK"] = 116] = "TRACK"; + TAG_ID2[TAG_ID2["TT"] = 117] = "TT"; + TAG_ID2[TAG_ID2["U"] = 118] = "U"; + TAG_ID2[TAG_ID2["UL"] = 119] = "UL"; + TAG_ID2[TAG_ID2["SVG"] = 120] = "SVG"; + TAG_ID2[TAG_ID2["VAR"] = 121] = "VAR"; + TAG_ID2[TAG_ID2["WBR"] = 122] = "WBR"; + TAG_ID2[TAG_ID2["XMP"] = 123] = "XMP"; +})(TAG_ID || (TAG_ID = {})); +var TAG_NAME_TO_ID = /* @__PURE__ */ new Map([ + [TAG_NAMES.A, TAG_ID.A], + [TAG_NAMES.ADDRESS, TAG_ID.ADDRESS], + [TAG_NAMES.ANNOTATION_XML, TAG_ID.ANNOTATION_XML], + [TAG_NAMES.APPLET, TAG_ID.APPLET], + [TAG_NAMES.AREA, TAG_ID.AREA], + [TAG_NAMES.ARTICLE, TAG_ID.ARTICLE], + [TAG_NAMES.ASIDE, TAG_ID.ASIDE], + [TAG_NAMES.B, TAG_ID.B], + [TAG_NAMES.BASE, TAG_ID.BASE], + [TAG_NAMES.BASEFONT, TAG_ID.BASEFONT], + [TAG_NAMES.BGSOUND, TAG_ID.BGSOUND], + [TAG_NAMES.BIG, TAG_ID.BIG], + [TAG_NAMES.BLOCKQUOTE, TAG_ID.BLOCKQUOTE], + [TAG_NAMES.BODY, TAG_ID.BODY], + [TAG_NAMES.BR, TAG_ID.BR], + [TAG_NAMES.BUTTON, TAG_ID.BUTTON], + [TAG_NAMES.CAPTION, TAG_ID.CAPTION], + [TAG_NAMES.CENTER, TAG_ID.CENTER], + [TAG_NAMES.CODE, TAG_ID.CODE], + [TAG_NAMES.COL, TAG_ID.COL], + [TAG_NAMES.COLGROUP, TAG_ID.COLGROUP], + [TAG_NAMES.DD, TAG_ID.DD], + [TAG_NAMES.DESC, TAG_ID.DESC], + [TAG_NAMES.DETAILS, TAG_ID.DETAILS], + [TAG_NAMES.DIALOG, TAG_ID.DIALOG], + [TAG_NAMES.DIR, TAG_ID.DIR], + [TAG_NAMES.DIV, TAG_ID.DIV], + [TAG_NAMES.DL, TAG_ID.DL], + [TAG_NAMES.DT, TAG_ID.DT], + [TAG_NAMES.EM, TAG_ID.EM], + [TAG_NAMES.EMBED, TAG_ID.EMBED], + [TAG_NAMES.FIELDSET, TAG_ID.FIELDSET], + [TAG_NAMES.FIGCAPTION, TAG_ID.FIGCAPTION], + [TAG_NAMES.FIGURE, TAG_ID.FIGURE], + [TAG_NAMES.FONT, TAG_ID.FONT], + [TAG_NAMES.FOOTER, TAG_ID.FOOTER], + [TAG_NAMES.FOREIGN_OBJECT, TAG_ID.FOREIGN_OBJECT], + [TAG_NAMES.FORM, TAG_ID.FORM], + [TAG_NAMES.FRAME, TAG_ID.FRAME], + [TAG_NAMES.FRAMESET, TAG_ID.FRAMESET], + [TAG_NAMES.H1, TAG_ID.H1], + [TAG_NAMES.H2, TAG_ID.H2], + [TAG_NAMES.H3, TAG_ID.H3], + [TAG_NAMES.H4, TAG_ID.H4], + [TAG_NAMES.H5, TAG_ID.H5], + [TAG_NAMES.H6, TAG_ID.H6], + [TAG_NAMES.HEAD, TAG_ID.HEAD], + [TAG_NAMES.HEADER, TAG_ID.HEADER], + [TAG_NAMES.HGROUP, TAG_ID.HGROUP], + [TAG_NAMES.HR, TAG_ID.HR], + [TAG_NAMES.HTML, TAG_ID.HTML], + [TAG_NAMES.I, TAG_ID.I], + [TAG_NAMES.IMG, TAG_ID.IMG], + [TAG_NAMES.IMAGE, TAG_ID.IMAGE], + [TAG_NAMES.INPUT, TAG_ID.INPUT], + [TAG_NAMES.IFRAME, TAG_ID.IFRAME], + [TAG_NAMES.KEYGEN, TAG_ID.KEYGEN], + [TAG_NAMES.LABEL, TAG_ID.LABEL], + [TAG_NAMES.LI, TAG_ID.LI], + [TAG_NAMES.LINK, TAG_ID.LINK], + [TAG_NAMES.LISTING, TAG_ID.LISTING], + [TAG_NAMES.MAIN, TAG_ID.MAIN], + [TAG_NAMES.MALIGNMARK, TAG_ID.MALIGNMARK], + [TAG_NAMES.MARQUEE, TAG_ID.MARQUEE], + [TAG_NAMES.MATH, TAG_ID.MATH], + [TAG_NAMES.MENU, TAG_ID.MENU], + [TAG_NAMES.META, TAG_ID.META], + [TAG_NAMES.MGLYPH, TAG_ID.MGLYPH], + [TAG_NAMES.MI, TAG_ID.MI], + [TAG_NAMES.MO, TAG_ID.MO], + [TAG_NAMES.MN, TAG_ID.MN], + [TAG_NAMES.MS, TAG_ID.MS], + [TAG_NAMES.MTEXT, TAG_ID.MTEXT], + [TAG_NAMES.NAV, TAG_ID.NAV], + [TAG_NAMES.NOBR, TAG_ID.NOBR], + [TAG_NAMES.NOFRAMES, TAG_ID.NOFRAMES], + [TAG_NAMES.NOEMBED, TAG_ID.NOEMBED], + [TAG_NAMES.NOSCRIPT, TAG_ID.NOSCRIPT], + [TAG_NAMES.OBJECT, TAG_ID.OBJECT], + [TAG_NAMES.OL, TAG_ID.OL], + [TAG_NAMES.OPTGROUP, TAG_ID.OPTGROUP], + [TAG_NAMES.OPTION, TAG_ID.OPTION], + [TAG_NAMES.P, TAG_ID.P], + [TAG_NAMES.PARAM, TAG_ID.PARAM], + [TAG_NAMES.PLAINTEXT, TAG_ID.PLAINTEXT], + [TAG_NAMES.PRE, TAG_ID.PRE], + [TAG_NAMES.RB, TAG_ID.RB], + [TAG_NAMES.RP, TAG_ID.RP], + [TAG_NAMES.RT, TAG_ID.RT], + [TAG_NAMES.RTC, TAG_ID.RTC], + [TAG_NAMES.RUBY, TAG_ID.RUBY], + [TAG_NAMES.S, TAG_ID.S], + [TAG_NAMES.SCRIPT, TAG_ID.SCRIPT], + [TAG_NAMES.SEARCH, TAG_ID.SEARCH], + [TAG_NAMES.SECTION, TAG_ID.SECTION], + [TAG_NAMES.SELECT, TAG_ID.SELECT], + [TAG_NAMES.SOURCE, TAG_ID.SOURCE], + [TAG_NAMES.SMALL, TAG_ID.SMALL], + [TAG_NAMES.SPAN, TAG_ID.SPAN], + [TAG_NAMES.STRIKE, TAG_ID.STRIKE], + [TAG_NAMES.STRONG, TAG_ID.STRONG], + [TAG_NAMES.STYLE, TAG_ID.STYLE], + [TAG_NAMES.SUB, TAG_ID.SUB], + [TAG_NAMES.SUMMARY, TAG_ID.SUMMARY], + [TAG_NAMES.SUP, TAG_ID.SUP], + [TAG_NAMES.TABLE, TAG_ID.TABLE], + [TAG_NAMES.TBODY, TAG_ID.TBODY], + [TAG_NAMES.TEMPLATE, TAG_ID.TEMPLATE], + [TAG_NAMES.TEXTAREA, TAG_ID.TEXTAREA], + [TAG_NAMES.TFOOT, TAG_ID.TFOOT], + [TAG_NAMES.TD, TAG_ID.TD], + [TAG_NAMES.TH, TAG_ID.TH], + [TAG_NAMES.THEAD, TAG_ID.THEAD], + [TAG_NAMES.TITLE, TAG_ID.TITLE], + [TAG_NAMES.TR, TAG_ID.TR], + [TAG_NAMES.TRACK, TAG_ID.TRACK], + [TAG_NAMES.TT, TAG_ID.TT], + [TAG_NAMES.U, TAG_ID.U], + [TAG_NAMES.UL, TAG_ID.UL], + [TAG_NAMES.SVG, TAG_ID.SVG], + [TAG_NAMES.VAR, TAG_ID.VAR], + [TAG_NAMES.WBR, TAG_ID.WBR], + [TAG_NAMES.XMP, TAG_ID.XMP] +]); +function getTagID(tagName) { + var _a3; + return (_a3 = TAG_NAME_TO_ID.get(tagName)) !== null && _a3 !== void 0 ? _a3 : TAG_ID.UNKNOWN; +} +var $ = TAG_ID; +var SPECIAL_ELEMENTS = { + [NS.HTML]: /* @__PURE__ */ new Set([ + $.ADDRESS, + $.APPLET, + $.AREA, + $.ARTICLE, + $.ASIDE, + $.BASE, + $.BASEFONT, + $.BGSOUND, + $.BLOCKQUOTE, + $.BODY, + $.BR, + $.BUTTON, + $.CAPTION, + $.CENTER, + $.COL, + $.COLGROUP, + $.DD, + $.DETAILS, + $.DIR, + $.DIV, + $.DL, + $.DT, + $.EMBED, + $.FIELDSET, + $.FIGCAPTION, + $.FIGURE, + $.FOOTER, + $.FORM, + $.FRAME, + $.FRAMESET, + $.H1, + $.H2, + $.H3, + $.H4, + $.H5, + $.H6, + $.HEAD, + $.HEADER, + $.HGROUP, + $.HR, + $.HTML, + $.IFRAME, + $.IMG, + $.INPUT, + $.LI, + $.LINK, + $.LISTING, + $.MAIN, + $.MARQUEE, + $.MENU, + $.META, + $.NAV, + $.NOEMBED, + $.NOFRAMES, + $.NOSCRIPT, + $.OBJECT, + $.OL, + $.P, + $.PARAM, + $.PLAINTEXT, + $.PRE, + $.SCRIPT, + $.SECTION, + $.SELECT, + $.SOURCE, + $.STYLE, + $.SUMMARY, + $.TABLE, + $.TBODY, + $.TD, + $.TEMPLATE, + $.TEXTAREA, + $.TFOOT, + $.TH, + $.THEAD, + $.TITLE, + $.TR, + $.TRACK, + $.UL, + $.WBR, + $.XMP + ]), + [NS.MATHML]: /* @__PURE__ */ new Set([$.MI, $.MO, $.MN, $.MS, $.MTEXT, $.ANNOTATION_XML]), + [NS.SVG]: /* @__PURE__ */ new Set([$.TITLE, $.FOREIGN_OBJECT, $.DESC]), + [NS.XLINK]: /* @__PURE__ */ new Set(), + [NS.XML]: /* @__PURE__ */ new Set(), + [NS.XMLNS]: /* @__PURE__ */ new Set() +}; +var NUMBERED_HEADERS = /* @__PURE__ */ new Set([$.H1, $.H2, $.H3, $.H4, $.H5, $.H6]); +var UNESCAPED_TEXT = /* @__PURE__ */ new Set([ + TAG_NAMES.STYLE, + TAG_NAMES.SCRIPT, + TAG_NAMES.XMP, + TAG_NAMES.IFRAME, + TAG_NAMES.NOEMBED, + TAG_NAMES.NOFRAMES, + TAG_NAMES.PLAINTEXT +]); +function hasUnescapedText(tn, scriptingEnabled) { + return UNESCAPED_TEXT.has(tn) || scriptingEnabled && tn === TAG_NAMES.NOSCRIPT; +} + +// ../../node_modules/.pnpm/parse5@7.3.0/node_modules/parse5/dist/tokenizer/index.js +var State; +(function(State3) { + State3[State3["DATA"] = 0] = "DATA"; + State3[State3["RCDATA"] = 1] = "RCDATA"; + State3[State3["RAWTEXT"] = 2] = "RAWTEXT"; + State3[State3["SCRIPT_DATA"] = 3] = "SCRIPT_DATA"; + State3[State3["PLAINTEXT"] = 4] = "PLAINTEXT"; + State3[State3["TAG_OPEN"] = 5] = "TAG_OPEN"; + State3[State3["END_TAG_OPEN"] = 6] = "END_TAG_OPEN"; + State3[State3["TAG_NAME"] = 7] = "TAG_NAME"; + State3[State3["RCDATA_LESS_THAN_SIGN"] = 8] = "RCDATA_LESS_THAN_SIGN"; + State3[State3["RCDATA_END_TAG_OPEN"] = 9] = "RCDATA_END_TAG_OPEN"; + State3[State3["RCDATA_END_TAG_NAME"] = 10] = "RCDATA_END_TAG_NAME"; + State3[State3["RAWTEXT_LESS_THAN_SIGN"] = 11] = "RAWTEXT_LESS_THAN_SIGN"; + State3[State3["RAWTEXT_END_TAG_OPEN"] = 12] = "RAWTEXT_END_TAG_OPEN"; + State3[State3["RAWTEXT_END_TAG_NAME"] = 13] = "RAWTEXT_END_TAG_NAME"; + State3[State3["SCRIPT_DATA_LESS_THAN_SIGN"] = 14] = "SCRIPT_DATA_LESS_THAN_SIGN"; + State3[State3["SCRIPT_DATA_END_TAG_OPEN"] = 15] = "SCRIPT_DATA_END_TAG_OPEN"; + State3[State3["SCRIPT_DATA_END_TAG_NAME"] = 16] = "SCRIPT_DATA_END_TAG_NAME"; + State3[State3["SCRIPT_DATA_ESCAPE_START"] = 17] = "SCRIPT_DATA_ESCAPE_START"; + State3[State3["SCRIPT_DATA_ESCAPE_START_DASH"] = 18] = "SCRIPT_DATA_ESCAPE_START_DASH"; + State3[State3["SCRIPT_DATA_ESCAPED"] = 19] = "SCRIPT_DATA_ESCAPED"; + State3[State3["SCRIPT_DATA_ESCAPED_DASH"] = 20] = "SCRIPT_DATA_ESCAPED_DASH"; + State3[State3["SCRIPT_DATA_ESCAPED_DASH_DASH"] = 21] = "SCRIPT_DATA_ESCAPED_DASH_DASH"; + State3[State3["SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN"] = 22] = "SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN"; + State3[State3["SCRIPT_DATA_ESCAPED_END_TAG_OPEN"] = 23] = "SCRIPT_DATA_ESCAPED_END_TAG_OPEN"; + State3[State3["SCRIPT_DATA_ESCAPED_END_TAG_NAME"] = 24] = "SCRIPT_DATA_ESCAPED_END_TAG_NAME"; + State3[State3["SCRIPT_DATA_DOUBLE_ESCAPE_START"] = 25] = "SCRIPT_DATA_DOUBLE_ESCAPE_START"; + State3[State3["SCRIPT_DATA_DOUBLE_ESCAPED"] = 26] = "SCRIPT_DATA_DOUBLE_ESCAPED"; + State3[State3["SCRIPT_DATA_DOUBLE_ESCAPED_DASH"] = 27] = "SCRIPT_DATA_DOUBLE_ESCAPED_DASH"; + State3[State3["SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH"] = 28] = "SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH"; + State3[State3["SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN"] = 29] = "SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN"; + State3[State3["SCRIPT_DATA_DOUBLE_ESCAPE_END"] = 30] = "SCRIPT_DATA_DOUBLE_ESCAPE_END"; + State3[State3["BEFORE_ATTRIBUTE_NAME"] = 31] = "BEFORE_ATTRIBUTE_NAME"; + State3[State3["ATTRIBUTE_NAME"] = 32] = "ATTRIBUTE_NAME"; + State3[State3["AFTER_ATTRIBUTE_NAME"] = 33] = "AFTER_ATTRIBUTE_NAME"; + State3[State3["BEFORE_ATTRIBUTE_VALUE"] = 34] = "BEFORE_ATTRIBUTE_VALUE"; + State3[State3["ATTRIBUTE_VALUE_DOUBLE_QUOTED"] = 35] = "ATTRIBUTE_VALUE_DOUBLE_QUOTED"; + State3[State3["ATTRIBUTE_VALUE_SINGLE_QUOTED"] = 36] = "ATTRIBUTE_VALUE_SINGLE_QUOTED"; + State3[State3["ATTRIBUTE_VALUE_UNQUOTED"] = 37] = "ATTRIBUTE_VALUE_UNQUOTED"; + State3[State3["AFTER_ATTRIBUTE_VALUE_QUOTED"] = 38] = "AFTER_ATTRIBUTE_VALUE_QUOTED"; + State3[State3["SELF_CLOSING_START_TAG"] = 39] = "SELF_CLOSING_START_TAG"; + State3[State3["BOGUS_COMMENT"] = 40] = "BOGUS_COMMENT"; + State3[State3["MARKUP_DECLARATION_OPEN"] = 41] = "MARKUP_DECLARATION_OPEN"; + State3[State3["COMMENT_START"] = 42] = "COMMENT_START"; + State3[State3["COMMENT_START_DASH"] = 43] = "COMMENT_START_DASH"; + State3[State3["COMMENT"] = 44] = "COMMENT"; + State3[State3["COMMENT_LESS_THAN_SIGN"] = 45] = "COMMENT_LESS_THAN_SIGN"; + State3[State3["COMMENT_LESS_THAN_SIGN_BANG"] = 46] = "COMMENT_LESS_THAN_SIGN_BANG"; + State3[State3["COMMENT_LESS_THAN_SIGN_BANG_DASH"] = 47] = "COMMENT_LESS_THAN_SIGN_BANG_DASH"; + State3[State3["COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH"] = 48] = "COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH"; + State3[State3["COMMENT_END_DASH"] = 49] = "COMMENT_END_DASH"; + State3[State3["COMMENT_END"] = 50] = "COMMENT_END"; + State3[State3["COMMENT_END_BANG"] = 51] = "COMMENT_END_BANG"; + State3[State3["DOCTYPE"] = 52] = "DOCTYPE"; + State3[State3["BEFORE_DOCTYPE_NAME"] = 53] = "BEFORE_DOCTYPE_NAME"; + State3[State3["DOCTYPE_NAME"] = 54] = "DOCTYPE_NAME"; + State3[State3["AFTER_DOCTYPE_NAME"] = 55] = "AFTER_DOCTYPE_NAME"; + State3[State3["AFTER_DOCTYPE_PUBLIC_KEYWORD"] = 56] = "AFTER_DOCTYPE_PUBLIC_KEYWORD"; + State3[State3["BEFORE_DOCTYPE_PUBLIC_IDENTIFIER"] = 57] = "BEFORE_DOCTYPE_PUBLIC_IDENTIFIER"; + State3[State3["DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED"] = 58] = "DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED"; + State3[State3["DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED"] = 59] = "DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED"; + State3[State3["AFTER_DOCTYPE_PUBLIC_IDENTIFIER"] = 60] = "AFTER_DOCTYPE_PUBLIC_IDENTIFIER"; + State3[State3["BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS"] = 61] = "BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS"; + State3[State3["AFTER_DOCTYPE_SYSTEM_KEYWORD"] = 62] = "AFTER_DOCTYPE_SYSTEM_KEYWORD"; + State3[State3["BEFORE_DOCTYPE_SYSTEM_IDENTIFIER"] = 63] = "BEFORE_DOCTYPE_SYSTEM_IDENTIFIER"; + State3[State3["DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED"] = 64] = "DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED"; + State3[State3["DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED"] = 65] = "DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED"; + State3[State3["AFTER_DOCTYPE_SYSTEM_IDENTIFIER"] = 66] = "AFTER_DOCTYPE_SYSTEM_IDENTIFIER"; + State3[State3["BOGUS_DOCTYPE"] = 67] = "BOGUS_DOCTYPE"; + State3[State3["CDATA_SECTION"] = 68] = "CDATA_SECTION"; + State3[State3["CDATA_SECTION_BRACKET"] = 69] = "CDATA_SECTION_BRACKET"; + State3[State3["CDATA_SECTION_END"] = 70] = "CDATA_SECTION_END"; + State3[State3["CHARACTER_REFERENCE"] = 71] = "CHARACTER_REFERENCE"; + State3[State3["AMBIGUOUS_AMPERSAND"] = 72] = "AMBIGUOUS_AMPERSAND"; +})(State || (State = {})); +var TokenizerMode = { + DATA: State.DATA, + RCDATA: State.RCDATA, + RAWTEXT: State.RAWTEXT, + SCRIPT_DATA: State.SCRIPT_DATA, + PLAINTEXT: State.PLAINTEXT, + CDATA_SECTION: State.CDATA_SECTION +}; +function isAsciiDigit(cp) { + return cp >= CODE_POINTS.DIGIT_0 && cp <= CODE_POINTS.DIGIT_9; +} +function isAsciiUpper(cp) { + return cp >= CODE_POINTS.LATIN_CAPITAL_A && cp <= CODE_POINTS.LATIN_CAPITAL_Z; +} +function isAsciiLower(cp) { + return cp >= CODE_POINTS.LATIN_SMALL_A && cp <= CODE_POINTS.LATIN_SMALL_Z; +} +function isAsciiLetter(cp) { + return isAsciiLower(cp) || isAsciiUpper(cp); +} +function isAsciiAlphaNumeric3(cp) { + return isAsciiLetter(cp) || isAsciiDigit(cp); +} +function toAsciiLower(cp) { + return cp + 32; +} +function isWhitespace2(cp) { + return cp === CODE_POINTS.SPACE || cp === CODE_POINTS.LINE_FEED || cp === CODE_POINTS.TABULATION || cp === CODE_POINTS.FORM_FEED; +} +function isScriptDataDoubleEscapeSequenceEnd(cp) { + return isWhitespace2(cp) || cp === CODE_POINTS.SOLIDUS || cp === CODE_POINTS.GREATER_THAN_SIGN; +} +function getErrorForNumericCharacterReference(code2) { + if (code2 === CODE_POINTS.NULL) { + return ERR.nullCharacterReference; + } else if (code2 > 1114111) { + return ERR.characterReferenceOutsideUnicodeRange; + } else if (isSurrogate(code2)) { + return ERR.surrogateCharacterReference; + } else if (isUndefinedCodePoint(code2)) { + return ERR.noncharacterCharacterReference; + } else if (isControlCodePoint(code2) || code2 === CODE_POINTS.CARRIAGE_RETURN) { + return ERR.controlCharacterReference; + } + return null; +} +var Tokenizer = class { + constructor(options, handler) { + this.options = options; + this.handler = handler; + this.paused = false; + this.inLoop = false; + this.inForeignNode = false; + this.lastStartTagName = ""; + this.active = false; + this.state = State.DATA; + this.returnState = State.DATA; + this.entityStartPos = 0; + this.consumedAfterSnapshot = -1; + this.currentCharacterToken = null; + this.currentToken = null; + this.currentAttr = { name: "", value: "" }; + this.preprocessor = new Preprocessor(handler); + this.currentLocation = this.getCurrentLocation(-1); + this.entityDecoder = new EntityDecoder2(htmlDecodeTree, (cp, consumed) => { + this.preprocessor.pos = this.entityStartPos + consumed - 1; + this._flushCodePointConsumedAsCharacterReference(cp); + }, handler.onParseError ? { + missingSemicolonAfterCharacterReference: () => { + this._err(ERR.missingSemicolonAfterCharacterReference, 1); + }, + absenceOfDigitsInNumericCharacterReference: (consumed) => { + this._err(ERR.absenceOfDigitsInNumericCharacterReference, this.entityStartPos - this.preprocessor.pos + consumed); + }, + validateNumericCharacterReference: (code2) => { + const error2 = getErrorForNumericCharacterReference(code2); + if (error2) + this._err(error2, 1); + } + } : void 0); + } + _err(code2, cpOffset = 0) { + var _a3, _b; + (_b = (_a3 = this.handler).onParseError) === null || _b === void 0 ? void 0 : _b.call(_a3, this.preprocessor.getError(code2, cpOffset)); + } + getCurrentLocation(offset) { + if (!this.options.sourceCodeLocationInfo) { + return null; + } + return { + startLine: this.preprocessor.line, + startCol: this.preprocessor.col - offset, + startOffset: this.preprocessor.offset - offset, + endLine: -1, + endCol: -1, + endOffset: -1 + }; + } + _runParsingLoop() { + if (this.inLoop) + return; + this.inLoop = true; + while (this.active && !this.paused) { + this.consumedAfterSnapshot = 0; + const cp = this._consume(); + if (!this._ensureHibernation()) { + this._callState(cp); + } + } + this.inLoop = false; + } + pause() { + this.paused = true; + } + resume(writeCallback) { + if (!this.paused) { + throw new Error("Parser was already resumed"); + } + this.paused = false; + if (this.inLoop) + return; + this._runParsingLoop(); + if (!this.paused) { + writeCallback === null || writeCallback === void 0 ? void 0 : writeCallback(); + } + } + write(chunk, isLastChunk, writeCallback) { + this.active = true; + this.preprocessor.write(chunk, isLastChunk); + this._runParsingLoop(); + if (!this.paused) { + writeCallback === null || writeCallback === void 0 ? void 0 : writeCallback(); + } + } + insertHtmlAtCurrentPos(chunk) { + this.active = true; + this.preprocessor.insertHtmlAtCurrentPos(chunk); + this._runParsingLoop(); + } + _ensureHibernation() { + if (this.preprocessor.endOfChunkHit) { + this.preprocessor.retreat(this.consumedAfterSnapshot); + this.consumedAfterSnapshot = 0; + this.active = false; + return true; + } + return false; + } + _consume() { + this.consumedAfterSnapshot++; + return this.preprocessor.advance(); + } + _advanceBy(count) { + this.consumedAfterSnapshot += count; + for (let i = 0; i < count; i++) { + this.preprocessor.advance(); + } + } + _consumeSequenceIfMatch(pattern, caseSensitive) { + if (this.preprocessor.startsWith(pattern, caseSensitive)) { + this._advanceBy(pattern.length - 1); + return true; + } + return false; + } + _createStartTagToken() { + this.currentToken = { + type: TokenType.START_TAG, + tagName: "", + tagID: TAG_ID.UNKNOWN, + selfClosing: false, + ackSelfClosing: false, + attrs: [], + location: this.getCurrentLocation(1) + }; + } + _createEndTagToken() { + this.currentToken = { + type: TokenType.END_TAG, + tagName: "", + tagID: TAG_ID.UNKNOWN, + selfClosing: false, + ackSelfClosing: false, + attrs: [], + location: this.getCurrentLocation(2) + }; + } + _createCommentToken(offset) { + this.currentToken = { + type: TokenType.COMMENT, + data: "", + location: this.getCurrentLocation(offset) + }; + } + _createDoctypeToken(initialName) { + this.currentToken = { + type: TokenType.DOCTYPE, + name: initialName, + forceQuirks: false, + publicId: null, + systemId: null, + location: this.currentLocation + }; + } + _createCharacterToken(type, chars) { + this.currentCharacterToken = { + type, + chars, + location: this.currentLocation + }; + } + _createAttr(attrNameFirstCh) { + this.currentAttr = { + name: attrNameFirstCh, + value: "" + }; + this.currentLocation = this.getCurrentLocation(0); + } + _leaveAttrName() { + var _a3; + var _b; + const token = this.currentToken; + if (getTokenAttr(token, this.currentAttr.name) === null) { + token.attrs.push(this.currentAttr); + if (token.location && this.currentLocation) { + const attrLocations = (_a3 = (_b = token.location).attrs) !== null && _a3 !== void 0 ? _a3 : _b.attrs = /* @__PURE__ */ Object.create(null); + attrLocations[this.currentAttr.name] = this.currentLocation; + this._leaveAttrValue(); + } + } else { + this._err(ERR.duplicateAttribute); + } + } + _leaveAttrValue() { + if (this.currentLocation) { + this.currentLocation.endLine = this.preprocessor.line; + this.currentLocation.endCol = this.preprocessor.col; + this.currentLocation.endOffset = this.preprocessor.offset; + } + } + prepareToken(ct) { + this._emitCurrentCharacterToken(ct.location); + this.currentToken = null; + if (ct.location) { + ct.location.endLine = this.preprocessor.line; + ct.location.endCol = this.preprocessor.col + 1; + ct.location.endOffset = this.preprocessor.offset + 1; + } + this.currentLocation = this.getCurrentLocation(-1); + } + emitCurrentTagToken() { + const ct = this.currentToken; + this.prepareToken(ct); + ct.tagID = getTagID(ct.tagName); + if (ct.type === TokenType.START_TAG) { + this.lastStartTagName = ct.tagName; + this.handler.onStartTag(ct); + } else { + if (ct.attrs.length > 0) { + this._err(ERR.endTagWithAttributes); + } + if (ct.selfClosing) { + this._err(ERR.endTagWithTrailingSolidus); + } + this.handler.onEndTag(ct); + } + this.preprocessor.dropParsedChunk(); + } + emitCurrentComment(ct) { + this.prepareToken(ct); + this.handler.onComment(ct); + this.preprocessor.dropParsedChunk(); + } + emitCurrentDoctype(ct) { + this.prepareToken(ct); + this.handler.onDoctype(ct); + this.preprocessor.dropParsedChunk(); + } + _emitCurrentCharacterToken(nextLocation) { + if (this.currentCharacterToken) { + if (nextLocation && this.currentCharacterToken.location) { + this.currentCharacterToken.location.endLine = nextLocation.startLine; + this.currentCharacterToken.location.endCol = nextLocation.startCol; + this.currentCharacterToken.location.endOffset = nextLocation.startOffset; + } + switch (this.currentCharacterToken.type) { + case TokenType.CHARACTER: { + this.handler.onCharacter(this.currentCharacterToken); + break; + } + case TokenType.NULL_CHARACTER: { + this.handler.onNullCharacter(this.currentCharacterToken); + break; + } + case TokenType.WHITESPACE_CHARACTER: { + this.handler.onWhitespaceCharacter(this.currentCharacterToken); + break; + } + } + this.currentCharacterToken = null; + } + } + _emitEOFToken() { + const location = this.getCurrentLocation(0); + if (location) { + location.endLine = location.startLine; + location.endCol = location.startCol; + location.endOffset = location.startOffset; + } + this._emitCurrentCharacterToken(location); + this.handler.onEof({ type: TokenType.EOF, location }); + this.active = false; + } + _appendCharToCurrentCharacterToken(type, ch) { + if (this.currentCharacterToken) { + if (this.currentCharacterToken.type === type) { + this.currentCharacterToken.chars += ch; + return; + } else { + this.currentLocation = this.getCurrentLocation(0); + this._emitCurrentCharacterToken(this.currentLocation); + this.preprocessor.dropParsedChunk(); + } + } + this._createCharacterToken(type, ch); + } + _emitCodePoint(cp) { + const type = isWhitespace2(cp) ? TokenType.WHITESPACE_CHARACTER : cp === CODE_POINTS.NULL ? TokenType.NULL_CHARACTER : TokenType.CHARACTER; + this._appendCharToCurrentCharacterToken(type, String.fromCodePoint(cp)); + } + _emitChars(ch) { + this._appendCharToCurrentCharacterToken(TokenType.CHARACTER, ch); + } + _startCharacterReference() { + this.returnState = this.state; + this.state = State.CHARACTER_REFERENCE; + this.entityStartPos = this.preprocessor.pos; + this.entityDecoder.startEntity(this._isCharacterReferenceInAttribute() ? DecodingMode2.Attribute : DecodingMode2.Legacy); + } + _isCharacterReferenceInAttribute() { + return this.returnState === State.ATTRIBUTE_VALUE_DOUBLE_QUOTED || this.returnState === State.ATTRIBUTE_VALUE_SINGLE_QUOTED || this.returnState === State.ATTRIBUTE_VALUE_UNQUOTED; + } + _flushCodePointConsumedAsCharacterReference(cp) { + if (this._isCharacterReferenceInAttribute()) { + this.currentAttr.value += String.fromCodePoint(cp); + } else { + this._emitCodePoint(cp); + } + } + _callState(cp) { + switch (this.state) { + case State.DATA: { + this._stateData(cp); + break; + } + case State.RCDATA: { + this._stateRcdata(cp); + break; + } + case State.RAWTEXT: { + this._stateRawtext(cp); + break; + } + case State.SCRIPT_DATA: { + this._stateScriptData(cp); + break; + } + case State.PLAINTEXT: { + this._statePlaintext(cp); + break; + } + case State.TAG_OPEN: { + this._stateTagOpen(cp); + break; + } + case State.END_TAG_OPEN: { + this._stateEndTagOpen(cp); + break; + } + case State.TAG_NAME: { + this._stateTagName(cp); + break; + } + case State.RCDATA_LESS_THAN_SIGN: { + this._stateRcdataLessThanSign(cp); + break; + } + case State.RCDATA_END_TAG_OPEN: { + this._stateRcdataEndTagOpen(cp); + break; + } + case State.RCDATA_END_TAG_NAME: { + this._stateRcdataEndTagName(cp); + break; + } + case State.RAWTEXT_LESS_THAN_SIGN: { + this._stateRawtextLessThanSign(cp); + break; + } + case State.RAWTEXT_END_TAG_OPEN: { + this._stateRawtextEndTagOpen(cp); + break; + } + case State.RAWTEXT_END_TAG_NAME: { + this._stateRawtextEndTagName(cp); + break; + } + case State.SCRIPT_DATA_LESS_THAN_SIGN: { + this._stateScriptDataLessThanSign(cp); + break; + } + case State.SCRIPT_DATA_END_TAG_OPEN: { + this._stateScriptDataEndTagOpen(cp); + break; + } + case State.SCRIPT_DATA_END_TAG_NAME: { + this._stateScriptDataEndTagName(cp); + break; + } + case State.SCRIPT_DATA_ESCAPE_START: { + this._stateScriptDataEscapeStart(cp); + break; + } + case State.SCRIPT_DATA_ESCAPE_START_DASH: { + this._stateScriptDataEscapeStartDash(cp); + break; + } + case State.SCRIPT_DATA_ESCAPED: { + this._stateScriptDataEscaped(cp); + break; + } + case State.SCRIPT_DATA_ESCAPED_DASH: { + this._stateScriptDataEscapedDash(cp); + break; + } + case State.SCRIPT_DATA_ESCAPED_DASH_DASH: { + this._stateScriptDataEscapedDashDash(cp); + break; + } + case State.SCRIPT_DATA_ESCAPED_LESS_THAN_SIGN: { + this._stateScriptDataEscapedLessThanSign(cp); + break; + } + case State.SCRIPT_DATA_ESCAPED_END_TAG_OPEN: { + this._stateScriptDataEscapedEndTagOpen(cp); + break; + } + case State.SCRIPT_DATA_ESCAPED_END_TAG_NAME: { + this._stateScriptDataEscapedEndTagName(cp); + break; + } + case State.SCRIPT_DATA_DOUBLE_ESCAPE_START: { + this._stateScriptDataDoubleEscapeStart(cp); + break; + } + case State.SCRIPT_DATA_DOUBLE_ESCAPED: { + this._stateScriptDataDoubleEscaped(cp); + break; + } + case State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH: { + this._stateScriptDataDoubleEscapedDash(cp); + break; + } + case State.SCRIPT_DATA_DOUBLE_ESCAPED_DASH_DASH: { + this._stateScriptDataDoubleEscapedDashDash(cp); + break; + } + case State.SCRIPT_DATA_DOUBLE_ESCAPED_LESS_THAN_SIGN: { + this._stateScriptDataDoubleEscapedLessThanSign(cp); + break; + } + case State.SCRIPT_DATA_DOUBLE_ESCAPE_END: { + this._stateScriptDataDoubleEscapeEnd(cp); + break; + } + case State.BEFORE_ATTRIBUTE_NAME: { + this._stateBeforeAttributeName(cp); + break; + } + case State.ATTRIBUTE_NAME: { + this._stateAttributeName(cp); + break; + } + case State.AFTER_ATTRIBUTE_NAME: { + this._stateAfterAttributeName(cp); + break; + } + case State.BEFORE_ATTRIBUTE_VALUE: { + this._stateBeforeAttributeValue(cp); + break; + } + case State.ATTRIBUTE_VALUE_DOUBLE_QUOTED: { + this._stateAttributeValueDoubleQuoted(cp); + break; + } + case State.ATTRIBUTE_VALUE_SINGLE_QUOTED: { + this._stateAttributeValueSingleQuoted(cp); + break; + } + case State.ATTRIBUTE_VALUE_UNQUOTED: { + this._stateAttributeValueUnquoted(cp); + break; + } + case State.AFTER_ATTRIBUTE_VALUE_QUOTED: { + this._stateAfterAttributeValueQuoted(cp); + break; + } + case State.SELF_CLOSING_START_TAG: { + this._stateSelfClosingStartTag(cp); + break; + } + case State.BOGUS_COMMENT: { + this._stateBogusComment(cp); + break; + } + case State.MARKUP_DECLARATION_OPEN: { + this._stateMarkupDeclarationOpen(cp); + break; + } + case State.COMMENT_START: { + this._stateCommentStart(cp); + break; + } + case State.COMMENT_START_DASH: { + this._stateCommentStartDash(cp); + break; + } + case State.COMMENT: { + this._stateComment(cp); + break; + } + case State.COMMENT_LESS_THAN_SIGN: { + this._stateCommentLessThanSign(cp); + break; + } + case State.COMMENT_LESS_THAN_SIGN_BANG: { + this._stateCommentLessThanSignBang(cp); + break; + } + case State.COMMENT_LESS_THAN_SIGN_BANG_DASH: { + this._stateCommentLessThanSignBangDash(cp); + break; + } + case State.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH: { + this._stateCommentLessThanSignBangDashDash(cp); + break; + } + case State.COMMENT_END_DASH: { + this._stateCommentEndDash(cp); + break; + } + case State.COMMENT_END: { + this._stateCommentEnd(cp); + break; + } + case State.COMMENT_END_BANG: { + this._stateCommentEndBang(cp); + break; + } + case State.DOCTYPE: { + this._stateDoctype(cp); + break; + } + case State.BEFORE_DOCTYPE_NAME: { + this._stateBeforeDoctypeName(cp); + break; + } + case State.DOCTYPE_NAME: { + this._stateDoctypeName(cp); + break; + } + case State.AFTER_DOCTYPE_NAME: { + this._stateAfterDoctypeName(cp); + break; + } + case State.AFTER_DOCTYPE_PUBLIC_KEYWORD: { + this._stateAfterDoctypePublicKeyword(cp); + break; + } + case State.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER: { + this._stateBeforeDoctypePublicIdentifier(cp); + break; + } + case State.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED: { + this._stateDoctypePublicIdentifierDoubleQuoted(cp); + break; + } + case State.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED: { + this._stateDoctypePublicIdentifierSingleQuoted(cp); + break; + } + case State.AFTER_DOCTYPE_PUBLIC_IDENTIFIER: { + this._stateAfterDoctypePublicIdentifier(cp); + break; + } + case State.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS: { + this._stateBetweenDoctypePublicAndSystemIdentifiers(cp); + break; + } + case State.AFTER_DOCTYPE_SYSTEM_KEYWORD: { + this._stateAfterDoctypeSystemKeyword(cp); + break; + } + case State.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER: { + this._stateBeforeDoctypeSystemIdentifier(cp); + break; + } + case State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED: { + this._stateDoctypeSystemIdentifierDoubleQuoted(cp); + break; + } + case State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED: { + this._stateDoctypeSystemIdentifierSingleQuoted(cp); + break; + } + case State.AFTER_DOCTYPE_SYSTEM_IDENTIFIER: { + this._stateAfterDoctypeSystemIdentifier(cp); + break; + } + case State.BOGUS_DOCTYPE: { + this._stateBogusDoctype(cp); + break; + } + case State.CDATA_SECTION: { + this._stateCdataSection(cp); + break; + } + case State.CDATA_SECTION_BRACKET: { + this._stateCdataSectionBracket(cp); + break; + } + case State.CDATA_SECTION_END: { + this._stateCdataSectionEnd(cp); + break; + } + case State.CHARACTER_REFERENCE: { + this._stateCharacterReference(); + break; + } + case State.AMBIGUOUS_AMPERSAND: { + this._stateAmbiguousAmpersand(cp); + break; + } + default: { + throw new Error("Unknown state"); + } + } + } + _stateData(cp) { + switch (cp) { + case CODE_POINTS.LESS_THAN_SIGN: { + this.state = State.TAG_OPEN; + break; + } + case CODE_POINTS.AMPERSAND: { + this._startCharacterReference(); + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + this._emitCodePoint(cp); + break; + } + case CODE_POINTS.EOF: { + this._emitEOFToken(); + break; + } + default: { + this._emitCodePoint(cp); + } + } + } + _stateRcdata(cp) { + switch (cp) { + case CODE_POINTS.AMPERSAND: { + this._startCharacterReference(); + break; + } + case CODE_POINTS.LESS_THAN_SIGN: { + this.state = State.RCDATA_LESS_THAN_SIGN; + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + this._emitChars(REPLACEMENT_CHARACTER); + break; + } + case CODE_POINTS.EOF: { + this._emitEOFToken(); + break; + } + default: { + this._emitCodePoint(cp); + } + } + } + _stateRawtext(cp) { + switch (cp) { + case CODE_POINTS.LESS_THAN_SIGN: { + this.state = State.RAWTEXT_LESS_THAN_SIGN; + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + this._emitChars(REPLACEMENT_CHARACTER); + break; + } + case CODE_POINTS.EOF: { + this._emitEOFToken(); + break; + } + default: { + this._emitCodePoint(cp); + } + } + } + _stateScriptData(cp) { + switch (cp) { + case CODE_POINTS.LESS_THAN_SIGN: { + this.state = State.SCRIPT_DATA_LESS_THAN_SIGN; + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + this._emitChars(REPLACEMENT_CHARACTER); + break; + } + case CODE_POINTS.EOF: { + this._emitEOFToken(); + break; + } + default: { + this._emitCodePoint(cp); + } + } + } + _statePlaintext(cp) { + switch (cp) { + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + this._emitChars(REPLACEMENT_CHARACTER); + break; + } + case CODE_POINTS.EOF: { + this._emitEOFToken(); + break; + } + default: { + this._emitCodePoint(cp); + } + } + } + _stateTagOpen(cp) { + if (isAsciiLetter(cp)) { + this._createStartTagToken(); + this.state = State.TAG_NAME; + this._stateTagName(cp); + } else + switch (cp) { + case CODE_POINTS.EXCLAMATION_MARK: { + this.state = State.MARKUP_DECLARATION_OPEN; + break; + } + case CODE_POINTS.SOLIDUS: { + this.state = State.END_TAG_OPEN; + break; + } + case CODE_POINTS.QUESTION_MARK: { + this._err(ERR.unexpectedQuestionMarkInsteadOfTagName); + this._createCommentToken(1); + this.state = State.BOGUS_COMMENT; + this._stateBogusComment(cp); + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofBeforeTagName); + this._emitChars("<"); + this._emitEOFToken(); + break; + } + default: { + this._err(ERR.invalidFirstCharacterOfTagName); + this._emitChars("<"); + this.state = State.DATA; + this._stateData(cp); + } + } + } + _stateEndTagOpen(cp) { + if (isAsciiLetter(cp)) { + this._createEndTagToken(); + this.state = State.TAG_NAME; + this._stateTagName(cp); + } else + switch (cp) { + case CODE_POINTS.GREATER_THAN_SIGN: { + this._err(ERR.missingEndTagName); + this.state = State.DATA; + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofBeforeTagName); + this._emitChars(""); + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + this.state = State.SCRIPT_DATA_ESCAPED; + this._emitChars(REPLACEMENT_CHARACTER); + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInScriptHtmlCommentLikeText); + this._emitEOFToken(); + break; + } + default: { + this.state = State.SCRIPT_DATA_ESCAPED; + this._emitCodePoint(cp); + } + } + } + _stateScriptDataEscapedLessThanSign(cp) { + if (cp === CODE_POINTS.SOLIDUS) { + this.state = State.SCRIPT_DATA_ESCAPED_END_TAG_OPEN; + } else if (isAsciiLetter(cp)) { + this._emitChars("<"); + this.state = State.SCRIPT_DATA_DOUBLE_ESCAPE_START; + this._stateScriptDataDoubleEscapeStart(cp); + } else { + this._emitChars("<"); + this.state = State.SCRIPT_DATA_ESCAPED; + this._stateScriptDataEscaped(cp); + } + } + _stateScriptDataEscapedEndTagOpen(cp) { + if (isAsciiLetter(cp)) { + this.state = State.SCRIPT_DATA_ESCAPED_END_TAG_NAME; + this._stateScriptDataEscapedEndTagName(cp); + } else { + this._emitChars(""); + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED; + this._emitChars(REPLACEMENT_CHARACTER); + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInScriptHtmlCommentLikeText); + this._emitEOFToken(); + break; + } + default: { + this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED; + this._emitCodePoint(cp); + } + } + } + _stateScriptDataDoubleEscapedLessThanSign(cp) { + if (cp === CODE_POINTS.SOLIDUS) { + this.state = State.SCRIPT_DATA_DOUBLE_ESCAPE_END; + this._emitChars("/"); + } else { + this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED; + this._stateScriptDataDoubleEscaped(cp); + } + } + _stateScriptDataDoubleEscapeEnd(cp) { + if (this.preprocessor.startsWith(SEQUENCES.SCRIPT, false) && isScriptDataDoubleEscapeSequenceEnd(this.preprocessor.peek(SEQUENCES.SCRIPT.length))) { + this._emitCodePoint(cp); + for (let i = 0; i < SEQUENCES.SCRIPT.length; i++) { + this._emitCodePoint(this._consume()); + } + this.state = State.SCRIPT_DATA_ESCAPED; + } else if (!this._ensureHibernation()) { + this.state = State.SCRIPT_DATA_DOUBLE_ESCAPED; + this._stateScriptDataDoubleEscaped(cp); + } + } + _stateBeforeAttributeName(cp) { + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: { + break; + } + case CODE_POINTS.SOLIDUS: + case CODE_POINTS.GREATER_THAN_SIGN: + case CODE_POINTS.EOF: { + this.state = State.AFTER_ATTRIBUTE_NAME; + this._stateAfterAttributeName(cp); + break; + } + case CODE_POINTS.EQUALS_SIGN: { + this._err(ERR.unexpectedEqualsSignBeforeAttributeName); + this._createAttr("="); + this.state = State.ATTRIBUTE_NAME; + break; + } + default: { + this._createAttr(""); + this.state = State.ATTRIBUTE_NAME; + this._stateAttributeName(cp); + } + } + } + _stateAttributeName(cp) { + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: + case CODE_POINTS.SOLIDUS: + case CODE_POINTS.GREATER_THAN_SIGN: + case CODE_POINTS.EOF: { + this._leaveAttrName(); + this.state = State.AFTER_ATTRIBUTE_NAME; + this._stateAfterAttributeName(cp); + break; + } + case CODE_POINTS.EQUALS_SIGN: { + this._leaveAttrName(); + this.state = State.BEFORE_ATTRIBUTE_VALUE; + break; + } + case CODE_POINTS.QUOTATION_MARK: + case CODE_POINTS.APOSTROPHE: + case CODE_POINTS.LESS_THAN_SIGN: { + this._err(ERR.unexpectedCharacterInAttributeName); + this.currentAttr.name += String.fromCodePoint(cp); + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + this.currentAttr.name += REPLACEMENT_CHARACTER; + break; + } + default: { + this.currentAttr.name += String.fromCodePoint(isAsciiUpper(cp) ? toAsciiLower(cp) : cp); + } + } + } + _stateAfterAttributeName(cp) { + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: { + break; + } + case CODE_POINTS.SOLIDUS: { + this.state = State.SELF_CLOSING_START_TAG; + break; + } + case CODE_POINTS.EQUALS_SIGN: { + this.state = State.BEFORE_ATTRIBUTE_VALUE; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this.state = State.DATA; + this.emitCurrentTagToken(); + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInTag); + this._emitEOFToken(); + break; + } + default: { + this._createAttr(""); + this.state = State.ATTRIBUTE_NAME; + this._stateAttributeName(cp); + } + } + } + _stateBeforeAttributeValue(cp) { + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: { + break; + } + case CODE_POINTS.QUOTATION_MARK: { + this.state = State.ATTRIBUTE_VALUE_DOUBLE_QUOTED; + break; + } + case CODE_POINTS.APOSTROPHE: { + this.state = State.ATTRIBUTE_VALUE_SINGLE_QUOTED; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this._err(ERR.missingAttributeValue); + this.state = State.DATA; + this.emitCurrentTagToken(); + break; + } + default: { + this.state = State.ATTRIBUTE_VALUE_UNQUOTED; + this._stateAttributeValueUnquoted(cp); + } + } + } + _stateAttributeValueDoubleQuoted(cp) { + switch (cp) { + case CODE_POINTS.QUOTATION_MARK: { + this.state = State.AFTER_ATTRIBUTE_VALUE_QUOTED; + break; + } + case CODE_POINTS.AMPERSAND: { + this._startCharacterReference(); + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + this.currentAttr.value += REPLACEMENT_CHARACTER; + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInTag); + this._emitEOFToken(); + break; + } + default: { + this.currentAttr.value += String.fromCodePoint(cp); + } + } + } + _stateAttributeValueSingleQuoted(cp) { + switch (cp) { + case CODE_POINTS.APOSTROPHE: { + this.state = State.AFTER_ATTRIBUTE_VALUE_QUOTED; + break; + } + case CODE_POINTS.AMPERSAND: { + this._startCharacterReference(); + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + this.currentAttr.value += REPLACEMENT_CHARACTER; + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInTag); + this._emitEOFToken(); + break; + } + default: { + this.currentAttr.value += String.fromCodePoint(cp); + } + } + } + _stateAttributeValueUnquoted(cp) { + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: { + this._leaveAttrValue(); + this.state = State.BEFORE_ATTRIBUTE_NAME; + break; + } + case CODE_POINTS.AMPERSAND: { + this._startCharacterReference(); + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this._leaveAttrValue(); + this.state = State.DATA; + this.emitCurrentTagToken(); + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + this.currentAttr.value += REPLACEMENT_CHARACTER; + break; + } + case CODE_POINTS.QUOTATION_MARK: + case CODE_POINTS.APOSTROPHE: + case CODE_POINTS.LESS_THAN_SIGN: + case CODE_POINTS.EQUALS_SIGN: + case CODE_POINTS.GRAVE_ACCENT: { + this._err(ERR.unexpectedCharacterInUnquotedAttributeValue); + this.currentAttr.value += String.fromCodePoint(cp); + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInTag); + this._emitEOFToken(); + break; + } + default: { + this.currentAttr.value += String.fromCodePoint(cp); + } + } + } + _stateAfterAttributeValueQuoted(cp) { + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: { + this._leaveAttrValue(); + this.state = State.BEFORE_ATTRIBUTE_NAME; + break; + } + case CODE_POINTS.SOLIDUS: { + this._leaveAttrValue(); + this.state = State.SELF_CLOSING_START_TAG; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this._leaveAttrValue(); + this.state = State.DATA; + this.emitCurrentTagToken(); + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInTag); + this._emitEOFToken(); + break; + } + default: { + this._err(ERR.missingWhitespaceBetweenAttributes); + this.state = State.BEFORE_ATTRIBUTE_NAME; + this._stateBeforeAttributeName(cp); + } + } + } + _stateSelfClosingStartTag(cp) { + switch (cp) { + case CODE_POINTS.GREATER_THAN_SIGN: { + const token = this.currentToken; + token.selfClosing = true; + this.state = State.DATA; + this.emitCurrentTagToken(); + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInTag); + this._emitEOFToken(); + break; + } + default: { + this._err(ERR.unexpectedSolidusInTag); + this.state = State.BEFORE_ATTRIBUTE_NAME; + this._stateBeforeAttributeName(cp); + } + } + } + _stateBogusComment(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.GREATER_THAN_SIGN: { + this.state = State.DATA; + this.emitCurrentComment(token); + break; + } + case CODE_POINTS.EOF: { + this.emitCurrentComment(token); + this._emitEOFToken(); + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + token.data += REPLACEMENT_CHARACTER; + break; + } + default: { + token.data += String.fromCodePoint(cp); + } + } + } + _stateMarkupDeclarationOpen(cp) { + if (this._consumeSequenceIfMatch(SEQUENCES.DASH_DASH, true)) { + this._createCommentToken(SEQUENCES.DASH_DASH.length + 1); + this.state = State.COMMENT_START; + } else if (this._consumeSequenceIfMatch(SEQUENCES.DOCTYPE, false)) { + this.currentLocation = this.getCurrentLocation(SEQUENCES.DOCTYPE.length + 1); + this.state = State.DOCTYPE; + } else if (this._consumeSequenceIfMatch(SEQUENCES.CDATA_START, true)) { + if (this.inForeignNode) { + this.state = State.CDATA_SECTION; + } else { + this._err(ERR.cdataInHtmlContent); + this._createCommentToken(SEQUENCES.CDATA_START.length + 1); + this.currentToken.data = "[CDATA["; + this.state = State.BOGUS_COMMENT; + } + } else if (!this._ensureHibernation()) { + this._err(ERR.incorrectlyOpenedComment); + this._createCommentToken(2); + this.state = State.BOGUS_COMMENT; + this._stateBogusComment(cp); + } + } + _stateCommentStart(cp) { + switch (cp) { + case CODE_POINTS.HYPHEN_MINUS: { + this.state = State.COMMENT_START_DASH; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this._err(ERR.abruptClosingOfEmptyComment); + this.state = State.DATA; + const token = this.currentToken; + this.emitCurrentComment(token); + break; + } + default: { + this.state = State.COMMENT; + this._stateComment(cp); + } + } + } + _stateCommentStartDash(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.HYPHEN_MINUS: { + this.state = State.COMMENT_END; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this._err(ERR.abruptClosingOfEmptyComment); + this.state = State.DATA; + this.emitCurrentComment(token); + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInComment); + this.emitCurrentComment(token); + this._emitEOFToken(); + break; + } + default: { + token.data += "-"; + this.state = State.COMMENT; + this._stateComment(cp); + } + } + } + _stateComment(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.HYPHEN_MINUS: { + this.state = State.COMMENT_END_DASH; + break; + } + case CODE_POINTS.LESS_THAN_SIGN: { + token.data += "<"; + this.state = State.COMMENT_LESS_THAN_SIGN; + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + token.data += REPLACEMENT_CHARACTER; + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInComment); + this.emitCurrentComment(token); + this._emitEOFToken(); + break; + } + default: { + token.data += String.fromCodePoint(cp); + } + } + } + _stateCommentLessThanSign(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.EXCLAMATION_MARK: { + token.data += "!"; + this.state = State.COMMENT_LESS_THAN_SIGN_BANG; + break; + } + case CODE_POINTS.LESS_THAN_SIGN: { + token.data += "<"; + break; + } + default: { + this.state = State.COMMENT; + this._stateComment(cp); + } + } + } + _stateCommentLessThanSignBang(cp) { + if (cp === CODE_POINTS.HYPHEN_MINUS) { + this.state = State.COMMENT_LESS_THAN_SIGN_BANG_DASH; + } else { + this.state = State.COMMENT; + this._stateComment(cp); + } + } + _stateCommentLessThanSignBangDash(cp) { + if (cp === CODE_POINTS.HYPHEN_MINUS) { + this.state = State.COMMENT_LESS_THAN_SIGN_BANG_DASH_DASH; + } else { + this.state = State.COMMENT_END_DASH; + this._stateCommentEndDash(cp); + } + } + _stateCommentLessThanSignBangDashDash(cp) { + if (cp !== CODE_POINTS.GREATER_THAN_SIGN && cp !== CODE_POINTS.EOF) { + this._err(ERR.nestedComment); + } + this.state = State.COMMENT_END; + this._stateCommentEnd(cp); + } + _stateCommentEndDash(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.HYPHEN_MINUS: { + this.state = State.COMMENT_END; + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInComment); + this.emitCurrentComment(token); + this._emitEOFToken(); + break; + } + default: { + token.data += "-"; + this.state = State.COMMENT; + this._stateComment(cp); + } + } + } + _stateCommentEnd(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.GREATER_THAN_SIGN: { + this.state = State.DATA; + this.emitCurrentComment(token); + break; + } + case CODE_POINTS.EXCLAMATION_MARK: { + this.state = State.COMMENT_END_BANG; + break; + } + case CODE_POINTS.HYPHEN_MINUS: { + token.data += "-"; + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInComment); + this.emitCurrentComment(token); + this._emitEOFToken(); + break; + } + default: { + token.data += "--"; + this.state = State.COMMENT; + this._stateComment(cp); + } + } + } + _stateCommentEndBang(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.HYPHEN_MINUS: { + token.data += "--!"; + this.state = State.COMMENT_END_DASH; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this._err(ERR.incorrectlyClosedComment); + this.state = State.DATA; + this.emitCurrentComment(token); + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInComment); + this.emitCurrentComment(token); + this._emitEOFToken(); + break; + } + default: { + token.data += "--!"; + this.state = State.COMMENT; + this._stateComment(cp); + } + } + } + _stateDoctype(cp) { + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: { + this.state = State.BEFORE_DOCTYPE_NAME; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this.state = State.BEFORE_DOCTYPE_NAME; + this._stateBeforeDoctypeName(cp); + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInDoctype); + this._createDoctypeToken(null); + const token = this.currentToken; + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this._emitEOFToken(); + break; + } + default: { + this._err(ERR.missingWhitespaceBeforeDoctypeName); + this.state = State.BEFORE_DOCTYPE_NAME; + this._stateBeforeDoctypeName(cp); + } + } + } + _stateBeforeDoctypeName(cp) { + if (isAsciiUpper(cp)) { + this._createDoctypeToken(String.fromCharCode(toAsciiLower(cp))); + this.state = State.DOCTYPE_NAME; + } else + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: { + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + this._createDoctypeToken(REPLACEMENT_CHARACTER); + this.state = State.DOCTYPE_NAME; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this._err(ERR.missingDoctypeName); + this._createDoctypeToken(null); + const token = this.currentToken; + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this.state = State.DATA; + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInDoctype); + this._createDoctypeToken(null); + const token = this.currentToken; + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this._emitEOFToken(); + break; + } + default: { + this._createDoctypeToken(String.fromCodePoint(cp)); + this.state = State.DOCTYPE_NAME; + } + } + } + _stateDoctypeName(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: { + this.state = State.AFTER_DOCTYPE_NAME; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this.state = State.DATA; + this.emitCurrentDoctype(token); + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + token.name += REPLACEMENT_CHARACTER; + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInDoctype); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this._emitEOFToken(); + break; + } + default: { + token.name += String.fromCodePoint(isAsciiUpper(cp) ? toAsciiLower(cp) : cp); + } + } + } + _stateAfterDoctypeName(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: { + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this.state = State.DATA; + this.emitCurrentDoctype(token); + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInDoctype); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this._emitEOFToken(); + break; + } + default: { + if (this._consumeSequenceIfMatch(SEQUENCES.PUBLIC, false)) { + this.state = State.AFTER_DOCTYPE_PUBLIC_KEYWORD; + } else if (this._consumeSequenceIfMatch(SEQUENCES.SYSTEM, false)) { + this.state = State.AFTER_DOCTYPE_SYSTEM_KEYWORD; + } else if (!this._ensureHibernation()) { + this._err(ERR.invalidCharacterSequenceAfterDoctypeName); + token.forceQuirks = true; + this.state = State.BOGUS_DOCTYPE; + this._stateBogusDoctype(cp); + } + } + } + } + _stateAfterDoctypePublicKeyword(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: { + this.state = State.BEFORE_DOCTYPE_PUBLIC_IDENTIFIER; + break; + } + case CODE_POINTS.QUOTATION_MARK: { + this._err(ERR.missingWhitespaceAfterDoctypePublicKeyword); + token.publicId = ""; + this.state = State.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED; + break; + } + case CODE_POINTS.APOSTROPHE: { + this._err(ERR.missingWhitespaceAfterDoctypePublicKeyword); + token.publicId = ""; + this.state = State.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this._err(ERR.missingDoctypePublicIdentifier); + token.forceQuirks = true; + this.state = State.DATA; + this.emitCurrentDoctype(token); + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInDoctype); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this._emitEOFToken(); + break; + } + default: { + this._err(ERR.missingQuoteBeforeDoctypePublicIdentifier); + token.forceQuirks = true; + this.state = State.BOGUS_DOCTYPE; + this._stateBogusDoctype(cp); + } + } + } + _stateBeforeDoctypePublicIdentifier(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: { + break; + } + case CODE_POINTS.QUOTATION_MARK: { + token.publicId = ""; + this.state = State.DOCTYPE_PUBLIC_IDENTIFIER_DOUBLE_QUOTED; + break; + } + case CODE_POINTS.APOSTROPHE: { + token.publicId = ""; + this.state = State.DOCTYPE_PUBLIC_IDENTIFIER_SINGLE_QUOTED; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this._err(ERR.missingDoctypePublicIdentifier); + token.forceQuirks = true; + this.state = State.DATA; + this.emitCurrentDoctype(token); + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInDoctype); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this._emitEOFToken(); + break; + } + default: { + this._err(ERR.missingQuoteBeforeDoctypePublicIdentifier); + token.forceQuirks = true; + this.state = State.BOGUS_DOCTYPE; + this._stateBogusDoctype(cp); + } + } + } + _stateDoctypePublicIdentifierDoubleQuoted(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.QUOTATION_MARK: { + this.state = State.AFTER_DOCTYPE_PUBLIC_IDENTIFIER; + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + token.publicId += REPLACEMENT_CHARACTER; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this._err(ERR.abruptDoctypePublicIdentifier); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this.state = State.DATA; + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInDoctype); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this._emitEOFToken(); + break; + } + default: { + token.publicId += String.fromCodePoint(cp); + } + } + } + _stateDoctypePublicIdentifierSingleQuoted(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.APOSTROPHE: { + this.state = State.AFTER_DOCTYPE_PUBLIC_IDENTIFIER; + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + token.publicId += REPLACEMENT_CHARACTER; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this._err(ERR.abruptDoctypePublicIdentifier); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this.state = State.DATA; + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInDoctype); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this._emitEOFToken(); + break; + } + default: { + token.publicId += String.fromCodePoint(cp); + } + } + } + _stateAfterDoctypePublicIdentifier(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: { + this.state = State.BETWEEN_DOCTYPE_PUBLIC_AND_SYSTEM_IDENTIFIERS; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this.state = State.DATA; + this.emitCurrentDoctype(token); + break; + } + case CODE_POINTS.QUOTATION_MARK: { + this._err(ERR.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers); + token.systemId = ""; + this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED; + break; + } + case CODE_POINTS.APOSTROPHE: { + this._err(ERR.missingWhitespaceBetweenDoctypePublicAndSystemIdentifiers); + token.systemId = ""; + this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED; + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInDoctype); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this._emitEOFToken(); + break; + } + default: { + this._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier); + token.forceQuirks = true; + this.state = State.BOGUS_DOCTYPE; + this._stateBogusDoctype(cp); + } + } + } + _stateBetweenDoctypePublicAndSystemIdentifiers(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: { + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this.emitCurrentDoctype(token); + this.state = State.DATA; + break; + } + case CODE_POINTS.QUOTATION_MARK: { + token.systemId = ""; + this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED; + break; + } + case CODE_POINTS.APOSTROPHE: { + token.systemId = ""; + this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED; + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInDoctype); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this._emitEOFToken(); + break; + } + default: { + this._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier); + token.forceQuirks = true; + this.state = State.BOGUS_DOCTYPE; + this._stateBogusDoctype(cp); + } + } + } + _stateAfterDoctypeSystemKeyword(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: { + this.state = State.BEFORE_DOCTYPE_SYSTEM_IDENTIFIER; + break; + } + case CODE_POINTS.QUOTATION_MARK: { + this._err(ERR.missingWhitespaceAfterDoctypeSystemKeyword); + token.systemId = ""; + this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED; + break; + } + case CODE_POINTS.APOSTROPHE: { + this._err(ERR.missingWhitespaceAfterDoctypeSystemKeyword); + token.systemId = ""; + this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this._err(ERR.missingDoctypeSystemIdentifier); + token.forceQuirks = true; + this.state = State.DATA; + this.emitCurrentDoctype(token); + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInDoctype); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this._emitEOFToken(); + break; + } + default: { + this._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier); + token.forceQuirks = true; + this.state = State.BOGUS_DOCTYPE; + this._stateBogusDoctype(cp); + } + } + } + _stateBeforeDoctypeSystemIdentifier(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: { + break; + } + case CODE_POINTS.QUOTATION_MARK: { + token.systemId = ""; + this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_DOUBLE_QUOTED; + break; + } + case CODE_POINTS.APOSTROPHE: { + token.systemId = ""; + this.state = State.DOCTYPE_SYSTEM_IDENTIFIER_SINGLE_QUOTED; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this._err(ERR.missingDoctypeSystemIdentifier); + token.forceQuirks = true; + this.state = State.DATA; + this.emitCurrentDoctype(token); + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInDoctype); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this._emitEOFToken(); + break; + } + default: { + this._err(ERR.missingQuoteBeforeDoctypeSystemIdentifier); + token.forceQuirks = true; + this.state = State.BOGUS_DOCTYPE; + this._stateBogusDoctype(cp); + } + } + } + _stateDoctypeSystemIdentifierDoubleQuoted(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.QUOTATION_MARK: { + this.state = State.AFTER_DOCTYPE_SYSTEM_IDENTIFIER; + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + token.systemId += REPLACEMENT_CHARACTER; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this._err(ERR.abruptDoctypeSystemIdentifier); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this.state = State.DATA; + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInDoctype); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this._emitEOFToken(); + break; + } + default: { + token.systemId += String.fromCodePoint(cp); + } + } + } + _stateDoctypeSystemIdentifierSingleQuoted(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.APOSTROPHE: { + this.state = State.AFTER_DOCTYPE_SYSTEM_IDENTIFIER; + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + token.systemId += REPLACEMENT_CHARACTER; + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this._err(ERR.abruptDoctypeSystemIdentifier); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this.state = State.DATA; + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInDoctype); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this._emitEOFToken(); + break; + } + default: { + token.systemId += String.fromCodePoint(cp); + } + } + } + _stateAfterDoctypeSystemIdentifier(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.SPACE: + case CODE_POINTS.LINE_FEED: + case CODE_POINTS.TABULATION: + case CODE_POINTS.FORM_FEED: { + break; + } + case CODE_POINTS.GREATER_THAN_SIGN: { + this.emitCurrentDoctype(token); + this.state = State.DATA; + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInDoctype); + token.forceQuirks = true; + this.emitCurrentDoctype(token); + this._emitEOFToken(); + break; + } + default: { + this._err(ERR.unexpectedCharacterAfterDoctypeSystemIdentifier); + this.state = State.BOGUS_DOCTYPE; + this._stateBogusDoctype(cp); + } + } + } + _stateBogusDoctype(cp) { + const token = this.currentToken; + switch (cp) { + case CODE_POINTS.GREATER_THAN_SIGN: { + this.emitCurrentDoctype(token); + this.state = State.DATA; + break; + } + case CODE_POINTS.NULL: { + this._err(ERR.unexpectedNullCharacter); + break; + } + case CODE_POINTS.EOF: { + this.emitCurrentDoctype(token); + this._emitEOFToken(); + break; + } + default: + } + } + _stateCdataSection(cp) { + switch (cp) { + case CODE_POINTS.RIGHT_SQUARE_BRACKET: { + this.state = State.CDATA_SECTION_BRACKET; + break; + } + case CODE_POINTS.EOF: { + this._err(ERR.eofInCdata); + this._emitEOFToken(); + break; + } + default: { + this._emitCodePoint(cp); + } + } + } + _stateCdataSectionBracket(cp) { + if (cp === CODE_POINTS.RIGHT_SQUARE_BRACKET) { + this.state = State.CDATA_SECTION_END; + } else { + this._emitChars("]"); + this.state = State.CDATA_SECTION; + this._stateCdataSection(cp); + } + } + _stateCdataSectionEnd(cp) { + switch (cp) { + case CODE_POINTS.GREATER_THAN_SIGN: { + this.state = State.DATA; + break; + } + case CODE_POINTS.RIGHT_SQUARE_BRACKET: { + this._emitChars("]"); + break; + } + default: { + this._emitChars("]]"); + this.state = State.CDATA_SECTION; + this._stateCdataSection(cp); + } + } + } + _stateCharacterReference() { + let length = this.entityDecoder.write(this.preprocessor.html, this.preprocessor.pos); + if (length < 0) { + if (this.preprocessor.lastChunkWritten) { + length = this.entityDecoder.end(); + } else { + this.active = false; + this.preprocessor.pos = this.preprocessor.html.length - 1; + this.consumedAfterSnapshot = 0; + this.preprocessor.endOfChunkHit = true; + return; + } + } + if (length === 0) { + this.preprocessor.pos = this.entityStartPos; + this._flushCodePointConsumedAsCharacterReference(CODE_POINTS.AMPERSAND); + this.state = !this._isCharacterReferenceInAttribute() && isAsciiAlphaNumeric3(this.preprocessor.peek(1)) ? State.AMBIGUOUS_AMPERSAND : this.returnState; + } else { + this.state = this.returnState; + } + } + _stateAmbiguousAmpersand(cp) { + if (isAsciiAlphaNumeric3(cp)) { + this._flushCodePointConsumedAsCharacterReference(cp); + } else { + if (cp === CODE_POINTS.SEMICOLON) { + this._err(ERR.unknownNamedCharacterReference); + } + this.state = this.returnState; + this._callState(cp); + } + } +}; + +// ../../node_modules/.pnpm/parse5@7.3.0/node_modules/parse5/dist/parser/open-element-stack.js +var IMPLICIT_END_TAG_REQUIRED = /* @__PURE__ */ new Set([TAG_ID.DD, TAG_ID.DT, TAG_ID.LI, TAG_ID.OPTGROUP, TAG_ID.OPTION, TAG_ID.P, TAG_ID.RB, TAG_ID.RP, TAG_ID.RT, TAG_ID.RTC]); +var IMPLICIT_END_TAG_REQUIRED_THOROUGHLY = /* @__PURE__ */ new Set([ + ...IMPLICIT_END_TAG_REQUIRED, + TAG_ID.CAPTION, + TAG_ID.COLGROUP, + TAG_ID.TBODY, + TAG_ID.TD, + TAG_ID.TFOOT, + TAG_ID.TH, + TAG_ID.THEAD, + TAG_ID.TR +]); +var SCOPING_ELEMENTS_HTML = /* @__PURE__ */ new Set([ + TAG_ID.APPLET, + TAG_ID.CAPTION, + TAG_ID.HTML, + TAG_ID.MARQUEE, + TAG_ID.OBJECT, + TAG_ID.TABLE, + TAG_ID.TD, + TAG_ID.TEMPLATE, + TAG_ID.TH +]); +var SCOPING_ELEMENTS_HTML_LIST = /* @__PURE__ */ new Set([...SCOPING_ELEMENTS_HTML, TAG_ID.OL, TAG_ID.UL]); +var SCOPING_ELEMENTS_HTML_BUTTON = /* @__PURE__ */ new Set([...SCOPING_ELEMENTS_HTML, TAG_ID.BUTTON]); +var SCOPING_ELEMENTS_MATHML = /* @__PURE__ */ new Set([TAG_ID.ANNOTATION_XML, TAG_ID.MI, TAG_ID.MN, TAG_ID.MO, TAG_ID.MS, TAG_ID.MTEXT]); +var SCOPING_ELEMENTS_SVG = /* @__PURE__ */ new Set([TAG_ID.DESC, TAG_ID.FOREIGN_OBJECT, TAG_ID.TITLE]); +var TABLE_ROW_CONTEXT = /* @__PURE__ */ new Set([TAG_ID.TR, TAG_ID.TEMPLATE, TAG_ID.HTML]); +var TABLE_BODY_CONTEXT = /* @__PURE__ */ new Set([TAG_ID.TBODY, TAG_ID.TFOOT, TAG_ID.THEAD, TAG_ID.TEMPLATE, TAG_ID.HTML]); +var TABLE_CONTEXT = /* @__PURE__ */ new Set([TAG_ID.TABLE, TAG_ID.TEMPLATE, TAG_ID.HTML]); +var TABLE_CELLS = /* @__PURE__ */ new Set([TAG_ID.TD, TAG_ID.TH]); +var OpenElementStack = class { + get currentTmplContentOrNode() { + return this._isInTemplate() ? this.treeAdapter.getTemplateContent(this.current) : this.current; + } + constructor(document2, treeAdapter, handler) { + this.treeAdapter = treeAdapter; + this.handler = handler; + this.items = []; + this.tagIDs = []; + this.stackTop = -1; + this.tmplCount = 0; + this.currentTagId = TAG_ID.UNKNOWN; + this.current = document2; + } + _indexOf(element) { + return this.items.lastIndexOf(element, this.stackTop); + } + _isInTemplate() { + return this.currentTagId === TAG_ID.TEMPLATE && this.treeAdapter.getNamespaceURI(this.current) === NS.HTML; + } + _updateCurrentElement() { + this.current = this.items[this.stackTop]; + this.currentTagId = this.tagIDs[this.stackTop]; + } + push(element, tagID) { + this.stackTop++; + this.items[this.stackTop] = element; + this.current = element; + this.tagIDs[this.stackTop] = tagID; + this.currentTagId = tagID; + if (this._isInTemplate()) { + this.tmplCount++; + } + this.handler.onItemPush(element, tagID, true); + } + pop() { + const popped = this.current; + if (this.tmplCount > 0 && this._isInTemplate()) { + this.tmplCount--; + } + this.stackTop--; + this._updateCurrentElement(); + this.handler.onItemPop(popped, true); + } + replace(oldElement, newElement) { + const idx = this._indexOf(oldElement); + this.items[idx] = newElement; + if (idx === this.stackTop) { + this.current = newElement; + } + } + insertAfter(referenceElement, newElement, newElementID) { + const insertionIdx = this._indexOf(referenceElement) + 1; + this.items.splice(insertionIdx, 0, newElement); + this.tagIDs.splice(insertionIdx, 0, newElementID); + this.stackTop++; + if (insertionIdx === this.stackTop) { + this._updateCurrentElement(); + } + if (this.current && this.currentTagId !== void 0) { + this.handler.onItemPush(this.current, this.currentTagId, insertionIdx === this.stackTop); + } + } + popUntilTagNamePopped(tagName) { + let targetIdx = this.stackTop + 1; + do { + targetIdx = this.tagIDs.lastIndexOf(tagName, targetIdx - 1); + } while (targetIdx > 0 && this.treeAdapter.getNamespaceURI(this.items[targetIdx]) !== NS.HTML); + this.shortenToLength(Math.max(targetIdx, 0)); + } + shortenToLength(idx) { + while (this.stackTop >= idx) { + const popped = this.current; + if (this.tmplCount > 0 && this._isInTemplate()) { + this.tmplCount -= 1; + } + this.stackTop--; + this._updateCurrentElement(); + this.handler.onItemPop(popped, this.stackTop < idx); + } + } + popUntilElementPopped(element) { + const idx = this._indexOf(element); + this.shortenToLength(Math.max(idx, 0)); + } + popUntilPopped(tagNames, targetNS) { + const idx = this._indexOfTagNames(tagNames, targetNS); + this.shortenToLength(Math.max(idx, 0)); + } + popUntilNumberedHeaderPopped() { + this.popUntilPopped(NUMBERED_HEADERS, NS.HTML); + } + popUntilTableCellPopped() { + this.popUntilPopped(TABLE_CELLS, NS.HTML); + } + popAllUpToHtmlElement() { + this.tmplCount = 0; + this.shortenToLength(1); + } + _indexOfTagNames(tagNames, namespace) { + for (let i = this.stackTop; i >= 0; i--) { + if (tagNames.has(this.tagIDs[i]) && this.treeAdapter.getNamespaceURI(this.items[i]) === namespace) { + return i; + } + } + return -1; + } + clearBackTo(tagNames, targetNS) { + const idx = this._indexOfTagNames(tagNames, targetNS); + this.shortenToLength(idx + 1); + } + clearBackToTableContext() { + this.clearBackTo(TABLE_CONTEXT, NS.HTML); + } + clearBackToTableBodyContext() { + this.clearBackTo(TABLE_BODY_CONTEXT, NS.HTML); + } + clearBackToTableRowContext() { + this.clearBackTo(TABLE_ROW_CONTEXT, NS.HTML); + } + remove(element) { + const idx = this._indexOf(element); + if (idx >= 0) { + if (idx === this.stackTop) { + this.pop(); + } else { + this.items.splice(idx, 1); + this.tagIDs.splice(idx, 1); + this.stackTop--; + this._updateCurrentElement(); + this.handler.onItemPop(element, false); + } + } + } + tryPeekProperlyNestedBodyElement() { + return this.stackTop >= 1 && this.tagIDs[1] === TAG_ID.BODY ? this.items[1] : null; + } + contains(element) { + return this._indexOf(element) > -1; + } + getCommonAncestor(element) { + const elementIdx = this._indexOf(element) - 1; + return elementIdx >= 0 ? this.items[elementIdx] : null; + } + isRootHtmlElementCurrent() { + return this.stackTop === 0 && this.tagIDs[0] === TAG_ID.HTML; + } + hasInDynamicScope(tagName, htmlScope) { + for (let i = this.stackTop; i >= 0; i--) { + const tn = this.tagIDs[i]; + switch (this.treeAdapter.getNamespaceURI(this.items[i])) { + case NS.HTML: { + if (tn === tagName) + return true; + if (htmlScope.has(tn)) + return false; + break; + } + case NS.SVG: { + if (SCOPING_ELEMENTS_SVG.has(tn)) + return false; + break; + } + case NS.MATHML: { + if (SCOPING_ELEMENTS_MATHML.has(tn)) + return false; + break; + } + } + } + return true; + } + hasInScope(tagName) { + return this.hasInDynamicScope(tagName, SCOPING_ELEMENTS_HTML); + } + hasInListItemScope(tagName) { + return this.hasInDynamicScope(tagName, SCOPING_ELEMENTS_HTML_LIST); + } + hasInButtonScope(tagName) { + return this.hasInDynamicScope(tagName, SCOPING_ELEMENTS_HTML_BUTTON); + } + hasNumberedHeaderInScope() { + for (let i = this.stackTop; i >= 0; i--) { + const tn = this.tagIDs[i]; + switch (this.treeAdapter.getNamespaceURI(this.items[i])) { + case NS.HTML: { + if (NUMBERED_HEADERS.has(tn)) + return true; + if (SCOPING_ELEMENTS_HTML.has(tn)) + return false; + break; + } + case NS.SVG: { + if (SCOPING_ELEMENTS_SVG.has(tn)) + return false; + break; + } + case NS.MATHML: { + if (SCOPING_ELEMENTS_MATHML.has(tn)) + return false; + break; + } + } + } + return true; + } + hasInTableScope(tagName) { + for (let i = this.stackTop; i >= 0; i--) { + if (this.treeAdapter.getNamespaceURI(this.items[i]) !== NS.HTML) { + continue; + } + switch (this.tagIDs[i]) { + case tagName: { + return true; + } + case TAG_ID.TABLE: + case TAG_ID.HTML: { + return false; + } + } + } + return true; + } + hasTableBodyContextInTableScope() { + for (let i = this.stackTop; i >= 0; i--) { + if (this.treeAdapter.getNamespaceURI(this.items[i]) !== NS.HTML) { + continue; + } + switch (this.tagIDs[i]) { + case TAG_ID.TBODY: + case TAG_ID.THEAD: + case TAG_ID.TFOOT: { + return true; + } + case TAG_ID.TABLE: + case TAG_ID.HTML: { + return false; + } + } + } + return true; + } + hasInSelectScope(tagName) { + for (let i = this.stackTop; i >= 0; i--) { + if (this.treeAdapter.getNamespaceURI(this.items[i]) !== NS.HTML) { + continue; + } + switch (this.tagIDs[i]) { + case tagName: { + return true; + } + case TAG_ID.OPTION: + case TAG_ID.OPTGROUP: { + break; + } + default: { + return false; + } + } + } + return true; + } + generateImpliedEndTags() { + while (this.currentTagId !== void 0 && IMPLICIT_END_TAG_REQUIRED.has(this.currentTagId)) { + this.pop(); + } + } + generateImpliedEndTagsThoroughly() { + while (this.currentTagId !== void 0 && IMPLICIT_END_TAG_REQUIRED_THOROUGHLY.has(this.currentTagId)) { + this.pop(); + } + } + generateImpliedEndTagsWithExclusion(exclusionId) { + while (this.currentTagId !== void 0 && this.currentTagId !== exclusionId && IMPLICIT_END_TAG_REQUIRED_THOROUGHLY.has(this.currentTagId)) { + this.pop(); + } + } +}; + +// ../../node_modules/.pnpm/parse5@7.3.0/node_modules/parse5/dist/parser/formatting-element-list.js +var NOAH_ARK_CAPACITY = 3; +var EntryType; +(function(EntryType2) { + EntryType2[EntryType2["Marker"] = 0] = "Marker"; + EntryType2[EntryType2["Element"] = 1] = "Element"; +})(EntryType || (EntryType = {})); +var MARKER = { type: EntryType.Marker }; +var FormattingElementList = class { + constructor(treeAdapter) { + this.treeAdapter = treeAdapter; + this.entries = []; + this.bookmark = null; + } + _getNoahArkConditionCandidates(newElement, neAttrs) { + const candidates = []; + const neAttrsLength = neAttrs.length; + const neTagName = this.treeAdapter.getTagName(newElement); + const neNamespaceURI = this.treeAdapter.getNamespaceURI(newElement); + for (let i = 0; i < this.entries.length; i++) { + const entry = this.entries[i]; + if (entry.type === EntryType.Marker) { + break; + } + const { element } = entry; + if (this.treeAdapter.getTagName(element) === neTagName && this.treeAdapter.getNamespaceURI(element) === neNamespaceURI) { + const elementAttrs = this.treeAdapter.getAttrList(element); + if (elementAttrs.length === neAttrsLength) { + candidates.push({ idx: i, attrs: elementAttrs }); + } + } + } + return candidates; + } + _ensureNoahArkCondition(newElement) { + if (this.entries.length < NOAH_ARK_CAPACITY) + return; + const neAttrs = this.treeAdapter.getAttrList(newElement); + const candidates = this._getNoahArkConditionCandidates(newElement, neAttrs); + if (candidates.length < NOAH_ARK_CAPACITY) + return; + const neAttrsMap = new Map(neAttrs.map((neAttr) => [neAttr.name, neAttr.value])); + let validCandidates = 0; + for (let i = 0; i < candidates.length; i++) { + const candidate = candidates[i]; + if (candidate.attrs.every((cAttr) => neAttrsMap.get(cAttr.name) === cAttr.value)) { + validCandidates += 1; + if (validCandidates >= NOAH_ARK_CAPACITY) { + this.entries.splice(candidate.idx, 1); + } + } + } + } + insertMarker() { + this.entries.unshift(MARKER); + } + pushElement(element, token) { + this._ensureNoahArkCondition(element); + this.entries.unshift({ + type: EntryType.Element, + element, + token + }); + } + insertElementAfterBookmark(element, token) { + const bookmarkIdx = this.entries.indexOf(this.bookmark); + this.entries.splice(bookmarkIdx, 0, { + type: EntryType.Element, + element, + token + }); + } + removeEntry(entry) { + const entryIndex = this.entries.indexOf(entry); + if (entryIndex !== -1) { + this.entries.splice(entryIndex, 1); + } + } + clearToLastMarker() { + const markerIdx = this.entries.indexOf(MARKER); + if (markerIdx === -1) { + this.entries.length = 0; + } else { + this.entries.splice(0, markerIdx + 1); + } + } + getElementEntryInScopeWithTagName(tagName) { + const entry = this.entries.find((entry2) => entry2.type === EntryType.Marker || this.treeAdapter.getTagName(entry2.element) === tagName); + return entry && entry.type === EntryType.Element ? entry : null; + } + getElementEntry(element) { + return this.entries.find((entry) => entry.type === EntryType.Element && entry.element === element); + } +}; + +// ../../node_modules/.pnpm/parse5@7.3.0/node_modules/parse5/dist/tree-adapters/default.js +var defaultTreeAdapter = { + createDocument() { + return { + nodeName: "#document", + mode: DOCUMENT_MODE.NO_QUIRKS, + childNodes: [] + }; + }, + createDocumentFragment() { + return { + nodeName: "#document-fragment", + childNodes: [] + }; + }, + createElement(tagName, namespaceURI, attrs) { + return { + nodeName: tagName, + tagName, + attrs, + namespaceURI, + childNodes: [], + parentNode: null + }; + }, + createCommentNode(data2) { + return { + nodeName: "#comment", + data: data2, + parentNode: null + }; + }, + createTextNode(value) { + return { + nodeName: "#text", + value, + parentNode: null + }; + }, + appendChild(parentNode, newNode) { + parentNode.childNodes.push(newNode); + newNode.parentNode = parentNode; + }, + insertBefore(parentNode, newNode, referenceNode) { + const insertionIdx = parentNode.childNodes.indexOf(referenceNode); + parentNode.childNodes.splice(insertionIdx, 0, newNode); + newNode.parentNode = parentNode; + }, + setTemplateContent(templateElement, contentElement) { + templateElement.content = contentElement; + }, + getTemplateContent(templateElement) { + return templateElement.content; + }, + setDocumentType(document2, name2, publicId, systemId) { + const doctypeNode = document2.childNodes.find((node) => node.nodeName === "#documentType"); + if (doctypeNode) { + doctypeNode.name = name2; + doctypeNode.publicId = publicId; + doctypeNode.systemId = systemId; + } else { + const node = { + nodeName: "#documentType", + name: name2, + publicId, + systemId, + parentNode: null + }; + defaultTreeAdapter.appendChild(document2, node); + } + }, + setDocumentMode(document2, mode) { + document2.mode = mode; + }, + getDocumentMode(document2) { + return document2.mode; + }, + detachNode(node) { + if (node.parentNode) { + const idx = node.parentNode.childNodes.indexOf(node); + node.parentNode.childNodes.splice(idx, 1); + node.parentNode = null; + } + }, + insertText(parentNode, text4) { + if (parentNode.childNodes.length > 0) { + const prevNode = parentNode.childNodes[parentNode.childNodes.length - 1]; + if (defaultTreeAdapter.isTextNode(prevNode)) { + prevNode.value += text4; + return; + } + } + defaultTreeAdapter.appendChild(parentNode, defaultTreeAdapter.createTextNode(text4)); + }, + insertTextBefore(parentNode, text4, referenceNode) { + const prevNode = parentNode.childNodes[parentNode.childNodes.indexOf(referenceNode) - 1]; + if (prevNode && defaultTreeAdapter.isTextNode(prevNode)) { + prevNode.value += text4; + } else { + defaultTreeAdapter.insertBefore(parentNode, defaultTreeAdapter.createTextNode(text4), referenceNode); + } + }, + adoptAttributes(recipient, attrs) { + const recipientAttrsMap = new Set(recipient.attrs.map((attr2) => attr2.name)); + for (let j = 0; j < attrs.length; j++) { + if (!recipientAttrsMap.has(attrs[j].name)) { + recipient.attrs.push(attrs[j]); + } + } + }, + getFirstChild(node) { + return node.childNodes[0]; + }, + getChildNodes(node) { + return node.childNodes; + }, + getParentNode(node) { + return node.parentNode; + }, + getAttrList(element) { + return element.attrs; + }, + getTagName(element) { + return element.tagName; + }, + getNamespaceURI(element) { + return element.namespaceURI; + }, + getTextNodeContent(textNode) { + return textNode.value; + }, + getCommentNodeContent(commentNode) { + return commentNode.data; + }, + getDocumentTypeNodeName(doctypeNode) { + return doctypeNode.name; + }, + getDocumentTypeNodePublicId(doctypeNode) { + return doctypeNode.publicId; + }, + getDocumentTypeNodeSystemId(doctypeNode) { + return doctypeNode.systemId; + }, + isTextNode(node) { + return node.nodeName === "#text"; + }, + isCommentNode(node) { + return node.nodeName === "#comment"; + }, + isDocumentTypeNode(node) { + return node.nodeName === "#documentType"; + }, + isElementNode(node) { + return Object.prototype.hasOwnProperty.call(node, "tagName"); + }, + setNodeSourceCodeLocation(node, location) { + node.sourceCodeLocation = location; + }, + getNodeSourceCodeLocation(node) { + return node.sourceCodeLocation; + }, + updateNodeSourceCodeLocation(node, endLocation) { + node.sourceCodeLocation = { ...node.sourceCodeLocation, ...endLocation }; + } +}; + +// ../../node_modules/.pnpm/parse5@7.3.0/node_modules/parse5/dist/common/doctype.js +var VALID_DOCTYPE_NAME = "html"; +var VALID_SYSTEM_ID = "about:legacy-compat"; +var QUIRKS_MODE_SYSTEM_ID = "http://www.ibm.com/data/dtd/v11/ibmxhtml1-transitional.dtd"; +var QUIRKS_MODE_PUBLIC_ID_PREFIXES = [ + "+//silmaril//dtd html pro v0r11 19970101//", + "-//as//dtd html 3.0 aswedit + extensions//", + "-//advasoft ltd//dtd html 3.0 aswedit + extensions//", + "-//ietf//dtd html 2.0 level 1//", + "-//ietf//dtd html 2.0 level 2//", + "-//ietf//dtd html 2.0 strict level 1//", + "-//ietf//dtd html 2.0 strict level 2//", + "-//ietf//dtd html 2.0 strict//", + "-//ietf//dtd html 2.0//", + "-//ietf//dtd html 2.1e//", + "-//ietf//dtd html 3.0//", + "-//ietf//dtd html 3.2 final//", + "-//ietf//dtd html 3.2//", + "-//ietf//dtd html 3//", + "-//ietf//dtd html level 0//", + "-//ietf//dtd html level 1//", + "-//ietf//dtd html level 2//", + "-//ietf//dtd html level 3//", + "-//ietf//dtd html strict level 0//", + "-//ietf//dtd html strict level 1//", + "-//ietf//dtd html strict level 2//", + "-//ietf//dtd html strict level 3//", + "-//ietf//dtd html strict//", + "-//ietf//dtd html//", + "-//metrius//dtd metrius presentational//", + "-//microsoft//dtd internet explorer 2.0 html strict//", + "-//microsoft//dtd internet explorer 2.0 html//", + "-//microsoft//dtd internet explorer 2.0 tables//", + "-//microsoft//dtd internet explorer 3.0 html strict//", + "-//microsoft//dtd internet explorer 3.0 html//", + "-//microsoft//dtd internet explorer 3.0 tables//", + "-//netscape comm. corp.//dtd html//", + "-//netscape comm. corp.//dtd strict html//", + "-//o'reilly and associates//dtd html 2.0//", + "-//o'reilly and associates//dtd html extended 1.0//", + "-//o'reilly and associates//dtd html extended relaxed 1.0//", + "-//sq//dtd html 2.0 hotmetal + extensions//", + "-//softquad software//dtd hotmetal pro 6.0::19990601::extensions to html 4.0//", + "-//softquad//dtd hotmetal pro 4.0::19971010::extensions to html 4.0//", + "-//spyglass//dtd html 2.0 extended//", + "-//sun microsystems corp.//dtd hotjava html//", + "-//sun microsystems corp.//dtd hotjava strict html//", + "-//w3c//dtd html 3 1995-03-24//", + "-//w3c//dtd html 3.2 draft//", + "-//w3c//dtd html 3.2 final//", + "-//w3c//dtd html 3.2//", + "-//w3c//dtd html 3.2s draft//", + "-//w3c//dtd html 4.0 frameset//", + "-//w3c//dtd html 4.0 transitional//", + "-//w3c//dtd html experimental 19960712//", + "-//w3c//dtd html experimental 970421//", + "-//w3c//dtd w3 html//", + "-//w3o//dtd w3 html 3.0//", + "-//webtechs//dtd mozilla html 2.0//", + "-//webtechs//dtd mozilla html//" +]; +var QUIRKS_MODE_NO_SYSTEM_ID_PUBLIC_ID_PREFIXES = [ + ...QUIRKS_MODE_PUBLIC_ID_PREFIXES, + "-//w3c//dtd html 4.01 frameset//", + "-//w3c//dtd html 4.01 transitional//" +]; +var QUIRKS_MODE_PUBLIC_IDS = /* @__PURE__ */ new Set([ + "-//w3o//dtd w3 html strict 3.0//en//", + "-/w3c/dtd html 4.0 transitional/en", + "html" +]); +var LIMITED_QUIRKS_PUBLIC_ID_PREFIXES = ["-//w3c//dtd xhtml 1.0 frameset//", "-//w3c//dtd xhtml 1.0 transitional//"]; +var LIMITED_QUIRKS_WITH_SYSTEM_ID_PUBLIC_ID_PREFIXES = [ + ...LIMITED_QUIRKS_PUBLIC_ID_PREFIXES, + "-//w3c//dtd html 4.01 frameset//", + "-//w3c//dtd html 4.01 transitional//" +]; +function hasPrefix(publicId, prefixes) { + return prefixes.some((prefix) => publicId.startsWith(prefix)); +} +function isConforming(token) { + return token.name === VALID_DOCTYPE_NAME && token.publicId === null && (token.systemId === null || token.systemId === VALID_SYSTEM_ID); +} +function getDocumentMode(token) { + if (token.name !== VALID_DOCTYPE_NAME) { + return DOCUMENT_MODE.QUIRKS; + } + const { systemId } = token; + if (systemId && systemId.toLowerCase() === QUIRKS_MODE_SYSTEM_ID) { + return DOCUMENT_MODE.QUIRKS; + } + let { publicId } = token; + if (publicId !== null) { + publicId = publicId.toLowerCase(); + if (QUIRKS_MODE_PUBLIC_IDS.has(publicId)) { + return DOCUMENT_MODE.QUIRKS; + } + let prefixes = systemId === null ? QUIRKS_MODE_NO_SYSTEM_ID_PUBLIC_ID_PREFIXES : QUIRKS_MODE_PUBLIC_ID_PREFIXES; + if (hasPrefix(publicId, prefixes)) { + return DOCUMENT_MODE.QUIRKS; + } + prefixes = systemId === null ? LIMITED_QUIRKS_PUBLIC_ID_PREFIXES : LIMITED_QUIRKS_WITH_SYSTEM_ID_PUBLIC_ID_PREFIXES; + if (hasPrefix(publicId, prefixes)) { + return DOCUMENT_MODE.LIMITED_QUIRKS; + } + } + return DOCUMENT_MODE.NO_QUIRKS; +} + +// ../../node_modules/.pnpm/parse5@7.3.0/node_modules/parse5/dist/common/foreign-content.js +var foreign_content_exports = {}; +__export(foreign_content_exports, { + SVG_TAG_NAMES_ADJUSTMENT_MAP: () => SVG_TAG_NAMES_ADJUSTMENT_MAP, + adjustTokenMathMLAttrs: () => adjustTokenMathMLAttrs, + adjustTokenSVGAttrs: () => adjustTokenSVGAttrs, + adjustTokenSVGTagName: () => adjustTokenSVGTagName, + adjustTokenXMLAttrs: () => adjustTokenXMLAttrs, + causesExit: () => causesExit, + isIntegrationPoint: () => isIntegrationPoint +}); +var MIME_TYPES = { + TEXT_HTML: "text/html", + APPLICATION_XML: "application/xhtml+xml" +}; +var DEFINITION_URL_ATTR = "definitionurl"; +var ADJUSTED_DEFINITION_URL_ATTR = "definitionURL"; +var SVG_ATTRS_ADJUSTMENT_MAP = new Map([ + "attributeName", + "attributeType", + "baseFrequency", + "baseProfile", + "calcMode", + "clipPathUnits", + "diffuseConstant", + "edgeMode", + "filterUnits", + "glyphRef", + "gradientTransform", + "gradientUnits", + "kernelMatrix", + "kernelUnitLength", + "keyPoints", + "keySplines", + "keyTimes", + "lengthAdjust", + "limitingConeAngle", + "markerHeight", + "markerUnits", + "markerWidth", + "maskContentUnits", + "maskUnits", + "numOctaves", + "pathLength", + "patternContentUnits", + "patternTransform", + "patternUnits", + "pointsAtX", + "pointsAtY", + "pointsAtZ", + "preserveAlpha", + "preserveAspectRatio", + "primitiveUnits", + "refX", + "refY", + "repeatCount", + "repeatDur", + "requiredExtensions", + "requiredFeatures", + "specularConstant", + "specularExponent", + "spreadMethod", + "startOffset", + "stdDeviation", + "stitchTiles", + "surfaceScale", + "systemLanguage", + "tableValues", + "targetX", + "targetY", + "textLength", + "viewBox", + "viewTarget", + "xChannelSelector", + "yChannelSelector", + "zoomAndPan" +].map((attr2) => [attr2.toLowerCase(), attr2])); +var XML_ATTRS_ADJUSTMENT_MAP = /* @__PURE__ */ new Map([ + ["xlink:actuate", { prefix: "xlink", name: "actuate", namespace: NS.XLINK }], + ["xlink:arcrole", { prefix: "xlink", name: "arcrole", namespace: NS.XLINK }], + ["xlink:href", { prefix: "xlink", name: "href", namespace: NS.XLINK }], + ["xlink:role", { prefix: "xlink", name: "role", namespace: NS.XLINK }], + ["xlink:show", { prefix: "xlink", name: "show", namespace: NS.XLINK }], + ["xlink:title", { prefix: "xlink", name: "title", namespace: NS.XLINK }], + ["xlink:type", { prefix: "xlink", name: "type", namespace: NS.XLINK }], + ["xml:lang", { prefix: "xml", name: "lang", namespace: NS.XML }], + ["xml:space", { prefix: "xml", name: "space", namespace: NS.XML }], + ["xmlns", { prefix: "", name: "xmlns", namespace: NS.XMLNS }], + ["xmlns:xlink", { prefix: "xmlns", name: "xlink", namespace: NS.XMLNS }] +]); +var SVG_TAG_NAMES_ADJUSTMENT_MAP = new Map([ + "altGlyph", + "altGlyphDef", + "altGlyphItem", + "animateColor", + "animateMotion", + "animateTransform", + "clipPath", + "feBlend", + "feColorMatrix", + "feComponentTransfer", + "feComposite", + "feConvolveMatrix", + "feDiffuseLighting", + "feDisplacementMap", + "feDistantLight", + "feFlood", + "feFuncA", + "feFuncB", + "feFuncG", + "feFuncR", + "feGaussianBlur", + "feImage", + "feMerge", + "feMergeNode", + "feMorphology", + "feOffset", + "fePointLight", + "feSpecularLighting", + "feSpotLight", + "feTile", + "feTurbulence", + "foreignObject", + "glyphRef", + "linearGradient", + "radialGradient", + "textPath" +].map((tn) => [tn.toLowerCase(), tn])); +var EXITS_FOREIGN_CONTENT = /* @__PURE__ */ new Set([ + TAG_ID.B, + TAG_ID.BIG, + TAG_ID.BLOCKQUOTE, + TAG_ID.BODY, + TAG_ID.BR, + TAG_ID.CENTER, + TAG_ID.CODE, + TAG_ID.DD, + TAG_ID.DIV, + TAG_ID.DL, + TAG_ID.DT, + TAG_ID.EM, + TAG_ID.EMBED, + TAG_ID.H1, + TAG_ID.H2, + TAG_ID.H3, + TAG_ID.H4, + TAG_ID.H5, + TAG_ID.H6, + TAG_ID.HEAD, + TAG_ID.HR, + TAG_ID.I, + TAG_ID.IMG, + TAG_ID.LI, + TAG_ID.LISTING, + TAG_ID.MENU, + TAG_ID.META, + TAG_ID.NOBR, + TAG_ID.OL, + TAG_ID.P, + TAG_ID.PRE, + TAG_ID.RUBY, + TAG_ID.S, + TAG_ID.SMALL, + TAG_ID.SPAN, + TAG_ID.STRONG, + TAG_ID.STRIKE, + TAG_ID.SUB, + TAG_ID.SUP, + TAG_ID.TABLE, + TAG_ID.TT, + TAG_ID.U, + TAG_ID.UL, + TAG_ID.VAR +]); +function causesExit(startTagToken) { + const tn = startTagToken.tagID; + const isFontWithAttrs = tn === TAG_ID.FONT && startTagToken.attrs.some(({ name: name2 }) => name2 === ATTRS.COLOR || name2 === ATTRS.SIZE || name2 === ATTRS.FACE); + return isFontWithAttrs || EXITS_FOREIGN_CONTENT.has(tn); +} +function adjustTokenMathMLAttrs(token) { + for (let i = 0; i < token.attrs.length; i++) { + if (token.attrs[i].name === DEFINITION_URL_ATTR) { + token.attrs[i].name = ADJUSTED_DEFINITION_URL_ATTR; + break; + } + } +} +function adjustTokenSVGAttrs(token) { + for (let i = 0; i < token.attrs.length; i++) { + const adjustedAttrName = SVG_ATTRS_ADJUSTMENT_MAP.get(token.attrs[i].name); + if (adjustedAttrName != null) { + token.attrs[i].name = adjustedAttrName; + } + } +} +function adjustTokenXMLAttrs(token) { + for (let i = 0; i < token.attrs.length; i++) { + const adjustedAttrEntry = XML_ATTRS_ADJUSTMENT_MAP.get(token.attrs[i].name); + if (adjustedAttrEntry) { + token.attrs[i].prefix = adjustedAttrEntry.prefix; + token.attrs[i].name = adjustedAttrEntry.name; + token.attrs[i].namespace = adjustedAttrEntry.namespace; + } + } +} +function adjustTokenSVGTagName(token) { + const adjustedTagName = SVG_TAG_NAMES_ADJUSTMENT_MAP.get(token.tagName); + if (adjustedTagName != null) { + token.tagName = adjustedTagName; + token.tagID = getTagID(token.tagName); + } +} +function isMathMLTextIntegrationPoint(tn, ns) { + return ns === NS.MATHML && (tn === TAG_ID.MI || tn === TAG_ID.MO || tn === TAG_ID.MN || tn === TAG_ID.MS || tn === TAG_ID.MTEXT); +} +function isHtmlIntegrationPoint(tn, ns, attrs) { + if (ns === NS.MATHML && tn === TAG_ID.ANNOTATION_XML) { + for (let i = 0; i < attrs.length; i++) { + if (attrs[i].name === ATTRS.ENCODING) { + const value = attrs[i].value.toLowerCase(); + return value === MIME_TYPES.TEXT_HTML || value === MIME_TYPES.APPLICATION_XML; + } + } + } + return ns === NS.SVG && (tn === TAG_ID.FOREIGN_OBJECT || tn === TAG_ID.DESC || tn === TAG_ID.TITLE); +} +function isIntegrationPoint(tn, ns, attrs, foreignNS) { + return (!foreignNS || foreignNS === NS.HTML) && isHtmlIntegrationPoint(tn, ns, attrs) || (!foreignNS || foreignNS === NS.MATHML) && isMathMLTextIntegrationPoint(tn, ns); +} + +// ../../node_modules/.pnpm/parse5@7.3.0/node_modules/parse5/dist/parser/index.js +var HIDDEN_INPUT_TYPE = "hidden"; +var AA_OUTER_LOOP_ITER = 8; +var AA_INNER_LOOP_ITER = 3; +var InsertionMode; +(function(InsertionMode2) { + InsertionMode2[InsertionMode2["INITIAL"] = 0] = "INITIAL"; + InsertionMode2[InsertionMode2["BEFORE_HTML"] = 1] = "BEFORE_HTML"; + InsertionMode2[InsertionMode2["BEFORE_HEAD"] = 2] = "BEFORE_HEAD"; + InsertionMode2[InsertionMode2["IN_HEAD"] = 3] = "IN_HEAD"; + InsertionMode2[InsertionMode2["IN_HEAD_NO_SCRIPT"] = 4] = "IN_HEAD_NO_SCRIPT"; + InsertionMode2[InsertionMode2["AFTER_HEAD"] = 5] = "AFTER_HEAD"; + InsertionMode2[InsertionMode2["IN_BODY"] = 6] = "IN_BODY"; + InsertionMode2[InsertionMode2["TEXT"] = 7] = "TEXT"; + InsertionMode2[InsertionMode2["IN_TABLE"] = 8] = "IN_TABLE"; + InsertionMode2[InsertionMode2["IN_TABLE_TEXT"] = 9] = "IN_TABLE_TEXT"; + InsertionMode2[InsertionMode2["IN_CAPTION"] = 10] = "IN_CAPTION"; + InsertionMode2[InsertionMode2["IN_COLUMN_GROUP"] = 11] = "IN_COLUMN_GROUP"; + InsertionMode2[InsertionMode2["IN_TABLE_BODY"] = 12] = "IN_TABLE_BODY"; + InsertionMode2[InsertionMode2["IN_ROW"] = 13] = "IN_ROW"; + InsertionMode2[InsertionMode2["IN_CELL"] = 14] = "IN_CELL"; + InsertionMode2[InsertionMode2["IN_SELECT"] = 15] = "IN_SELECT"; + InsertionMode2[InsertionMode2["IN_SELECT_IN_TABLE"] = 16] = "IN_SELECT_IN_TABLE"; + InsertionMode2[InsertionMode2["IN_TEMPLATE"] = 17] = "IN_TEMPLATE"; + InsertionMode2[InsertionMode2["AFTER_BODY"] = 18] = "AFTER_BODY"; + InsertionMode2[InsertionMode2["IN_FRAMESET"] = 19] = "IN_FRAMESET"; + InsertionMode2[InsertionMode2["AFTER_FRAMESET"] = 20] = "AFTER_FRAMESET"; + InsertionMode2[InsertionMode2["AFTER_AFTER_BODY"] = 21] = "AFTER_AFTER_BODY"; + InsertionMode2[InsertionMode2["AFTER_AFTER_FRAMESET"] = 22] = "AFTER_AFTER_FRAMESET"; +})(InsertionMode || (InsertionMode = {})); +var BASE_LOC = { + startLine: -1, + startCol: -1, + startOffset: -1, + endLine: -1, + endCol: -1, + endOffset: -1 +}; +var TABLE_STRUCTURE_TAGS = /* @__PURE__ */ new Set([TAG_ID.TABLE, TAG_ID.TBODY, TAG_ID.TFOOT, TAG_ID.THEAD, TAG_ID.TR]); +var defaultParserOptions = { + scriptingEnabled: true, + sourceCodeLocationInfo: false, + treeAdapter: defaultTreeAdapter, + onParseError: null +}; +var Parser = class { + constructor(options, document2, fragmentContext = null, scriptHandler = null) { + this.fragmentContext = fragmentContext; + this.scriptHandler = scriptHandler; + this.currentToken = null; + this.stopped = false; + this.insertionMode = InsertionMode.INITIAL; + this.originalInsertionMode = InsertionMode.INITIAL; + this.headElement = null; + this.formElement = null; + this.currentNotInHTML = false; + this.tmplInsertionModeStack = []; + this.pendingCharacterTokens = []; + this.hasNonWhitespacePendingCharacterToken = false; + this.framesetOk = true; + this.skipNextNewLine = false; + this.fosterParentingEnabled = false; + this.options = { + ...defaultParserOptions, + ...options + }; + this.treeAdapter = this.options.treeAdapter; + this.onParseError = this.options.onParseError; + if (this.onParseError) { + this.options.sourceCodeLocationInfo = true; + } + this.document = document2 !== null && document2 !== void 0 ? document2 : this.treeAdapter.createDocument(); + this.tokenizer = new Tokenizer(this.options, this); + this.activeFormattingElements = new FormattingElementList(this.treeAdapter); + this.fragmentContextID = fragmentContext ? getTagID(this.treeAdapter.getTagName(fragmentContext)) : TAG_ID.UNKNOWN; + this._setContextModes(fragmentContext !== null && fragmentContext !== void 0 ? fragmentContext : this.document, this.fragmentContextID); + this.openElements = new OpenElementStack(this.document, this.treeAdapter, this); + } + static parse(html3, options) { + const parser = new this(options); + parser.tokenizer.write(html3, true); + return parser.document; + } + static getFragmentParser(fragmentContext, options) { + const opts = { + ...defaultParserOptions, + ...options + }; + fragmentContext !== null && fragmentContext !== void 0 ? fragmentContext : fragmentContext = opts.treeAdapter.createElement(TAG_NAMES.TEMPLATE, NS.HTML, []); + const documentMock = opts.treeAdapter.createElement("documentmock", NS.HTML, []); + const parser = new this(opts, documentMock, fragmentContext); + if (parser.fragmentContextID === TAG_ID.TEMPLATE) { + parser.tmplInsertionModeStack.unshift(InsertionMode.IN_TEMPLATE); + } + parser._initTokenizerForFragmentParsing(); + parser._insertFakeRootElement(); + parser._resetInsertionMode(); + parser._findFormInFragmentContext(); + return parser; + } + getFragment() { + const rootElement = this.treeAdapter.getFirstChild(this.document); + const fragment = this.treeAdapter.createDocumentFragment(); + this._adoptNodes(rootElement, fragment); + return fragment; + } + _err(token, code2, beforeToken) { + var _a3; + if (!this.onParseError) + return; + const loc = (_a3 = token.location) !== null && _a3 !== void 0 ? _a3 : BASE_LOC; + const err = { + code: code2, + startLine: loc.startLine, + startCol: loc.startCol, + startOffset: loc.startOffset, + endLine: beforeToken ? loc.startLine : loc.endLine, + endCol: beforeToken ? loc.startCol : loc.endCol, + endOffset: beforeToken ? loc.startOffset : loc.endOffset + }; + this.onParseError(err); + } + onItemPush(node, tid, isTop) { + var _a3, _b; + (_b = (_a3 = this.treeAdapter).onItemPush) === null || _b === void 0 ? void 0 : _b.call(_a3, node); + if (isTop && this.openElements.stackTop > 0) + this._setContextModes(node, tid); + } + onItemPop(node, isTop) { + var _a3, _b; + if (this.options.sourceCodeLocationInfo) { + this._setEndLocation(node, this.currentToken); + } + (_b = (_a3 = this.treeAdapter).onItemPop) === null || _b === void 0 ? void 0 : _b.call(_a3, node, this.openElements.current); + if (isTop) { + let current; + let currentTagId; + if (this.openElements.stackTop === 0 && this.fragmentContext) { + current = this.fragmentContext; + currentTagId = this.fragmentContextID; + } else { + ({ current, currentTagId } = this.openElements); + } + this._setContextModes(current, currentTagId); + } + } + _setContextModes(current, tid) { + const isHTML = current === this.document || current && this.treeAdapter.getNamespaceURI(current) === NS.HTML; + this.currentNotInHTML = !isHTML; + this.tokenizer.inForeignNode = !isHTML && current !== void 0 && tid !== void 0 && !this._isIntegrationPoint(tid, current); + } + _switchToTextParsing(currentToken, nextTokenizerState) { + this._insertElement(currentToken, NS.HTML); + this.tokenizer.state = nextTokenizerState; + this.originalInsertionMode = this.insertionMode; + this.insertionMode = InsertionMode.TEXT; + } + switchToPlaintextParsing() { + this.insertionMode = InsertionMode.TEXT; + this.originalInsertionMode = InsertionMode.IN_BODY; + this.tokenizer.state = TokenizerMode.PLAINTEXT; + } + _getAdjustedCurrentElement() { + return this.openElements.stackTop === 0 && this.fragmentContext ? this.fragmentContext : this.openElements.current; + } + _findFormInFragmentContext() { + let node = this.fragmentContext; + while (node) { + if (this.treeAdapter.getTagName(node) === TAG_NAMES.FORM) { + this.formElement = node; + break; + } + node = this.treeAdapter.getParentNode(node); + } + } + _initTokenizerForFragmentParsing() { + if (!this.fragmentContext || this.treeAdapter.getNamespaceURI(this.fragmentContext) !== NS.HTML) { + return; + } + switch (this.fragmentContextID) { + case TAG_ID.TITLE: + case TAG_ID.TEXTAREA: { + this.tokenizer.state = TokenizerMode.RCDATA; + break; + } + case TAG_ID.STYLE: + case TAG_ID.XMP: + case TAG_ID.IFRAME: + case TAG_ID.NOEMBED: + case TAG_ID.NOFRAMES: + case TAG_ID.NOSCRIPT: { + this.tokenizer.state = TokenizerMode.RAWTEXT; + break; + } + case TAG_ID.SCRIPT: { + this.tokenizer.state = TokenizerMode.SCRIPT_DATA; + break; + } + case TAG_ID.PLAINTEXT: { + this.tokenizer.state = TokenizerMode.PLAINTEXT; + break; + } + default: + } + } + _setDocumentType(token) { + const name2 = token.name || ""; + const publicId = token.publicId || ""; + const systemId = token.systemId || ""; + this.treeAdapter.setDocumentType(this.document, name2, publicId, systemId); + if (token.location) { + const documentChildren = this.treeAdapter.getChildNodes(this.document); + const docTypeNode = documentChildren.find((node) => this.treeAdapter.isDocumentTypeNode(node)); + if (docTypeNode) { + this.treeAdapter.setNodeSourceCodeLocation(docTypeNode, token.location); + } + } + } + _attachElementToTree(element, location) { + if (this.options.sourceCodeLocationInfo) { + const loc = location && { + ...location, + startTag: location + }; + this.treeAdapter.setNodeSourceCodeLocation(element, loc); + } + if (this._shouldFosterParentOnInsertion()) { + this._fosterParentElement(element); + } else { + const parent2 = this.openElements.currentTmplContentOrNode; + this.treeAdapter.appendChild(parent2 !== null && parent2 !== void 0 ? parent2 : this.document, element); + } + } + _appendElement(token, namespaceURI) { + const element = this.treeAdapter.createElement(token.tagName, namespaceURI, token.attrs); + this._attachElementToTree(element, token.location); + } + _insertElement(token, namespaceURI) { + const element = this.treeAdapter.createElement(token.tagName, namespaceURI, token.attrs); + this._attachElementToTree(element, token.location); + this.openElements.push(element, token.tagID); + } + _insertFakeElement(tagName, tagID) { + const element = this.treeAdapter.createElement(tagName, NS.HTML, []); + this._attachElementToTree(element, null); + this.openElements.push(element, tagID); + } + _insertTemplate(token) { + const tmpl = this.treeAdapter.createElement(token.tagName, NS.HTML, token.attrs); + const content = this.treeAdapter.createDocumentFragment(); + this.treeAdapter.setTemplateContent(tmpl, content); + this._attachElementToTree(tmpl, token.location); + this.openElements.push(tmpl, token.tagID); + if (this.options.sourceCodeLocationInfo) + this.treeAdapter.setNodeSourceCodeLocation(content, null); + } + _insertFakeRootElement() { + const element = this.treeAdapter.createElement(TAG_NAMES.HTML, NS.HTML, []); + if (this.options.sourceCodeLocationInfo) + this.treeAdapter.setNodeSourceCodeLocation(element, null); + this.treeAdapter.appendChild(this.openElements.current, element); + this.openElements.push(element, TAG_ID.HTML); + } + _appendCommentNode(token, parent2) { + const commentNode = this.treeAdapter.createCommentNode(token.data); + this.treeAdapter.appendChild(parent2, commentNode); + if (this.options.sourceCodeLocationInfo) { + this.treeAdapter.setNodeSourceCodeLocation(commentNode, token.location); + } + } + _insertCharacters(token) { + let parent2; + let beforeElement; + if (this._shouldFosterParentOnInsertion()) { + ({ parent: parent2, beforeElement } = this._findFosterParentingLocation()); + if (beforeElement) { + this.treeAdapter.insertTextBefore(parent2, token.chars, beforeElement); + } else { + this.treeAdapter.insertText(parent2, token.chars); + } + } else { + parent2 = this.openElements.currentTmplContentOrNode; + this.treeAdapter.insertText(parent2, token.chars); + } + if (!token.location) + return; + const siblings2 = this.treeAdapter.getChildNodes(parent2); + const textNodeIdx = beforeElement ? siblings2.lastIndexOf(beforeElement) : siblings2.length; + const textNode = siblings2[textNodeIdx - 1]; + const tnLoc = this.treeAdapter.getNodeSourceCodeLocation(textNode); + if (tnLoc) { + const { endLine, endCol, endOffset } = token.location; + this.treeAdapter.updateNodeSourceCodeLocation(textNode, { endLine, endCol, endOffset }); + } else if (this.options.sourceCodeLocationInfo) { + this.treeAdapter.setNodeSourceCodeLocation(textNode, token.location); + } + } + _adoptNodes(donor, recipient) { + for (let child = this.treeAdapter.getFirstChild(donor); child; child = this.treeAdapter.getFirstChild(donor)) { + this.treeAdapter.detachNode(child); + this.treeAdapter.appendChild(recipient, child); + } + } + _setEndLocation(element, closingToken) { + if (this.treeAdapter.getNodeSourceCodeLocation(element) && closingToken.location) { + const ctLoc = closingToken.location; + const tn = this.treeAdapter.getTagName(element); + const endLoc = closingToken.type === TokenType.END_TAG && tn === closingToken.tagName ? { + endTag: { ...ctLoc }, + endLine: ctLoc.endLine, + endCol: ctLoc.endCol, + endOffset: ctLoc.endOffset + } : { + endLine: ctLoc.startLine, + endCol: ctLoc.startCol, + endOffset: ctLoc.startOffset + }; + this.treeAdapter.updateNodeSourceCodeLocation(element, endLoc); + } + } + shouldProcessStartTagTokenInForeignContent(token) { + if (!this.currentNotInHTML) + return false; + let current; + let currentTagId; + if (this.openElements.stackTop === 0 && this.fragmentContext) { + current = this.fragmentContext; + currentTagId = this.fragmentContextID; + } else { + ({ current, currentTagId } = this.openElements); + } + if (token.tagID === TAG_ID.SVG && this.treeAdapter.getTagName(current) === TAG_NAMES.ANNOTATION_XML && this.treeAdapter.getNamespaceURI(current) === NS.MATHML) { + return false; + } + return this.tokenizer.inForeignNode || (token.tagID === TAG_ID.MGLYPH || token.tagID === TAG_ID.MALIGNMARK) && currentTagId !== void 0 && !this._isIntegrationPoint(currentTagId, current, NS.HTML); + } + _processToken(token) { + switch (token.type) { + case TokenType.CHARACTER: { + this.onCharacter(token); + break; + } + case TokenType.NULL_CHARACTER: { + this.onNullCharacter(token); + break; + } + case TokenType.COMMENT: { + this.onComment(token); + break; + } + case TokenType.DOCTYPE: { + this.onDoctype(token); + break; + } + case TokenType.START_TAG: { + this._processStartTag(token); + break; + } + case TokenType.END_TAG: { + this.onEndTag(token); + break; + } + case TokenType.EOF: { + this.onEof(token); + break; + } + case TokenType.WHITESPACE_CHARACTER: { + this.onWhitespaceCharacter(token); + break; + } + } + } + _isIntegrationPoint(tid, element, foreignNS) { + const ns = this.treeAdapter.getNamespaceURI(element); + const attrs = this.treeAdapter.getAttrList(element); + return isIntegrationPoint(tid, ns, attrs, foreignNS); + } + _reconstructActiveFormattingElements() { + const listLength = this.activeFormattingElements.entries.length; + if (listLength) { + const endIndex = this.activeFormattingElements.entries.findIndex((entry) => entry.type === EntryType.Marker || this.openElements.contains(entry.element)); + const unopenIdx = endIndex === -1 ? listLength - 1 : endIndex - 1; + for (let i = unopenIdx; i >= 0; i--) { + const entry = this.activeFormattingElements.entries[i]; + this._insertElement(entry.token, this.treeAdapter.getNamespaceURI(entry.element)); + entry.element = this.openElements.current; + } + } + } + _closeTableCell() { + this.openElements.generateImpliedEndTags(); + this.openElements.popUntilTableCellPopped(); + this.activeFormattingElements.clearToLastMarker(); + this.insertionMode = InsertionMode.IN_ROW; + } + _closePElement() { + this.openElements.generateImpliedEndTagsWithExclusion(TAG_ID.P); + this.openElements.popUntilTagNamePopped(TAG_ID.P); + } + _resetInsertionMode() { + for (let i = this.openElements.stackTop; i >= 0; i--) { + switch (i === 0 && this.fragmentContext ? this.fragmentContextID : this.openElements.tagIDs[i]) { + case TAG_ID.TR: { + this.insertionMode = InsertionMode.IN_ROW; + return; + } + case TAG_ID.TBODY: + case TAG_ID.THEAD: + case TAG_ID.TFOOT: { + this.insertionMode = InsertionMode.IN_TABLE_BODY; + return; + } + case TAG_ID.CAPTION: { + this.insertionMode = InsertionMode.IN_CAPTION; + return; + } + case TAG_ID.COLGROUP: { + this.insertionMode = InsertionMode.IN_COLUMN_GROUP; + return; + } + case TAG_ID.TABLE: { + this.insertionMode = InsertionMode.IN_TABLE; + return; + } + case TAG_ID.BODY: { + this.insertionMode = InsertionMode.IN_BODY; + return; + } + case TAG_ID.FRAMESET: { + this.insertionMode = InsertionMode.IN_FRAMESET; + return; + } + case TAG_ID.SELECT: { + this._resetInsertionModeForSelect(i); + return; + } + case TAG_ID.TEMPLATE: { + this.insertionMode = this.tmplInsertionModeStack[0]; + return; + } + case TAG_ID.HTML: { + this.insertionMode = this.headElement ? InsertionMode.AFTER_HEAD : InsertionMode.BEFORE_HEAD; + return; + } + case TAG_ID.TD: + case TAG_ID.TH: { + if (i > 0) { + this.insertionMode = InsertionMode.IN_CELL; + return; + } + break; + } + case TAG_ID.HEAD: { + if (i > 0) { + this.insertionMode = InsertionMode.IN_HEAD; + return; + } + break; + } + } + } + this.insertionMode = InsertionMode.IN_BODY; + } + _resetInsertionModeForSelect(selectIdx) { + if (selectIdx > 0) { + for (let i = selectIdx - 1; i > 0; i--) { + const tn = this.openElements.tagIDs[i]; + if (tn === TAG_ID.TEMPLATE) { + break; + } else if (tn === TAG_ID.TABLE) { + this.insertionMode = InsertionMode.IN_SELECT_IN_TABLE; + return; + } + } + } + this.insertionMode = InsertionMode.IN_SELECT; + } + _isElementCausesFosterParenting(tn) { + return TABLE_STRUCTURE_TAGS.has(tn); + } + _shouldFosterParentOnInsertion() { + return this.fosterParentingEnabled && this.openElements.currentTagId !== void 0 && this._isElementCausesFosterParenting(this.openElements.currentTagId); + } + _findFosterParentingLocation() { + for (let i = this.openElements.stackTop; i >= 0; i--) { + const openElement = this.openElements.items[i]; + switch (this.openElements.tagIDs[i]) { + case TAG_ID.TEMPLATE: { + if (this.treeAdapter.getNamespaceURI(openElement) === NS.HTML) { + return { parent: this.treeAdapter.getTemplateContent(openElement), beforeElement: null }; + } + break; + } + case TAG_ID.TABLE: { + const parent2 = this.treeAdapter.getParentNode(openElement); + if (parent2) { + return { parent: parent2, beforeElement: openElement }; + } + return { parent: this.openElements.items[i - 1], beforeElement: null }; + } + default: + } + } + return { parent: this.openElements.items[0], beforeElement: null }; + } + _fosterParentElement(element) { + const location = this._findFosterParentingLocation(); + if (location.beforeElement) { + this.treeAdapter.insertBefore(location.parent, element, location.beforeElement); + } else { + this.treeAdapter.appendChild(location.parent, element); + } + } + _isSpecialElement(element, id) { + const ns = this.treeAdapter.getNamespaceURI(element); + return SPECIAL_ELEMENTS[ns].has(id); + } + onCharacter(token) { + this.skipNextNewLine = false; + if (this.tokenizer.inForeignNode) { + characterInForeignContent(this, token); + return; + } + switch (this.insertionMode) { + case InsertionMode.INITIAL: { + tokenInInitialMode(this, token); + break; + } + case InsertionMode.BEFORE_HTML: { + tokenBeforeHtml(this, token); + break; + } + case InsertionMode.BEFORE_HEAD: { + tokenBeforeHead(this, token); + break; + } + case InsertionMode.IN_HEAD: { + tokenInHead(this, token); + break; + } + case InsertionMode.IN_HEAD_NO_SCRIPT: { + tokenInHeadNoScript(this, token); + break; + } + case InsertionMode.AFTER_HEAD: { + tokenAfterHead(this, token); + break; + } + case InsertionMode.IN_BODY: + case InsertionMode.IN_CAPTION: + case InsertionMode.IN_CELL: + case InsertionMode.IN_TEMPLATE: { + characterInBody(this, token); + break; + } + case InsertionMode.TEXT: + case InsertionMode.IN_SELECT: + case InsertionMode.IN_SELECT_IN_TABLE: { + this._insertCharacters(token); + break; + } + case InsertionMode.IN_TABLE: + case InsertionMode.IN_TABLE_BODY: + case InsertionMode.IN_ROW: { + characterInTable(this, token); + break; + } + case InsertionMode.IN_TABLE_TEXT: { + characterInTableText(this, token); + break; + } + case InsertionMode.IN_COLUMN_GROUP: { + tokenInColumnGroup(this, token); + break; + } + case InsertionMode.AFTER_BODY: { + tokenAfterBody(this, token); + break; + } + case InsertionMode.AFTER_AFTER_BODY: { + tokenAfterAfterBody(this, token); + break; + } + default: + } + } + onNullCharacter(token) { + this.skipNextNewLine = false; + if (this.tokenizer.inForeignNode) { + nullCharacterInForeignContent(this, token); + return; + } + switch (this.insertionMode) { + case InsertionMode.INITIAL: { + tokenInInitialMode(this, token); + break; + } + case InsertionMode.BEFORE_HTML: { + tokenBeforeHtml(this, token); + break; + } + case InsertionMode.BEFORE_HEAD: { + tokenBeforeHead(this, token); + break; + } + case InsertionMode.IN_HEAD: { + tokenInHead(this, token); + break; + } + case InsertionMode.IN_HEAD_NO_SCRIPT: { + tokenInHeadNoScript(this, token); + break; + } + case InsertionMode.AFTER_HEAD: { + tokenAfterHead(this, token); + break; + } + case InsertionMode.TEXT: { + this._insertCharacters(token); + break; + } + case InsertionMode.IN_TABLE: + case InsertionMode.IN_TABLE_BODY: + case InsertionMode.IN_ROW: { + characterInTable(this, token); + break; + } + case InsertionMode.IN_COLUMN_GROUP: { + tokenInColumnGroup(this, token); + break; + } + case InsertionMode.AFTER_BODY: { + tokenAfterBody(this, token); + break; + } + case InsertionMode.AFTER_AFTER_BODY: { + tokenAfterAfterBody(this, token); + break; + } + default: + } + } + onComment(token) { + this.skipNextNewLine = false; + if (this.currentNotInHTML) { + appendComment(this, token); + return; + } + switch (this.insertionMode) { + case InsertionMode.INITIAL: + case InsertionMode.BEFORE_HTML: + case InsertionMode.BEFORE_HEAD: + case InsertionMode.IN_HEAD: + case InsertionMode.IN_HEAD_NO_SCRIPT: + case InsertionMode.AFTER_HEAD: + case InsertionMode.IN_BODY: + case InsertionMode.IN_TABLE: + case InsertionMode.IN_CAPTION: + case InsertionMode.IN_COLUMN_GROUP: + case InsertionMode.IN_TABLE_BODY: + case InsertionMode.IN_ROW: + case InsertionMode.IN_CELL: + case InsertionMode.IN_SELECT: + case InsertionMode.IN_SELECT_IN_TABLE: + case InsertionMode.IN_TEMPLATE: + case InsertionMode.IN_FRAMESET: + case InsertionMode.AFTER_FRAMESET: { + appendComment(this, token); + break; + } + case InsertionMode.IN_TABLE_TEXT: { + tokenInTableText(this, token); + break; + } + case InsertionMode.AFTER_BODY: { + appendCommentToRootHtmlElement(this, token); + break; + } + case InsertionMode.AFTER_AFTER_BODY: + case InsertionMode.AFTER_AFTER_FRAMESET: { + appendCommentToDocument(this, token); + break; + } + default: + } + } + onDoctype(token) { + this.skipNextNewLine = false; + switch (this.insertionMode) { + case InsertionMode.INITIAL: { + doctypeInInitialMode(this, token); + break; + } + case InsertionMode.BEFORE_HEAD: + case InsertionMode.IN_HEAD: + case InsertionMode.IN_HEAD_NO_SCRIPT: + case InsertionMode.AFTER_HEAD: { + this._err(token, ERR.misplacedDoctype); + break; + } + case InsertionMode.IN_TABLE_TEXT: { + tokenInTableText(this, token); + break; + } + default: + } + } + onStartTag(token) { + this.skipNextNewLine = false; + this.currentToken = token; + this._processStartTag(token); + if (token.selfClosing && !token.ackSelfClosing) { + this._err(token, ERR.nonVoidHtmlElementStartTagWithTrailingSolidus); + } + } + _processStartTag(token) { + if (this.shouldProcessStartTagTokenInForeignContent(token)) { + startTagInForeignContent(this, token); + } else { + this._startTagOutsideForeignContent(token); + } + } + _startTagOutsideForeignContent(token) { + switch (this.insertionMode) { + case InsertionMode.INITIAL: { + tokenInInitialMode(this, token); + break; + } + case InsertionMode.BEFORE_HTML: { + startTagBeforeHtml(this, token); + break; + } + case InsertionMode.BEFORE_HEAD: { + startTagBeforeHead(this, token); + break; + } + case InsertionMode.IN_HEAD: { + startTagInHead(this, token); + break; + } + case InsertionMode.IN_HEAD_NO_SCRIPT: { + startTagInHeadNoScript(this, token); + break; + } + case InsertionMode.AFTER_HEAD: { + startTagAfterHead(this, token); + break; + } + case InsertionMode.IN_BODY: { + startTagInBody(this, token); + break; + } + case InsertionMode.IN_TABLE: { + startTagInTable(this, token); + break; + } + case InsertionMode.IN_TABLE_TEXT: { + tokenInTableText(this, token); + break; + } + case InsertionMode.IN_CAPTION: { + startTagInCaption(this, token); + break; + } + case InsertionMode.IN_COLUMN_GROUP: { + startTagInColumnGroup(this, token); + break; + } + case InsertionMode.IN_TABLE_BODY: { + startTagInTableBody(this, token); + break; + } + case InsertionMode.IN_ROW: { + startTagInRow(this, token); + break; + } + case InsertionMode.IN_CELL: { + startTagInCell(this, token); + break; + } + case InsertionMode.IN_SELECT: { + startTagInSelect(this, token); + break; + } + case InsertionMode.IN_SELECT_IN_TABLE: { + startTagInSelectInTable(this, token); + break; + } + case InsertionMode.IN_TEMPLATE: { + startTagInTemplate(this, token); + break; + } + case InsertionMode.AFTER_BODY: { + startTagAfterBody(this, token); + break; + } + case InsertionMode.IN_FRAMESET: { + startTagInFrameset(this, token); + break; + } + case InsertionMode.AFTER_FRAMESET: { + startTagAfterFrameset(this, token); + break; + } + case InsertionMode.AFTER_AFTER_BODY: { + startTagAfterAfterBody(this, token); + break; + } + case InsertionMode.AFTER_AFTER_FRAMESET: { + startTagAfterAfterFrameset(this, token); + break; + } + default: + } + } + onEndTag(token) { + this.skipNextNewLine = false; + this.currentToken = token; + if (this.currentNotInHTML) { + endTagInForeignContent(this, token); + } else { + this._endTagOutsideForeignContent(token); + } + } + _endTagOutsideForeignContent(token) { + switch (this.insertionMode) { + case InsertionMode.INITIAL: { + tokenInInitialMode(this, token); + break; + } + case InsertionMode.BEFORE_HTML: { + endTagBeforeHtml(this, token); + break; + } + case InsertionMode.BEFORE_HEAD: { + endTagBeforeHead(this, token); + break; + } + case InsertionMode.IN_HEAD: { + endTagInHead(this, token); + break; + } + case InsertionMode.IN_HEAD_NO_SCRIPT: { + endTagInHeadNoScript(this, token); + break; + } + case InsertionMode.AFTER_HEAD: { + endTagAfterHead(this, token); + break; + } + case InsertionMode.IN_BODY: { + endTagInBody(this, token); + break; + } + case InsertionMode.TEXT: { + endTagInText(this, token); + break; + } + case InsertionMode.IN_TABLE: { + endTagInTable(this, token); + break; + } + case InsertionMode.IN_TABLE_TEXT: { + tokenInTableText(this, token); + break; + } + case InsertionMode.IN_CAPTION: { + endTagInCaption(this, token); + break; + } + case InsertionMode.IN_COLUMN_GROUP: { + endTagInColumnGroup(this, token); + break; + } + case InsertionMode.IN_TABLE_BODY: { + endTagInTableBody(this, token); + break; + } + case InsertionMode.IN_ROW: { + endTagInRow(this, token); + break; + } + case InsertionMode.IN_CELL: { + endTagInCell(this, token); + break; + } + case InsertionMode.IN_SELECT: { + endTagInSelect(this, token); + break; + } + case InsertionMode.IN_SELECT_IN_TABLE: { + endTagInSelectInTable(this, token); + break; + } + case InsertionMode.IN_TEMPLATE: { + endTagInTemplate(this, token); + break; + } + case InsertionMode.AFTER_BODY: { + endTagAfterBody(this, token); + break; + } + case InsertionMode.IN_FRAMESET: { + endTagInFrameset(this, token); + break; + } + case InsertionMode.AFTER_FRAMESET: { + endTagAfterFrameset(this, token); + break; + } + case InsertionMode.AFTER_AFTER_BODY: { + tokenAfterAfterBody(this, token); + break; + } + default: + } + } + onEof(token) { + switch (this.insertionMode) { + case InsertionMode.INITIAL: { + tokenInInitialMode(this, token); + break; + } + case InsertionMode.BEFORE_HTML: { + tokenBeforeHtml(this, token); + break; + } + case InsertionMode.BEFORE_HEAD: { + tokenBeforeHead(this, token); + break; + } + case InsertionMode.IN_HEAD: { + tokenInHead(this, token); + break; + } + case InsertionMode.IN_HEAD_NO_SCRIPT: { + tokenInHeadNoScript(this, token); + break; + } + case InsertionMode.AFTER_HEAD: { + tokenAfterHead(this, token); + break; + } + case InsertionMode.IN_BODY: + case InsertionMode.IN_TABLE: + case InsertionMode.IN_CAPTION: + case InsertionMode.IN_COLUMN_GROUP: + case InsertionMode.IN_TABLE_BODY: + case InsertionMode.IN_ROW: + case InsertionMode.IN_CELL: + case InsertionMode.IN_SELECT: + case InsertionMode.IN_SELECT_IN_TABLE: { + eofInBody(this, token); + break; + } + case InsertionMode.TEXT: { + eofInText(this, token); + break; + } + case InsertionMode.IN_TABLE_TEXT: { + tokenInTableText(this, token); + break; + } + case InsertionMode.IN_TEMPLATE: { + eofInTemplate(this, token); + break; + } + case InsertionMode.AFTER_BODY: + case InsertionMode.IN_FRAMESET: + case InsertionMode.AFTER_FRAMESET: + case InsertionMode.AFTER_AFTER_BODY: + case InsertionMode.AFTER_AFTER_FRAMESET: { + stopParsing(this, token); + break; + } + default: + } + } + onWhitespaceCharacter(token) { + if (this.skipNextNewLine) { + this.skipNextNewLine = false; + if (token.chars.charCodeAt(0) === CODE_POINTS.LINE_FEED) { + if (token.chars.length === 1) { + return; + } + token.chars = token.chars.substr(1); + } + } + if (this.tokenizer.inForeignNode) { + this._insertCharacters(token); + return; + } + switch (this.insertionMode) { + case InsertionMode.IN_HEAD: + case InsertionMode.IN_HEAD_NO_SCRIPT: + case InsertionMode.AFTER_HEAD: + case InsertionMode.TEXT: + case InsertionMode.IN_COLUMN_GROUP: + case InsertionMode.IN_SELECT: + case InsertionMode.IN_SELECT_IN_TABLE: + case InsertionMode.IN_FRAMESET: + case InsertionMode.AFTER_FRAMESET: { + this._insertCharacters(token); + break; + } + case InsertionMode.IN_BODY: + case InsertionMode.IN_CAPTION: + case InsertionMode.IN_CELL: + case InsertionMode.IN_TEMPLATE: + case InsertionMode.AFTER_BODY: + case InsertionMode.AFTER_AFTER_BODY: + case InsertionMode.AFTER_AFTER_FRAMESET: { + whitespaceCharacterInBody(this, token); + break; + } + case InsertionMode.IN_TABLE: + case InsertionMode.IN_TABLE_BODY: + case InsertionMode.IN_ROW: { + characterInTable(this, token); + break; + } + case InsertionMode.IN_TABLE_TEXT: { + whitespaceCharacterInTableText(this, token); + break; + } + default: + } + } +}; +function aaObtainFormattingElementEntry(p, token) { + let formattingElementEntry = p.activeFormattingElements.getElementEntryInScopeWithTagName(token.tagName); + if (formattingElementEntry) { + if (!p.openElements.contains(formattingElementEntry.element)) { + p.activeFormattingElements.removeEntry(formattingElementEntry); + formattingElementEntry = null; + } else if (!p.openElements.hasInScope(token.tagID)) { + formattingElementEntry = null; + } + } else { + genericEndTagInBody(p, token); + } + return formattingElementEntry; +} +function aaObtainFurthestBlock(p, formattingElementEntry) { + let furthestBlock = null; + let idx = p.openElements.stackTop; + for (; idx >= 0; idx--) { + const element = p.openElements.items[idx]; + if (element === formattingElementEntry.element) { + break; + } + if (p._isSpecialElement(element, p.openElements.tagIDs[idx])) { + furthestBlock = element; + } + } + if (!furthestBlock) { + p.openElements.shortenToLength(Math.max(idx, 0)); + p.activeFormattingElements.removeEntry(formattingElementEntry); + } + return furthestBlock; +} +function aaInnerLoop(p, furthestBlock, formattingElement) { + let lastElement = furthestBlock; + let nextElement = p.openElements.getCommonAncestor(furthestBlock); + for (let i = 0, element = nextElement; element !== formattingElement; i++, element = nextElement) { + nextElement = p.openElements.getCommonAncestor(element); + const elementEntry = p.activeFormattingElements.getElementEntry(element); + const counterOverflow = elementEntry && i >= AA_INNER_LOOP_ITER; + const shouldRemoveFromOpenElements = !elementEntry || counterOverflow; + if (shouldRemoveFromOpenElements) { + if (counterOverflow) { + p.activeFormattingElements.removeEntry(elementEntry); + } + p.openElements.remove(element); + } else { + element = aaRecreateElementFromEntry(p, elementEntry); + if (lastElement === furthestBlock) { + p.activeFormattingElements.bookmark = elementEntry; + } + p.treeAdapter.detachNode(lastElement); + p.treeAdapter.appendChild(element, lastElement); + lastElement = element; + } + } + return lastElement; +} +function aaRecreateElementFromEntry(p, elementEntry) { + const ns = p.treeAdapter.getNamespaceURI(elementEntry.element); + const newElement = p.treeAdapter.createElement(elementEntry.token.tagName, ns, elementEntry.token.attrs); + p.openElements.replace(elementEntry.element, newElement); + elementEntry.element = newElement; + return newElement; +} +function aaInsertLastNodeInCommonAncestor(p, commonAncestor, lastElement) { + const tn = p.treeAdapter.getTagName(commonAncestor); + const tid = getTagID(tn); + if (p._isElementCausesFosterParenting(tid)) { + p._fosterParentElement(lastElement); + } else { + const ns = p.treeAdapter.getNamespaceURI(commonAncestor); + if (tid === TAG_ID.TEMPLATE && ns === NS.HTML) { + commonAncestor = p.treeAdapter.getTemplateContent(commonAncestor); + } + p.treeAdapter.appendChild(commonAncestor, lastElement); + } +} +function aaReplaceFormattingElement(p, furthestBlock, formattingElementEntry) { + const ns = p.treeAdapter.getNamespaceURI(formattingElementEntry.element); + const { token } = formattingElementEntry; + const newElement = p.treeAdapter.createElement(token.tagName, ns, token.attrs); + p._adoptNodes(furthestBlock, newElement); + p.treeAdapter.appendChild(furthestBlock, newElement); + p.activeFormattingElements.insertElementAfterBookmark(newElement, token); + p.activeFormattingElements.removeEntry(formattingElementEntry); + p.openElements.remove(formattingElementEntry.element); + p.openElements.insertAfter(furthestBlock, newElement, token.tagID); +} +function callAdoptionAgency(p, token) { + for (let i = 0; i < AA_OUTER_LOOP_ITER; i++) { + const formattingElementEntry = aaObtainFormattingElementEntry(p, token); + if (!formattingElementEntry) { + break; + } + const furthestBlock = aaObtainFurthestBlock(p, formattingElementEntry); + if (!furthestBlock) { + break; + } + p.activeFormattingElements.bookmark = formattingElementEntry; + const lastElement = aaInnerLoop(p, furthestBlock, formattingElementEntry.element); + const commonAncestor = p.openElements.getCommonAncestor(formattingElementEntry.element); + p.treeAdapter.detachNode(lastElement); + if (commonAncestor) + aaInsertLastNodeInCommonAncestor(p, commonAncestor, lastElement); + aaReplaceFormattingElement(p, furthestBlock, formattingElementEntry); + } +} +function appendComment(p, token) { + p._appendCommentNode(token, p.openElements.currentTmplContentOrNode); +} +function appendCommentToRootHtmlElement(p, token) { + p._appendCommentNode(token, p.openElements.items[0]); +} +function appendCommentToDocument(p, token) { + p._appendCommentNode(token, p.document); +} +function stopParsing(p, token) { + p.stopped = true; + if (token.location) { + const target = p.fragmentContext ? 0 : 2; + for (let i = p.openElements.stackTop; i >= target; i--) { + p._setEndLocation(p.openElements.items[i], token); + } + if (!p.fragmentContext && p.openElements.stackTop >= 0) { + const htmlElement = p.openElements.items[0]; + const htmlLocation = p.treeAdapter.getNodeSourceCodeLocation(htmlElement); + if (htmlLocation && !htmlLocation.endTag) { + p._setEndLocation(htmlElement, token); + if (p.openElements.stackTop >= 1) { + const bodyElement = p.openElements.items[1]; + const bodyLocation = p.treeAdapter.getNodeSourceCodeLocation(bodyElement); + if (bodyLocation && !bodyLocation.endTag) { + p._setEndLocation(bodyElement, token); + } + } + } + } + } +} +function doctypeInInitialMode(p, token) { + p._setDocumentType(token); + const mode = token.forceQuirks ? DOCUMENT_MODE.QUIRKS : getDocumentMode(token); + if (!isConforming(token)) { + p._err(token, ERR.nonConformingDoctype); + } + p.treeAdapter.setDocumentMode(p.document, mode); + p.insertionMode = InsertionMode.BEFORE_HTML; +} +function tokenInInitialMode(p, token) { + p._err(token, ERR.missingDoctype, true); + p.treeAdapter.setDocumentMode(p.document, DOCUMENT_MODE.QUIRKS); + p.insertionMode = InsertionMode.BEFORE_HTML; + p._processToken(token); +} +function startTagBeforeHtml(p, token) { + if (token.tagID === TAG_ID.HTML) { + p._insertElement(token, NS.HTML); + p.insertionMode = InsertionMode.BEFORE_HEAD; + } else { + tokenBeforeHtml(p, token); + } +} +function endTagBeforeHtml(p, token) { + const tn = token.tagID; + if (tn === TAG_ID.HTML || tn === TAG_ID.HEAD || tn === TAG_ID.BODY || tn === TAG_ID.BR) { + tokenBeforeHtml(p, token); + } +} +function tokenBeforeHtml(p, token) { + p._insertFakeRootElement(); + p.insertionMode = InsertionMode.BEFORE_HEAD; + p._processToken(token); +} +function startTagBeforeHead(p, token) { + switch (token.tagID) { + case TAG_ID.HTML: { + startTagInBody(p, token); + break; + } + case TAG_ID.HEAD: { + p._insertElement(token, NS.HTML); + p.headElement = p.openElements.current; + p.insertionMode = InsertionMode.IN_HEAD; + break; + } + default: { + tokenBeforeHead(p, token); + } + } +} +function endTagBeforeHead(p, token) { + const tn = token.tagID; + if (tn === TAG_ID.HEAD || tn === TAG_ID.BODY || tn === TAG_ID.HTML || tn === TAG_ID.BR) { + tokenBeforeHead(p, token); + } else { + p._err(token, ERR.endTagWithoutMatchingOpenElement); + } +} +function tokenBeforeHead(p, token) { + p._insertFakeElement(TAG_NAMES.HEAD, TAG_ID.HEAD); + p.headElement = p.openElements.current; + p.insertionMode = InsertionMode.IN_HEAD; + p._processToken(token); +} +function startTagInHead(p, token) { + switch (token.tagID) { + case TAG_ID.HTML: { + startTagInBody(p, token); + break; + } + case TAG_ID.BASE: + case TAG_ID.BASEFONT: + case TAG_ID.BGSOUND: + case TAG_ID.LINK: + case TAG_ID.META: { + p._appendElement(token, NS.HTML); + token.ackSelfClosing = true; + break; + } + case TAG_ID.TITLE: { + p._switchToTextParsing(token, TokenizerMode.RCDATA); + break; + } + case TAG_ID.NOSCRIPT: { + if (p.options.scriptingEnabled) { + p._switchToTextParsing(token, TokenizerMode.RAWTEXT); + } else { + p._insertElement(token, NS.HTML); + p.insertionMode = InsertionMode.IN_HEAD_NO_SCRIPT; + } + break; + } + case TAG_ID.NOFRAMES: + case TAG_ID.STYLE: { + p._switchToTextParsing(token, TokenizerMode.RAWTEXT); + break; + } + case TAG_ID.SCRIPT: { + p._switchToTextParsing(token, TokenizerMode.SCRIPT_DATA); + break; + } + case TAG_ID.TEMPLATE: { + p._insertTemplate(token); + p.activeFormattingElements.insertMarker(); + p.framesetOk = false; + p.insertionMode = InsertionMode.IN_TEMPLATE; + p.tmplInsertionModeStack.unshift(InsertionMode.IN_TEMPLATE); + break; + } + case TAG_ID.HEAD: { + p._err(token, ERR.misplacedStartTagForHeadElement); + break; + } + default: { + tokenInHead(p, token); + } + } +} +function endTagInHead(p, token) { + switch (token.tagID) { + case TAG_ID.HEAD: { + p.openElements.pop(); + p.insertionMode = InsertionMode.AFTER_HEAD; + break; + } + case TAG_ID.BODY: + case TAG_ID.BR: + case TAG_ID.HTML: { + tokenInHead(p, token); + break; + } + case TAG_ID.TEMPLATE: { + templateEndTagInHead(p, token); + break; + } + default: { + p._err(token, ERR.endTagWithoutMatchingOpenElement); + } + } +} +function templateEndTagInHead(p, token) { + if (p.openElements.tmplCount > 0) { + p.openElements.generateImpliedEndTagsThoroughly(); + if (p.openElements.currentTagId !== TAG_ID.TEMPLATE) { + p._err(token, ERR.closingOfElementWithOpenChildElements); + } + p.openElements.popUntilTagNamePopped(TAG_ID.TEMPLATE); + p.activeFormattingElements.clearToLastMarker(); + p.tmplInsertionModeStack.shift(); + p._resetInsertionMode(); + } else { + p._err(token, ERR.endTagWithoutMatchingOpenElement); + } +} +function tokenInHead(p, token) { + p.openElements.pop(); + p.insertionMode = InsertionMode.AFTER_HEAD; + p._processToken(token); +} +function startTagInHeadNoScript(p, token) { + switch (token.tagID) { + case TAG_ID.HTML: { + startTagInBody(p, token); + break; + } + case TAG_ID.BASEFONT: + case TAG_ID.BGSOUND: + case TAG_ID.HEAD: + case TAG_ID.LINK: + case TAG_ID.META: + case TAG_ID.NOFRAMES: + case TAG_ID.STYLE: { + startTagInHead(p, token); + break; + } + case TAG_ID.NOSCRIPT: { + p._err(token, ERR.nestedNoscriptInHead); + break; + } + default: { + tokenInHeadNoScript(p, token); + } + } +} +function endTagInHeadNoScript(p, token) { + switch (token.tagID) { + case TAG_ID.NOSCRIPT: { + p.openElements.pop(); + p.insertionMode = InsertionMode.IN_HEAD; + break; + } + case TAG_ID.BR: { + tokenInHeadNoScript(p, token); + break; + } + default: { + p._err(token, ERR.endTagWithoutMatchingOpenElement); + } + } +} +function tokenInHeadNoScript(p, token) { + const errCode = token.type === TokenType.EOF ? ERR.openElementsLeftAfterEof : ERR.disallowedContentInNoscriptInHead; + p._err(token, errCode); + p.openElements.pop(); + p.insertionMode = InsertionMode.IN_HEAD; + p._processToken(token); +} +function startTagAfterHead(p, token) { + switch (token.tagID) { + case TAG_ID.HTML: { + startTagInBody(p, token); + break; + } + case TAG_ID.BODY: { + p._insertElement(token, NS.HTML); + p.framesetOk = false; + p.insertionMode = InsertionMode.IN_BODY; + break; + } + case TAG_ID.FRAMESET: { + p._insertElement(token, NS.HTML); + p.insertionMode = InsertionMode.IN_FRAMESET; + break; + } + case TAG_ID.BASE: + case TAG_ID.BASEFONT: + case TAG_ID.BGSOUND: + case TAG_ID.LINK: + case TAG_ID.META: + case TAG_ID.NOFRAMES: + case TAG_ID.SCRIPT: + case TAG_ID.STYLE: + case TAG_ID.TEMPLATE: + case TAG_ID.TITLE: { + p._err(token, ERR.abandonedHeadElementChild); + p.openElements.push(p.headElement, TAG_ID.HEAD); + startTagInHead(p, token); + p.openElements.remove(p.headElement); + break; + } + case TAG_ID.HEAD: { + p._err(token, ERR.misplacedStartTagForHeadElement); + break; + } + default: { + tokenAfterHead(p, token); + } + } +} +function endTagAfterHead(p, token) { + switch (token.tagID) { + case TAG_ID.BODY: + case TAG_ID.HTML: + case TAG_ID.BR: { + tokenAfterHead(p, token); + break; + } + case TAG_ID.TEMPLATE: { + templateEndTagInHead(p, token); + break; + } + default: { + p._err(token, ERR.endTagWithoutMatchingOpenElement); + } + } +} +function tokenAfterHead(p, token) { + p._insertFakeElement(TAG_NAMES.BODY, TAG_ID.BODY); + p.insertionMode = InsertionMode.IN_BODY; + modeInBody(p, token); +} +function modeInBody(p, token) { + switch (token.type) { + case TokenType.CHARACTER: { + characterInBody(p, token); + break; + } + case TokenType.WHITESPACE_CHARACTER: { + whitespaceCharacterInBody(p, token); + break; + } + case TokenType.COMMENT: { + appendComment(p, token); + break; + } + case TokenType.START_TAG: { + startTagInBody(p, token); + break; + } + case TokenType.END_TAG: { + endTagInBody(p, token); + break; + } + case TokenType.EOF: { + eofInBody(p, token); + break; + } + default: + } +} +function whitespaceCharacterInBody(p, token) { + p._reconstructActiveFormattingElements(); + p._insertCharacters(token); +} +function characterInBody(p, token) { + p._reconstructActiveFormattingElements(); + p._insertCharacters(token); + p.framesetOk = false; +} +function htmlStartTagInBody(p, token) { + if (p.openElements.tmplCount === 0) { + p.treeAdapter.adoptAttributes(p.openElements.items[0], token.attrs); + } +} +function bodyStartTagInBody(p, token) { + const bodyElement = p.openElements.tryPeekProperlyNestedBodyElement(); + if (bodyElement && p.openElements.tmplCount === 0) { + p.framesetOk = false; + p.treeAdapter.adoptAttributes(bodyElement, token.attrs); + } +} +function framesetStartTagInBody(p, token) { + const bodyElement = p.openElements.tryPeekProperlyNestedBodyElement(); + if (p.framesetOk && bodyElement) { + p.treeAdapter.detachNode(bodyElement); + p.openElements.popAllUpToHtmlElement(); + p._insertElement(token, NS.HTML); + p.insertionMode = InsertionMode.IN_FRAMESET; + } +} +function addressStartTagInBody(p, token) { + if (p.openElements.hasInButtonScope(TAG_ID.P)) { + p._closePElement(); + } + p._insertElement(token, NS.HTML); +} +function numberedHeaderStartTagInBody(p, token) { + if (p.openElements.hasInButtonScope(TAG_ID.P)) { + p._closePElement(); + } + if (p.openElements.currentTagId !== void 0 && NUMBERED_HEADERS.has(p.openElements.currentTagId)) { + p.openElements.pop(); + } + p._insertElement(token, NS.HTML); +} +function preStartTagInBody(p, token) { + if (p.openElements.hasInButtonScope(TAG_ID.P)) { + p._closePElement(); + } + p._insertElement(token, NS.HTML); + p.skipNextNewLine = true; + p.framesetOk = false; +} +function formStartTagInBody(p, token) { + const inTemplate = p.openElements.tmplCount > 0; + if (!p.formElement || inTemplate) { + if (p.openElements.hasInButtonScope(TAG_ID.P)) { + p._closePElement(); + } + p._insertElement(token, NS.HTML); + if (!inTemplate) { + p.formElement = p.openElements.current; + } + } +} +function listItemStartTagInBody(p, token) { + p.framesetOk = false; + const tn = token.tagID; + for (let i = p.openElements.stackTop; i >= 0; i--) { + const elementId = p.openElements.tagIDs[i]; + if (tn === TAG_ID.LI && elementId === TAG_ID.LI || (tn === TAG_ID.DD || tn === TAG_ID.DT) && (elementId === TAG_ID.DD || elementId === TAG_ID.DT)) { + p.openElements.generateImpliedEndTagsWithExclusion(elementId); + p.openElements.popUntilTagNamePopped(elementId); + break; + } + if (elementId !== TAG_ID.ADDRESS && elementId !== TAG_ID.DIV && elementId !== TAG_ID.P && p._isSpecialElement(p.openElements.items[i], elementId)) { + break; + } + } + if (p.openElements.hasInButtonScope(TAG_ID.P)) { + p._closePElement(); + } + p._insertElement(token, NS.HTML); +} +function plaintextStartTagInBody(p, token) { + if (p.openElements.hasInButtonScope(TAG_ID.P)) { + p._closePElement(); + } + p._insertElement(token, NS.HTML); + p.tokenizer.state = TokenizerMode.PLAINTEXT; +} +function buttonStartTagInBody(p, token) { + if (p.openElements.hasInScope(TAG_ID.BUTTON)) { + p.openElements.generateImpliedEndTags(); + p.openElements.popUntilTagNamePopped(TAG_ID.BUTTON); + } + p._reconstructActiveFormattingElements(); + p._insertElement(token, NS.HTML); + p.framesetOk = false; +} +function aStartTagInBody(p, token) { + const activeElementEntry = p.activeFormattingElements.getElementEntryInScopeWithTagName(TAG_NAMES.A); + if (activeElementEntry) { + callAdoptionAgency(p, token); + p.openElements.remove(activeElementEntry.element); + p.activeFormattingElements.removeEntry(activeElementEntry); + } + p._reconstructActiveFormattingElements(); + p._insertElement(token, NS.HTML); + p.activeFormattingElements.pushElement(p.openElements.current, token); +} +function bStartTagInBody(p, token) { + p._reconstructActiveFormattingElements(); + p._insertElement(token, NS.HTML); + p.activeFormattingElements.pushElement(p.openElements.current, token); +} +function nobrStartTagInBody(p, token) { + p._reconstructActiveFormattingElements(); + if (p.openElements.hasInScope(TAG_ID.NOBR)) { + callAdoptionAgency(p, token); + p._reconstructActiveFormattingElements(); + } + p._insertElement(token, NS.HTML); + p.activeFormattingElements.pushElement(p.openElements.current, token); +} +function appletStartTagInBody(p, token) { + p._reconstructActiveFormattingElements(); + p._insertElement(token, NS.HTML); + p.activeFormattingElements.insertMarker(); + p.framesetOk = false; +} +function tableStartTagInBody(p, token) { + if (p.treeAdapter.getDocumentMode(p.document) !== DOCUMENT_MODE.QUIRKS && p.openElements.hasInButtonScope(TAG_ID.P)) { + p._closePElement(); + } + p._insertElement(token, NS.HTML); + p.framesetOk = false; + p.insertionMode = InsertionMode.IN_TABLE; +} +function areaStartTagInBody(p, token) { + p._reconstructActiveFormattingElements(); + p._appendElement(token, NS.HTML); + p.framesetOk = false; + token.ackSelfClosing = true; +} +function isHiddenInput(token) { + const inputType = getTokenAttr(token, ATTRS.TYPE); + return inputType != null && inputType.toLowerCase() === HIDDEN_INPUT_TYPE; +} +function inputStartTagInBody(p, token) { + p._reconstructActiveFormattingElements(); + p._appendElement(token, NS.HTML); + if (!isHiddenInput(token)) { + p.framesetOk = false; + } + token.ackSelfClosing = true; +} +function paramStartTagInBody(p, token) { + p._appendElement(token, NS.HTML); + token.ackSelfClosing = true; +} +function hrStartTagInBody(p, token) { + if (p.openElements.hasInButtonScope(TAG_ID.P)) { + p._closePElement(); + } + p._appendElement(token, NS.HTML); + p.framesetOk = false; + token.ackSelfClosing = true; +} +function imageStartTagInBody(p, token) { + token.tagName = TAG_NAMES.IMG; + token.tagID = TAG_ID.IMG; + areaStartTagInBody(p, token); +} +function textareaStartTagInBody(p, token) { + p._insertElement(token, NS.HTML); + p.skipNextNewLine = true; + p.tokenizer.state = TokenizerMode.RCDATA; + p.originalInsertionMode = p.insertionMode; + p.framesetOk = false; + p.insertionMode = InsertionMode.TEXT; +} +function xmpStartTagInBody(p, token) { + if (p.openElements.hasInButtonScope(TAG_ID.P)) { + p._closePElement(); + } + p._reconstructActiveFormattingElements(); + p.framesetOk = false; + p._switchToTextParsing(token, TokenizerMode.RAWTEXT); +} +function iframeStartTagInBody(p, token) { + p.framesetOk = false; + p._switchToTextParsing(token, TokenizerMode.RAWTEXT); +} +function rawTextStartTagInBody(p, token) { + p._switchToTextParsing(token, TokenizerMode.RAWTEXT); +} +function selectStartTagInBody(p, token) { + p._reconstructActiveFormattingElements(); + p._insertElement(token, NS.HTML); + p.framesetOk = false; + p.insertionMode = p.insertionMode === InsertionMode.IN_TABLE || p.insertionMode === InsertionMode.IN_CAPTION || p.insertionMode === InsertionMode.IN_TABLE_BODY || p.insertionMode === InsertionMode.IN_ROW || p.insertionMode === InsertionMode.IN_CELL ? InsertionMode.IN_SELECT_IN_TABLE : InsertionMode.IN_SELECT; +} +function optgroupStartTagInBody(p, token) { + if (p.openElements.currentTagId === TAG_ID.OPTION) { + p.openElements.pop(); + } + p._reconstructActiveFormattingElements(); + p._insertElement(token, NS.HTML); +} +function rbStartTagInBody(p, token) { + if (p.openElements.hasInScope(TAG_ID.RUBY)) { + p.openElements.generateImpliedEndTags(); + } + p._insertElement(token, NS.HTML); +} +function rtStartTagInBody(p, token) { + if (p.openElements.hasInScope(TAG_ID.RUBY)) { + p.openElements.generateImpliedEndTagsWithExclusion(TAG_ID.RTC); + } + p._insertElement(token, NS.HTML); +} +function mathStartTagInBody(p, token) { + p._reconstructActiveFormattingElements(); + adjustTokenMathMLAttrs(token); + adjustTokenXMLAttrs(token); + if (token.selfClosing) { + p._appendElement(token, NS.MATHML); + } else { + p._insertElement(token, NS.MATHML); + } + token.ackSelfClosing = true; +} +function svgStartTagInBody(p, token) { + p._reconstructActiveFormattingElements(); + adjustTokenSVGAttrs(token); + adjustTokenXMLAttrs(token); + if (token.selfClosing) { + p._appendElement(token, NS.SVG); + } else { + p._insertElement(token, NS.SVG); + } + token.ackSelfClosing = true; +} +function genericStartTagInBody(p, token) { + p._reconstructActiveFormattingElements(); + p._insertElement(token, NS.HTML); +} +function startTagInBody(p, token) { + switch (token.tagID) { + case TAG_ID.I: + case TAG_ID.S: + case TAG_ID.B: + case TAG_ID.U: + case TAG_ID.EM: + case TAG_ID.TT: + case TAG_ID.BIG: + case TAG_ID.CODE: + case TAG_ID.FONT: + case TAG_ID.SMALL: + case TAG_ID.STRIKE: + case TAG_ID.STRONG: { + bStartTagInBody(p, token); + break; + } + case TAG_ID.A: { + aStartTagInBody(p, token); + break; + } + case TAG_ID.H1: + case TAG_ID.H2: + case TAG_ID.H3: + case TAG_ID.H4: + case TAG_ID.H5: + case TAG_ID.H6: { + numberedHeaderStartTagInBody(p, token); + break; + } + case TAG_ID.P: + case TAG_ID.DL: + case TAG_ID.OL: + case TAG_ID.UL: + case TAG_ID.DIV: + case TAG_ID.DIR: + case TAG_ID.NAV: + case TAG_ID.MAIN: + case TAG_ID.MENU: + case TAG_ID.ASIDE: + case TAG_ID.CENTER: + case TAG_ID.FIGURE: + case TAG_ID.FOOTER: + case TAG_ID.HEADER: + case TAG_ID.HGROUP: + case TAG_ID.DIALOG: + case TAG_ID.DETAILS: + case TAG_ID.ADDRESS: + case TAG_ID.ARTICLE: + case TAG_ID.SEARCH: + case TAG_ID.SECTION: + case TAG_ID.SUMMARY: + case TAG_ID.FIELDSET: + case TAG_ID.BLOCKQUOTE: + case TAG_ID.FIGCAPTION: { + addressStartTagInBody(p, token); + break; + } + case TAG_ID.LI: + case TAG_ID.DD: + case TAG_ID.DT: { + listItemStartTagInBody(p, token); + break; + } + case TAG_ID.BR: + case TAG_ID.IMG: + case TAG_ID.WBR: + case TAG_ID.AREA: + case TAG_ID.EMBED: + case TAG_ID.KEYGEN: { + areaStartTagInBody(p, token); + break; + } + case TAG_ID.HR: { + hrStartTagInBody(p, token); + break; + } + case TAG_ID.RB: + case TAG_ID.RTC: { + rbStartTagInBody(p, token); + break; + } + case TAG_ID.RT: + case TAG_ID.RP: { + rtStartTagInBody(p, token); + break; + } + case TAG_ID.PRE: + case TAG_ID.LISTING: { + preStartTagInBody(p, token); + break; + } + case TAG_ID.XMP: { + xmpStartTagInBody(p, token); + break; + } + case TAG_ID.SVG: { + svgStartTagInBody(p, token); + break; + } + case TAG_ID.HTML: { + htmlStartTagInBody(p, token); + break; + } + case TAG_ID.BASE: + case TAG_ID.LINK: + case TAG_ID.META: + case TAG_ID.STYLE: + case TAG_ID.TITLE: + case TAG_ID.SCRIPT: + case TAG_ID.BGSOUND: + case TAG_ID.BASEFONT: + case TAG_ID.TEMPLATE: { + startTagInHead(p, token); + break; + } + case TAG_ID.BODY: { + bodyStartTagInBody(p, token); + break; + } + case TAG_ID.FORM: { + formStartTagInBody(p, token); + break; + } + case TAG_ID.NOBR: { + nobrStartTagInBody(p, token); + break; + } + case TAG_ID.MATH: { + mathStartTagInBody(p, token); + break; + } + case TAG_ID.TABLE: { + tableStartTagInBody(p, token); + break; + } + case TAG_ID.INPUT: { + inputStartTagInBody(p, token); + break; + } + case TAG_ID.PARAM: + case TAG_ID.TRACK: + case TAG_ID.SOURCE: { + paramStartTagInBody(p, token); + break; + } + case TAG_ID.IMAGE: { + imageStartTagInBody(p, token); + break; + } + case TAG_ID.BUTTON: { + buttonStartTagInBody(p, token); + break; + } + case TAG_ID.APPLET: + case TAG_ID.OBJECT: + case TAG_ID.MARQUEE: { + appletStartTagInBody(p, token); + break; + } + case TAG_ID.IFRAME: { + iframeStartTagInBody(p, token); + break; + } + case TAG_ID.SELECT: { + selectStartTagInBody(p, token); + break; + } + case TAG_ID.OPTION: + case TAG_ID.OPTGROUP: { + optgroupStartTagInBody(p, token); + break; + } + case TAG_ID.NOEMBED: + case TAG_ID.NOFRAMES: { + rawTextStartTagInBody(p, token); + break; + } + case TAG_ID.FRAMESET: { + framesetStartTagInBody(p, token); + break; + } + case TAG_ID.TEXTAREA: { + textareaStartTagInBody(p, token); + break; + } + case TAG_ID.NOSCRIPT: { + if (p.options.scriptingEnabled) { + rawTextStartTagInBody(p, token); + } else { + genericStartTagInBody(p, token); + } + break; + } + case TAG_ID.PLAINTEXT: { + plaintextStartTagInBody(p, token); + break; + } + case TAG_ID.COL: + case TAG_ID.TH: + case TAG_ID.TD: + case TAG_ID.TR: + case TAG_ID.HEAD: + case TAG_ID.FRAME: + case TAG_ID.TBODY: + case TAG_ID.TFOOT: + case TAG_ID.THEAD: + case TAG_ID.CAPTION: + case TAG_ID.COLGROUP: { + break; + } + default: { + genericStartTagInBody(p, token); + } + } +} +function bodyEndTagInBody(p, token) { + if (p.openElements.hasInScope(TAG_ID.BODY)) { + p.insertionMode = InsertionMode.AFTER_BODY; + if (p.options.sourceCodeLocationInfo) { + const bodyElement = p.openElements.tryPeekProperlyNestedBodyElement(); + if (bodyElement) { + p._setEndLocation(bodyElement, token); + } + } + } +} +function htmlEndTagInBody(p, token) { + if (p.openElements.hasInScope(TAG_ID.BODY)) { + p.insertionMode = InsertionMode.AFTER_BODY; + endTagAfterBody(p, token); + } +} +function addressEndTagInBody(p, token) { + const tn = token.tagID; + if (p.openElements.hasInScope(tn)) { + p.openElements.generateImpliedEndTags(); + p.openElements.popUntilTagNamePopped(tn); + } +} +function formEndTagInBody(p) { + const inTemplate = p.openElements.tmplCount > 0; + const { formElement } = p; + if (!inTemplate) { + p.formElement = null; + } + if ((formElement || inTemplate) && p.openElements.hasInScope(TAG_ID.FORM)) { + p.openElements.generateImpliedEndTags(); + if (inTemplate) { + p.openElements.popUntilTagNamePopped(TAG_ID.FORM); + } else if (formElement) { + p.openElements.remove(formElement); + } + } +} +function pEndTagInBody(p) { + if (!p.openElements.hasInButtonScope(TAG_ID.P)) { + p._insertFakeElement(TAG_NAMES.P, TAG_ID.P); + } + p._closePElement(); +} +function liEndTagInBody(p) { + if (p.openElements.hasInListItemScope(TAG_ID.LI)) { + p.openElements.generateImpliedEndTagsWithExclusion(TAG_ID.LI); + p.openElements.popUntilTagNamePopped(TAG_ID.LI); + } +} +function ddEndTagInBody(p, token) { + const tn = token.tagID; + if (p.openElements.hasInScope(tn)) { + p.openElements.generateImpliedEndTagsWithExclusion(tn); + p.openElements.popUntilTagNamePopped(tn); + } +} +function numberedHeaderEndTagInBody(p) { + if (p.openElements.hasNumberedHeaderInScope()) { + p.openElements.generateImpliedEndTags(); + p.openElements.popUntilNumberedHeaderPopped(); + } +} +function appletEndTagInBody(p, token) { + const tn = token.tagID; + if (p.openElements.hasInScope(tn)) { + p.openElements.generateImpliedEndTags(); + p.openElements.popUntilTagNamePopped(tn); + p.activeFormattingElements.clearToLastMarker(); + } +} +function brEndTagInBody(p) { + p._reconstructActiveFormattingElements(); + p._insertFakeElement(TAG_NAMES.BR, TAG_ID.BR); + p.openElements.pop(); + p.framesetOk = false; +} +function genericEndTagInBody(p, token) { + const tn = token.tagName; + const tid = token.tagID; + for (let i = p.openElements.stackTop; i > 0; i--) { + const element = p.openElements.items[i]; + const elementId = p.openElements.tagIDs[i]; + if (tid === elementId && (tid !== TAG_ID.UNKNOWN || p.treeAdapter.getTagName(element) === tn)) { + p.openElements.generateImpliedEndTagsWithExclusion(tid); + if (p.openElements.stackTop >= i) + p.openElements.shortenToLength(i); + break; + } + if (p._isSpecialElement(element, elementId)) { + break; + } + } +} +function endTagInBody(p, token) { + switch (token.tagID) { + case TAG_ID.A: + case TAG_ID.B: + case TAG_ID.I: + case TAG_ID.S: + case TAG_ID.U: + case TAG_ID.EM: + case TAG_ID.TT: + case TAG_ID.BIG: + case TAG_ID.CODE: + case TAG_ID.FONT: + case TAG_ID.NOBR: + case TAG_ID.SMALL: + case TAG_ID.STRIKE: + case TAG_ID.STRONG: { + callAdoptionAgency(p, token); + break; + } + case TAG_ID.P: { + pEndTagInBody(p); + break; + } + case TAG_ID.DL: + case TAG_ID.UL: + case TAG_ID.OL: + case TAG_ID.DIR: + case TAG_ID.DIV: + case TAG_ID.NAV: + case TAG_ID.PRE: + case TAG_ID.MAIN: + case TAG_ID.MENU: + case TAG_ID.ASIDE: + case TAG_ID.BUTTON: + case TAG_ID.CENTER: + case TAG_ID.FIGURE: + case TAG_ID.FOOTER: + case TAG_ID.HEADER: + case TAG_ID.HGROUP: + case TAG_ID.DIALOG: + case TAG_ID.ADDRESS: + case TAG_ID.ARTICLE: + case TAG_ID.DETAILS: + case TAG_ID.SEARCH: + case TAG_ID.SECTION: + case TAG_ID.SUMMARY: + case TAG_ID.LISTING: + case TAG_ID.FIELDSET: + case TAG_ID.BLOCKQUOTE: + case TAG_ID.FIGCAPTION: { + addressEndTagInBody(p, token); + break; + } + case TAG_ID.LI: { + liEndTagInBody(p); + break; + } + case TAG_ID.DD: + case TAG_ID.DT: { + ddEndTagInBody(p, token); + break; + } + case TAG_ID.H1: + case TAG_ID.H2: + case TAG_ID.H3: + case TAG_ID.H4: + case TAG_ID.H5: + case TAG_ID.H6: { + numberedHeaderEndTagInBody(p); + break; + } + case TAG_ID.BR: { + brEndTagInBody(p); + break; + } + case TAG_ID.BODY: { + bodyEndTagInBody(p, token); + break; + } + case TAG_ID.HTML: { + htmlEndTagInBody(p, token); + break; + } + case TAG_ID.FORM: { + formEndTagInBody(p); + break; + } + case TAG_ID.APPLET: + case TAG_ID.OBJECT: + case TAG_ID.MARQUEE: { + appletEndTagInBody(p, token); + break; + } + case TAG_ID.TEMPLATE: { + templateEndTagInHead(p, token); + break; + } + default: { + genericEndTagInBody(p, token); + } + } +} +function eofInBody(p, token) { + if (p.tmplInsertionModeStack.length > 0) { + eofInTemplate(p, token); + } else { + stopParsing(p, token); + } +} +function endTagInText(p, token) { + var _a3; + if (token.tagID === TAG_ID.SCRIPT) { + (_a3 = p.scriptHandler) === null || _a3 === void 0 ? void 0 : _a3.call(p, p.openElements.current); + } + p.openElements.pop(); + p.insertionMode = p.originalInsertionMode; +} +function eofInText(p, token) { + p._err(token, ERR.eofInElementThatCanContainOnlyText); + p.openElements.pop(); + p.insertionMode = p.originalInsertionMode; + p.onEof(token); +} +function characterInTable(p, token) { + if (p.openElements.currentTagId !== void 0 && TABLE_STRUCTURE_TAGS.has(p.openElements.currentTagId)) { + p.pendingCharacterTokens.length = 0; + p.hasNonWhitespacePendingCharacterToken = false; + p.originalInsertionMode = p.insertionMode; + p.insertionMode = InsertionMode.IN_TABLE_TEXT; + switch (token.type) { + case TokenType.CHARACTER: { + characterInTableText(p, token); + break; + } + case TokenType.WHITESPACE_CHARACTER: { + whitespaceCharacterInTableText(p, token); + break; + } + } + } else { + tokenInTable(p, token); + } +} +function captionStartTagInTable(p, token) { + p.openElements.clearBackToTableContext(); + p.activeFormattingElements.insertMarker(); + p._insertElement(token, NS.HTML); + p.insertionMode = InsertionMode.IN_CAPTION; +} +function colgroupStartTagInTable(p, token) { + p.openElements.clearBackToTableContext(); + p._insertElement(token, NS.HTML); + p.insertionMode = InsertionMode.IN_COLUMN_GROUP; +} +function colStartTagInTable(p, token) { + p.openElements.clearBackToTableContext(); + p._insertFakeElement(TAG_NAMES.COLGROUP, TAG_ID.COLGROUP); + p.insertionMode = InsertionMode.IN_COLUMN_GROUP; + startTagInColumnGroup(p, token); +} +function tbodyStartTagInTable(p, token) { + p.openElements.clearBackToTableContext(); + p._insertElement(token, NS.HTML); + p.insertionMode = InsertionMode.IN_TABLE_BODY; +} +function tdStartTagInTable(p, token) { + p.openElements.clearBackToTableContext(); + p._insertFakeElement(TAG_NAMES.TBODY, TAG_ID.TBODY); + p.insertionMode = InsertionMode.IN_TABLE_BODY; + startTagInTableBody(p, token); +} +function tableStartTagInTable(p, token) { + if (p.openElements.hasInTableScope(TAG_ID.TABLE)) { + p.openElements.popUntilTagNamePopped(TAG_ID.TABLE); + p._resetInsertionMode(); + p._processStartTag(token); + } +} +function inputStartTagInTable(p, token) { + if (isHiddenInput(token)) { + p._appendElement(token, NS.HTML); + } else { + tokenInTable(p, token); + } + token.ackSelfClosing = true; +} +function formStartTagInTable(p, token) { + if (!p.formElement && p.openElements.tmplCount === 0) { + p._insertElement(token, NS.HTML); + p.formElement = p.openElements.current; + p.openElements.pop(); + } +} +function startTagInTable(p, token) { + switch (token.tagID) { + case TAG_ID.TD: + case TAG_ID.TH: + case TAG_ID.TR: { + tdStartTagInTable(p, token); + break; + } + case TAG_ID.STYLE: + case TAG_ID.SCRIPT: + case TAG_ID.TEMPLATE: { + startTagInHead(p, token); + break; + } + case TAG_ID.COL: { + colStartTagInTable(p, token); + break; + } + case TAG_ID.FORM: { + formStartTagInTable(p, token); + break; + } + case TAG_ID.TABLE: { + tableStartTagInTable(p, token); + break; + } + case TAG_ID.TBODY: + case TAG_ID.TFOOT: + case TAG_ID.THEAD: { + tbodyStartTagInTable(p, token); + break; + } + case TAG_ID.INPUT: { + inputStartTagInTable(p, token); + break; + } + case TAG_ID.CAPTION: { + captionStartTagInTable(p, token); + break; + } + case TAG_ID.COLGROUP: { + colgroupStartTagInTable(p, token); + break; + } + default: { + tokenInTable(p, token); + } + } +} +function endTagInTable(p, token) { + switch (token.tagID) { + case TAG_ID.TABLE: { + if (p.openElements.hasInTableScope(TAG_ID.TABLE)) { + p.openElements.popUntilTagNamePopped(TAG_ID.TABLE); + p._resetInsertionMode(); + } + break; + } + case TAG_ID.TEMPLATE: { + templateEndTagInHead(p, token); + break; + } + case TAG_ID.BODY: + case TAG_ID.CAPTION: + case TAG_ID.COL: + case TAG_ID.COLGROUP: + case TAG_ID.HTML: + case TAG_ID.TBODY: + case TAG_ID.TD: + case TAG_ID.TFOOT: + case TAG_ID.TH: + case TAG_ID.THEAD: + case TAG_ID.TR: { + break; + } + default: { + tokenInTable(p, token); + } + } +} +function tokenInTable(p, token) { + const savedFosterParentingState = p.fosterParentingEnabled; + p.fosterParentingEnabled = true; + modeInBody(p, token); + p.fosterParentingEnabled = savedFosterParentingState; +} +function whitespaceCharacterInTableText(p, token) { + p.pendingCharacterTokens.push(token); +} +function characterInTableText(p, token) { + p.pendingCharacterTokens.push(token); + p.hasNonWhitespacePendingCharacterToken = true; +} +function tokenInTableText(p, token) { + let i = 0; + if (p.hasNonWhitespacePendingCharacterToken) { + for (; i < p.pendingCharacterTokens.length; i++) { + tokenInTable(p, p.pendingCharacterTokens[i]); + } + } else { + for (; i < p.pendingCharacterTokens.length; i++) { + p._insertCharacters(p.pendingCharacterTokens[i]); + } + } + p.insertionMode = p.originalInsertionMode; + p._processToken(token); +} +var TABLE_VOID_ELEMENTS = /* @__PURE__ */ new Set([TAG_ID.CAPTION, TAG_ID.COL, TAG_ID.COLGROUP, TAG_ID.TBODY, TAG_ID.TD, TAG_ID.TFOOT, TAG_ID.TH, TAG_ID.THEAD, TAG_ID.TR]); +function startTagInCaption(p, token) { + const tn = token.tagID; + if (TABLE_VOID_ELEMENTS.has(tn)) { + if (p.openElements.hasInTableScope(TAG_ID.CAPTION)) { + p.openElements.generateImpliedEndTags(); + p.openElements.popUntilTagNamePopped(TAG_ID.CAPTION); + p.activeFormattingElements.clearToLastMarker(); + p.insertionMode = InsertionMode.IN_TABLE; + startTagInTable(p, token); + } + } else { + startTagInBody(p, token); + } +} +function endTagInCaption(p, token) { + const tn = token.tagID; + switch (tn) { + case TAG_ID.CAPTION: + case TAG_ID.TABLE: { + if (p.openElements.hasInTableScope(TAG_ID.CAPTION)) { + p.openElements.generateImpliedEndTags(); + p.openElements.popUntilTagNamePopped(TAG_ID.CAPTION); + p.activeFormattingElements.clearToLastMarker(); + p.insertionMode = InsertionMode.IN_TABLE; + if (tn === TAG_ID.TABLE) { + endTagInTable(p, token); + } + } + break; + } + case TAG_ID.BODY: + case TAG_ID.COL: + case TAG_ID.COLGROUP: + case TAG_ID.HTML: + case TAG_ID.TBODY: + case TAG_ID.TD: + case TAG_ID.TFOOT: + case TAG_ID.TH: + case TAG_ID.THEAD: + case TAG_ID.TR: { + break; + } + default: { + endTagInBody(p, token); + } + } +} +function startTagInColumnGroup(p, token) { + switch (token.tagID) { + case TAG_ID.HTML: { + startTagInBody(p, token); + break; + } + case TAG_ID.COL: { + p._appendElement(token, NS.HTML); + token.ackSelfClosing = true; + break; + } + case TAG_ID.TEMPLATE: { + startTagInHead(p, token); + break; + } + default: { + tokenInColumnGroup(p, token); + } + } +} +function endTagInColumnGroup(p, token) { + switch (token.tagID) { + case TAG_ID.COLGROUP: { + if (p.openElements.currentTagId === TAG_ID.COLGROUP) { + p.openElements.pop(); + p.insertionMode = InsertionMode.IN_TABLE; + } + break; + } + case TAG_ID.TEMPLATE: { + templateEndTagInHead(p, token); + break; + } + case TAG_ID.COL: { + break; + } + default: { + tokenInColumnGroup(p, token); + } + } +} +function tokenInColumnGroup(p, token) { + if (p.openElements.currentTagId === TAG_ID.COLGROUP) { + p.openElements.pop(); + p.insertionMode = InsertionMode.IN_TABLE; + p._processToken(token); + } +} +function startTagInTableBody(p, token) { + switch (token.tagID) { + case TAG_ID.TR: { + p.openElements.clearBackToTableBodyContext(); + p._insertElement(token, NS.HTML); + p.insertionMode = InsertionMode.IN_ROW; + break; + } + case TAG_ID.TH: + case TAG_ID.TD: { + p.openElements.clearBackToTableBodyContext(); + p._insertFakeElement(TAG_NAMES.TR, TAG_ID.TR); + p.insertionMode = InsertionMode.IN_ROW; + startTagInRow(p, token); + break; + } + case TAG_ID.CAPTION: + case TAG_ID.COL: + case TAG_ID.COLGROUP: + case TAG_ID.TBODY: + case TAG_ID.TFOOT: + case TAG_ID.THEAD: { + if (p.openElements.hasTableBodyContextInTableScope()) { + p.openElements.clearBackToTableBodyContext(); + p.openElements.pop(); + p.insertionMode = InsertionMode.IN_TABLE; + startTagInTable(p, token); + } + break; + } + default: { + startTagInTable(p, token); + } + } +} +function endTagInTableBody(p, token) { + const tn = token.tagID; + switch (token.tagID) { + case TAG_ID.TBODY: + case TAG_ID.TFOOT: + case TAG_ID.THEAD: { + if (p.openElements.hasInTableScope(tn)) { + p.openElements.clearBackToTableBodyContext(); + p.openElements.pop(); + p.insertionMode = InsertionMode.IN_TABLE; + } + break; + } + case TAG_ID.TABLE: { + if (p.openElements.hasTableBodyContextInTableScope()) { + p.openElements.clearBackToTableBodyContext(); + p.openElements.pop(); + p.insertionMode = InsertionMode.IN_TABLE; + endTagInTable(p, token); + } + break; + } + case TAG_ID.BODY: + case TAG_ID.CAPTION: + case TAG_ID.COL: + case TAG_ID.COLGROUP: + case TAG_ID.HTML: + case TAG_ID.TD: + case TAG_ID.TH: + case TAG_ID.TR: { + break; + } + default: { + endTagInTable(p, token); + } + } +} +function startTagInRow(p, token) { + switch (token.tagID) { + case TAG_ID.TH: + case TAG_ID.TD: { + p.openElements.clearBackToTableRowContext(); + p._insertElement(token, NS.HTML); + p.insertionMode = InsertionMode.IN_CELL; + p.activeFormattingElements.insertMarker(); + break; + } + case TAG_ID.CAPTION: + case TAG_ID.COL: + case TAG_ID.COLGROUP: + case TAG_ID.TBODY: + case TAG_ID.TFOOT: + case TAG_ID.THEAD: + case TAG_ID.TR: { + if (p.openElements.hasInTableScope(TAG_ID.TR)) { + p.openElements.clearBackToTableRowContext(); + p.openElements.pop(); + p.insertionMode = InsertionMode.IN_TABLE_BODY; + startTagInTableBody(p, token); + } + break; + } + default: { + startTagInTable(p, token); + } + } +} +function endTagInRow(p, token) { + switch (token.tagID) { + case TAG_ID.TR: { + if (p.openElements.hasInTableScope(TAG_ID.TR)) { + p.openElements.clearBackToTableRowContext(); + p.openElements.pop(); + p.insertionMode = InsertionMode.IN_TABLE_BODY; + } + break; + } + case TAG_ID.TABLE: { + if (p.openElements.hasInTableScope(TAG_ID.TR)) { + p.openElements.clearBackToTableRowContext(); + p.openElements.pop(); + p.insertionMode = InsertionMode.IN_TABLE_BODY; + endTagInTableBody(p, token); + } + break; + } + case TAG_ID.TBODY: + case TAG_ID.TFOOT: + case TAG_ID.THEAD: { + if (p.openElements.hasInTableScope(token.tagID) || p.openElements.hasInTableScope(TAG_ID.TR)) { + p.openElements.clearBackToTableRowContext(); + p.openElements.pop(); + p.insertionMode = InsertionMode.IN_TABLE_BODY; + endTagInTableBody(p, token); + } + break; + } + case TAG_ID.BODY: + case TAG_ID.CAPTION: + case TAG_ID.COL: + case TAG_ID.COLGROUP: + case TAG_ID.HTML: + case TAG_ID.TD: + case TAG_ID.TH: { + break; + } + default: { + endTagInTable(p, token); + } + } +} +function startTagInCell(p, token) { + const tn = token.tagID; + if (TABLE_VOID_ELEMENTS.has(tn)) { + if (p.openElements.hasInTableScope(TAG_ID.TD) || p.openElements.hasInTableScope(TAG_ID.TH)) { + p._closeTableCell(); + startTagInRow(p, token); + } + } else { + startTagInBody(p, token); + } +} +function endTagInCell(p, token) { + const tn = token.tagID; + switch (tn) { + case TAG_ID.TD: + case TAG_ID.TH: { + if (p.openElements.hasInTableScope(tn)) { + p.openElements.generateImpliedEndTags(); + p.openElements.popUntilTagNamePopped(tn); + p.activeFormattingElements.clearToLastMarker(); + p.insertionMode = InsertionMode.IN_ROW; + } + break; + } + case TAG_ID.TABLE: + case TAG_ID.TBODY: + case TAG_ID.TFOOT: + case TAG_ID.THEAD: + case TAG_ID.TR: { + if (p.openElements.hasInTableScope(tn)) { + p._closeTableCell(); + endTagInRow(p, token); + } + break; + } + case TAG_ID.BODY: + case TAG_ID.CAPTION: + case TAG_ID.COL: + case TAG_ID.COLGROUP: + case TAG_ID.HTML: { + break; + } + default: { + endTagInBody(p, token); + } + } +} +function startTagInSelect(p, token) { + switch (token.tagID) { + case TAG_ID.HTML: { + startTagInBody(p, token); + break; + } + case TAG_ID.OPTION: { + if (p.openElements.currentTagId === TAG_ID.OPTION) { + p.openElements.pop(); + } + p._insertElement(token, NS.HTML); + break; + } + case TAG_ID.OPTGROUP: { + if (p.openElements.currentTagId === TAG_ID.OPTION) { + p.openElements.pop(); + } + if (p.openElements.currentTagId === TAG_ID.OPTGROUP) { + p.openElements.pop(); + } + p._insertElement(token, NS.HTML); + break; + } + case TAG_ID.HR: { + if (p.openElements.currentTagId === TAG_ID.OPTION) { + p.openElements.pop(); + } + if (p.openElements.currentTagId === TAG_ID.OPTGROUP) { + p.openElements.pop(); + } + p._appendElement(token, NS.HTML); + token.ackSelfClosing = true; + break; + } + case TAG_ID.INPUT: + case TAG_ID.KEYGEN: + case TAG_ID.TEXTAREA: + case TAG_ID.SELECT: { + if (p.openElements.hasInSelectScope(TAG_ID.SELECT)) { + p.openElements.popUntilTagNamePopped(TAG_ID.SELECT); + p._resetInsertionMode(); + if (token.tagID !== TAG_ID.SELECT) { + p._processStartTag(token); + } + } + break; + } + case TAG_ID.SCRIPT: + case TAG_ID.TEMPLATE: { + startTagInHead(p, token); + break; + } + default: + } +} +function endTagInSelect(p, token) { + switch (token.tagID) { + case TAG_ID.OPTGROUP: { + if (p.openElements.stackTop > 0 && p.openElements.currentTagId === TAG_ID.OPTION && p.openElements.tagIDs[p.openElements.stackTop - 1] === TAG_ID.OPTGROUP) { + p.openElements.pop(); + } + if (p.openElements.currentTagId === TAG_ID.OPTGROUP) { + p.openElements.pop(); + } + break; + } + case TAG_ID.OPTION: { + if (p.openElements.currentTagId === TAG_ID.OPTION) { + p.openElements.pop(); + } + break; + } + case TAG_ID.SELECT: { + if (p.openElements.hasInSelectScope(TAG_ID.SELECT)) { + p.openElements.popUntilTagNamePopped(TAG_ID.SELECT); + p._resetInsertionMode(); + } + break; + } + case TAG_ID.TEMPLATE: { + templateEndTagInHead(p, token); + break; + } + default: + } +} +function startTagInSelectInTable(p, token) { + const tn = token.tagID; + if (tn === TAG_ID.CAPTION || tn === TAG_ID.TABLE || tn === TAG_ID.TBODY || tn === TAG_ID.TFOOT || tn === TAG_ID.THEAD || tn === TAG_ID.TR || tn === TAG_ID.TD || tn === TAG_ID.TH) { + p.openElements.popUntilTagNamePopped(TAG_ID.SELECT); + p._resetInsertionMode(); + p._processStartTag(token); + } else { + startTagInSelect(p, token); + } +} +function endTagInSelectInTable(p, token) { + const tn = token.tagID; + if (tn === TAG_ID.CAPTION || tn === TAG_ID.TABLE || tn === TAG_ID.TBODY || tn === TAG_ID.TFOOT || tn === TAG_ID.THEAD || tn === TAG_ID.TR || tn === TAG_ID.TD || tn === TAG_ID.TH) { + if (p.openElements.hasInTableScope(tn)) { + p.openElements.popUntilTagNamePopped(TAG_ID.SELECT); + p._resetInsertionMode(); + p.onEndTag(token); + } + } else { + endTagInSelect(p, token); + } +} +function startTagInTemplate(p, token) { + switch (token.tagID) { + case TAG_ID.BASE: + case TAG_ID.BASEFONT: + case TAG_ID.BGSOUND: + case TAG_ID.LINK: + case TAG_ID.META: + case TAG_ID.NOFRAMES: + case TAG_ID.SCRIPT: + case TAG_ID.STYLE: + case TAG_ID.TEMPLATE: + case TAG_ID.TITLE: { + startTagInHead(p, token); + break; + } + case TAG_ID.CAPTION: + case TAG_ID.COLGROUP: + case TAG_ID.TBODY: + case TAG_ID.TFOOT: + case TAG_ID.THEAD: { + p.tmplInsertionModeStack[0] = InsertionMode.IN_TABLE; + p.insertionMode = InsertionMode.IN_TABLE; + startTagInTable(p, token); + break; + } + case TAG_ID.COL: { + p.tmplInsertionModeStack[0] = InsertionMode.IN_COLUMN_GROUP; + p.insertionMode = InsertionMode.IN_COLUMN_GROUP; + startTagInColumnGroup(p, token); + break; + } + case TAG_ID.TR: { + p.tmplInsertionModeStack[0] = InsertionMode.IN_TABLE_BODY; + p.insertionMode = InsertionMode.IN_TABLE_BODY; + startTagInTableBody(p, token); + break; + } + case TAG_ID.TD: + case TAG_ID.TH: { + p.tmplInsertionModeStack[0] = InsertionMode.IN_ROW; + p.insertionMode = InsertionMode.IN_ROW; + startTagInRow(p, token); + break; + } + default: { + p.tmplInsertionModeStack[0] = InsertionMode.IN_BODY; + p.insertionMode = InsertionMode.IN_BODY; + startTagInBody(p, token); + } + } +} +function endTagInTemplate(p, token) { + if (token.tagID === TAG_ID.TEMPLATE) { + templateEndTagInHead(p, token); + } +} +function eofInTemplate(p, token) { + if (p.openElements.tmplCount > 0) { + p.openElements.popUntilTagNamePopped(TAG_ID.TEMPLATE); + p.activeFormattingElements.clearToLastMarker(); + p.tmplInsertionModeStack.shift(); + p._resetInsertionMode(); + p.onEof(token); + } else { + stopParsing(p, token); + } +} +function startTagAfterBody(p, token) { + if (token.tagID === TAG_ID.HTML) { + startTagInBody(p, token); + } else { + tokenAfterBody(p, token); + } +} +function endTagAfterBody(p, token) { + var _a3; + if (token.tagID === TAG_ID.HTML) { + if (!p.fragmentContext) { + p.insertionMode = InsertionMode.AFTER_AFTER_BODY; + } + if (p.options.sourceCodeLocationInfo && p.openElements.tagIDs[0] === TAG_ID.HTML) { + p._setEndLocation(p.openElements.items[0], token); + const bodyElement = p.openElements.items[1]; + if (bodyElement && !((_a3 = p.treeAdapter.getNodeSourceCodeLocation(bodyElement)) === null || _a3 === void 0 ? void 0 : _a3.endTag)) { + p._setEndLocation(bodyElement, token); + } + } + } else { + tokenAfterBody(p, token); + } +} +function tokenAfterBody(p, token) { + p.insertionMode = InsertionMode.IN_BODY; + modeInBody(p, token); +} +function startTagInFrameset(p, token) { + switch (token.tagID) { + case TAG_ID.HTML: { + startTagInBody(p, token); + break; + } + case TAG_ID.FRAMESET: { + p._insertElement(token, NS.HTML); + break; + } + case TAG_ID.FRAME: { + p._appendElement(token, NS.HTML); + token.ackSelfClosing = true; + break; + } + case TAG_ID.NOFRAMES: { + startTagInHead(p, token); + break; + } + default: + } +} +function endTagInFrameset(p, token) { + if (token.tagID === TAG_ID.FRAMESET && !p.openElements.isRootHtmlElementCurrent()) { + p.openElements.pop(); + if (!p.fragmentContext && p.openElements.currentTagId !== TAG_ID.FRAMESET) { + p.insertionMode = InsertionMode.AFTER_FRAMESET; + } + } +} +function startTagAfterFrameset(p, token) { + switch (token.tagID) { + case TAG_ID.HTML: { + startTagInBody(p, token); + break; + } + case TAG_ID.NOFRAMES: { + startTagInHead(p, token); + break; + } + default: + } +} +function endTagAfterFrameset(p, token) { + if (token.tagID === TAG_ID.HTML) { + p.insertionMode = InsertionMode.AFTER_AFTER_FRAMESET; + } +} +function startTagAfterAfterBody(p, token) { + if (token.tagID === TAG_ID.HTML) { + startTagInBody(p, token); + } else { + tokenAfterAfterBody(p, token); + } +} +function tokenAfterAfterBody(p, token) { + p.insertionMode = InsertionMode.IN_BODY; + modeInBody(p, token); +} +function startTagAfterAfterFrameset(p, token) { + switch (token.tagID) { + case TAG_ID.HTML: { + startTagInBody(p, token); + break; + } + case TAG_ID.NOFRAMES: { + startTagInHead(p, token); + break; + } + default: + } +} +function nullCharacterInForeignContent(p, token) { + token.chars = REPLACEMENT_CHARACTER; + p._insertCharacters(token); +} +function characterInForeignContent(p, token) { + p._insertCharacters(token); + p.framesetOk = false; +} +function popUntilHtmlOrIntegrationPoint(p) { + while (p.treeAdapter.getNamespaceURI(p.openElements.current) !== NS.HTML && p.openElements.currentTagId !== void 0 && !p._isIntegrationPoint(p.openElements.currentTagId, p.openElements.current)) { + p.openElements.pop(); + } +} +function startTagInForeignContent(p, token) { + if (causesExit(token)) { + popUntilHtmlOrIntegrationPoint(p); + p._startTagOutsideForeignContent(token); + } else { + const current = p._getAdjustedCurrentElement(); + const currentNs = p.treeAdapter.getNamespaceURI(current); + if (currentNs === NS.MATHML) { + adjustTokenMathMLAttrs(token); + } else if (currentNs === NS.SVG) { + adjustTokenSVGTagName(token); + adjustTokenSVGAttrs(token); + } + adjustTokenXMLAttrs(token); + if (token.selfClosing) { + p._appendElement(token, currentNs); + } else { + p._insertElement(token, currentNs); + } + token.ackSelfClosing = true; + } +} +function endTagInForeignContent(p, token) { + if (token.tagID === TAG_ID.P || token.tagID === TAG_ID.BR) { + popUntilHtmlOrIntegrationPoint(p); + p._endTagOutsideForeignContent(token); + return; + } + for (let i = p.openElements.stackTop; i > 0; i--) { + const element = p.openElements.items[i]; + if (p.treeAdapter.getNamespaceURI(element) === NS.HTML) { + p._endTagOutsideForeignContent(token); + break; + } + const tagName = p.treeAdapter.getTagName(element); + if (tagName.toLowerCase() === token.tagName) { + token.tagName = tagName; + p.openElements.shortenToLength(i); + break; + } + } +} + +// ../../node_modules/.pnpm/entities@6.0.0/node_modules/entities/dist/esm/escape.js +var getCodePoint2 = String.prototype.codePointAt == null ? (c, index2) => (c.charCodeAt(index2) & 64512) === 55296 ? (c.charCodeAt(index2) - 55296) * 1024 + c.charCodeAt(index2 + 1) - 56320 + 65536 : c.charCodeAt(index2) : (input, index2) => input.codePointAt(index2); +function getEscaper2(regex, map4) { + return function escape3(data2) { + let match2; + let lastIndex = 0; + let result = ""; + while (match2 = regex.exec(data2)) { + if (lastIndex !== match2.index) { + result += data2.substring(lastIndex, match2.index); + } + result += map4.get(match2[0].charCodeAt(0)); + lastIndex = match2.index + 1; + } + return result + data2.substring(lastIndex); + }; +} +var escapeAttribute2 = /* @__PURE__ */ getEscaper2(/["&\u00A0]/g, /* @__PURE__ */ new Map([ + [34, """], + [38, "&"], + [160, " "] +])); +var escapeText2 = /* @__PURE__ */ getEscaper2(/[&<>\u00A0]/g, /* @__PURE__ */ new Map([ + [38, "&"], + [60, "<"], + [62, ">"], + [160, " "] +])); + +// ../../node_modules/.pnpm/parse5@7.3.0/node_modules/parse5/dist/serializer/index.js +var VOID_ELEMENTS = /* @__PURE__ */ new Set([ + TAG_NAMES.AREA, + TAG_NAMES.BASE, + TAG_NAMES.BASEFONT, + TAG_NAMES.BGSOUND, + TAG_NAMES.BR, + TAG_NAMES.COL, + TAG_NAMES.EMBED, + TAG_NAMES.FRAME, + TAG_NAMES.HR, + TAG_NAMES.IMG, + TAG_NAMES.INPUT, + TAG_NAMES.KEYGEN, + TAG_NAMES.LINK, + TAG_NAMES.META, + TAG_NAMES.PARAM, + TAG_NAMES.SOURCE, + TAG_NAMES.TRACK, + TAG_NAMES.WBR +]); +function isVoidElement(node, options) { + return options.treeAdapter.isElementNode(node) && options.treeAdapter.getNamespaceURI(node) === NS.HTML && VOID_ELEMENTS.has(options.treeAdapter.getTagName(node)); +} +var defaultOpts3 = { treeAdapter: defaultTreeAdapter, scriptingEnabled: true }; +function serializeOuter(node, options) { + const opts = { ...defaultOpts3, ...options }; + return serializeNode(node, opts); +} +function serializeChildNodes(parentNode, options) { + let html3 = ""; + const container = options.treeAdapter.isElementNode(parentNode) && options.treeAdapter.getTagName(parentNode) === TAG_NAMES.TEMPLATE && options.treeAdapter.getNamespaceURI(parentNode) === NS.HTML ? options.treeAdapter.getTemplateContent(parentNode) : parentNode; + const childNodes = options.treeAdapter.getChildNodes(container); + if (childNodes) { + for (const currentNode of childNodes) { + html3 += serializeNode(currentNode, options); + } + } + return html3; +} +function serializeNode(node, options) { + if (options.treeAdapter.isElementNode(node)) { + return serializeElement(node, options); + } + if (options.treeAdapter.isTextNode(node)) { + return serializeTextNode(node, options); + } + if (options.treeAdapter.isCommentNode(node)) { + return serializeCommentNode(node, options); + } + if (options.treeAdapter.isDocumentTypeNode(node)) { + return serializeDocumentTypeNode(node, options); + } + return ""; +} +function serializeElement(node, options) { + const tn = options.treeAdapter.getTagName(node); + return `<${tn}${serializeAttributes(node, options)}>${isVoidElement(node, options) ? "" : `${serializeChildNodes(node, options)}`}`; +} +function serializeAttributes(node, { treeAdapter }) { + let html3 = ""; + for (const attr2 of treeAdapter.getAttrList(node)) { + html3 += " "; + if (attr2.namespace) { + switch (attr2.namespace) { + case NS.XML: { + html3 += `xml:${attr2.name}`; + break; + } + case NS.XMLNS: { + if (attr2.name !== "xmlns") { + html3 += "xmlns:"; + } + html3 += attr2.name; + break; + } + case NS.XLINK: { + html3 += `xlink:${attr2.name}`; + break; + } + default: { + html3 += `${attr2.prefix}:${attr2.name}`; + } + } + } else { + html3 += attr2.name; + } + html3 += `="${escapeAttribute2(attr2.value)}"`; + } + return html3; +} +function serializeTextNode(node, options) { + const { treeAdapter } = options; + const content = treeAdapter.getTextNodeContent(node); + const parent2 = treeAdapter.getParentNode(node); + const parentTn = parent2 && treeAdapter.isElementNode(parent2) && treeAdapter.getTagName(parent2); + return parentTn && treeAdapter.getNamespaceURI(parent2) === NS.HTML && hasUnescapedText(parentTn, options.scriptingEnabled) ? content : escapeText2(content); +} +function serializeCommentNode(node, { treeAdapter }) { + return ``; +} +function serializeDocumentTypeNode(node, { treeAdapter }) { + return ``; +} + +// ../../node_modules/.pnpm/parse5@7.3.0/node_modules/parse5/dist/index.js +function parse4(html3, options) { + return Parser.parse(html3, options); +} +function parseFragment(fragmentContext, html3, options) { + if (typeof fragmentContext === "string") { + options = html3; + html3 = fragmentContext; + fragmentContext = null; + } + const parser = Parser.getFragmentParser(fragmentContext, options); + parser.tokenizer.write(html3, true); + return parser.getFragment(); +} + +// ../../node_modules/.pnpm/parse5-htmlparser2-tree-adapter@7.1.0/node_modules/parse5-htmlparser2-tree-adapter/dist/index.js +function enquoteDoctypeId(id) { + const quote = id.includes('"') ? "'" : '"'; + return quote + id + quote; +} +function serializeDoctypeContent(name2, publicId, systemId) { + let str = "!DOCTYPE "; + if (name2) { + str += name2; + } + if (publicId) { + str += ` PUBLIC ${enquoteDoctypeId(publicId)}`; + } else if (systemId) { + str += " SYSTEM"; + } + if (systemId) { + str += ` ${enquoteDoctypeId(systemId)}`; + } + return str; +} +var adapter = { + isCommentNode: isComment, + isElementNode: isTag2, + isTextNode: isText, + createDocument() { + const node = new Document([]); + node["x-mode"] = html_exports.DOCUMENT_MODE.NO_QUIRKS; + return node; + }, + createDocumentFragment() { + return new Document([]); + }, + createElement(tagName, namespaceURI, attrs) { + const attribs = /* @__PURE__ */ Object.create(null); + const attribsNamespace = /* @__PURE__ */ Object.create(null); + const attribsPrefix = /* @__PURE__ */ Object.create(null); + for (let i = 0; i < attrs.length; i++) { + const attrName = attrs[i].name; + attribs[attrName] = attrs[i].value; + attribsNamespace[attrName] = attrs[i].namespace; + attribsPrefix[attrName] = attrs[i].prefix; + } + const node = new Element(tagName, attribs, []); + node.namespace = namespaceURI; + node["x-attribsNamespace"] = attribsNamespace; + node["x-attribsPrefix"] = attribsPrefix; + return node; + }, + createCommentNode(data2) { + return new Comment2(data2); + }, + createTextNode(value) { + return new Text2(value); + }, + appendChild(parentNode, newNode) { + const prev2 = parentNode.children[parentNode.children.length - 1]; + if (prev2) { + prev2.next = newNode; + newNode.prev = prev2; + } + parentNode.children.push(newNode); + newNode.parent = parentNode; + }, + insertBefore(parentNode, newNode, referenceNode) { + const insertionIdx = parentNode.children.indexOf(referenceNode); + const { prev: prev2 } = referenceNode; + if (prev2) { + prev2.next = newNode; + newNode.prev = prev2; + } + referenceNode.prev = newNode; + newNode.next = referenceNode; + parentNode.children.splice(insertionIdx, 0, newNode); + newNode.parent = parentNode; + }, + setTemplateContent(templateElement, contentElement) { + adapter.appendChild(templateElement, contentElement); + }, + getTemplateContent(templateElement) { + return templateElement.children[0]; + }, + setDocumentType(document2, name2, publicId, systemId) { + const data2 = serializeDoctypeContent(name2, publicId, systemId); + let doctypeNode = document2.children.find((node) => isDirective(node) && node.name === "!doctype"); + if (doctypeNode) { + doctypeNode.data = data2 !== null && data2 !== void 0 ? data2 : null; + } else { + doctypeNode = new ProcessingInstruction("!doctype", data2); + adapter.appendChild(document2, doctypeNode); + } + doctypeNode["x-name"] = name2; + doctypeNode["x-publicId"] = publicId; + doctypeNode["x-systemId"] = systemId; + }, + setDocumentMode(document2, mode) { + document2["x-mode"] = mode; + }, + getDocumentMode(document2) { + return document2["x-mode"]; + }, + detachNode(node) { + if (node.parent) { + const idx = node.parent.children.indexOf(node); + const { prev: prev2, next: next2 } = node; + node.prev = null; + node.next = null; + if (prev2) { + prev2.next = next2; + } + if (next2) { + next2.prev = prev2; + } + node.parent.children.splice(idx, 1); + node.parent = null; + } + }, + insertText(parentNode, text4) { + const lastChild = parentNode.children[parentNode.children.length - 1]; + if (lastChild && isText(lastChild)) { + lastChild.data += text4; + } else { + adapter.appendChild(parentNode, adapter.createTextNode(text4)); + } + }, + insertTextBefore(parentNode, text4, referenceNode) { + const prevNode = parentNode.children[parentNode.children.indexOf(referenceNode) - 1]; + if (prevNode && isText(prevNode)) { + prevNode.data += text4; + } else { + adapter.insertBefore(parentNode, adapter.createTextNode(text4), referenceNode); + } + }, + adoptAttributes(recipient, attrs) { + for (let i = 0; i < attrs.length; i++) { + const attrName = attrs[i].name; + if (recipient.attribs[attrName] === void 0) { + recipient.attribs[attrName] = attrs[i].value; + recipient["x-attribsNamespace"][attrName] = attrs[i].namespace; + recipient["x-attribsPrefix"][attrName] = attrs[i].prefix; + } + } + }, + getFirstChild(node) { + return node.children[0]; + }, + getChildNodes(node) { + return node.children; + }, + getParentNode(node) { + return node.parent; + }, + getAttrList(element) { + return element.attributes; + }, + getTagName(element) { + return element.name; + }, + getNamespaceURI(element) { + return element.namespace; + }, + getTextNodeContent(textNode) { + return textNode.data; + }, + getCommentNodeContent(commentNode) { + return commentNode.data; + }, + getDocumentTypeNodeName(doctypeNode) { + var _a3; + return (_a3 = doctypeNode["x-name"]) !== null && _a3 !== void 0 ? _a3 : ""; + }, + getDocumentTypeNodePublicId(doctypeNode) { + var _a3; + return (_a3 = doctypeNode["x-publicId"]) !== null && _a3 !== void 0 ? _a3 : ""; + }, + getDocumentTypeNodeSystemId(doctypeNode) { + var _a3; + return (_a3 = doctypeNode["x-systemId"]) !== null && _a3 !== void 0 ? _a3 : ""; + }, + isDocumentTypeNode(node) { + return isDirective(node) && node.name === "!doctype"; + }, + setNodeSourceCodeLocation(node, location) { + if (location) { + node.startIndex = location.startOffset; + node.endIndex = location.endOffset; + } + node.sourceCodeLocation = location; + }, + getNodeSourceCodeLocation(node) { + return node.sourceCodeLocation; + }, + updateNodeSourceCodeLocation(node, endLocation) { + if (endLocation.endOffset != null) + node.endIndex = endLocation.endOffset; + node.sourceCodeLocation = { + ...node.sourceCodeLocation, + ...endLocation + }; + } +}; + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/parsers/parse5-adapter.js +function parseWithParse5(content, options, isDocument3, context) { + const opts = { + scriptingEnabled: typeof options.scriptingEnabled === "boolean" ? options.scriptingEnabled : true, + treeAdapter: adapter, + sourceCodeLocationInfo: options.sourceCodeLocationInfo + }; + return isDocument3 ? parse4(content, opts) : parseFragment(context, content, opts); +} +var renderOpts = { treeAdapter: adapter }; +function renderWithParse5(dom) { + const nodes = "length" in dom ? dom : [dom]; + for (let index2 = 0; index2 < nodes.length; index2 += 1) { + const node = nodes[index2]; + if (isDocument(node)) { + Array.prototype.splice.call(nodes, index2, 1, ...node.children); + } + } + let result = ""; + for (let index2 = 0; index2 < nodes.length; index2 += 1) { + const node = nodes[index2]; + result += serializeOuter(node, renderOpts); + } + return result; +} + +// ../../node_modules/.pnpm/htmlparser2@8.0.2/node_modules/htmlparser2/lib/esm/Tokenizer.js +var CharCodes3; +(function(CharCodes4) { + CharCodes4[CharCodes4["Tab"] = 9] = "Tab"; + CharCodes4[CharCodes4["NewLine"] = 10] = "NewLine"; + CharCodes4[CharCodes4["FormFeed"] = 12] = "FormFeed"; + CharCodes4[CharCodes4["CarriageReturn"] = 13] = "CarriageReturn"; + CharCodes4[CharCodes4["Space"] = 32] = "Space"; + CharCodes4[CharCodes4["ExclamationMark"] = 33] = "ExclamationMark"; + CharCodes4[CharCodes4["Number"] = 35] = "Number"; + CharCodes4[CharCodes4["Amp"] = 38] = "Amp"; + CharCodes4[CharCodes4["SingleQuote"] = 39] = "SingleQuote"; + CharCodes4[CharCodes4["DoubleQuote"] = 34] = "DoubleQuote"; + CharCodes4[CharCodes4["Dash"] = 45] = "Dash"; + CharCodes4[CharCodes4["Slash"] = 47] = "Slash"; + CharCodes4[CharCodes4["Zero"] = 48] = "Zero"; + CharCodes4[CharCodes4["Nine"] = 57] = "Nine"; + CharCodes4[CharCodes4["Semi"] = 59] = "Semi"; + CharCodes4[CharCodes4["Lt"] = 60] = "Lt"; + CharCodes4[CharCodes4["Eq"] = 61] = "Eq"; + CharCodes4[CharCodes4["Gt"] = 62] = "Gt"; + CharCodes4[CharCodes4["Questionmark"] = 63] = "Questionmark"; + CharCodes4[CharCodes4["UpperA"] = 65] = "UpperA"; + CharCodes4[CharCodes4["LowerA"] = 97] = "LowerA"; + CharCodes4[CharCodes4["UpperF"] = 70] = "UpperF"; + CharCodes4[CharCodes4["LowerF"] = 102] = "LowerF"; + CharCodes4[CharCodes4["UpperZ"] = 90] = "UpperZ"; + CharCodes4[CharCodes4["LowerZ"] = 122] = "LowerZ"; + CharCodes4[CharCodes4["LowerX"] = 120] = "LowerX"; + CharCodes4[CharCodes4["OpeningSquareBracket"] = 91] = "OpeningSquareBracket"; +})(CharCodes3 || (CharCodes3 = {})); +var State2; +(function(State3) { + State3[State3["Text"] = 1] = "Text"; + State3[State3["BeforeTagName"] = 2] = "BeforeTagName"; + State3[State3["InTagName"] = 3] = "InTagName"; + State3[State3["InSelfClosingTag"] = 4] = "InSelfClosingTag"; + State3[State3["BeforeClosingTagName"] = 5] = "BeforeClosingTagName"; + State3[State3["InClosingTagName"] = 6] = "InClosingTagName"; + State3[State3["AfterClosingTagName"] = 7] = "AfterClosingTagName"; + State3[State3["BeforeAttributeName"] = 8] = "BeforeAttributeName"; + State3[State3["InAttributeName"] = 9] = "InAttributeName"; + State3[State3["AfterAttributeName"] = 10] = "AfterAttributeName"; + State3[State3["BeforeAttributeValue"] = 11] = "BeforeAttributeValue"; + State3[State3["InAttributeValueDq"] = 12] = "InAttributeValueDq"; + State3[State3["InAttributeValueSq"] = 13] = "InAttributeValueSq"; + State3[State3["InAttributeValueNq"] = 14] = "InAttributeValueNq"; + State3[State3["BeforeDeclaration"] = 15] = "BeforeDeclaration"; + State3[State3["InDeclaration"] = 16] = "InDeclaration"; + State3[State3["InProcessingInstruction"] = 17] = "InProcessingInstruction"; + State3[State3["BeforeComment"] = 18] = "BeforeComment"; + State3[State3["CDATASequence"] = 19] = "CDATASequence"; + State3[State3["InSpecialComment"] = 20] = "InSpecialComment"; + State3[State3["InCommentLike"] = 21] = "InCommentLike"; + State3[State3["BeforeSpecialS"] = 22] = "BeforeSpecialS"; + State3[State3["SpecialStartSequence"] = 23] = "SpecialStartSequence"; + State3[State3["InSpecialTag"] = 24] = "InSpecialTag"; + State3[State3["BeforeEntity"] = 25] = "BeforeEntity"; + State3[State3["BeforeNumericEntity"] = 26] = "BeforeNumericEntity"; + State3[State3["InNamedEntity"] = 27] = "InNamedEntity"; + State3[State3["InNumericEntity"] = 28] = "InNumericEntity"; + State3[State3["InHexEntity"] = 29] = "InHexEntity"; +})(State2 || (State2 = {})); +function isWhitespace3(c) { + return c === CharCodes3.Space || c === CharCodes3.NewLine || c === CharCodes3.Tab || c === CharCodes3.FormFeed || c === CharCodes3.CarriageReturn; +} +function isEndOfTagSection(c) { + return c === CharCodes3.Slash || c === CharCodes3.Gt || isWhitespace3(c); +} +function isNumber3(c) { + return c >= CharCodes3.Zero && c <= CharCodes3.Nine; +} +function isASCIIAlpha(c) { + return c >= CharCodes3.LowerA && c <= CharCodes3.LowerZ || c >= CharCodes3.UpperA && c <= CharCodes3.UpperZ; +} +function isHexDigit(c) { + return c >= CharCodes3.UpperA && c <= CharCodes3.UpperF || c >= CharCodes3.LowerA && c <= CharCodes3.LowerF; +} +var QuoteType; +(function(QuoteType2) { + QuoteType2[QuoteType2["NoValue"] = 0] = "NoValue"; + QuoteType2[QuoteType2["Unquoted"] = 1] = "Unquoted"; + QuoteType2[QuoteType2["Single"] = 2] = "Single"; + QuoteType2[QuoteType2["Double"] = 3] = "Double"; +})(QuoteType || (QuoteType = {})); +var Sequences = { + Cdata: new Uint8Array([67, 68, 65, 84, 65, 91]), + CdataEnd: new Uint8Array([93, 93, 62]), + CommentEnd: new Uint8Array([45, 45, 62]), + ScriptEnd: new Uint8Array([60, 47, 115, 99, 114, 105, 112, 116]), + StyleEnd: new Uint8Array([60, 47, 115, 116, 121, 108, 101]), + TitleEnd: new Uint8Array([60, 47, 116, 105, 116, 108, 101]) +}; +var Tokenizer2 = class { + constructor({ xmlMode = false, decodeEntities = true }, cbs) { + this.cbs = cbs; + this.state = State2.Text; + this.buffer = ""; + this.sectionStart = 0; + this.index = 0; + this.baseState = State2.Text; + this.isSpecial = false; + this.running = true; + this.offset = 0; + this.currentSequence = void 0; + this.sequenceIndex = 0; + this.trieIndex = 0; + this.trieCurrent = 0; + this.entityResult = 0; + this.entityExcess = 0; + this.xmlMode = xmlMode; + this.decodeEntities = decodeEntities; + this.entityTrie = xmlMode ? decode_data_xml_default : decode_data_html_default; + } + reset() { + this.state = State2.Text; + this.buffer = ""; + this.sectionStart = 0; + this.index = 0; + this.baseState = State2.Text; + this.currentSequence = void 0; + this.running = true; + this.offset = 0; + } + write(chunk) { + this.offset += this.buffer.length; + this.buffer = chunk; + this.parse(); + } + end() { + if (this.running) + this.finish(); + } + pause() { + this.running = false; + } + resume() { + this.running = true; + if (this.index < this.buffer.length + this.offset) { + this.parse(); + } + } + getIndex() { + return this.index; + } + getSectionStart() { + return this.sectionStart; + } + stateText(c) { + if (c === CharCodes3.Lt || !this.decodeEntities && this.fastForwardTo(CharCodes3.Lt)) { + if (this.index > this.sectionStart) { + this.cbs.ontext(this.sectionStart, this.index); + } + this.state = State2.BeforeTagName; + this.sectionStart = this.index; + } else if (this.decodeEntities && c === CharCodes3.Amp) { + this.state = State2.BeforeEntity; + } + } + stateSpecialStartSequence(c) { + const isEnd = this.sequenceIndex === this.currentSequence.length; + const isMatch = isEnd ? isEndOfTagSection(c) : (c | 32) === this.currentSequence[this.sequenceIndex]; + if (!isMatch) { + this.isSpecial = false; + } else if (!isEnd) { + this.sequenceIndex++; + return; + } + this.sequenceIndex = 0; + this.state = State2.InTagName; + this.stateInTagName(c); + } + stateInSpecialTag(c) { + if (this.sequenceIndex === this.currentSequence.length) { + if (c === CharCodes3.Gt || isWhitespace3(c)) { + const endOfText = this.index - this.currentSequence.length; + if (this.sectionStart < endOfText) { + const actualIndex = this.index; + this.index = endOfText; + this.cbs.ontext(this.sectionStart, endOfText); + this.index = actualIndex; + } + this.isSpecial = false; + this.sectionStart = endOfText + 2; + this.stateInClosingTagName(c); + return; + } + this.sequenceIndex = 0; + } + if ((c | 32) === this.currentSequence[this.sequenceIndex]) { + this.sequenceIndex += 1; + } else if (this.sequenceIndex === 0) { + if (this.currentSequence === Sequences.TitleEnd) { + if (this.decodeEntities && c === CharCodes3.Amp) { + this.state = State2.BeforeEntity; + } + } else if (this.fastForwardTo(CharCodes3.Lt)) { + this.sequenceIndex = 1; + } + } else { + this.sequenceIndex = Number(c === CharCodes3.Lt); + } + } + stateCDATASequence(c) { + if (c === Sequences.Cdata[this.sequenceIndex]) { + if (++this.sequenceIndex === Sequences.Cdata.length) { + this.state = State2.InCommentLike; + this.currentSequence = Sequences.CdataEnd; + this.sequenceIndex = 0; + this.sectionStart = this.index + 1; + } + } else { + this.sequenceIndex = 0; + this.state = State2.InDeclaration; + this.stateInDeclaration(c); + } + } + fastForwardTo(c) { + while (++this.index < this.buffer.length + this.offset) { + if (this.buffer.charCodeAt(this.index - this.offset) === c) { + return true; + } + } + this.index = this.buffer.length + this.offset - 1; + return false; + } + stateInCommentLike(c) { + if (c === this.currentSequence[this.sequenceIndex]) { + if (++this.sequenceIndex === this.currentSequence.length) { + if (this.currentSequence === Sequences.CdataEnd) { + this.cbs.oncdata(this.sectionStart, this.index, 2); + } else { + this.cbs.oncomment(this.sectionStart, this.index, 2); + } + this.sequenceIndex = 0; + this.sectionStart = this.index + 1; + this.state = State2.Text; + } + } else if (this.sequenceIndex === 0) { + if (this.fastForwardTo(this.currentSequence[0])) { + this.sequenceIndex = 1; + } + } else if (c !== this.currentSequence[this.sequenceIndex - 1]) { + this.sequenceIndex = 0; + } + } + isTagStartChar(c) { + return this.xmlMode ? !isEndOfTagSection(c) : isASCIIAlpha(c); + } + startSpecial(sequence, offset) { + this.isSpecial = true; + this.currentSequence = sequence; + this.sequenceIndex = offset; + this.state = State2.SpecialStartSequence; + } + stateBeforeTagName(c) { + if (c === CharCodes3.ExclamationMark) { + this.state = State2.BeforeDeclaration; + this.sectionStart = this.index + 1; + } else if (c === CharCodes3.Questionmark) { + this.state = State2.InProcessingInstruction; + this.sectionStart = this.index + 1; + } else if (this.isTagStartChar(c)) { + const lower = c | 32; + this.sectionStart = this.index; + if (!this.xmlMode && lower === Sequences.TitleEnd[2]) { + this.startSpecial(Sequences.TitleEnd, 3); + } else { + this.state = !this.xmlMode && lower === Sequences.ScriptEnd[2] ? State2.BeforeSpecialS : State2.InTagName; + } + } else if (c === CharCodes3.Slash) { + this.state = State2.BeforeClosingTagName; + } else { + this.state = State2.Text; + this.stateText(c); + } + } + stateInTagName(c) { + if (isEndOfTagSection(c)) { + this.cbs.onopentagname(this.sectionStart, this.index); + this.sectionStart = -1; + this.state = State2.BeforeAttributeName; + this.stateBeforeAttributeName(c); + } + } + stateBeforeClosingTagName(c) { + if (isWhitespace3(c)) { + } else if (c === CharCodes3.Gt) { + this.state = State2.Text; + } else { + this.state = this.isTagStartChar(c) ? State2.InClosingTagName : State2.InSpecialComment; + this.sectionStart = this.index; + } + } + stateInClosingTagName(c) { + if (c === CharCodes3.Gt || isWhitespace3(c)) { + this.cbs.onclosetag(this.sectionStart, this.index); + this.sectionStart = -1; + this.state = State2.AfterClosingTagName; + this.stateAfterClosingTagName(c); + } + } + stateAfterClosingTagName(c) { + if (c === CharCodes3.Gt || this.fastForwardTo(CharCodes3.Gt)) { + this.state = State2.Text; + this.baseState = State2.Text; + this.sectionStart = this.index + 1; + } + } + stateBeforeAttributeName(c) { + if (c === CharCodes3.Gt) { + this.cbs.onopentagend(this.index); + if (this.isSpecial) { + this.state = State2.InSpecialTag; + this.sequenceIndex = 0; + } else { + this.state = State2.Text; + } + this.baseState = this.state; + this.sectionStart = this.index + 1; + } else if (c === CharCodes3.Slash) { + this.state = State2.InSelfClosingTag; + } else if (!isWhitespace3(c)) { + this.state = State2.InAttributeName; + this.sectionStart = this.index; + } + } + stateInSelfClosingTag(c) { + if (c === CharCodes3.Gt) { + this.cbs.onselfclosingtag(this.index); + this.state = State2.Text; + this.baseState = State2.Text; + this.sectionStart = this.index + 1; + this.isSpecial = false; + } else if (!isWhitespace3(c)) { + this.state = State2.BeforeAttributeName; + this.stateBeforeAttributeName(c); + } + } + stateInAttributeName(c) { + if (c === CharCodes3.Eq || isEndOfTagSection(c)) { + this.cbs.onattribname(this.sectionStart, this.index); + this.sectionStart = -1; + this.state = State2.AfterAttributeName; + this.stateAfterAttributeName(c); + } + } + stateAfterAttributeName(c) { + if (c === CharCodes3.Eq) { + this.state = State2.BeforeAttributeValue; + } else if (c === CharCodes3.Slash || c === CharCodes3.Gt) { + this.cbs.onattribend(QuoteType.NoValue, this.index); + this.state = State2.BeforeAttributeName; + this.stateBeforeAttributeName(c); + } else if (!isWhitespace3(c)) { + this.cbs.onattribend(QuoteType.NoValue, this.index); + this.state = State2.InAttributeName; + this.sectionStart = this.index; + } + } + stateBeforeAttributeValue(c) { + if (c === CharCodes3.DoubleQuote) { + this.state = State2.InAttributeValueDq; + this.sectionStart = this.index + 1; + } else if (c === CharCodes3.SingleQuote) { + this.state = State2.InAttributeValueSq; + this.sectionStart = this.index + 1; + } else if (!isWhitespace3(c)) { + this.sectionStart = this.index; + this.state = State2.InAttributeValueNq; + this.stateInAttributeValueNoQuotes(c); + } + } + handleInAttributeValue(c, quote) { + if (c === quote || !this.decodeEntities && this.fastForwardTo(quote)) { + this.cbs.onattribdata(this.sectionStart, this.index); + this.sectionStart = -1; + this.cbs.onattribend(quote === CharCodes3.DoubleQuote ? QuoteType.Double : QuoteType.Single, this.index); + this.state = State2.BeforeAttributeName; + } else if (this.decodeEntities && c === CharCodes3.Amp) { + this.baseState = this.state; + this.state = State2.BeforeEntity; + } + } + stateInAttributeValueDoubleQuotes(c) { + this.handleInAttributeValue(c, CharCodes3.DoubleQuote); + } + stateInAttributeValueSingleQuotes(c) { + this.handleInAttributeValue(c, CharCodes3.SingleQuote); + } + stateInAttributeValueNoQuotes(c) { + if (isWhitespace3(c) || c === CharCodes3.Gt) { + this.cbs.onattribdata(this.sectionStart, this.index); + this.sectionStart = -1; + this.cbs.onattribend(QuoteType.Unquoted, this.index); + this.state = State2.BeforeAttributeName; + this.stateBeforeAttributeName(c); + } else if (this.decodeEntities && c === CharCodes3.Amp) { + this.baseState = this.state; + this.state = State2.BeforeEntity; + } + } + stateBeforeDeclaration(c) { + if (c === CharCodes3.OpeningSquareBracket) { + this.state = State2.CDATASequence; + this.sequenceIndex = 0; + } else { + this.state = c === CharCodes3.Dash ? State2.BeforeComment : State2.InDeclaration; + } + } + stateInDeclaration(c) { + if (c === CharCodes3.Gt || this.fastForwardTo(CharCodes3.Gt)) { + this.cbs.ondeclaration(this.sectionStart, this.index); + this.state = State2.Text; + this.sectionStart = this.index + 1; + } + } + stateInProcessingInstruction(c) { + if (c === CharCodes3.Gt || this.fastForwardTo(CharCodes3.Gt)) { + this.cbs.onprocessinginstruction(this.sectionStart, this.index); + this.state = State2.Text; + this.sectionStart = this.index + 1; + } + } + stateBeforeComment(c) { + if (c === CharCodes3.Dash) { + this.state = State2.InCommentLike; + this.currentSequence = Sequences.CommentEnd; + this.sequenceIndex = 2; + this.sectionStart = this.index + 1; + } else { + this.state = State2.InDeclaration; + } + } + stateInSpecialComment(c) { + if (c === CharCodes3.Gt || this.fastForwardTo(CharCodes3.Gt)) { + this.cbs.oncomment(this.sectionStart, this.index, 0); + this.state = State2.Text; + this.sectionStart = this.index + 1; + } + } + stateBeforeSpecialS(c) { + const lower = c | 32; + if (lower === Sequences.ScriptEnd[3]) { + this.startSpecial(Sequences.ScriptEnd, 4); + } else if (lower === Sequences.StyleEnd[3]) { + this.startSpecial(Sequences.StyleEnd, 4); + } else { + this.state = State2.InTagName; + this.stateInTagName(c); + } + } + stateBeforeEntity(c) { + this.entityExcess = 1; + this.entityResult = 0; + if (c === CharCodes3.Number) { + this.state = State2.BeforeNumericEntity; + } else if (c === CharCodes3.Amp) { + } else { + this.trieIndex = 0; + this.trieCurrent = this.entityTrie[0]; + this.state = State2.InNamedEntity; + this.stateInNamedEntity(c); + } + } + stateInNamedEntity(c) { + this.entityExcess += 1; + this.trieIndex = determineBranch(this.entityTrie, this.trieCurrent, this.trieIndex + 1, c); + if (this.trieIndex < 0) { + this.emitNamedEntity(); + this.index--; + return; + } + this.trieCurrent = this.entityTrie[this.trieIndex]; + const masked = this.trieCurrent & BinTrieFlags.VALUE_LENGTH; + if (masked) { + const valueLength = (masked >> 14) - 1; + if (!this.allowLegacyEntity() && c !== CharCodes3.Semi) { + this.trieIndex += valueLength; + } else { + const entityStart = this.index - this.entityExcess + 1; + if (entityStart > this.sectionStart) { + this.emitPartial(this.sectionStart, entityStart); + } + this.entityResult = this.trieIndex; + this.trieIndex += valueLength; + this.entityExcess = 0; + this.sectionStart = this.index + 1; + if (valueLength === 0) { + this.emitNamedEntity(); + } + } + } + } + emitNamedEntity() { + this.state = this.baseState; + if (this.entityResult === 0) { + return; + } + const valueLength = (this.entityTrie[this.entityResult] & BinTrieFlags.VALUE_LENGTH) >> 14; + switch (valueLength) { + case 1: { + this.emitCodePoint(this.entityTrie[this.entityResult] & ~BinTrieFlags.VALUE_LENGTH); + break; + } + case 2: { + this.emitCodePoint(this.entityTrie[this.entityResult + 1]); + break; + } + case 3: { + this.emitCodePoint(this.entityTrie[this.entityResult + 1]); + this.emitCodePoint(this.entityTrie[this.entityResult + 2]); + } + } + } + stateBeforeNumericEntity(c) { + if ((c | 32) === CharCodes3.LowerX) { + this.entityExcess++; + this.state = State2.InHexEntity; + } else { + this.state = State2.InNumericEntity; + this.stateInNumericEntity(c); + } + } + emitNumericEntity(strict) { + const entityStart = this.index - this.entityExcess - 1; + const numberStart = entityStart + 2 + Number(this.state === State2.InHexEntity); + if (numberStart !== this.index) { + if (entityStart > this.sectionStart) { + this.emitPartial(this.sectionStart, entityStart); + } + this.sectionStart = this.index + Number(strict); + this.emitCodePoint(replaceCodePoint(this.entityResult)); + } + this.state = this.baseState; + } + stateInNumericEntity(c) { + if (c === CharCodes3.Semi) { + this.emitNumericEntity(true); + } else if (isNumber3(c)) { + this.entityResult = this.entityResult * 10 + (c - CharCodes3.Zero); + this.entityExcess++; + } else { + if (this.allowLegacyEntity()) { + this.emitNumericEntity(false); + } else { + this.state = this.baseState; + } + this.index--; + } + } + stateInHexEntity(c) { + if (c === CharCodes3.Semi) { + this.emitNumericEntity(true); + } else if (isNumber3(c)) { + this.entityResult = this.entityResult * 16 + (c - CharCodes3.Zero); + this.entityExcess++; + } else if (isHexDigit(c)) { + this.entityResult = this.entityResult * 16 + ((c | 32) - CharCodes3.LowerA + 10); + this.entityExcess++; + } else { + if (this.allowLegacyEntity()) { + this.emitNumericEntity(false); + } else { + this.state = this.baseState; + } + this.index--; + } + } + allowLegacyEntity() { + return !this.xmlMode && (this.baseState === State2.Text || this.baseState === State2.InSpecialTag); + } + cleanup() { + if (this.running && this.sectionStart !== this.index) { + if (this.state === State2.Text || this.state === State2.InSpecialTag && this.sequenceIndex === 0) { + this.cbs.ontext(this.sectionStart, this.index); + this.sectionStart = this.index; + } else if (this.state === State2.InAttributeValueDq || this.state === State2.InAttributeValueSq || this.state === State2.InAttributeValueNq) { + this.cbs.onattribdata(this.sectionStart, this.index); + this.sectionStart = this.index; + } + } + } + shouldContinue() { + return this.index < this.buffer.length + this.offset && this.running; + } + parse() { + while (this.shouldContinue()) { + const c = this.buffer.charCodeAt(this.index - this.offset); + switch (this.state) { + case State2.Text: { + this.stateText(c); + break; + } + case State2.SpecialStartSequence: { + this.stateSpecialStartSequence(c); + break; + } + case State2.InSpecialTag: { + this.stateInSpecialTag(c); + break; + } + case State2.CDATASequence: { + this.stateCDATASequence(c); + break; + } + case State2.InAttributeValueDq: { + this.stateInAttributeValueDoubleQuotes(c); + break; + } + case State2.InAttributeName: { + this.stateInAttributeName(c); + break; + } + case State2.InCommentLike: { + this.stateInCommentLike(c); + break; + } + case State2.InSpecialComment: { + this.stateInSpecialComment(c); + break; + } + case State2.BeforeAttributeName: { + this.stateBeforeAttributeName(c); + break; + } + case State2.InTagName: { + this.stateInTagName(c); + break; + } + case State2.InClosingTagName: { + this.stateInClosingTagName(c); + break; + } + case State2.BeforeTagName: { + this.stateBeforeTagName(c); + break; + } + case State2.AfterAttributeName: { + this.stateAfterAttributeName(c); + break; + } + case State2.InAttributeValueSq: { + this.stateInAttributeValueSingleQuotes(c); + break; + } + case State2.BeforeAttributeValue: { + this.stateBeforeAttributeValue(c); + break; + } + case State2.BeforeClosingTagName: { + this.stateBeforeClosingTagName(c); + break; + } + case State2.AfterClosingTagName: { + this.stateAfterClosingTagName(c); + break; + } + case State2.BeforeSpecialS: { + this.stateBeforeSpecialS(c); + break; + } + case State2.InAttributeValueNq: { + this.stateInAttributeValueNoQuotes(c); + break; + } + case State2.InSelfClosingTag: { + this.stateInSelfClosingTag(c); + break; + } + case State2.InDeclaration: { + this.stateInDeclaration(c); + break; + } + case State2.BeforeDeclaration: { + this.stateBeforeDeclaration(c); + break; + } + case State2.BeforeComment: { + this.stateBeforeComment(c); + break; + } + case State2.InProcessingInstruction: { + this.stateInProcessingInstruction(c); + break; + } + case State2.InNamedEntity: { + this.stateInNamedEntity(c); + break; + } + case State2.BeforeEntity: { + this.stateBeforeEntity(c); + break; + } + case State2.InHexEntity: { + this.stateInHexEntity(c); + break; + } + case State2.InNumericEntity: { + this.stateInNumericEntity(c); + break; + } + default: { + this.stateBeforeNumericEntity(c); + } + } + this.index++; + } + this.cleanup(); + } + finish() { + if (this.state === State2.InNamedEntity) { + this.emitNamedEntity(); + } + if (this.sectionStart < this.index) { + this.handleTrailingData(); + } + this.cbs.onend(); + } + handleTrailingData() { + const endIndex = this.buffer.length + this.offset; + if (this.state === State2.InCommentLike) { + if (this.currentSequence === Sequences.CdataEnd) { + this.cbs.oncdata(this.sectionStart, endIndex, 0); + } else { + this.cbs.oncomment(this.sectionStart, endIndex, 0); + } + } else if (this.state === State2.InNumericEntity && this.allowLegacyEntity()) { + this.emitNumericEntity(false); + } else if (this.state === State2.InHexEntity && this.allowLegacyEntity()) { + this.emitNumericEntity(false); + } else if (this.state === State2.InTagName || this.state === State2.BeforeAttributeName || this.state === State2.BeforeAttributeValue || this.state === State2.AfterAttributeName || this.state === State2.InAttributeName || this.state === State2.InAttributeValueSq || this.state === State2.InAttributeValueDq || this.state === State2.InAttributeValueNq || this.state === State2.InClosingTagName) { + } else { + this.cbs.ontext(this.sectionStart, endIndex); + } + } + emitPartial(start, endIndex) { + if (this.baseState !== State2.Text && this.baseState !== State2.InSpecialTag) { + this.cbs.onattribdata(start, endIndex); + } else { + this.cbs.ontext(start, endIndex); + } + } + emitCodePoint(cp) { + if (this.baseState !== State2.Text && this.baseState !== State2.InSpecialTag) { + this.cbs.onattribentity(cp); + } else { + this.cbs.ontextentity(cp); + } + } +}; + +// ../../node_modules/.pnpm/htmlparser2@8.0.2/node_modules/htmlparser2/lib/esm/Parser.js +var formTags = /* @__PURE__ */ new Set([ + "input", + "option", + "optgroup", + "select", + "button", + "datalist", + "textarea" +]); +var pTag = /* @__PURE__ */ new Set(["p"]); +var tableSectionTags = /* @__PURE__ */ new Set(["thead", "tbody"]); +var ddtTags = /* @__PURE__ */ new Set(["dd", "dt"]); +var rtpTags = /* @__PURE__ */ new Set(["rt", "rp"]); +var openImpliesClose = /* @__PURE__ */ new Map([ + ["tr", /* @__PURE__ */ new Set(["tr", "th", "td"])], + ["th", /* @__PURE__ */ new Set(["th"])], + ["td", /* @__PURE__ */ new Set(["thead", "th", "td"])], + ["body", /* @__PURE__ */ new Set(["head", "link", "script"])], + ["li", /* @__PURE__ */ new Set(["li"])], + ["p", pTag], + ["h1", pTag], + ["h2", pTag], + ["h3", pTag], + ["h4", pTag], + ["h5", pTag], + ["h6", pTag], + ["select", formTags], + ["input", formTags], + ["output", formTags], + ["button", formTags], + ["datalist", formTags], + ["textarea", formTags], + ["option", /* @__PURE__ */ new Set(["option"])], + ["optgroup", /* @__PURE__ */ new Set(["optgroup", "option"])], + ["dd", ddtTags], + ["dt", ddtTags], + ["address", pTag], + ["article", pTag], + ["aside", pTag], + ["blockquote", pTag], + ["details", pTag], + ["div", pTag], + ["dl", pTag], + ["fieldset", pTag], + ["figcaption", pTag], + ["figure", pTag], + ["footer", pTag], + ["form", pTag], + ["header", pTag], + ["hr", pTag], + ["main", pTag], + ["nav", pTag], + ["ol", pTag], + ["pre", pTag], + ["section", pTag], + ["table", pTag], + ["ul", pTag], + ["rt", rtpTags], + ["rp", rtpTags], + ["tbody", tableSectionTags], + ["tfoot", tableSectionTags] +]); +var voidElements = /* @__PURE__ */ new Set([ + "area", + "base", + "basefont", + "br", + "col", + "command", + "embed", + "frame", + "hr", + "img", + "input", + "isindex", + "keygen", + "link", + "meta", + "param", + "source", + "track", + "wbr" +]); +var foreignContextElements = /* @__PURE__ */ new Set(["math", "svg"]); +var htmlIntegrationElements = /* @__PURE__ */ new Set([ + "mi", + "mo", + "mn", + "ms", + "mtext", + "annotation-xml", + "foreignobject", + "desc", + "title" +]); +var reNameEnd = /\s|\//; +var Parser2 = class { + constructor(cbs, options = {}) { + var _a3, _b, _c, _d, _e; + this.options = options; + this.startIndex = 0; + this.endIndex = 0; + this.openTagStart = 0; + this.tagname = ""; + this.attribname = ""; + this.attribvalue = ""; + this.attribs = null; + this.stack = []; + this.foreignContext = []; + this.buffers = []; + this.bufferOffset = 0; + this.writeIndex = 0; + this.ended = false; + this.cbs = cbs !== null && cbs !== void 0 ? cbs : {}; + this.lowerCaseTagNames = (_a3 = options.lowerCaseTags) !== null && _a3 !== void 0 ? _a3 : !options.xmlMode; + this.lowerCaseAttributeNames = (_b = options.lowerCaseAttributeNames) !== null && _b !== void 0 ? _b : !options.xmlMode; + this.tokenizer = new ((_c = options.Tokenizer) !== null && _c !== void 0 ? _c : Tokenizer2)(this.options, this); + (_e = (_d = this.cbs).onparserinit) === null || _e === void 0 ? void 0 : _e.call(_d, this); + } + ontext(start, endIndex) { + var _a3, _b; + const data2 = this.getSlice(start, endIndex); + this.endIndex = endIndex - 1; + (_b = (_a3 = this.cbs).ontext) === null || _b === void 0 ? void 0 : _b.call(_a3, data2); + this.startIndex = endIndex; + } + ontextentity(cp) { + var _a3, _b; + const index2 = this.tokenizer.getSectionStart(); + this.endIndex = index2 - 1; + (_b = (_a3 = this.cbs).ontext) === null || _b === void 0 ? void 0 : _b.call(_a3, fromCodePoint(cp)); + this.startIndex = index2; + } + isVoidElement(name2) { + return !this.options.xmlMode && voidElements.has(name2); + } + onopentagname(start, endIndex) { + this.endIndex = endIndex; + let name2 = this.getSlice(start, endIndex); + if (this.lowerCaseTagNames) { + name2 = name2.toLowerCase(); + } + this.emitOpenTag(name2); + } + emitOpenTag(name2) { + var _a3, _b, _c, _d; + this.openTagStart = this.startIndex; + this.tagname = name2; + const impliesClose = !this.options.xmlMode && openImpliesClose.get(name2); + if (impliesClose) { + while (this.stack.length > 0 && impliesClose.has(this.stack[this.stack.length - 1])) { + const element = this.stack.pop(); + (_b = (_a3 = this.cbs).onclosetag) === null || _b === void 0 ? void 0 : _b.call(_a3, element, true); + } + } + if (!this.isVoidElement(name2)) { + this.stack.push(name2); + if (foreignContextElements.has(name2)) { + this.foreignContext.push(true); + } else if (htmlIntegrationElements.has(name2)) { + this.foreignContext.push(false); + } + } + (_d = (_c = this.cbs).onopentagname) === null || _d === void 0 ? void 0 : _d.call(_c, name2); + if (this.cbs.onopentag) + this.attribs = {}; + } + endOpenTag(isImplied) { + var _a3, _b; + this.startIndex = this.openTagStart; + if (this.attribs) { + (_b = (_a3 = this.cbs).onopentag) === null || _b === void 0 ? void 0 : _b.call(_a3, this.tagname, this.attribs, isImplied); + this.attribs = null; + } + if (this.cbs.onclosetag && this.isVoidElement(this.tagname)) { + this.cbs.onclosetag(this.tagname, true); + } + this.tagname = ""; + } + onopentagend(endIndex) { + this.endIndex = endIndex; + this.endOpenTag(false); + this.startIndex = endIndex + 1; + } + onclosetag(start, endIndex) { + var _a3, _b, _c, _d, _e, _f; + this.endIndex = endIndex; + let name2 = this.getSlice(start, endIndex); + if (this.lowerCaseTagNames) { + name2 = name2.toLowerCase(); + } + if (foreignContextElements.has(name2) || htmlIntegrationElements.has(name2)) { + this.foreignContext.pop(); + } + if (!this.isVoidElement(name2)) { + const pos = this.stack.lastIndexOf(name2); + if (pos !== -1) { + if (this.cbs.onclosetag) { + let count = this.stack.length - pos; + while (count--) { + this.cbs.onclosetag(this.stack.pop(), count !== 0); + } + } else + this.stack.length = pos; + } else if (!this.options.xmlMode && name2 === "p") { + this.emitOpenTag("p"); + this.closeCurrentTag(true); + } + } else if (!this.options.xmlMode && name2 === "br") { + (_b = (_a3 = this.cbs).onopentagname) === null || _b === void 0 ? void 0 : _b.call(_a3, "br"); + (_d = (_c = this.cbs).onopentag) === null || _d === void 0 ? void 0 : _d.call(_c, "br", {}, true); + (_f = (_e = this.cbs).onclosetag) === null || _f === void 0 ? void 0 : _f.call(_e, "br", false); + } + this.startIndex = endIndex + 1; + } + onselfclosingtag(endIndex) { + this.endIndex = endIndex; + if (this.options.xmlMode || this.options.recognizeSelfClosing || this.foreignContext[this.foreignContext.length - 1]) { + this.closeCurrentTag(false); + this.startIndex = endIndex + 1; + } else { + this.onopentagend(endIndex); + } + } + closeCurrentTag(isOpenImplied) { + var _a3, _b; + const name2 = this.tagname; + this.endOpenTag(isOpenImplied); + if (this.stack[this.stack.length - 1] === name2) { + (_b = (_a3 = this.cbs).onclosetag) === null || _b === void 0 ? void 0 : _b.call(_a3, name2, !isOpenImplied); + this.stack.pop(); + } + } + onattribname(start, endIndex) { + this.startIndex = start; + const name2 = this.getSlice(start, endIndex); + this.attribname = this.lowerCaseAttributeNames ? name2.toLowerCase() : name2; + } + onattribdata(start, endIndex) { + this.attribvalue += this.getSlice(start, endIndex); + } + onattribentity(cp) { + this.attribvalue += fromCodePoint(cp); + } + onattribend(quote, endIndex) { + var _a3, _b; + this.endIndex = endIndex; + (_b = (_a3 = this.cbs).onattribute) === null || _b === void 0 ? void 0 : _b.call(_a3, this.attribname, this.attribvalue, quote === QuoteType.Double ? '"' : quote === QuoteType.Single ? "'" : quote === QuoteType.NoValue ? void 0 : null); + if (this.attribs && !Object.prototype.hasOwnProperty.call(this.attribs, this.attribname)) { + this.attribs[this.attribname] = this.attribvalue; + } + this.attribvalue = ""; + } + getInstructionName(value) { + const index2 = value.search(reNameEnd); + let name2 = index2 < 0 ? value : value.substr(0, index2); + if (this.lowerCaseTagNames) { + name2 = name2.toLowerCase(); + } + return name2; + } + ondeclaration(start, endIndex) { + this.endIndex = endIndex; + const value = this.getSlice(start, endIndex); + if (this.cbs.onprocessinginstruction) { + const name2 = this.getInstructionName(value); + this.cbs.onprocessinginstruction(`!${name2}`, `!${value}`); + } + this.startIndex = endIndex + 1; + } + onprocessinginstruction(start, endIndex) { + this.endIndex = endIndex; + const value = this.getSlice(start, endIndex); + if (this.cbs.onprocessinginstruction) { + const name2 = this.getInstructionName(value); + this.cbs.onprocessinginstruction(`?${name2}`, `?${value}`); + } + this.startIndex = endIndex + 1; + } + oncomment(start, endIndex, offset) { + var _a3, _b, _c, _d; + this.endIndex = endIndex; + (_b = (_a3 = this.cbs).oncomment) === null || _b === void 0 ? void 0 : _b.call(_a3, this.getSlice(start, endIndex - offset)); + (_d = (_c = this.cbs).oncommentend) === null || _d === void 0 ? void 0 : _d.call(_c); + this.startIndex = endIndex + 1; + } + oncdata(start, endIndex, offset) { + var _a3, _b, _c, _d, _e, _f, _g, _h, _j, _k; + this.endIndex = endIndex; + const value = this.getSlice(start, endIndex - offset); + if (this.options.xmlMode || this.options.recognizeCDATA) { + (_b = (_a3 = this.cbs).oncdatastart) === null || _b === void 0 ? void 0 : _b.call(_a3); + (_d = (_c = this.cbs).ontext) === null || _d === void 0 ? void 0 : _d.call(_c, value); + (_f = (_e = this.cbs).oncdataend) === null || _f === void 0 ? void 0 : _f.call(_e); + } else { + (_h = (_g = this.cbs).oncomment) === null || _h === void 0 ? void 0 : _h.call(_g, `[CDATA[${value}]]`); + (_k = (_j = this.cbs).oncommentend) === null || _k === void 0 ? void 0 : _k.call(_j); + } + this.startIndex = endIndex + 1; + } + onend() { + var _a3, _b; + if (this.cbs.onclosetag) { + this.endIndex = this.startIndex; + for (let index2 = this.stack.length; index2 > 0; this.cbs.onclosetag(this.stack[--index2], true)) + ; + } + (_b = (_a3 = this.cbs).onend) === null || _b === void 0 ? void 0 : _b.call(_a3); + } + reset() { + var _a3, _b, _c, _d; + (_b = (_a3 = this.cbs).onreset) === null || _b === void 0 ? void 0 : _b.call(_a3); + this.tokenizer.reset(); + this.tagname = ""; + this.attribname = ""; + this.attribs = null; + this.stack.length = 0; + this.startIndex = 0; + this.endIndex = 0; + (_d = (_c = this.cbs).onparserinit) === null || _d === void 0 ? void 0 : _d.call(_c, this); + this.buffers.length = 0; + this.bufferOffset = 0; + this.writeIndex = 0; + this.ended = false; + } + parseComplete(data2) { + this.reset(); + this.end(data2); + } + getSlice(start, end2) { + while (start - this.bufferOffset >= this.buffers[0].length) { + this.shiftBuffer(); + } + let slice2 = this.buffers[0].slice(start - this.bufferOffset, end2 - this.bufferOffset); + while (end2 - this.bufferOffset > this.buffers[0].length) { + this.shiftBuffer(); + slice2 += this.buffers[0].slice(0, end2 - this.bufferOffset); + } + return slice2; + } + shiftBuffer() { + this.bufferOffset += this.buffers[0].length; + this.writeIndex--; + this.buffers.shift(); + } + write(chunk) { + var _a3, _b; + if (this.ended) { + (_b = (_a3 = this.cbs).onerror) === null || _b === void 0 ? void 0 : _b.call(_a3, new Error(".write() after done!")); + return; + } + this.buffers.push(chunk); + if (this.tokenizer.running) { + this.tokenizer.write(chunk); + this.writeIndex++; + } + } + end(chunk) { + var _a3, _b; + if (this.ended) { + (_b = (_a3 = this.cbs).onerror) === null || _b === void 0 ? void 0 : _b.call(_a3, new Error(".end() after done!")); + return; + } + if (chunk) + this.write(chunk); + this.ended = true; + this.tokenizer.end(); + } + pause() { + this.tokenizer.pause(); + } + resume() { + this.tokenizer.resume(); + while (this.tokenizer.running && this.writeIndex < this.buffers.length) { + this.tokenizer.write(this.buffers[this.writeIndex++]); + } + if (this.ended) + this.tokenizer.end(); + } + parseChunk(chunk) { + this.write(chunk); + } + done(chunk) { + this.end(chunk); + } +}; + +// ../../node_modules/.pnpm/htmlparser2@8.0.2/node_modules/htmlparser2/lib/esm/index.js +function parseDocument(data2, options) { + const handler = new DomHandler(void 0, options); + new Parser2(handler, options).end(data2); + return handler.root; +} + +// ../../node_modules/.pnpm/cheerio@1.0.0-rc.12/node_modules/cheerio/lib/esm/index.js +var parse5 = getParse((content, options, isDocument3, context) => options.xmlMode || options._useHtmlParser2 ? parseDocument(content, options) : parseWithParse5(content, options, isDocument3, context)); +var load = getLoad(parse5, (dom, options) => options.xmlMode || options._useHtmlParser2 ? esm_default(dom, options) : renderWithParse5(dom)); +var esm_default2 = load([]); +var { contains: contains2 } = static_exports; +var { merge: merge2 } = static_exports; +var { parseHTML: parseHTML2 } = static_exports; +var { root: root2 } = static_exports; + +// ../../node_modules/.pnpm/markmap-html-parser@0.17.1_markmap-common@0.18.9/node_modules/markmap-html-parser/dist/index.mjs +var defaultSelectorRules = { + "div,p": ({ $node }) => ({ + queue: $node.children() + }), + "h1,h2,h3,h4,h5,h6": ({ $node, getContent }) => ({ + ...getContent($node.contents()) + }), + "ul,ol": ({ $node }) => ({ + queue: $node.children(), + nesting: true + }), + li: ({ $node, getContent }) => { + const queue = $node.children().filter("ul,ol"); + let content; + if ($node.contents().first().is("div,p")) { + content = getContent($node.children().first()); + } else { + let $contents = $node.contents(); + const i = $contents.index(queue); + if (i >= 0) + $contents = $contents.slice(0, i); + content = getContent($contents); + } + return { + queue, + nesting: true, + ...content + }; + }, + "table,pre,p>img:only-child": ({ $node, getContent }) => ({ + ...getContent($node) + }) +}; +var defaultOptions2 = { + selector: "h1,h2,h3,h4,h5,h6,ul,ol,li,table,pre,p>img:only-child", + selectorRules: defaultSelectorRules +}; +var MARKMAP_COMMENT_PREFIX = "markmap: "; +var SELECTOR_HEADING = /^h[1-6]$/; +var SELECTOR_LIST = /^[uo]l$/; +var SELECTOR_LIST_ITEM = /^li$/; +function getLevel(tagName) { + if (SELECTOR_HEADING.test(tagName)) + return +tagName[1]; + if (SELECTOR_LIST.test(tagName)) + return 8; + if (SELECTOR_LIST_ITEM.test(tagName)) + return 9; + return 7; +} +function parseHtml(html3, opts) { + const options = { + ...defaultOptions2, + ...opts + }; + const $2 = load(html3); + const $root = $2("body"); + let id = 0; + const rootNode = { + id, + tag: "", + html: "", + level: 0, + parent: 0, + childrenLevel: 0, + children: [] + }; + const headingStack = []; + let skippingHeading = 0; + checkNodes($root.children()); + return rootNode; + function addChild(props) { + var _a3; + const { parent: parent2 } = props; + const node = { + id: ++id, + tag: props.tagName, + level: props.level, + html: props.html, + childrenLevel: 0, + children: props.nesting ? [] : void 0, + parent: parent2.id + }; + if ((_a3 = props.comments) == null ? void 0 : _a3.length) { + node.comments = props.comments; + } + if (Object.keys(props.data || {}).length) { + node.data = props.data; + } + if (parent2.children) { + if (parent2.childrenLevel === 0 || parent2.childrenLevel > node.level) { + parent2.children = []; + parent2.childrenLevel = node.level; + } + if (parent2.childrenLevel === node.level) { + parent2.children.push(node); + } + } + return node; + } + function getCurrentHeading(level) { + let heading2; + while ((heading2 = headingStack.at(-1)) && heading2.level >= level) { + headingStack.pop(); + } + return heading2 || rootNode; + } + function getContent($node) { + var _a3; + const result = extractMagicComments($node); + const html22 = (_a3 = $2.html(result.$node)) == null ? void 0 : _a3.trimEnd(); + return { comments: result.comments, html: html22 }; + } + function extractMagicComments($node) { + const comments = []; + $node = $node.filter((_, child) => { + if (child.type === "comment") { + const data2 = child.data.trim(); + if (data2.startsWith(MARKMAP_COMMENT_PREFIX)) { + comments.push(data2.slice(MARKMAP_COMMENT_PREFIX.length).trim()); + return false; + } + } + return true; + }); + return { $node, comments }; + } + function checkNodes($els, node) { + $els.each((_, child) => { + var _a3; + const $child = $2(child); + const rule = (_a3 = Object.entries(options.selectorRules).find( + ([selector]) => $child.is(selector) + )) == null ? void 0 : _a3[1]; + const result = rule == null ? void 0 : rule({ $node: $child, $: $2, getContent }); + if ((result == null ? void 0 : result.queue) && !result.nesting) { + checkNodes(result.queue, node); + return; + } + const level = getLevel(child.tagName); + if (!result) { + if (level <= 6) { + skippingHeading = level; + } + return; + } + if (skippingHeading > 0 && level > skippingHeading) + return; + if (!$child.is(options.selector)) + return; + skippingHeading = 0; + const isHeading = level <= 6; + let data2 = $child.data(); + if ($child.children("code:only-child").length) { + data2 = { + ...data2, + ...$child.children().data() + }; + } + const childNode = addChild({ + parent: node || getCurrentHeading(level), + nesting: !!result.queue || isHeading, + tagName: child.tagName, + level, + html: result.html || "", + comments: result.comments, + data: data2 + }); + if (isHeading) + headingStack.push(childNode); + if (result.queue) + checkNodes(result.queue, childNode); + }); + } +} +function convertNode(htmlRoot) { + return walkTree(htmlRoot, (htmlNode, next2) => { + const node = { + content: htmlNode.html, + children: next2() || [] + }; + if (htmlNode.data) { + node.payload = { + ...htmlNode.data + }; + } + if (htmlNode.comments) { + if (htmlNode.comments.includes("foldAll")) { + node.payload = { ...node.payload, fold: 2 }; + } else if (htmlNode.comments.includes("fold")) { + node.payload = { ...node.payload, fold: 1 }; + } + } + return node; + }); +} +function buildTree(html3, opts) { + const htmlRoot = parseHtml(html3, opts); + return convertNode(htmlRoot); +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/common/utils.mjs +var utils_exports = {}; +__export(utils_exports, { + arrayReplaceAt: () => arrayReplaceAt, + assign: () => assign, + escapeHtml: () => escapeHtml, + escapeRE: () => escapeRE, + fromCodePoint: () => fromCodePoint3, + has: () => has2, + isMdAsciiPunct: () => isMdAsciiPunct, + isPunctChar: () => isPunctChar, + isSpace: () => isSpace, + isString: () => isString, + isValidEntityCode: () => isValidEntityCode, + isWhiteSpace: () => isWhiteSpace, + lib: () => lib, + normalizeReference: () => normalizeReference, + unescapeAll: () => unescapeAll, + unescapeMd: () => unescapeMd +}); + +// ../../node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/index.mjs +var mdurl_exports = {}; +__export(mdurl_exports, { + decode: () => decode_default, + encode: () => encode_default, + format: () => format, + parse: () => parse_default +}); + +// ../../node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/lib/decode.mjs +var decodeCache = {}; +function getDecodeCache(exclude) { + let cache = decodeCache[exclude]; + if (cache) { + return cache; + } + cache = decodeCache[exclude] = []; + for (let i = 0; i < 128; i++) { + const ch = String.fromCharCode(i); + cache.push(ch); + } + for (let i = 0; i < exclude.length; i++) { + const ch = exclude.charCodeAt(i); + cache[ch] = "%" + ("0" + ch.toString(16).toUpperCase()).slice(-2); + } + return cache; +} +function decode(string2, exclude) { + if (typeof exclude !== "string") { + exclude = decode.defaultChars; + } + const cache = getDecodeCache(exclude); + return string2.replace(/(%[a-f0-9]{2})+/gi, function(seq2) { + let result = ""; + for (let i = 0, l = seq2.length; i < l; i += 3) { + const b1 = parseInt(seq2.slice(i + 1, i + 3), 16); + if (b1 < 128) { + result += cache[b1]; + continue; + } + if ((b1 & 224) === 192 && i + 3 < l) { + const b2 = parseInt(seq2.slice(i + 4, i + 6), 16); + if ((b2 & 192) === 128) { + const chr = b1 << 6 & 1984 | b2 & 63; + if (chr < 128) { + result += "\uFFFD\uFFFD"; + } else { + result += String.fromCharCode(chr); + } + i += 3; + continue; + } + } + if ((b1 & 240) === 224 && i + 6 < l) { + const b2 = parseInt(seq2.slice(i + 4, i + 6), 16); + const b3 = parseInt(seq2.slice(i + 7, i + 9), 16); + if ((b2 & 192) === 128 && (b3 & 192) === 128) { + const chr = b1 << 12 & 61440 | b2 << 6 & 4032 | b3 & 63; + if (chr < 2048 || chr >= 55296 && chr <= 57343) { + result += "\uFFFD\uFFFD\uFFFD"; + } else { + result += String.fromCharCode(chr); + } + i += 6; + continue; + } + } + if ((b1 & 248) === 240 && i + 9 < l) { + const b2 = parseInt(seq2.slice(i + 4, i + 6), 16); + const b3 = parseInt(seq2.slice(i + 7, i + 9), 16); + const b4 = parseInt(seq2.slice(i + 10, i + 12), 16); + if ((b2 & 192) === 128 && (b3 & 192) === 128 && (b4 & 192) === 128) { + let chr = b1 << 18 & 1835008 | b2 << 12 & 258048 | b3 << 6 & 4032 | b4 & 63; + if (chr < 65536 || chr > 1114111) { + result += "\uFFFD\uFFFD\uFFFD\uFFFD"; + } else { + chr -= 65536; + result += String.fromCharCode(55296 + (chr >> 10), 56320 + (chr & 1023)); + } + i += 9; + continue; + } + } + result += "\uFFFD"; + } + return result; + }); +} +decode.defaultChars = ";/?:@&=+$,#"; +decode.componentChars = ""; +var decode_default = decode; + +// ../../node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/lib/encode.mjs +var encodeCache = {}; +function getEncodeCache(exclude) { + let cache = encodeCache[exclude]; + if (cache) { + return cache; + } + cache = encodeCache[exclude] = []; + for (let i = 0; i < 128; i++) { + const ch = String.fromCharCode(i); + if (/^[0-9a-z]$/i.test(ch)) { + cache.push(ch); + } else { + cache.push("%" + ("0" + i.toString(16).toUpperCase()).slice(-2)); + } + } + for (let i = 0; i < exclude.length; i++) { + cache[exclude.charCodeAt(i)] = exclude[i]; + } + return cache; +} +function encode(string2, exclude, keepEscaped) { + if (typeof exclude !== "string") { + keepEscaped = exclude; + exclude = encode.defaultChars; + } + if (typeof keepEscaped === "undefined") { + keepEscaped = true; + } + const cache = getEncodeCache(exclude); + let result = ""; + for (let i = 0, l = string2.length; i < l; i++) { + const code2 = string2.charCodeAt(i); + if (keepEscaped && code2 === 37 && i + 2 < l) { + if (/^[0-9a-f]{2}$/i.test(string2.slice(i + 1, i + 3))) { + result += string2.slice(i, i + 3); + i += 2; + continue; + } + } + if (code2 < 128) { + result += cache[code2]; + continue; + } + if (code2 >= 55296 && code2 <= 57343) { + if (code2 >= 55296 && code2 <= 56319 && i + 1 < l) { + const nextCode = string2.charCodeAt(i + 1); + if (nextCode >= 56320 && nextCode <= 57343) { + result += encodeURIComponent(string2[i] + string2[i + 1]); + i++; + continue; + } + } + result += "%EF%BF%BD"; + continue; + } + result += encodeURIComponent(string2[i]); + } + return result; +} +encode.defaultChars = ";/?:@&=+$,-_.!~*'()#"; +encode.componentChars = "-_.!~*'()"; +var encode_default = encode; + +// ../../node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/lib/format.mjs +function format(url) { + let result = ""; + result += url.protocol || ""; + result += url.slashes ? "//" : ""; + result += url.auth ? url.auth + "@" : ""; + if (url.hostname && url.hostname.indexOf(":") !== -1) { + result += "[" + url.hostname + "]"; + } else { + result += url.hostname || ""; + } + result += url.port ? ":" + url.port : ""; + result += url.pathname || ""; + result += url.search || ""; + result += url.hash || ""; + return result; +} + +// ../../node_modules/.pnpm/mdurl@2.0.0/node_modules/mdurl/lib/parse.mjs +function Url() { + this.protocol = null; + this.slashes = null; + this.auth = null; + this.port = null; + this.hostname = null; + this.hash = null; + this.search = null; + this.pathname = null; +} +var protocolPattern = /^([a-z0-9.+-]+:)/i; +var portPattern = /:[0-9]*$/; +var simplePathPattern = /^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/; +var delims = ["<", ">", '"', "`", " ", "\r", "\n", " "]; +var unwise = ["{", "}", "|", "\\", "^", "`"].concat(delims); +var autoEscape = ["'"].concat(unwise); +var nonHostChars = ["%", "/", "?", ";", "#"].concat(autoEscape); +var hostEndingChars = ["/", "?", "#"]; +var hostnameMaxLen = 255; +var hostnamePartPattern = /^[+a-z0-9A-Z_-]{0,63}$/; +var hostnamePartStart = /^([+a-z0-9A-Z_-]{0,63})(.*)$/; +var hostlessProtocol = { + javascript: true, + "javascript:": true +}; +var slashedProtocol = { + http: true, + https: true, + ftp: true, + gopher: true, + file: true, + "http:": true, + "https:": true, + "ftp:": true, + "gopher:": true, + "file:": true +}; +function urlParse(url, slashesDenoteHost) { + if (url && url instanceof Url) + return url; + const u = new Url(); + u.parse(url, slashesDenoteHost); + return u; +} +Url.prototype.parse = function(url, slashesDenoteHost) { + let lowerProto, hec, slashes; + let rest = url; + rest = rest.trim(); + if (!slashesDenoteHost && url.split("#").length === 1) { + const simplePath = simplePathPattern.exec(rest); + if (simplePath) { + this.pathname = simplePath[1]; + if (simplePath[2]) { + this.search = simplePath[2]; + } + return this; + } + } + let proto = protocolPattern.exec(rest); + if (proto) { + proto = proto[0]; + lowerProto = proto.toLowerCase(); + this.protocol = proto; + rest = rest.substr(proto.length); + } + if (slashesDenoteHost || proto || rest.match(/^\/\/[^@\/]+@[^@\/]+/)) { + slashes = rest.substr(0, 2) === "//"; + if (slashes && !(proto && hostlessProtocol[proto])) { + rest = rest.substr(2); + this.slashes = true; + } + } + if (!hostlessProtocol[proto] && (slashes || proto && !slashedProtocol[proto])) { + let hostEnd = -1; + for (let i = 0; i < hostEndingChars.length; i++) { + hec = rest.indexOf(hostEndingChars[i]); + if (hec !== -1 && (hostEnd === -1 || hec < hostEnd)) { + hostEnd = hec; + } + } + let auth, atSign; + if (hostEnd === -1) { + atSign = rest.lastIndexOf("@"); + } else { + atSign = rest.lastIndexOf("@", hostEnd); + } + if (atSign !== -1) { + auth = rest.slice(0, atSign); + rest = rest.slice(atSign + 1); + this.auth = auth; + } + hostEnd = -1; + for (let i = 0; i < nonHostChars.length; i++) { + hec = rest.indexOf(nonHostChars[i]); + if (hec !== -1 && (hostEnd === -1 || hec < hostEnd)) { + hostEnd = hec; + } + } + if (hostEnd === -1) { + hostEnd = rest.length; + } + if (rest[hostEnd - 1] === ":") { + hostEnd--; + } + const host = rest.slice(0, hostEnd); + rest = rest.slice(hostEnd); + this.parseHost(host); + this.hostname = this.hostname || ""; + const ipv6Hostname = this.hostname[0] === "[" && this.hostname[this.hostname.length - 1] === "]"; + if (!ipv6Hostname) { + const hostparts = this.hostname.split(/\./); + for (let i = 0, l = hostparts.length; i < l; i++) { + const part = hostparts[i]; + if (!part) { + continue; + } + if (!part.match(hostnamePartPattern)) { + let newpart = ""; + for (let j = 0, k = part.length; j < k; j++) { + if (part.charCodeAt(j) > 127) { + newpart += "x"; + } else { + newpart += part[j]; + } + } + if (!newpart.match(hostnamePartPattern)) { + const validParts = hostparts.slice(0, i); + const notHost = hostparts.slice(i + 1); + const bit = part.match(hostnamePartStart); + if (bit) { + validParts.push(bit[1]); + notHost.unshift(bit[2]); + } + if (notHost.length) { + rest = notHost.join(".") + rest; + } + this.hostname = validParts.join("."); + break; + } + } + } + } + if (this.hostname.length > hostnameMaxLen) { + this.hostname = ""; + } + if (ipv6Hostname) { + this.hostname = this.hostname.substr(1, this.hostname.length - 2); + } + } + const hash = rest.indexOf("#"); + if (hash !== -1) { + this.hash = rest.substr(hash); + rest = rest.slice(0, hash); + } + const qm = rest.indexOf("?"); + if (qm !== -1) { + this.search = rest.substr(qm); + rest = rest.slice(0, qm); + } + if (rest) { + this.pathname = rest; + } + if (slashedProtocol[lowerProto] && this.hostname && !this.pathname) { + this.pathname = ""; + } + return this; +}; +Url.prototype.parseHost = function(host) { + let port = portPattern.exec(host); + if (port) { + port = port[0]; + if (port !== ":") { + this.port = port.substr(1); + } + host = host.substr(0, host.length - port.length); + } + if (host) { + this.hostname = host; + } +}; +var parse_default = urlParse; + +// ../../node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/index.mjs +var uc_exports = {}; +__export(uc_exports, { + Any: () => regex_default, + Cc: () => regex_default2, + Cf: () => regex_default3, + P: () => regex_default4, + S: () => regex_default5, + Z: () => regex_default6 +}); + +// ../../node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/properties/Any/regex.mjs +var regex_default = /[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/; + +// ../../node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/Cc/regex.mjs +var regex_default2 = /[\0-\x1F\x7F-\x9F]/; + +// ../../node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/Cf/regex.mjs +var regex_default3 = /[\xAD\u0600-\u0605\u061C\u06DD\u070F\u0890\u0891\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD80D[\uDC30-\uDC3F]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]/; + +// ../../node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/P/regex.mjs +var regex_default4 = /[!-#%-\*,-\/:;\?@\[-\]_\{\}\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061D-\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1B7D\u1B7E\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52-\u2E5D\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDEAD\uDF55-\uDF59\uDF86-\uDF89]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDC4B-\uDC4F\uDC5A\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDEB9\uDF3C-\uDF3E]|\uD806[\uDC3B\uDD44-\uDD46\uDDE2\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2\uDF00-\uDF09]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8\uDF43-\uDF4F\uDFFF]|\uD809[\uDC70-\uDC74]|\uD80B[\uDFF1\uDFF2]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD81B[\uDE97-\uDE9A\uDFE2]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]|\uD83A[\uDD5E\uDD5F]/; + +// ../../node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/S/regex.mjs +var regex_default5 = /[\$\+<->\^`\|~\xA2-\xA6\xA8\xA9\xAC\xAE-\xB1\xB4\xB8\xD7\xF7\u02C2-\u02C5\u02D2-\u02DF\u02E5-\u02EB\u02ED\u02EF-\u02FF\u0375\u0384\u0385\u03F6\u0482\u058D-\u058F\u0606-\u0608\u060B\u060E\u060F\u06DE\u06E9\u06FD\u06FE\u07F6\u07FE\u07FF\u0888\u09F2\u09F3\u09FA\u09FB\u0AF1\u0B70\u0BF3-\u0BFA\u0C7F\u0D4F\u0D79\u0E3F\u0F01-\u0F03\u0F13\u0F15-\u0F17\u0F1A-\u0F1F\u0F34\u0F36\u0F38\u0FBE-\u0FC5\u0FC7-\u0FCC\u0FCE\u0FCF\u0FD5-\u0FD8\u109E\u109F\u1390-\u1399\u166D\u17DB\u1940\u19DE-\u19FF\u1B61-\u1B6A\u1B74-\u1B7C\u1FBD\u1FBF-\u1FC1\u1FCD-\u1FCF\u1FDD-\u1FDF\u1FED-\u1FEF\u1FFD\u1FFE\u2044\u2052\u207A-\u207C\u208A-\u208C\u20A0-\u20C0\u2100\u2101\u2103-\u2106\u2108\u2109\u2114\u2116-\u2118\u211E-\u2123\u2125\u2127\u2129\u212E\u213A\u213B\u2140-\u2144\u214A-\u214D\u214F\u218A\u218B\u2190-\u2307\u230C-\u2328\u232B-\u2426\u2440-\u244A\u249C-\u24E9\u2500-\u2767\u2794-\u27C4\u27C7-\u27E5\u27F0-\u2982\u2999-\u29D7\u29DC-\u29FB\u29FE-\u2B73\u2B76-\u2B95\u2B97-\u2BFF\u2CE5-\u2CEA\u2E50\u2E51\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFF\u3004\u3012\u3013\u3020\u3036\u3037\u303E\u303F\u309B\u309C\u3190\u3191\u3196-\u319F\u31C0-\u31E3\u31EF\u3200-\u321E\u322A-\u3247\u3250\u3260-\u327F\u328A-\u32B0\u32C0-\u33FF\u4DC0-\u4DFF\uA490-\uA4C6\uA700-\uA716\uA720\uA721\uA789\uA78A\uA828-\uA82B\uA836-\uA839\uAA77-\uAA79\uAB5B\uAB6A\uAB6B\uFB29\uFBB2-\uFBC2\uFD40-\uFD4F\uFDCF\uFDFC-\uFDFF\uFE62\uFE64-\uFE66\uFE69\uFF04\uFF0B\uFF1C-\uFF1E\uFF3E\uFF40\uFF5C\uFF5E\uFFE0-\uFFE6\uFFE8-\uFFEE\uFFFC\uFFFD]|\uD800[\uDD37-\uDD3F\uDD79-\uDD89\uDD8C-\uDD8E\uDD90-\uDD9C\uDDA0\uDDD0-\uDDFC]|\uD802[\uDC77\uDC78\uDEC8]|\uD805\uDF3F|\uD807[\uDFD5-\uDFF1]|\uD81A[\uDF3C-\uDF3F\uDF45]|\uD82F\uDC9C|\uD833[\uDF50-\uDFC3]|\uD834[\uDC00-\uDCF5\uDD00-\uDD26\uDD29-\uDD64\uDD6A-\uDD6C\uDD83\uDD84\uDD8C-\uDDA9\uDDAE-\uDDEA\uDE00-\uDE41\uDE45\uDF00-\uDF56]|\uD835[\uDEC1\uDEDB\uDEFB\uDF15\uDF35\uDF4F\uDF6F\uDF89\uDFA9\uDFC3]|\uD836[\uDC00-\uDDFF\uDE37-\uDE3A\uDE6D-\uDE74\uDE76-\uDE83\uDE85\uDE86]|\uD838[\uDD4F\uDEFF]|\uD83B[\uDCAC\uDCB0\uDD2E\uDEF0\uDEF1]|\uD83C[\uDC00-\uDC2B\uDC30-\uDC93\uDCA0-\uDCAE\uDCB1-\uDCBF\uDCC1-\uDCCF\uDCD1-\uDCF5\uDD0D-\uDDAD\uDDE6-\uDE02\uDE10-\uDE3B\uDE40-\uDE48\uDE50\uDE51\uDE60-\uDE65\uDF00-\uDFFF]|\uD83D[\uDC00-\uDED7\uDEDC-\uDEEC\uDEF0-\uDEFC\uDF00-\uDF76\uDF7B-\uDFD9\uDFE0-\uDFEB\uDFF0]|\uD83E[\uDC00-\uDC0B\uDC10-\uDC47\uDC50-\uDC59\uDC60-\uDC87\uDC90-\uDCAD\uDCB0\uDCB1\uDD00-\uDE53\uDE60-\uDE6D\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC5\uDECE-\uDEDB\uDEE0-\uDEE8\uDEF0-\uDEF8\uDF00-\uDF92\uDF94-\uDFCA]/; + +// ../../node_modules/.pnpm/uc.micro@2.1.0/node_modules/uc.micro/categories/Z/regex.mjs +var regex_default6 = /[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/common/utils.mjs +function _class(obj) { + return Object.prototype.toString.call(obj); +} +function isString(obj) { + return _class(obj) === "[object String]"; +} +var _hasOwnProperty = Object.prototype.hasOwnProperty; +function has2(object, key) { + return _hasOwnProperty.call(object, key); +} +function assign(obj) { + const sources = Array.prototype.slice.call(arguments, 1); + sources.forEach(function(source) { + if (!source) { + return; + } + if (typeof source !== "object") { + throw new TypeError(source + "must be object"); + } + Object.keys(source).forEach(function(key) { + obj[key] = source[key]; + }); + }); + return obj; +} +function arrayReplaceAt(src, pos, newElements) { + return [].concat(src.slice(0, pos), newElements, src.slice(pos + 1)); +} +function isValidEntityCode(c) { + if (c >= 55296 && c <= 57343) { + return false; + } + if (c >= 64976 && c <= 65007) { + return false; + } + if ((c & 65535) === 65535 || (c & 65535) === 65534) { + return false; + } + if (c >= 0 && c <= 8) { + return false; + } + if (c === 11) { + return false; + } + if (c >= 14 && c <= 31) { + return false; + } + if (c >= 127 && c <= 159) { + return false; + } + if (c > 1114111) { + return false; + } + return true; +} +function fromCodePoint3(c) { + if (c > 65535) { + c -= 65536; + const surrogate1 = 55296 + (c >> 10); + const surrogate2 = 56320 + (c & 1023); + return String.fromCharCode(surrogate1, surrogate2); + } + return String.fromCharCode(c); +} +var UNESCAPE_MD_RE = /\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g; +var ENTITY_RE = /&([a-z#][a-z0-9]{1,31});/gi; +var UNESCAPE_ALL_RE = new RegExp(UNESCAPE_MD_RE.source + "|" + ENTITY_RE.source, "gi"); +var DIGITAL_ENTITY_TEST_RE = /^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i; +function replaceEntityPattern(match2, name2) { + if (name2.charCodeAt(0) === 35 && DIGITAL_ENTITY_TEST_RE.test(name2)) { + const code2 = name2[1].toLowerCase() === "x" ? parseInt(name2.slice(2), 16) : parseInt(name2.slice(1), 10); + if (isValidEntityCode(code2)) { + return fromCodePoint3(code2); + } + return match2; + } + const decoded = decodeHTML(match2); + if (decoded !== match2) { + return decoded; + } + return match2; +} +function unescapeMd(str) { + if (str.indexOf("\\") < 0) { + return str; + } + return str.replace(UNESCAPE_MD_RE, "$1"); +} +function unescapeAll(str) { + if (str.indexOf("\\") < 0 && str.indexOf("&") < 0) { + return str; + } + return str.replace(UNESCAPE_ALL_RE, function(match2, escaped, entity2) { + if (escaped) { + return escaped; + } + return replaceEntityPattern(match2, entity2); + }); +} +var HTML_ESCAPE_TEST_RE = /[&<>"]/; +var HTML_ESCAPE_REPLACE_RE = /[&<>"]/g; +var HTML_REPLACEMENTS = { + "&": "&", + "<": "<", + ">": ">", + '"': """ +}; +function replaceUnsafeChar(ch) { + return HTML_REPLACEMENTS[ch]; +} +function escapeHtml(str) { + if (HTML_ESCAPE_TEST_RE.test(str)) { + return str.replace(HTML_ESCAPE_REPLACE_RE, replaceUnsafeChar); + } + return str; +} +var REGEXP_ESCAPE_RE = /[.?*+^$[\]\\(){}|-]/g; +function escapeRE(str) { + return str.replace(REGEXP_ESCAPE_RE, "\\$&"); +} +function isSpace(code2) { + switch (code2) { + case 9: + case 32: + return true; + } + return false; +} +function isWhiteSpace(code2) { + if (code2 >= 8192 && code2 <= 8202) { + return true; + } + switch (code2) { + case 9: + case 10: + case 11: + case 12: + case 13: + case 32: + case 160: + case 5760: + case 8239: + case 8287: + case 12288: + return true; + } + return false; +} +function isPunctChar(ch) { + return regex_default4.test(ch) || regex_default5.test(ch); +} +function isMdAsciiPunct(ch) { + switch (ch) { + case 33: + case 34: + case 35: + case 36: + case 37: + case 38: + case 39: + case 40: + case 41: + case 42: + case 43: + case 44: + case 45: + case 46: + case 47: + case 58: + case 59: + case 60: + case 61: + case 62: + case 63: + case 64: + case 91: + case 92: + case 93: + case 94: + case 95: + case 96: + case 123: + case 124: + case 125: + case 126: + return true; + default: + return false; + } +} +function normalizeReference(str) { + str = str.trim().replace(/\s+/g, " "); + if ("\u1E9E".toLowerCase() === "\u1E7E") { + str = str.replace(/ẞ/g, "\xDF"); + } + return str.toLowerCase().toUpperCase(); +} +var lib = { mdurl: mdurl_exports, ucmicro: uc_exports }; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/helpers/index.mjs +var helpers_exports = {}; +__export(helpers_exports, { + parseLinkDestination: () => parseLinkDestination, + parseLinkLabel: () => parseLinkLabel, + parseLinkTitle: () => parseLinkTitle +}); + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/helpers/parse_link_label.mjs +function parseLinkLabel(state, start, disableNested) { + let level, found, marker, prevPos; + const max = state.posMax; + const oldPos = state.pos; + state.pos = start + 1; + level = 1; + while (state.pos < max) { + marker = state.src.charCodeAt(state.pos); + if (marker === 93) { + level--; + if (level === 0) { + found = true; + break; + } + } + prevPos = state.pos; + state.md.inline.skipToken(state); + if (marker === 91) { + if (prevPos === state.pos - 1) { + level++; + } else if (disableNested) { + state.pos = oldPos; + return -1; + } + } + } + let labelEnd = -1; + if (found) { + labelEnd = state.pos; + } + state.pos = oldPos; + return labelEnd; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/helpers/parse_link_destination.mjs +function parseLinkDestination(str, start, max) { + let code2; + let pos = start; + const result = { + ok: false, + pos: 0, + str: "" + }; + if (str.charCodeAt(pos) === 60) { + pos++; + while (pos < max) { + code2 = str.charCodeAt(pos); + if (code2 === 10) { + return result; + } + if (code2 === 60) { + return result; + } + if (code2 === 62) { + result.pos = pos + 1; + result.str = unescapeAll(str.slice(start + 1, pos)); + result.ok = true; + return result; + } + if (code2 === 92 && pos + 1 < max) { + pos += 2; + continue; + } + pos++; + } + return result; + } + let level = 0; + while (pos < max) { + code2 = str.charCodeAt(pos); + if (code2 === 32) { + break; + } + if (code2 < 32 || code2 === 127) { + break; + } + if (code2 === 92 && pos + 1 < max) { + if (str.charCodeAt(pos + 1) === 32) { + break; + } + pos += 2; + continue; + } + if (code2 === 40) { + level++; + if (level > 32) { + return result; + } + } + if (code2 === 41) { + if (level === 0) { + break; + } + level--; + } + pos++; + } + if (start === pos) { + return result; + } + if (level !== 0) { + return result; + } + result.str = unescapeAll(str.slice(start, pos)); + result.pos = pos; + result.ok = true; + return result; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/helpers/parse_link_title.mjs +function parseLinkTitle(str, start, max, prev_state) { + let code2; + let pos = start; + const state = { + ok: false, + can_continue: false, + pos: 0, + str: "", + marker: 0 + }; + if (prev_state) { + state.str = prev_state.str; + state.marker = prev_state.marker; + } else { + if (pos >= max) { + return state; + } + let marker = str.charCodeAt(pos); + if (marker !== 34 && marker !== 39 && marker !== 40) { + return state; + } + start++; + pos++; + if (marker === 40) { + marker = 41; + } + state.marker = marker; + } + while (pos < max) { + code2 = str.charCodeAt(pos); + if (code2 === state.marker) { + state.pos = pos + 1; + state.str += unescapeAll(str.slice(start, pos)); + state.ok = true; + return state; + } else if (code2 === 40 && state.marker === 41) { + return state; + } else if (code2 === 92 && pos + 1 < max) { + pos++; + } + pos++; + } + state.can_continue = true; + state.str += unescapeAll(str.slice(start, pos)); + return state; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/renderer.mjs +var default_rules = {}; +default_rules.code_inline = function(tokens, idx, options, env, slf) { + const token = tokens[idx]; + return "" + escapeHtml(token.content) + ""; +}; +default_rules.code_block = function(tokens, idx, options, env, slf) { + const token = tokens[idx]; + return "" + escapeHtml(tokens[idx].content) + "\n"; +}; +default_rules.fence = function(tokens, idx, options, env, slf) { + const token = tokens[idx]; + const info = token.info ? unescapeAll(token.info).trim() : ""; + let langName = ""; + let langAttrs = ""; + if (info) { + const arr = info.split(/(\s+)/g); + langName = arr[0]; + langAttrs = arr.slice(2).join(""); + } + let highlighted; + if (options.highlight) { + highlighted = options.highlight(token.content, langName, langAttrs) || escapeHtml(token.content); + } else { + highlighted = escapeHtml(token.content); + } + if (highlighted.indexOf("${highlighted} +`; + } + return `
${highlighted}
+`; +}; +default_rules.image = function(tokens, idx, options, env, slf) { + const token = tokens[idx]; + token.attrs[token.attrIndex("alt")][1] = slf.renderInlineAsText(token.children, options, env); + return slf.renderToken(tokens, idx, options); +}; +default_rules.hardbreak = function(tokens, idx, options) { + return options.xhtmlOut ? "
\n" : "
\n"; +}; +default_rules.softbreak = function(tokens, idx, options) { + return options.breaks ? options.xhtmlOut ? "
\n" : "
\n" : "\n"; +}; +default_rules.text = function(tokens, idx) { + return escapeHtml(tokens[idx].content); +}; +default_rules.html_block = function(tokens, idx) { + return tokens[idx].content; +}; +default_rules.html_inline = function(tokens, idx) { + return tokens[idx].content; +}; +function Renderer() { + this.rules = assign({}, default_rules); +} +Renderer.prototype.renderAttrs = function renderAttrs(token) { + let i, l, result; + if (!token.attrs) { + return ""; + } + result = ""; + for (i = 0, l = token.attrs.length; i < l; i++) { + result += " " + escapeHtml(token.attrs[i][0]) + '="' + escapeHtml(token.attrs[i][1]) + '"'; + } + return result; +}; +Renderer.prototype.renderToken = function renderToken(tokens, idx, options) { + const token = tokens[idx]; + let result = ""; + if (token.hidden) { + return ""; + } + if (token.block && token.nesting !== -1 && idx && tokens[idx - 1].hidden) { + result += "\n"; + } + result += (token.nesting === -1 ? "\n" : ">"; + return result; +}; +Renderer.prototype.renderInline = function(tokens, options, env) { + let result = ""; + const rules = this.rules; + for (let i = 0, len = tokens.length; i < len; i++) { + const type = tokens[i].type; + if (typeof rules[type] !== "undefined") { + result += rules[type](tokens, i, options, env, this); + } else { + result += this.renderToken(tokens, i, options); + } + } + return result; +}; +Renderer.prototype.renderInlineAsText = function(tokens, options, env) { + let result = ""; + for (let i = 0, len = tokens.length; i < len; i++) { + switch (tokens[i].type) { + case "text": + result += tokens[i].content; + break; + case "image": + result += this.renderInlineAsText(tokens[i].children, options, env); + break; + case "html_inline": + case "html_block": + result += tokens[i].content; + break; + case "softbreak": + case "hardbreak": + result += "\n"; + break; + default: + } + } + return result; +}; +Renderer.prototype.render = function(tokens, options, env) { + let result = ""; + const rules = this.rules; + for (let i = 0, len = tokens.length; i < len; i++) { + const type = tokens[i].type; + if (type === "inline") { + result += this.renderInline(tokens[i].children, options, env); + } else if (typeof rules[type] !== "undefined") { + result += rules[type](tokens, i, options, env, this); + } else { + result += this.renderToken(tokens, i, options, env); + } + } + return result; +}; +var renderer_default = Renderer; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/ruler.mjs +function Ruler() { + this.__rules__ = []; + this.__cache__ = null; +} +Ruler.prototype.__find__ = function(name2) { + for (let i = 0; i < this.__rules__.length; i++) { + if (this.__rules__[i].name === name2) { + return i; + } + } + return -1; +}; +Ruler.prototype.__compile__ = function() { + const self2 = this; + const chains = [""]; + self2.__rules__.forEach(function(rule) { + if (!rule.enabled) { + return; + } + rule.alt.forEach(function(altName) { + if (chains.indexOf(altName) < 0) { + chains.push(altName); + } + }); + }); + self2.__cache__ = {}; + chains.forEach(function(chain) { + self2.__cache__[chain] = []; + self2.__rules__.forEach(function(rule) { + if (!rule.enabled) { + return; + } + if (chain && rule.alt.indexOf(chain) < 0) { + return; + } + self2.__cache__[chain].push(rule.fn); + }); + }); +}; +Ruler.prototype.at = function(name2, fn, options) { + const index2 = this.__find__(name2); + const opt = options || {}; + if (index2 === -1) { + throw new Error("Parser rule not found: " + name2); + } + this.__rules__[index2].fn = fn; + this.__rules__[index2].alt = opt.alt || []; + this.__cache__ = null; +}; +Ruler.prototype.before = function(beforeName, ruleName, fn, options) { + const index2 = this.__find__(beforeName); + const opt = options || {}; + if (index2 === -1) { + throw new Error("Parser rule not found: " + beforeName); + } + this.__rules__.splice(index2, 0, { + name: ruleName, + enabled: true, + fn, + alt: opt.alt || [] + }); + this.__cache__ = null; +}; +Ruler.prototype.after = function(afterName, ruleName, fn, options) { + const index2 = this.__find__(afterName); + const opt = options || {}; + if (index2 === -1) { + throw new Error("Parser rule not found: " + afterName); + } + this.__rules__.splice(index2 + 1, 0, { + name: ruleName, + enabled: true, + fn, + alt: opt.alt || [] + }); + this.__cache__ = null; +}; +Ruler.prototype.push = function(ruleName, fn, options) { + const opt = options || {}; + this.__rules__.push({ + name: ruleName, + enabled: true, + fn, + alt: opt.alt || [] + }); + this.__cache__ = null; +}; +Ruler.prototype.enable = function(list2, ignoreInvalid) { + if (!Array.isArray(list2)) { + list2 = [list2]; + } + const result = []; + list2.forEach(function(name2) { + const idx = this.__find__(name2); + if (idx < 0) { + if (ignoreInvalid) { + return; + } + throw new Error("Rules manager: invalid rule name " + name2); + } + this.__rules__[idx].enabled = true; + result.push(name2); + }, this); + this.__cache__ = null; + return result; +}; +Ruler.prototype.enableOnly = function(list2, ignoreInvalid) { + if (!Array.isArray(list2)) { + list2 = [list2]; + } + this.__rules__.forEach(function(rule) { + rule.enabled = false; + }); + this.enable(list2, ignoreInvalid); +}; +Ruler.prototype.disable = function(list2, ignoreInvalid) { + if (!Array.isArray(list2)) { + list2 = [list2]; + } + const result = []; + list2.forEach(function(name2) { + const idx = this.__find__(name2); + if (idx < 0) { + if (ignoreInvalid) { + return; + } + throw new Error("Rules manager: invalid rule name " + name2); + } + this.__rules__[idx].enabled = false; + result.push(name2); + }, this); + this.__cache__ = null; + return result; +}; +Ruler.prototype.getRules = function(chainName) { + if (this.__cache__ === null) { + this.__compile__(); + } + return this.__cache__[chainName] || []; +}; +var ruler_default = Ruler; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/token.mjs +function Token(type, tag, nesting) { + this.type = type; + this.tag = tag; + this.attrs = null; + this.map = null; + this.nesting = nesting; + this.level = 0; + this.children = null; + this.content = ""; + this.markup = ""; + this.info = ""; + this.meta = null; + this.block = false; + this.hidden = false; +} +Token.prototype.attrIndex = function attrIndex(name2) { + if (!this.attrs) { + return -1; + } + const attrs = this.attrs; + for (let i = 0, len = attrs.length; i < len; i++) { + if (attrs[i][0] === name2) { + return i; + } + } + return -1; +}; +Token.prototype.attrPush = function attrPush(attrData) { + if (this.attrs) { + this.attrs.push(attrData); + } else { + this.attrs = [attrData]; + } +}; +Token.prototype.attrSet = function attrSet(name2, value) { + const idx = this.attrIndex(name2); + const attrData = [name2, value]; + if (idx < 0) { + this.attrPush(attrData); + } else { + this.attrs[idx] = attrData; + } +}; +Token.prototype.attrGet = function attrGet(name2) { + const idx = this.attrIndex(name2); + let value = null; + if (idx >= 0) { + value = this.attrs[idx][1]; + } + return value; +}; +Token.prototype.attrJoin = function attrJoin(name2, value) { + const idx = this.attrIndex(name2); + if (idx < 0) { + this.attrPush([name2, value]); + } else { + this.attrs[idx][1] = this.attrs[idx][1] + " " + value; + } +}; +var token_default = Token; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_core/state_core.mjs +function StateCore(src, md, env) { + this.src = src; + this.env = env; + this.tokens = []; + this.inlineMode = false; + this.md = md; +} +StateCore.prototype.Token = token_default; +var state_core_default = StateCore; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_core/normalize.mjs +var NEWLINES_RE = /\r\n?|\n/g; +var NULL_RE = /\0/g; +function normalize(state) { + let str; + str = state.src.replace(NEWLINES_RE, "\n"); + str = str.replace(NULL_RE, "\uFFFD"); + state.src = str; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_core/block.mjs +function block(state) { + let token; + if (state.inlineMode) { + token = new state.Token("inline", "", 0); + token.content = state.src; + token.map = [0, 1]; + token.children = []; + state.tokens.push(token); + } else { + state.md.block.parse(state.src, state.md, state.env, state.tokens); + } +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_core/inline.mjs +function inline(state) { + const tokens = state.tokens; + for (let i = 0, l = tokens.length; i < l; i++) { + const tok = tokens[i]; + if (tok.type === "inline") { + state.md.inline.parse(tok.content, state.md, state.env, tok.children); + } + } +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_core/linkify.mjs +function isLinkOpen(str) { + return /^\s]/i.test(str); +} +function isLinkClose(str) { + return /^<\/a\s*>/i.test(str); +} +function linkify(state) { + const blockTokens = state.tokens; + if (!state.md.options.linkify) { + return; + } + for (let j = 0, l = blockTokens.length; j < l; j++) { + if (blockTokens[j].type !== "inline" || !state.md.linkify.pretest(blockTokens[j].content)) { + continue; + } + let tokens = blockTokens[j].children; + let htmlLinkLevel = 0; + for (let i = tokens.length - 1; i >= 0; i--) { + const currentToken = tokens[i]; + if (currentToken.type === "link_close") { + i--; + while (tokens[i].level !== currentToken.level && tokens[i].type !== "link_open") { + i--; + } + continue; + } + if (currentToken.type === "html_inline") { + if (isLinkOpen(currentToken.content) && htmlLinkLevel > 0) { + htmlLinkLevel--; + } + if (isLinkClose(currentToken.content)) { + htmlLinkLevel++; + } + } + if (htmlLinkLevel > 0) { + continue; + } + if (currentToken.type === "text" && state.md.linkify.test(currentToken.content)) { + const text4 = currentToken.content; + let links = state.md.linkify.match(text4); + const nodes = []; + let level = currentToken.level; + let lastPos = 0; + if (links.length > 0 && links[0].index === 0 && i > 0 && tokens[i - 1].type === "text_special") { + links = links.slice(1); + } + for (let ln = 0; ln < links.length; ln++) { + const url = links[ln].url; + const fullUrl = state.md.normalizeLink(url); + if (!state.md.validateLink(fullUrl)) { + continue; + } + let urlText = links[ln].text; + if (!links[ln].schema) { + urlText = state.md.normalizeLinkText("http://" + urlText).replace(/^http:\/\//, ""); + } else if (links[ln].schema === "mailto:" && !/^mailto:/i.test(urlText)) { + urlText = state.md.normalizeLinkText("mailto:" + urlText).replace(/^mailto:/, ""); + } else { + urlText = state.md.normalizeLinkText(urlText); + } + const pos = links[ln].index; + if (pos > lastPos) { + const token = new state.Token("text", "", 0); + token.content = text4.slice(lastPos, pos); + token.level = level; + nodes.push(token); + } + const token_o = new state.Token("link_open", "a", 1); + token_o.attrs = [["href", fullUrl]]; + token_o.level = level++; + token_o.markup = "linkify"; + token_o.info = "auto"; + nodes.push(token_o); + const token_t = new state.Token("text", "", 0); + token_t.content = urlText; + token_t.level = level; + nodes.push(token_t); + const token_c = new state.Token("link_close", "a", -1); + token_c.level = --level; + token_c.markup = "linkify"; + token_c.info = "auto"; + nodes.push(token_c); + lastPos = links[ln].lastIndex; + } + if (lastPos < text4.length) { + const token = new state.Token("text", "", 0); + token.content = text4.slice(lastPos); + token.level = level; + nodes.push(token); + } + blockTokens[j].children = tokens = arrayReplaceAt(tokens, i, nodes); + } + } + } +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_core/replacements.mjs +var RARE_RE = /\+-|\.\.|\?\?\?\?|!!!!|,,|--/; +var SCOPED_ABBR_TEST_RE = /\((c|tm|r)\)/i; +var SCOPED_ABBR_RE = /\((c|tm|r)\)/ig; +var SCOPED_ABBR = { + c: "\xA9", + r: "\xAE", + tm: "\u2122" +}; +function replaceFn(match2, name2) { + return SCOPED_ABBR[name2.toLowerCase()]; +} +function replace_scoped(inlineTokens) { + let inside_autolink = 0; + for (let i = inlineTokens.length - 1; i >= 0; i--) { + const token = inlineTokens[i]; + if (token.type === "text" && !inside_autolink) { + token.content = token.content.replace(SCOPED_ABBR_RE, replaceFn); + } + if (token.type === "link_open" && token.info === "auto") { + inside_autolink--; + } + if (token.type === "link_close" && token.info === "auto") { + inside_autolink++; + } + } +} +function replace_rare(inlineTokens) { + let inside_autolink = 0; + for (let i = inlineTokens.length - 1; i >= 0; i--) { + const token = inlineTokens[i]; + if (token.type === "text" && !inside_autolink) { + if (RARE_RE.test(token.content)) { + token.content = token.content.replace(/\+-/g, "\xB1").replace(/\.{2,}/g, "\u2026").replace(/([?!])…/g, "$1..").replace(/([?!]){4,}/g, "$1$1$1").replace(/,{2,}/g, ",").replace(/(^|[^-])---(?=[^-]|$)/mg, "$1\u2014").replace(/(^|\s)--(?=\s|$)/mg, "$1\u2013").replace(/(^|[^-\s])--(?=[^-\s]|$)/mg, "$1\u2013"); + } + } + if (token.type === "link_open" && token.info === "auto") { + inside_autolink--; + } + if (token.type === "link_close" && token.info === "auto") { + inside_autolink++; + } + } +} +function replace(state) { + let blkIdx; + if (!state.md.options.typographer) { + return; + } + for (blkIdx = state.tokens.length - 1; blkIdx >= 0; blkIdx--) { + if (state.tokens[blkIdx].type !== "inline") { + continue; + } + if (SCOPED_ABBR_TEST_RE.test(state.tokens[blkIdx].content)) { + replace_scoped(state.tokens[blkIdx].children); + } + if (RARE_RE.test(state.tokens[blkIdx].content)) { + replace_rare(state.tokens[blkIdx].children); + } + } +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_core/smartquotes.mjs +var QUOTE_TEST_RE = /['"]/; +var QUOTE_RE = /['"]/g; +var APOSTROPHE = "\u2019"; +function replaceAt(str, index2, ch) { + return str.slice(0, index2) + ch + str.slice(index2 + 1); +} +function process_inlines(tokens, state) { + let j; + const stack = []; + for (let i = 0; i < tokens.length; i++) { + const token = tokens[i]; + const thisLevel = tokens[i].level; + for (j = stack.length - 1; j >= 0; j--) { + if (stack[j].level <= thisLevel) { + break; + } + } + stack.length = j + 1; + if (token.type !== "text") { + continue; + } + let text4 = token.content; + let pos = 0; + let max = text4.length; + OUTER: + while (pos < max) { + QUOTE_RE.lastIndex = pos; + const t2 = QUOTE_RE.exec(text4); + if (!t2) { + break; + } + let canOpen = true; + let canClose = true; + pos = t2.index + 1; + const isSingle = t2[0] === "'"; + let lastChar = 32; + if (t2.index - 1 >= 0) { + lastChar = text4.charCodeAt(t2.index - 1); + } else { + for (j = i - 1; j >= 0; j--) { + if (tokens[j].type === "softbreak" || tokens[j].type === "hardbreak") + break; + if (!tokens[j].content) + continue; + lastChar = tokens[j].content.charCodeAt(tokens[j].content.length - 1); + break; + } + } + let nextChar = 32; + if (pos < max) { + nextChar = text4.charCodeAt(pos); + } else { + for (j = i + 1; j < tokens.length; j++) { + if (tokens[j].type === "softbreak" || tokens[j].type === "hardbreak") + break; + if (!tokens[j].content) + continue; + nextChar = tokens[j].content.charCodeAt(0); + break; + } + } + const isLastPunctChar = isMdAsciiPunct(lastChar) || isPunctChar(String.fromCharCode(lastChar)); + const isNextPunctChar = isMdAsciiPunct(nextChar) || isPunctChar(String.fromCharCode(nextChar)); + const isLastWhiteSpace = isWhiteSpace(lastChar); + const isNextWhiteSpace = isWhiteSpace(nextChar); + if (isNextWhiteSpace) { + canOpen = false; + } else if (isNextPunctChar) { + if (!(isLastWhiteSpace || isLastPunctChar)) { + canOpen = false; + } + } + if (isLastWhiteSpace) { + canClose = false; + } else if (isLastPunctChar) { + if (!(isNextWhiteSpace || isNextPunctChar)) { + canClose = false; + } + } + if (nextChar === 34 && t2[0] === '"') { + if (lastChar >= 48 && lastChar <= 57) { + canClose = canOpen = false; + } + } + if (canOpen && canClose) { + canOpen = isLastPunctChar; + canClose = isNextPunctChar; + } + if (!canOpen && !canClose) { + if (isSingle) { + token.content = replaceAt(token.content, t2.index, APOSTROPHE); + } + continue; + } + if (canClose) { + for (j = stack.length - 1; j >= 0; j--) { + let item = stack[j]; + if (stack[j].level < thisLevel) { + break; + } + if (item.single === isSingle && stack[j].level === thisLevel) { + item = stack[j]; + let openQuote; + let closeQuote; + if (isSingle) { + openQuote = state.md.options.quotes[2]; + closeQuote = state.md.options.quotes[3]; + } else { + openQuote = state.md.options.quotes[0]; + closeQuote = state.md.options.quotes[1]; + } + token.content = replaceAt(token.content, t2.index, closeQuote); + tokens[item.token].content = replaceAt( + tokens[item.token].content, + item.pos, + openQuote + ); + pos += closeQuote.length - 1; + if (item.token === i) { + pos += openQuote.length - 1; + } + text4 = token.content; + max = text4.length; + stack.length = j; + continue OUTER; + } + } + } + if (canOpen) { + stack.push({ + token: i, + pos: t2.index, + single: isSingle, + level: thisLevel + }); + } else if (canClose && isSingle) { + token.content = replaceAt(token.content, t2.index, APOSTROPHE); + } + } + } +} +function smartquotes(state) { + if (!state.md.options.typographer) { + return; + } + for (let blkIdx = state.tokens.length - 1; blkIdx >= 0; blkIdx--) { + if (state.tokens[blkIdx].type !== "inline" || !QUOTE_TEST_RE.test(state.tokens[blkIdx].content)) { + continue; + } + process_inlines(state.tokens[blkIdx].children, state); + } +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_core/text_join.mjs +function text_join(state) { + let curr, last2; + const blockTokens = state.tokens; + const l = blockTokens.length; + for (let j = 0; j < l; j++) { + if (blockTokens[j].type !== "inline") + continue; + const tokens = blockTokens[j].children; + const max = tokens.length; + for (curr = 0; curr < max; curr++) { + if (tokens[curr].type === "text_special") { + tokens[curr].type = "text"; + } + } + for (curr = last2 = 0; curr < max; curr++) { + if (tokens[curr].type === "text" && curr + 1 < max && tokens[curr + 1].type === "text") { + tokens[curr + 1].content = tokens[curr].content + tokens[curr + 1].content; + } else { + if (curr !== last2) { + tokens[last2] = tokens[curr]; + } + last2++; + } + } + if (curr !== last2) { + tokens.length = last2; + } + } +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/parser_core.mjs +var _rules = [ + ["normalize", normalize], + ["block", block], + ["inline", inline], + ["linkify", linkify], + ["replacements", replace], + ["smartquotes", smartquotes], + ["text_join", text_join] +]; +function Core() { + this.ruler = new ruler_default(); + for (let i = 0; i < _rules.length; i++) { + this.ruler.push(_rules[i][0], _rules[i][1]); + } +} +Core.prototype.process = function(state) { + const rules = this.ruler.getRules(""); + for (let i = 0, l = rules.length; i < l; i++) { + rules[i](state); + } +}; +Core.prototype.State = state_core_default; +var parser_core_default = Core; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_block/state_block.mjs +function StateBlock(src, md, env, tokens) { + this.src = src; + this.md = md; + this.env = env; + this.tokens = tokens; + this.bMarks = []; + this.eMarks = []; + this.tShift = []; + this.sCount = []; + this.bsCount = []; + this.blkIndent = 0; + this.line = 0; + this.lineMax = 0; + this.tight = false; + this.ddIndent = -1; + this.listIndent = -1; + this.parentType = "root"; + this.level = 0; + const s = this.src; + for (let start = 0, pos = 0, indent = 0, offset = 0, len = s.length, indent_found = false; pos < len; pos++) { + const ch = s.charCodeAt(pos); + if (!indent_found) { + if (isSpace(ch)) { + indent++; + if (ch === 9) { + offset += 4 - offset % 4; + } else { + offset++; + } + continue; + } else { + indent_found = true; + } + } + if (ch === 10 || pos === len - 1) { + if (ch !== 10) { + pos++; + } + this.bMarks.push(start); + this.eMarks.push(pos); + this.tShift.push(indent); + this.sCount.push(offset); + this.bsCount.push(0); + indent_found = false; + indent = 0; + offset = 0; + start = pos + 1; + } + } + this.bMarks.push(s.length); + this.eMarks.push(s.length); + this.tShift.push(0); + this.sCount.push(0); + this.bsCount.push(0); + this.lineMax = this.bMarks.length - 1; +} +StateBlock.prototype.push = function(type, tag, nesting) { + const token = new token_default(type, tag, nesting); + token.block = true; + if (nesting < 0) + this.level--; + token.level = this.level; + if (nesting > 0) + this.level++; + this.tokens.push(token); + return token; +}; +StateBlock.prototype.isEmpty = function isEmpty(line) { + return this.bMarks[line] + this.tShift[line] >= this.eMarks[line]; +}; +StateBlock.prototype.skipEmptyLines = function skipEmptyLines(from) { + for (let max = this.lineMax; from < max; from++) { + if (this.bMarks[from] + this.tShift[from] < this.eMarks[from]) { + break; + } + } + return from; +}; +StateBlock.prototype.skipSpaces = function skipSpaces(pos) { + for (let max = this.src.length; pos < max; pos++) { + const ch = this.src.charCodeAt(pos); + if (!isSpace(ch)) { + break; + } + } + return pos; +}; +StateBlock.prototype.skipSpacesBack = function skipSpacesBack(pos, min) { + if (pos <= min) { + return pos; + } + while (pos > min) { + if (!isSpace(this.src.charCodeAt(--pos))) { + return pos + 1; + } + } + return pos; +}; +StateBlock.prototype.skipChars = function skipChars(pos, code2) { + for (let max = this.src.length; pos < max; pos++) { + if (this.src.charCodeAt(pos) !== code2) { + break; + } + } + return pos; +}; +StateBlock.prototype.skipCharsBack = function skipCharsBack(pos, code2, min) { + if (pos <= min) { + return pos; + } + while (pos > min) { + if (code2 !== this.src.charCodeAt(--pos)) { + return pos + 1; + } + } + return pos; +}; +StateBlock.prototype.getLines = function getLines(begin, end2, indent, keepLastLF) { + if (begin >= end2) { + return ""; + } + const queue = new Array(end2 - begin); + for (let i = 0, line = begin; line < end2; line++, i++) { + let lineIndent = 0; + const lineStart = this.bMarks[line]; + let first2 = lineStart; + let last2; + if (line + 1 < end2 || keepLastLF) { + last2 = this.eMarks[line] + 1; + } else { + last2 = this.eMarks[line]; + } + while (first2 < last2 && lineIndent < indent) { + const ch = this.src.charCodeAt(first2); + if (isSpace(ch)) { + if (ch === 9) { + lineIndent += 4 - (lineIndent + this.bsCount[line]) % 4; + } else { + lineIndent++; + } + } else if (first2 - lineStart < this.tShift[line]) { + lineIndent++; + } else { + break; + } + first2++; + } + if (lineIndent > indent) { + queue[i] = new Array(lineIndent - indent + 1).join(" ") + this.src.slice(first2, last2); + } else { + queue[i] = this.src.slice(first2, last2); + } + } + return queue.join(""); +}; +StateBlock.prototype.Token = token_default; +var state_block_default = StateBlock; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_block/table.mjs +var MAX_AUTOCOMPLETED_CELLS = 65536; +function getLine(state, line) { + const pos = state.bMarks[line] + state.tShift[line]; + const max = state.eMarks[line]; + return state.src.slice(pos, max); +} +function escapedSplit(str) { + const result = []; + const max = str.length; + let pos = 0; + let ch = str.charCodeAt(pos); + let isEscaped = false; + let lastPos = 0; + let current = ""; + while (pos < max) { + if (ch === 124) { + if (!isEscaped) { + result.push(current + str.substring(lastPos, pos)); + current = ""; + lastPos = pos + 1; + } else { + current += str.substring(lastPos, pos - 1); + lastPos = pos; + } + } + isEscaped = ch === 92; + pos++; + ch = str.charCodeAt(pos); + } + result.push(current + str.substring(lastPos)); + return result; +} +function table(state, startLine, endLine, silent) { + if (startLine + 2 > endLine) { + return false; + } + let nextLine = startLine + 1; + if (state.sCount[nextLine] < state.blkIndent) { + return false; + } + if (state.sCount[nextLine] - state.blkIndent >= 4) { + return false; + } + let pos = state.bMarks[nextLine] + state.tShift[nextLine]; + if (pos >= state.eMarks[nextLine]) { + return false; + } + const firstCh = state.src.charCodeAt(pos++); + if (firstCh !== 124 && firstCh !== 45 && firstCh !== 58) { + return false; + } + if (pos >= state.eMarks[nextLine]) { + return false; + } + const secondCh = state.src.charCodeAt(pos++); + if (secondCh !== 124 && secondCh !== 45 && secondCh !== 58 && !isSpace(secondCh)) { + return false; + } + if (firstCh === 45 && isSpace(secondCh)) { + return false; + } + while (pos < state.eMarks[nextLine]) { + const ch = state.src.charCodeAt(pos); + if (ch !== 124 && ch !== 45 && ch !== 58 && !isSpace(ch)) { + return false; + } + pos++; + } + let lineText = getLine(state, startLine + 1); + let columns = lineText.split("|"); + const aligns = []; + for (let i = 0; i < columns.length; i++) { + const t2 = columns[i].trim(); + if (!t2) { + if (i === 0 || i === columns.length - 1) { + continue; + } else { + return false; + } + } + if (!/^:?-+:?$/.test(t2)) { + return false; + } + if (t2.charCodeAt(t2.length - 1) === 58) { + aligns.push(t2.charCodeAt(0) === 58 ? "center" : "right"); + } else if (t2.charCodeAt(0) === 58) { + aligns.push("left"); + } else { + aligns.push(""); + } + } + lineText = getLine(state, startLine).trim(); + if (lineText.indexOf("|") === -1) { + return false; + } + if (state.sCount[startLine] - state.blkIndent >= 4) { + return false; + } + columns = escapedSplit(lineText); + if (columns.length && columns[0] === "") + columns.shift(); + if (columns.length && columns[columns.length - 1] === "") + columns.pop(); + const columnCount = columns.length; + if (columnCount === 0 || columnCount !== aligns.length) { + return false; + } + if (silent) { + return true; + } + const oldParentType = state.parentType; + state.parentType = "table"; + const terminatorRules = state.md.block.ruler.getRules("blockquote"); + const token_to = state.push("table_open", "table", 1); + const tableLines = [startLine, 0]; + token_to.map = tableLines; + const token_tho = state.push("thead_open", "thead", 1); + token_tho.map = [startLine, startLine + 1]; + const token_htro = state.push("tr_open", "tr", 1); + token_htro.map = [startLine, startLine + 1]; + for (let i = 0; i < columns.length; i++) { + const token_ho = state.push("th_open", "th", 1); + if (aligns[i]) { + token_ho.attrs = [["style", "text-align:" + aligns[i]]]; + } + const token_il = state.push("inline", "", 0); + token_il.content = columns[i].trim(); + token_il.children = []; + state.push("th_close", "th", -1); + } + state.push("tr_close", "tr", -1); + state.push("thead_close", "thead", -1); + let tbodyLines; + let autocompletedCells = 0; + for (nextLine = startLine + 2; nextLine < endLine; nextLine++) { + if (state.sCount[nextLine] < state.blkIndent) { + break; + } + let terminate = false; + for (let i = 0, l = terminatorRules.length; i < l; i++) { + if (terminatorRules[i](state, nextLine, endLine, true)) { + terminate = true; + break; + } + } + if (terminate) { + break; + } + lineText = getLine(state, nextLine).trim(); + if (!lineText) { + break; + } + if (state.sCount[nextLine] - state.blkIndent >= 4) { + break; + } + columns = escapedSplit(lineText); + if (columns.length && columns[0] === "") + columns.shift(); + if (columns.length && columns[columns.length - 1] === "") + columns.pop(); + autocompletedCells += columnCount - columns.length; + if (autocompletedCells > MAX_AUTOCOMPLETED_CELLS) { + break; + } + if (nextLine === startLine + 2) { + const token_tbo = state.push("tbody_open", "tbody", 1); + token_tbo.map = tbodyLines = [startLine + 2, 0]; + } + const token_tro = state.push("tr_open", "tr", 1); + token_tro.map = [nextLine, nextLine + 1]; + for (let i = 0; i < columnCount; i++) { + const token_tdo = state.push("td_open", "td", 1); + if (aligns[i]) { + token_tdo.attrs = [["style", "text-align:" + aligns[i]]]; + } + const token_il = state.push("inline", "", 0); + token_il.content = columns[i] ? columns[i].trim() : ""; + token_il.children = []; + state.push("td_close", "td", -1); + } + state.push("tr_close", "tr", -1); + } + if (tbodyLines) { + state.push("tbody_close", "tbody", -1); + tbodyLines[1] = nextLine; + } + state.push("table_close", "table", -1); + tableLines[1] = nextLine; + state.parentType = oldParentType; + state.line = nextLine; + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_block/code.mjs +function code(state, startLine, endLine) { + if (state.sCount[startLine] - state.blkIndent < 4) { + return false; + } + let nextLine = startLine + 1; + let last2 = nextLine; + while (nextLine < endLine) { + if (state.isEmpty(nextLine)) { + nextLine++; + continue; + } + if (state.sCount[nextLine] - state.blkIndent >= 4) { + nextLine++; + last2 = nextLine; + continue; + } + break; + } + state.line = last2; + const token = state.push("code_block", "code", 0); + token.content = state.getLines(startLine, last2, 4 + state.blkIndent, false) + "\n"; + token.map = [startLine, state.line]; + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_block/fence.mjs +function fence(state, startLine, endLine, silent) { + let pos = state.bMarks[startLine] + state.tShift[startLine]; + let max = state.eMarks[startLine]; + if (state.sCount[startLine] - state.blkIndent >= 4) { + return false; + } + if (pos + 3 > max) { + return false; + } + const marker = state.src.charCodeAt(pos); + if (marker !== 126 && marker !== 96) { + return false; + } + let mem = pos; + pos = state.skipChars(pos, marker); + let len = pos - mem; + if (len < 3) { + return false; + } + const markup = state.src.slice(mem, pos); + const params = state.src.slice(pos, max); + if (marker === 96) { + if (params.indexOf(String.fromCharCode(marker)) >= 0) { + return false; + } + } + if (silent) { + return true; + } + let nextLine = startLine; + let haveEndMarker = false; + for (; ; ) { + nextLine++; + if (nextLine >= endLine) { + break; + } + pos = mem = state.bMarks[nextLine] + state.tShift[nextLine]; + max = state.eMarks[nextLine]; + if (pos < max && state.sCount[nextLine] < state.blkIndent) { + break; + } + if (state.src.charCodeAt(pos) !== marker) { + continue; + } + if (state.sCount[nextLine] - state.blkIndent >= 4) { + continue; + } + pos = state.skipChars(pos, marker); + if (pos - mem < len) { + continue; + } + pos = state.skipSpaces(pos); + if (pos < max) { + continue; + } + haveEndMarker = true; + break; + } + len = state.sCount[startLine]; + state.line = nextLine + (haveEndMarker ? 1 : 0); + const token = state.push("fence", "code", 0); + token.info = params; + token.content = state.getLines(startLine + 1, nextLine, len, true); + token.markup = markup; + token.map = [startLine, state.line]; + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_block/blockquote.mjs +function blockquote(state, startLine, endLine, silent) { + let pos = state.bMarks[startLine] + state.tShift[startLine]; + let max = state.eMarks[startLine]; + const oldLineMax = state.lineMax; + if (state.sCount[startLine] - state.blkIndent >= 4) { + return false; + } + if (state.src.charCodeAt(pos) !== 62) { + return false; + } + if (silent) { + return true; + } + const oldBMarks = []; + const oldBSCount = []; + const oldSCount = []; + const oldTShift = []; + const terminatorRules = state.md.block.ruler.getRules("blockquote"); + const oldParentType = state.parentType; + state.parentType = "blockquote"; + let lastLineEmpty = false; + let nextLine; + for (nextLine = startLine; nextLine < endLine; nextLine++) { + const isOutdented = state.sCount[nextLine] < state.blkIndent; + pos = state.bMarks[nextLine] + state.tShift[nextLine]; + max = state.eMarks[nextLine]; + if (pos >= max) { + break; + } + if (state.src.charCodeAt(pos++) === 62 && !isOutdented) { + let initial = state.sCount[nextLine] + 1; + let spaceAfterMarker; + let adjustTab; + if (state.src.charCodeAt(pos) === 32) { + pos++; + initial++; + adjustTab = false; + spaceAfterMarker = true; + } else if (state.src.charCodeAt(pos) === 9) { + spaceAfterMarker = true; + if ((state.bsCount[nextLine] + initial) % 4 === 3) { + pos++; + initial++; + adjustTab = false; + } else { + adjustTab = true; + } + } else { + spaceAfterMarker = false; + } + let offset = initial; + oldBMarks.push(state.bMarks[nextLine]); + state.bMarks[nextLine] = pos; + while (pos < max) { + const ch = state.src.charCodeAt(pos); + if (isSpace(ch)) { + if (ch === 9) { + offset += 4 - (offset + state.bsCount[nextLine] + (adjustTab ? 1 : 0)) % 4; + } else { + offset++; + } + } else { + break; + } + pos++; + } + lastLineEmpty = pos >= max; + oldBSCount.push(state.bsCount[nextLine]); + state.bsCount[nextLine] = state.sCount[nextLine] + 1 + (spaceAfterMarker ? 1 : 0); + oldSCount.push(state.sCount[nextLine]); + state.sCount[nextLine] = offset - initial; + oldTShift.push(state.tShift[nextLine]); + state.tShift[nextLine] = pos - state.bMarks[nextLine]; + continue; + } + if (lastLineEmpty) { + break; + } + let terminate = false; + for (let i = 0, l = terminatorRules.length; i < l; i++) { + if (terminatorRules[i](state, nextLine, endLine, true)) { + terminate = true; + break; + } + } + if (terminate) { + state.lineMax = nextLine; + if (state.blkIndent !== 0) { + oldBMarks.push(state.bMarks[nextLine]); + oldBSCount.push(state.bsCount[nextLine]); + oldTShift.push(state.tShift[nextLine]); + oldSCount.push(state.sCount[nextLine]); + state.sCount[nextLine] -= state.blkIndent; + } + break; + } + oldBMarks.push(state.bMarks[nextLine]); + oldBSCount.push(state.bsCount[nextLine]); + oldTShift.push(state.tShift[nextLine]); + oldSCount.push(state.sCount[nextLine]); + state.sCount[nextLine] = -1; + } + const oldIndent = state.blkIndent; + state.blkIndent = 0; + const token_o = state.push("blockquote_open", "blockquote", 1); + token_o.markup = ">"; + const lines = [startLine, 0]; + token_o.map = lines; + state.md.block.tokenize(state, startLine, nextLine); + const token_c = state.push("blockquote_close", "blockquote", -1); + token_c.markup = ">"; + state.lineMax = oldLineMax; + state.parentType = oldParentType; + lines[1] = state.line; + for (let i = 0; i < oldTShift.length; i++) { + state.bMarks[i + startLine] = oldBMarks[i]; + state.tShift[i + startLine] = oldTShift[i]; + state.sCount[i + startLine] = oldSCount[i]; + state.bsCount[i + startLine] = oldBSCount[i]; + } + state.blkIndent = oldIndent; + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_block/hr.mjs +function hr(state, startLine, endLine, silent) { + const max = state.eMarks[startLine]; + if (state.sCount[startLine] - state.blkIndent >= 4) { + return false; + } + let pos = state.bMarks[startLine] + state.tShift[startLine]; + const marker = state.src.charCodeAt(pos++); + if (marker !== 42 && marker !== 45 && marker !== 95) { + return false; + } + let cnt = 1; + while (pos < max) { + const ch = state.src.charCodeAt(pos++); + if (ch !== marker && !isSpace(ch)) { + return false; + } + if (ch === marker) { + cnt++; + } + } + if (cnt < 3) { + return false; + } + if (silent) { + return true; + } + state.line = startLine + 1; + const token = state.push("hr", "hr", 0); + token.map = [startLine, state.line]; + token.markup = Array(cnt + 1).join(String.fromCharCode(marker)); + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_block/list.mjs +function skipBulletListMarker(state, startLine) { + const max = state.eMarks[startLine]; + let pos = state.bMarks[startLine] + state.tShift[startLine]; + const marker = state.src.charCodeAt(pos++); + if (marker !== 42 && marker !== 45 && marker !== 43) { + return -1; + } + if (pos < max) { + const ch = state.src.charCodeAt(pos); + if (!isSpace(ch)) { + return -1; + } + } + return pos; +} +function skipOrderedListMarker(state, startLine) { + const start = state.bMarks[startLine] + state.tShift[startLine]; + const max = state.eMarks[startLine]; + let pos = start; + if (pos + 1 >= max) { + return -1; + } + let ch = state.src.charCodeAt(pos++); + if (ch < 48 || ch > 57) { + return -1; + } + for (; ; ) { + if (pos >= max) { + return -1; + } + ch = state.src.charCodeAt(pos++); + if (ch >= 48 && ch <= 57) { + if (pos - start >= 10) { + return -1; + } + continue; + } + if (ch === 41 || ch === 46) { + break; + } + return -1; + } + if (pos < max) { + ch = state.src.charCodeAt(pos); + if (!isSpace(ch)) { + return -1; + } + } + return pos; +} +function markTightParagraphs(state, idx) { + const level = state.level + 2; + for (let i = idx + 2, l = state.tokens.length - 2; i < l; i++) { + if (state.tokens[i].level === level && state.tokens[i].type === "paragraph_open") { + state.tokens[i + 2].hidden = true; + state.tokens[i].hidden = true; + i += 2; + } + } +} +function list(state, startLine, endLine, silent) { + let max, pos, start, token; + let nextLine = startLine; + let tight = true; + if (state.sCount[nextLine] - state.blkIndent >= 4) { + return false; + } + if (state.listIndent >= 0 && state.sCount[nextLine] - state.listIndent >= 4 && state.sCount[nextLine] < state.blkIndent) { + return false; + } + let isTerminatingParagraph = false; + if (silent && state.parentType === "paragraph") { + if (state.sCount[nextLine] >= state.blkIndent) { + isTerminatingParagraph = true; + } + } + let isOrdered; + let markerValue; + let posAfterMarker; + if ((posAfterMarker = skipOrderedListMarker(state, nextLine)) >= 0) { + isOrdered = true; + start = state.bMarks[nextLine] + state.tShift[nextLine]; + markerValue = Number(state.src.slice(start, posAfterMarker - 1)); + if (isTerminatingParagraph && markerValue !== 1) + return false; + } else if ((posAfterMarker = skipBulletListMarker(state, nextLine)) >= 0) { + isOrdered = false; + } else { + return false; + } + if (isTerminatingParagraph) { + if (state.skipSpaces(posAfterMarker) >= state.eMarks[nextLine]) + return false; + } + if (silent) { + return true; + } + const markerCharCode = state.src.charCodeAt(posAfterMarker - 1); + const listTokIdx = state.tokens.length; + if (isOrdered) { + token = state.push("ordered_list_open", "ol", 1); + if (markerValue !== 1) { + token.attrs = [["start", markerValue]]; + } + } else { + token = state.push("bullet_list_open", "ul", 1); + } + const listLines = [nextLine, 0]; + token.map = listLines; + token.markup = String.fromCharCode(markerCharCode); + let prevEmptyEnd = false; + const terminatorRules = state.md.block.ruler.getRules("list"); + const oldParentType = state.parentType; + state.parentType = "list"; + while (nextLine < endLine) { + pos = posAfterMarker; + max = state.eMarks[nextLine]; + const initial = state.sCount[nextLine] + posAfterMarker - (state.bMarks[nextLine] + state.tShift[nextLine]); + let offset = initial; + while (pos < max) { + const ch = state.src.charCodeAt(pos); + if (ch === 9) { + offset += 4 - (offset + state.bsCount[nextLine]) % 4; + } else if (ch === 32) { + offset++; + } else { + break; + } + pos++; + } + const contentStart = pos; + let indentAfterMarker; + if (contentStart >= max) { + indentAfterMarker = 1; + } else { + indentAfterMarker = offset - initial; + } + if (indentAfterMarker > 4) { + indentAfterMarker = 1; + } + const indent = initial + indentAfterMarker; + token = state.push("list_item_open", "li", 1); + token.markup = String.fromCharCode(markerCharCode); + const itemLines = [nextLine, 0]; + token.map = itemLines; + if (isOrdered) { + token.info = state.src.slice(start, posAfterMarker - 1); + } + const oldTight = state.tight; + const oldTShift = state.tShift[nextLine]; + const oldSCount = state.sCount[nextLine]; + const oldListIndent = state.listIndent; + state.listIndent = state.blkIndent; + state.blkIndent = indent; + state.tight = true; + state.tShift[nextLine] = contentStart - state.bMarks[nextLine]; + state.sCount[nextLine] = offset; + if (contentStart >= max && state.isEmpty(nextLine + 1)) { + state.line = Math.min(state.line + 2, endLine); + } else { + state.md.block.tokenize(state, nextLine, endLine, true); + } + if (!state.tight || prevEmptyEnd) { + tight = false; + } + prevEmptyEnd = state.line - nextLine > 1 && state.isEmpty(state.line - 1); + state.blkIndent = state.listIndent; + state.listIndent = oldListIndent; + state.tShift[nextLine] = oldTShift; + state.sCount[nextLine] = oldSCount; + state.tight = oldTight; + token = state.push("list_item_close", "li", -1); + token.markup = String.fromCharCode(markerCharCode); + nextLine = state.line; + itemLines[1] = nextLine; + if (nextLine >= endLine) { + break; + } + if (state.sCount[nextLine] < state.blkIndent) { + break; + } + if (state.sCount[nextLine] - state.blkIndent >= 4) { + break; + } + let terminate = false; + for (let i = 0, l = terminatorRules.length; i < l; i++) { + if (terminatorRules[i](state, nextLine, endLine, true)) { + terminate = true; + break; + } + } + if (terminate) { + break; + } + if (isOrdered) { + posAfterMarker = skipOrderedListMarker(state, nextLine); + if (posAfterMarker < 0) { + break; + } + start = state.bMarks[nextLine] + state.tShift[nextLine]; + } else { + posAfterMarker = skipBulletListMarker(state, nextLine); + if (posAfterMarker < 0) { + break; + } + } + if (markerCharCode !== state.src.charCodeAt(posAfterMarker - 1)) { + break; + } + } + if (isOrdered) { + token = state.push("ordered_list_close", "ol", -1); + } else { + token = state.push("bullet_list_close", "ul", -1); + } + token.markup = String.fromCharCode(markerCharCode); + listLines[1] = nextLine; + state.line = nextLine; + state.parentType = oldParentType; + if (tight) { + markTightParagraphs(state, listTokIdx); + } + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_block/reference.mjs +function reference(state, startLine, _endLine, silent) { + let pos = state.bMarks[startLine] + state.tShift[startLine]; + let max = state.eMarks[startLine]; + let nextLine = startLine + 1; + if (state.sCount[startLine] - state.blkIndent >= 4) { + return false; + } + if (state.src.charCodeAt(pos) !== 91) { + return false; + } + function getNextLine(nextLine2) { + const endLine = state.lineMax; + if (nextLine2 >= endLine || state.isEmpty(nextLine2)) { + return null; + } + let isContinuation = false; + if (state.sCount[nextLine2] - state.blkIndent > 3) { + isContinuation = true; + } + if (state.sCount[nextLine2] < 0) { + isContinuation = true; + } + if (!isContinuation) { + const terminatorRules = state.md.block.ruler.getRules("reference"); + const oldParentType = state.parentType; + state.parentType = "reference"; + let terminate = false; + for (let i = 0, l = terminatorRules.length; i < l; i++) { + if (terminatorRules[i](state, nextLine2, endLine, true)) { + terminate = true; + break; + } + } + state.parentType = oldParentType; + if (terminate) { + return null; + } + } + const pos2 = state.bMarks[nextLine2] + state.tShift[nextLine2]; + const max2 = state.eMarks[nextLine2]; + return state.src.slice(pos2, max2 + 1); + } + let str = state.src.slice(pos, max + 1); + max = str.length; + let labelEnd = -1; + for (pos = 1; pos < max; pos++) { + const ch = str.charCodeAt(pos); + if (ch === 91) { + return false; + } else if (ch === 93) { + labelEnd = pos; + break; + } else if (ch === 10) { + const lineContent = getNextLine(nextLine); + if (lineContent !== null) { + str += lineContent; + max = str.length; + nextLine++; + } + } else if (ch === 92) { + pos++; + if (pos < max && str.charCodeAt(pos) === 10) { + const lineContent = getNextLine(nextLine); + if (lineContent !== null) { + str += lineContent; + max = str.length; + nextLine++; + } + } + } + } + if (labelEnd < 0 || str.charCodeAt(labelEnd + 1) !== 58) { + return false; + } + for (pos = labelEnd + 2; pos < max; pos++) { + const ch = str.charCodeAt(pos); + if (ch === 10) { + const lineContent = getNextLine(nextLine); + if (lineContent !== null) { + str += lineContent; + max = str.length; + nextLine++; + } + } else if (isSpace(ch)) { + } else { + break; + } + } + const destRes = state.md.helpers.parseLinkDestination(str, pos, max); + if (!destRes.ok) { + return false; + } + const href = state.md.normalizeLink(destRes.str); + if (!state.md.validateLink(href)) { + return false; + } + pos = destRes.pos; + const destEndPos = pos; + const destEndLineNo = nextLine; + const start = pos; + for (; pos < max; pos++) { + const ch = str.charCodeAt(pos); + if (ch === 10) { + const lineContent = getNextLine(nextLine); + if (lineContent !== null) { + str += lineContent; + max = str.length; + nextLine++; + } + } else if (isSpace(ch)) { + } else { + break; + } + } + let titleRes = state.md.helpers.parseLinkTitle(str, pos, max); + while (titleRes.can_continue) { + const lineContent = getNextLine(nextLine); + if (lineContent === null) + break; + str += lineContent; + pos = max; + max = str.length; + nextLine++; + titleRes = state.md.helpers.parseLinkTitle(str, pos, max, titleRes); + } + let title; + if (pos < max && start !== pos && titleRes.ok) { + title = titleRes.str; + pos = titleRes.pos; + } else { + title = ""; + pos = destEndPos; + nextLine = destEndLineNo; + } + while (pos < max) { + const ch = str.charCodeAt(pos); + if (!isSpace(ch)) { + break; + } + pos++; + } + if (pos < max && str.charCodeAt(pos) !== 10) { + if (title) { + title = ""; + pos = destEndPos; + nextLine = destEndLineNo; + while (pos < max) { + const ch = str.charCodeAt(pos); + if (!isSpace(ch)) { + break; + } + pos++; + } + } + } + if (pos < max && str.charCodeAt(pos) !== 10) { + return false; + } + const label = normalizeReference(str.slice(1, labelEnd)); + if (!label) { + return false; + } + if (silent) { + return true; + } + if (typeof state.env.references === "undefined") { + state.env.references = {}; + } + if (typeof state.env.references[label] === "undefined") { + state.env.references[label] = { title, href }; + } + state.line = nextLine; + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/common/html_blocks.mjs +var html_blocks_default = [ + "address", + "article", + "aside", + "base", + "basefont", + "blockquote", + "body", + "caption", + "center", + "col", + "colgroup", + "dd", + "details", + "dialog", + "dir", + "div", + "dl", + "dt", + "fieldset", + "figcaption", + "figure", + "footer", + "form", + "frame", + "frameset", + "h1", + "h2", + "h3", + "h4", + "h5", + "h6", + "head", + "header", + "hr", + "html", + "iframe", + "legend", + "li", + "link", + "main", + "menu", + "menuitem", + "nav", + "noframes", + "ol", + "optgroup", + "option", + "p", + "param", + "search", + "section", + "summary", + "table", + "tbody", + "td", + "tfoot", + "th", + "thead", + "title", + "tr", + "track", + "ul" +]; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/common/html_re.mjs +var attr_name = "[a-zA-Z_:][a-zA-Z0-9:._-]*"; +var unquoted = "[^\"'=<>`\\x00-\\x20]+"; +var single_quoted = "'[^']*'"; +var double_quoted = '"[^"]*"'; +var attr_value = "(?:" + unquoted + "|" + single_quoted + "|" + double_quoted + ")"; +var attribute = "(?:\\s+" + attr_name + "(?:\\s*=\\s*" + attr_value + ")?)"; +var open_tag = "<[A-Za-z][A-Za-z0-9\\-]*" + attribute + "*\\s*\\/?>"; +var close_tag = "<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>"; +var comment = ""; +var processing = "<[?][\\s\\S]*?[?]>"; +var declaration = "]*>"; +var cdata = ""; +var HTML_TAG_RE = new RegExp("^(?:" + open_tag + "|" + close_tag + "|" + comment + "|" + processing + "|" + declaration + "|" + cdata + ")"); +var HTML_OPEN_CLOSE_TAG_RE = new RegExp("^(?:" + open_tag + "|" + close_tag + ")"); + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_block/html_block.mjs +var HTML_SEQUENCES = [ + [/^<(script|pre|style|textarea)(?=(\s|>|$))/i, /<\/(script|pre|style|textarea)>/i, true], + [/^/, true], + [/^<\?/, /\?>/, true], + [/^/, true], + [/^/, true], + [new RegExp("^|$))", "i"), /^$/, true], + [new RegExp(HTML_OPEN_CLOSE_TAG_RE.source + "\\s*$"), /^$/, false] +]; +function html_block(state, startLine, endLine, silent) { + let pos = state.bMarks[startLine] + state.tShift[startLine]; + let max = state.eMarks[startLine]; + if (state.sCount[startLine] - state.blkIndent >= 4) { + return false; + } + if (!state.md.options.html) { + return false; + } + if (state.src.charCodeAt(pos) !== 60) { + return false; + } + let lineText = state.src.slice(pos, max); + let i = 0; + for (; i < HTML_SEQUENCES.length; i++) { + if (HTML_SEQUENCES[i][0].test(lineText)) { + break; + } + } + if (i === HTML_SEQUENCES.length) { + return false; + } + if (silent) { + return HTML_SEQUENCES[i][2]; + } + let nextLine = startLine + 1; + if (!HTML_SEQUENCES[i][1].test(lineText)) { + for (; nextLine < endLine; nextLine++) { + if (state.sCount[nextLine] < state.blkIndent) { + break; + } + pos = state.bMarks[nextLine] + state.tShift[nextLine]; + max = state.eMarks[nextLine]; + lineText = state.src.slice(pos, max); + if (HTML_SEQUENCES[i][1].test(lineText)) { + if (lineText.length !== 0) { + nextLine++; + } + break; + } + } + } + state.line = nextLine; + const token = state.push("html_block", "", 0); + token.map = [startLine, nextLine]; + token.content = state.getLines(startLine, nextLine, state.blkIndent, true); + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_block/heading.mjs +function heading(state, startLine, endLine, silent) { + let pos = state.bMarks[startLine] + state.tShift[startLine]; + let max = state.eMarks[startLine]; + if (state.sCount[startLine] - state.blkIndent >= 4) { + return false; + } + let ch = state.src.charCodeAt(pos); + if (ch !== 35 || pos >= max) { + return false; + } + let level = 1; + ch = state.src.charCodeAt(++pos); + while (ch === 35 && pos < max && level <= 6) { + level++; + ch = state.src.charCodeAt(++pos); + } + if (level > 6 || pos < max && !isSpace(ch)) { + return false; + } + if (silent) { + return true; + } + max = state.skipSpacesBack(max, pos); + const tmp = state.skipCharsBack(max, 35, pos); + if (tmp > pos && isSpace(state.src.charCodeAt(tmp - 1))) { + max = tmp; + } + state.line = startLine + 1; + const token_o = state.push("heading_open", "h" + String(level), 1); + token_o.markup = "########".slice(0, level); + token_o.map = [startLine, state.line]; + const token_i = state.push("inline", "", 0); + token_i.content = state.src.slice(pos, max).trim(); + token_i.map = [startLine, state.line]; + token_i.children = []; + const token_c = state.push("heading_close", "h" + String(level), -1); + token_c.markup = "########".slice(0, level); + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_block/lheading.mjs +function lheading(state, startLine, endLine) { + const terminatorRules = state.md.block.ruler.getRules("paragraph"); + if (state.sCount[startLine] - state.blkIndent >= 4) { + return false; + } + const oldParentType = state.parentType; + state.parentType = "paragraph"; + let level = 0; + let marker; + let nextLine = startLine + 1; + for (; nextLine < endLine && !state.isEmpty(nextLine); nextLine++) { + if (state.sCount[nextLine] - state.blkIndent > 3) { + continue; + } + if (state.sCount[nextLine] >= state.blkIndent) { + let pos = state.bMarks[nextLine] + state.tShift[nextLine]; + const max = state.eMarks[nextLine]; + if (pos < max) { + marker = state.src.charCodeAt(pos); + if (marker === 45 || marker === 61) { + pos = state.skipChars(pos, marker); + pos = state.skipSpaces(pos); + if (pos >= max) { + level = marker === 61 ? 1 : 2; + break; + } + } + } + } + if (state.sCount[nextLine] < 0) { + continue; + } + let terminate = false; + for (let i = 0, l = terminatorRules.length; i < l; i++) { + if (terminatorRules[i](state, nextLine, endLine, true)) { + terminate = true; + break; + } + } + if (terminate) { + break; + } + } + if (!level) { + return false; + } + const content = state.getLines(startLine, nextLine, state.blkIndent, false).trim(); + state.line = nextLine + 1; + const token_o = state.push("heading_open", "h" + String(level), 1); + token_o.markup = String.fromCharCode(marker); + token_o.map = [startLine, state.line]; + const token_i = state.push("inline", "", 0); + token_i.content = content; + token_i.map = [startLine, state.line - 1]; + token_i.children = []; + const token_c = state.push("heading_close", "h" + String(level), -1); + token_c.markup = String.fromCharCode(marker); + state.parentType = oldParentType; + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_block/paragraph.mjs +function paragraph(state, startLine, endLine) { + const terminatorRules = state.md.block.ruler.getRules("paragraph"); + const oldParentType = state.parentType; + let nextLine = startLine + 1; + state.parentType = "paragraph"; + for (; nextLine < endLine && !state.isEmpty(nextLine); nextLine++) { + if (state.sCount[nextLine] - state.blkIndent > 3) { + continue; + } + if (state.sCount[nextLine] < 0) { + continue; + } + let terminate = false; + for (let i = 0, l = terminatorRules.length; i < l; i++) { + if (terminatorRules[i](state, nextLine, endLine, true)) { + terminate = true; + break; + } + } + if (terminate) { + break; + } + } + const content = state.getLines(startLine, nextLine, state.blkIndent, false).trim(); + state.line = nextLine; + const token_o = state.push("paragraph_open", "p", 1); + token_o.map = [startLine, state.line]; + const token_i = state.push("inline", "", 0); + token_i.content = content; + token_i.map = [startLine, state.line]; + token_i.children = []; + state.push("paragraph_close", "p", -1); + state.parentType = oldParentType; + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/parser_block.mjs +var _rules2 = [ + ["table", table, ["paragraph", "reference"]], + ["code", code], + ["fence", fence, ["paragraph", "reference", "blockquote", "list"]], + ["blockquote", blockquote, ["paragraph", "reference", "blockquote", "list"]], + ["hr", hr, ["paragraph", "reference", "blockquote", "list"]], + ["list", list, ["paragraph", "reference", "blockquote"]], + ["reference", reference], + ["html_block", html_block, ["paragraph", "reference", "blockquote"]], + ["heading", heading, ["paragraph", "reference", "blockquote"]], + ["lheading", lheading], + ["paragraph", paragraph] +]; +function ParserBlock() { + this.ruler = new ruler_default(); + for (let i = 0; i < _rules2.length; i++) { + this.ruler.push(_rules2[i][0], _rules2[i][1], { alt: (_rules2[i][2] || []).slice() }); + } +} +ParserBlock.prototype.tokenize = function(state, startLine, endLine) { + const rules = this.ruler.getRules(""); + const len = rules.length; + const maxNesting = state.md.options.maxNesting; + let line = startLine; + let hasEmptyLines = false; + while (line < endLine) { + state.line = line = state.skipEmptyLines(line); + if (line >= endLine) { + break; + } + if (state.sCount[line] < state.blkIndent) { + break; + } + if (state.level >= maxNesting) { + state.line = endLine; + break; + } + const prevLine = state.line; + let ok = false; + for (let i = 0; i < len; i++) { + ok = rules[i](state, line, endLine, false); + if (ok) { + if (prevLine >= state.line) { + throw new Error("block rule didn't increment state.line"); + } + break; + } + } + if (!ok) + throw new Error("none of the block rules matched"); + state.tight = !hasEmptyLines; + if (state.isEmpty(state.line - 1)) { + hasEmptyLines = true; + } + line = state.line; + if (line < endLine && state.isEmpty(line)) { + hasEmptyLines = true; + line++; + state.line = line; + } + } +}; +ParserBlock.prototype.parse = function(src, md, env, outTokens) { + if (!src) { + return; + } + const state = new this.State(src, md, env, outTokens); + this.tokenize(state, state.line, state.lineMax); +}; +ParserBlock.prototype.State = state_block_default; +var parser_block_default = ParserBlock; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_inline/state_inline.mjs +function StateInline(src, md, env, outTokens) { + this.src = src; + this.env = env; + this.md = md; + this.tokens = outTokens; + this.tokens_meta = Array(outTokens.length); + this.pos = 0; + this.posMax = this.src.length; + this.level = 0; + this.pending = ""; + this.pendingLevel = 0; + this.cache = {}; + this.delimiters = []; + this._prev_delimiters = []; + this.backticks = {}; + this.backticksScanned = false; + this.linkLevel = 0; +} +StateInline.prototype.pushPending = function() { + const token = new token_default("text", "", 0); + token.content = this.pending; + token.level = this.pendingLevel; + this.tokens.push(token); + this.pending = ""; + return token; +}; +StateInline.prototype.push = function(type, tag, nesting) { + if (this.pending) { + this.pushPending(); + } + const token = new token_default(type, tag, nesting); + let token_meta = null; + if (nesting < 0) { + this.level--; + this.delimiters = this._prev_delimiters.pop(); + } + token.level = this.level; + if (nesting > 0) { + this.level++; + this._prev_delimiters.push(this.delimiters); + this.delimiters = []; + token_meta = { delimiters: this.delimiters }; + } + this.pendingLevel = this.level; + this.tokens.push(token); + this.tokens_meta.push(token_meta); + return token; +}; +StateInline.prototype.scanDelims = function(start, canSplitWord) { + const max = this.posMax; + const marker = this.src.charCodeAt(start); + const lastChar = start > 0 ? this.src.charCodeAt(start - 1) : 32; + let pos = start; + while (pos < max && this.src.charCodeAt(pos) === marker) { + pos++; + } + const count = pos - start; + const nextChar = pos < max ? this.src.charCodeAt(pos) : 32; + const isLastPunctChar = isMdAsciiPunct(lastChar) || isPunctChar(String.fromCharCode(lastChar)); + const isNextPunctChar = isMdAsciiPunct(nextChar) || isPunctChar(String.fromCharCode(nextChar)); + const isLastWhiteSpace = isWhiteSpace(lastChar); + const isNextWhiteSpace = isWhiteSpace(nextChar); + const left_flanking = !isNextWhiteSpace && (!isNextPunctChar || isLastWhiteSpace || isLastPunctChar); + const right_flanking = !isLastWhiteSpace && (!isLastPunctChar || isNextWhiteSpace || isNextPunctChar); + const can_open = left_flanking && (canSplitWord || !right_flanking || isLastPunctChar); + const can_close = right_flanking && (canSplitWord || !left_flanking || isNextPunctChar); + return { can_open, can_close, length: count }; +}; +StateInline.prototype.Token = token_default; +var state_inline_default = StateInline; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_inline/text.mjs +function isTerminatorChar(ch) { + switch (ch) { + case 10: + case 33: + case 35: + case 36: + case 37: + case 38: + case 42: + case 43: + case 45: + case 58: + case 60: + case 61: + case 62: + case 64: + case 91: + case 92: + case 93: + case 94: + case 95: + case 96: + case 123: + case 125: + case 126: + return true; + default: + return false; + } +} +function text3(state, silent) { + let pos = state.pos; + while (pos < state.posMax && !isTerminatorChar(state.src.charCodeAt(pos))) { + pos++; + } + if (pos === state.pos) { + return false; + } + if (!silent) { + state.pending += state.src.slice(state.pos, pos); + } + state.pos = pos; + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_inline/linkify.mjs +var SCHEME_RE = /(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i; +function linkify2(state, silent) { + if (!state.md.options.linkify) + return false; + if (state.linkLevel > 0) + return false; + const pos = state.pos; + const max = state.posMax; + if (pos + 3 > max) + return false; + if (state.src.charCodeAt(pos) !== 58) + return false; + if (state.src.charCodeAt(pos + 1) !== 47) + return false; + if (state.src.charCodeAt(pos + 2) !== 47) + return false; + const match2 = state.pending.match(SCHEME_RE); + if (!match2) + return false; + const proto = match2[1]; + const link2 = state.md.linkify.matchAtStart(state.src.slice(pos - proto.length)); + if (!link2) + return false; + let url = link2.url; + if (url.length <= proto.length) + return false; + url = url.replace(/\*+$/, ""); + const fullUrl = state.md.normalizeLink(url); + if (!state.md.validateLink(fullUrl)) + return false; + if (!silent) { + state.pending = state.pending.slice(0, -proto.length); + const token_o = state.push("link_open", "a", 1); + token_o.attrs = [["href", fullUrl]]; + token_o.markup = "linkify"; + token_o.info = "auto"; + const token_t = state.push("text", "", 0); + token_t.content = state.md.normalizeLinkText(url); + const token_c = state.push("link_close", "a", -1); + token_c.markup = "linkify"; + token_c.info = "auto"; + } + state.pos += url.length - proto.length; + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_inline/newline.mjs +function newline(state, silent) { + let pos = state.pos; + if (state.src.charCodeAt(pos) !== 10) { + return false; + } + const pmax = state.pending.length - 1; + const max = state.posMax; + if (!silent) { + if (pmax >= 0 && state.pending.charCodeAt(pmax) === 32) { + if (pmax >= 1 && state.pending.charCodeAt(pmax - 1) === 32) { + let ws = pmax - 1; + while (ws >= 1 && state.pending.charCodeAt(ws - 1) === 32) + ws--; + state.pending = state.pending.slice(0, ws); + state.push("hardbreak", "br", 0); + } else { + state.pending = state.pending.slice(0, -1); + state.push("softbreak", "br", 0); + } + } else { + state.push("softbreak", "br", 0); + } + } + pos++; + while (pos < max && isSpace(state.src.charCodeAt(pos))) { + pos++; + } + state.pos = pos; + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_inline/escape.mjs +var ESCAPED = []; +for (let i = 0; i < 256; i++) { + ESCAPED.push(0); +} +"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach(function(ch) { + ESCAPED[ch.charCodeAt(0)] = 1; +}); +function escape2(state, silent) { + let pos = state.pos; + const max = state.posMax; + if (state.src.charCodeAt(pos) !== 92) + return false; + pos++; + if (pos >= max) + return false; + let ch1 = state.src.charCodeAt(pos); + if (ch1 === 10) { + if (!silent) { + state.push("hardbreak", "br", 0); + } + pos++; + while (pos < max) { + ch1 = state.src.charCodeAt(pos); + if (!isSpace(ch1)) + break; + pos++; + } + state.pos = pos; + return true; + } + let escapedStr = state.src[pos]; + if (ch1 >= 55296 && ch1 <= 56319 && pos + 1 < max) { + const ch2 = state.src.charCodeAt(pos + 1); + if (ch2 >= 56320 && ch2 <= 57343) { + escapedStr += state.src[pos + 1]; + pos++; + } + } + const origStr = "\\" + escapedStr; + if (!silent) { + const token = state.push("text_special", "", 0); + if (ch1 < 256 && ESCAPED[ch1] !== 0) { + token.content = escapedStr; + } else { + token.content = origStr; + } + token.markup = origStr; + token.info = "escape"; + } + state.pos = pos + 1; + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_inline/backticks.mjs +function backtick(state, silent) { + let pos = state.pos; + const ch = state.src.charCodeAt(pos); + if (ch !== 96) { + return false; + } + const start = pos; + pos++; + const max = state.posMax; + while (pos < max && state.src.charCodeAt(pos) === 96) { + pos++; + } + const marker = state.src.slice(start, pos); + const openerLength = marker.length; + if (state.backticksScanned && (state.backticks[openerLength] || 0) <= start) { + if (!silent) + state.pending += marker; + state.pos += openerLength; + return true; + } + let matchEnd = pos; + let matchStart; + while ((matchStart = state.src.indexOf("`", matchEnd)) !== -1) { + matchEnd = matchStart + 1; + while (matchEnd < max && state.src.charCodeAt(matchEnd) === 96) { + matchEnd++; + } + const closerLength = matchEnd - matchStart; + if (closerLength === openerLength) { + if (!silent) { + const token = state.push("code_inline", "code", 0); + token.markup = marker; + token.content = state.src.slice(pos, matchStart).replace(/\n/g, " ").replace(/^ (.+) $/, "$1"); + } + state.pos = matchEnd; + return true; + } + state.backticks[closerLength] = matchStart; + } + state.backticksScanned = true; + if (!silent) + state.pending += marker; + state.pos += openerLength; + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_inline/strikethrough.mjs +function strikethrough_tokenize(state, silent) { + const start = state.pos; + const marker = state.src.charCodeAt(start); + if (silent) { + return false; + } + if (marker !== 126) { + return false; + } + const scanned = state.scanDelims(state.pos, true); + let len = scanned.length; + const ch = String.fromCharCode(marker); + if (len < 2) { + return false; + } + let token; + if (len % 2) { + token = state.push("text", "", 0); + token.content = ch; + len--; + } + for (let i = 0; i < len; i += 2) { + token = state.push("text", "", 0); + token.content = ch + ch; + state.delimiters.push({ + marker, + length: 0, + token: state.tokens.length - 1, + end: -1, + open: scanned.can_open, + close: scanned.can_close + }); + } + state.pos += scanned.length; + return true; +} +function postProcess(state, delimiters) { + let token; + const loneMarkers = []; + const max = delimiters.length; + for (let i = 0; i < max; i++) { + const startDelim = delimiters[i]; + if (startDelim.marker !== 126) { + continue; + } + if (startDelim.end === -1) { + continue; + } + const endDelim = delimiters[startDelim.end]; + token = state.tokens[startDelim.token]; + token.type = "s_open"; + token.tag = "s"; + token.nesting = 1; + token.markup = "~~"; + token.content = ""; + token = state.tokens[endDelim.token]; + token.type = "s_close"; + token.tag = "s"; + token.nesting = -1; + token.markup = "~~"; + token.content = ""; + if (state.tokens[endDelim.token - 1].type === "text" && state.tokens[endDelim.token - 1].content === "~") { + loneMarkers.push(endDelim.token - 1); + } + } + while (loneMarkers.length) { + const i = loneMarkers.pop(); + let j = i + 1; + while (j < state.tokens.length && state.tokens[j].type === "s_close") { + j++; + } + j--; + if (i !== j) { + token = state.tokens[j]; + state.tokens[j] = state.tokens[i]; + state.tokens[i] = token; + } + } +} +function strikethrough_postProcess(state) { + const tokens_meta = state.tokens_meta; + const max = state.tokens_meta.length; + postProcess(state, state.delimiters); + for (let curr = 0; curr < max; curr++) { + if (tokens_meta[curr] && tokens_meta[curr].delimiters) { + postProcess(state, tokens_meta[curr].delimiters); + } + } +} +var strikethrough_default = { + tokenize: strikethrough_tokenize, + postProcess: strikethrough_postProcess +}; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_inline/emphasis.mjs +function emphasis_tokenize(state, silent) { + const start = state.pos; + const marker = state.src.charCodeAt(start); + if (silent) { + return false; + } + if (marker !== 95 && marker !== 42) { + return false; + } + const scanned = state.scanDelims(state.pos, marker === 42); + for (let i = 0; i < scanned.length; i++) { + const token = state.push("text", "", 0); + token.content = String.fromCharCode(marker); + state.delimiters.push({ + marker, + length: scanned.length, + token: state.tokens.length - 1, + end: -1, + open: scanned.can_open, + close: scanned.can_close + }); + } + state.pos += scanned.length; + return true; +} +function postProcess2(state, delimiters) { + const max = delimiters.length; + for (let i = max - 1; i >= 0; i--) { + const startDelim = delimiters[i]; + if (startDelim.marker !== 95 && startDelim.marker !== 42) { + continue; + } + if (startDelim.end === -1) { + continue; + } + const endDelim = delimiters[startDelim.end]; + const isStrong = i > 0 && delimiters[i - 1].end === startDelim.end + 1 && delimiters[i - 1].marker === startDelim.marker && delimiters[i - 1].token === startDelim.token - 1 && delimiters[startDelim.end + 1].token === endDelim.token + 1; + const ch = String.fromCharCode(startDelim.marker); + const token_o = state.tokens[startDelim.token]; + token_o.type = isStrong ? "strong_open" : "em_open"; + token_o.tag = isStrong ? "strong" : "em"; + token_o.nesting = 1; + token_o.markup = isStrong ? ch + ch : ch; + token_o.content = ""; + const token_c = state.tokens[endDelim.token]; + token_c.type = isStrong ? "strong_close" : "em_close"; + token_c.tag = isStrong ? "strong" : "em"; + token_c.nesting = -1; + token_c.markup = isStrong ? ch + ch : ch; + token_c.content = ""; + if (isStrong) { + state.tokens[delimiters[i - 1].token].content = ""; + state.tokens[delimiters[startDelim.end + 1].token].content = ""; + i--; + } + } +} +function emphasis_post_process(state) { + const tokens_meta = state.tokens_meta; + const max = state.tokens_meta.length; + postProcess2(state, state.delimiters); + for (let curr = 0; curr < max; curr++) { + if (tokens_meta[curr] && tokens_meta[curr].delimiters) { + postProcess2(state, tokens_meta[curr].delimiters); + } + } +} +var emphasis_default = { + tokenize: emphasis_tokenize, + postProcess: emphasis_post_process +}; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_inline/link.mjs +function link(state, silent) { + let code2, label, res, ref; + let href = ""; + let title = ""; + let start = state.pos; + let parseReference = true; + if (state.src.charCodeAt(state.pos) !== 91) { + return false; + } + const oldPos = state.pos; + const max = state.posMax; + const labelStart = state.pos + 1; + const labelEnd = state.md.helpers.parseLinkLabel(state, state.pos, true); + if (labelEnd < 0) { + return false; + } + let pos = labelEnd + 1; + if (pos < max && state.src.charCodeAt(pos) === 40) { + parseReference = false; + pos++; + for (; pos < max; pos++) { + code2 = state.src.charCodeAt(pos); + if (!isSpace(code2) && code2 !== 10) { + break; + } + } + if (pos >= max) { + return false; + } + start = pos; + res = state.md.helpers.parseLinkDestination(state.src, pos, state.posMax); + if (res.ok) { + href = state.md.normalizeLink(res.str); + if (state.md.validateLink(href)) { + pos = res.pos; + } else { + href = ""; + } + start = pos; + for (; pos < max; pos++) { + code2 = state.src.charCodeAt(pos); + if (!isSpace(code2) && code2 !== 10) { + break; + } + } + res = state.md.helpers.parseLinkTitle(state.src, pos, state.posMax); + if (pos < max && start !== pos && res.ok) { + title = res.str; + pos = res.pos; + for (; pos < max; pos++) { + code2 = state.src.charCodeAt(pos); + if (!isSpace(code2) && code2 !== 10) { + break; + } + } + } + } + if (pos >= max || state.src.charCodeAt(pos) !== 41) { + parseReference = true; + } + pos++; + } + if (parseReference) { + if (typeof state.env.references === "undefined") { + return false; + } + if (pos < max && state.src.charCodeAt(pos) === 91) { + start = pos + 1; + pos = state.md.helpers.parseLinkLabel(state, pos); + if (pos >= 0) { + label = state.src.slice(start, pos++); + } else { + pos = labelEnd + 1; + } + } else { + pos = labelEnd + 1; + } + if (!label) { + label = state.src.slice(labelStart, labelEnd); + } + ref = state.env.references[normalizeReference(label)]; + if (!ref) { + state.pos = oldPos; + return false; + } + href = ref.href; + title = ref.title; + } + if (!silent) { + state.pos = labelStart; + state.posMax = labelEnd; + const token_o = state.push("link_open", "a", 1); + const attrs = [["href", href]]; + token_o.attrs = attrs; + if (title) { + attrs.push(["title", title]); + } + state.linkLevel++; + state.md.inline.tokenize(state); + state.linkLevel--; + state.push("link_close", "a", -1); + } + state.pos = pos; + state.posMax = max; + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_inline/image.mjs +function image(state, silent) { + let code2, content, label, pos, ref, res, title, start; + let href = ""; + const oldPos = state.pos; + const max = state.posMax; + if (state.src.charCodeAt(state.pos) !== 33) { + return false; + } + if (state.src.charCodeAt(state.pos + 1) !== 91) { + return false; + } + const labelStart = state.pos + 2; + const labelEnd = state.md.helpers.parseLinkLabel(state, state.pos + 1, false); + if (labelEnd < 0) { + return false; + } + pos = labelEnd + 1; + if (pos < max && state.src.charCodeAt(pos) === 40) { + pos++; + for (; pos < max; pos++) { + code2 = state.src.charCodeAt(pos); + if (!isSpace(code2) && code2 !== 10) { + break; + } + } + if (pos >= max) { + return false; + } + start = pos; + res = state.md.helpers.parseLinkDestination(state.src, pos, state.posMax); + if (res.ok) { + href = state.md.normalizeLink(res.str); + if (state.md.validateLink(href)) { + pos = res.pos; + } else { + href = ""; + } + } + start = pos; + for (; pos < max; pos++) { + code2 = state.src.charCodeAt(pos); + if (!isSpace(code2) && code2 !== 10) { + break; + } + } + res = state.md.helpers.parseLinkTitle(state.src, pos, state.posMax); + if (pos < max && start !== pos && res.ok) { + title = res.str; + pos = res.pos; + for (; pos < max; pos++) { + code2 = state.src.charCodeAt(pos); + if (!isSpace(code2) && code2 !== 10) { + break; + } + } + } else { + title = ""; + } + if (pos >= max || state.src.charCodeAt(pos) !== 41) { + state.pos = oldPos; + return false; + } + pos++; + } else { + if (typeof state.env.references === "undefined") { + return false; + } + if (pos < max && state.src.charCodeAt(pos) === 91) { + start = pos + 1; + pos = state.md.helpers.parseLinkLabel(state, pos); + if (pos >= 0) { + label = state.src.slice(start, pos++); + } else { + pos = labelEnd + 1; + } + } else { + pos = labelEnd + 1; + } + if (!label) { + label = state.src.slice(labelStart, labelEnd); + } + ref = state.env.references[normalizeReference(label)]; + if (!ref) { + state.pos = oldPos; + return false; + } + href = ref.href; + title = ref.title; + } + if (!silent) { + content = state.src.slice(labelStart, labelEnd); + const tokens = []; + state.md.inline.parse( + content, + state.md, + state.env, + tokens + ); + const token = state.push("image", "img", 0); + const attrs = [["src", href], ["alt", ""]]; + token.attrs = attrs; + token.children = tokens; + token.content = content; + if (title) { + attrs.push(["title", title]); + } + } + state.pos = pos; + state.posMax = max; + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_inline/autolink.mjs +var EMAIL_RE = /^([a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)$/; +var AUTOLINK_RE = /^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^<>\x00-\x20]*)$/; +function autolink(state, silent) { + let pos = state.pos; + if (state.src.charCodeAt(pos) !== 60) { + return false; + } + const start = state.pos; + const max = state.posMax; + for (; ; ) { + if (++pos >= max) + return false; + const ch = state.src.charCodeAt(pos); + if (ch === 60) + return false; + if (ch === 62) + break; + } + const url = state.src.slice(start + 1, pos); + if (AUTOLINK_RE.test(url)) { + const fullUrl = state.md.normalizeLink(url); + if (!state.md.validateLink(fullUrl)) { + return false; + } + if (!silent) { + const token_o = state.push("link_open", "a", 1); + token_o.attrs = [["href", fullUrl]]; + token_o.markup = "autolink"; + token_o.info = "auto"; + const token_t = state.push("text", "", 0); + token_t.content = state.md.normalizeLinkText(url); + const token_c = state.push("link_close", "a", -1); + token_c.markup = "autolink"; + token_c.info = "auto"; + } + state.pos += url.length + 2; + return true; + } + if (EMAIL_RE.test(url)) { + const fullUrl = state.md.normalizeLink("mailto:" + url); + if (!state.md.validateLink(fullUrl)) { + return false; + } + if (!silent) { + const token_o = state.push("link_open", "a", 1); + token_o.attrs = [["href", fullUrl]]; + token_o.markup = "autolink"; + token_o.info = "auto"; + const token_t = state.push("text", "", 0); + token_t.content = state.md.normalizeLinkText(url); + const token_c = state.push("link_close", "a", -1); + token_c.markup = "autolink"; + token_c.info = "auto"; + } + state.pos += url.length + 2; + return true; + } + return false; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_inline/html_inline.mjs +function isLinkOpen2(str) { + return /^\s]/i.test(str); +} +function isLinkClose2(str) { + return /^<\/a\s*>/i.test(str); +} +function isLetter(ch) { + const lc = ch | 32; + return lc >= 97 && lc <= 122; +} +function html_inline(state, silent) { + if (!state.md.options.html) { + return false; + } + const max = state.posMax; + const pos = state.pos; + if (state.src.charCodeAt(pos) !== 60 || pos + 2 >= max) { + return false; + } + const ch = state.src.charCodeAt(pos + 1); + if (ch !== 33 && ch !== 63 && ch !== 47 && !isLetter(ch)) { + return false; + } + const match2 = state.src.slice(pos).match(HTML_TAG_RE); + if (!match2) { + return false; + } + if (!silent) { + const token = state.push("html_inline", "", 0); + token.content = match2[0]; + if (isLinkOpen2(token.content)) + state.linkLevel++; + if (isLinkClose2(token.content)) + state.linkLevel--; + } + state.pos += match2[0].length; + return true; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_inline/entity.mjs +var DIGITAL_RE = /^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i; +var NAMED_RE = /^&([a-z][a-z0-9]{1,31});/i; +function entity(state, silent) { + const pos = state.pos; + const max = state.posMax; + if (state.src.charCodeAt(pos) !== 38) + return false; + if (pos + 1 >= max) + return false; + const ch = state.src.charCodeAt(pos + 1); + if (ch === 35) { + const match2 = state.src.slice(pos).match(DIGITAL_RE); + if (match2) { + if (!silent) { + const code2 = match2[1][0].toLowerCase() === "x" ? parseInt(match2[1].slice(1), 16) : parseInt(match2[1], 10); + const token = state.push("text_special", "", 0); + token.content = isValidEntityCode(code2) ? fromCodePoint3(code2) : fromCodePoint3(65533); + token.markup = match2[0]; + token.info = "entity"; + } + state.pos += match2[0].length; + return true; + } + } else { + const match2 = state.src.slice(pos).match(NAMED_RE); + if (match2) { + const decoded = decodeHTML(match2[0]); + if (decoded !== match2[0]) { + if (!silent) { + const token = state.push("text_special", "", 0); + token.content = decoded; + token.markup = match2[0]; + token.info = "entity"; + } + state.pos += match2[0].length; + return true; + } + } + } + return false; +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_inline/balance_pairs.mjs +function processDelimiters(delimiters) { + const openersBottom = {}; + const max = delimiters.length; + if (!max) + return; + let headerIdx = 0; + let lastTokenIdx = -2; + const jumps = []; + for (let closerIdx = 0; closerIdx < max; closerIdx++) { + const closer = delimiters[closerIdx]; + jumps.push(0); + if (delimiters[headerIdx].marker !== closer.marker || lastTokenIdx !== closer.token - 1) { + headerIdx = closerIdx; + } + lastTokenIdx = closer.token; + closer.length = closer.length || 0; + if (!closer.close) + continue; + if (!openersBottom.hasOwnProperty(closer.marker)) { + openersBottom[closer.marker] = [-1, -1, -1, -1, -1, -1]; + } + const minOpenerIdx = openersBottom[closer.marker][(closer.open ? 3 : 0) + closer.length % 3]; + let openerIdx = headerIdx - jumps[headerIdx] - 1; + let newMinOpenerIdx = openerIdx; + for (; openerIdx > minOpenerIdx; openerIdx -= jumps[openerIdx] + 1) { + const opener = delimiters[openerIdx]; + if (opener.marker !== closer.marker) + continue; + if (opener.open && opener.end < 0) { + let isOddMatch = false; + if (opener.close || closer.open) { + if ((opener.length + closer.length) % 3 === 0) { + if (opener.length % 3 !== 0 || closer.length % 3 !== 0) { + isOddMatch = true; + } + } + } + if (!isOddMatch) { + const lastJump = openerIdx > 0 && !delimiters[openerIdx - 1].open ? jumps[openerIdx - 1] + 1 : 0; + jumps[closerIdx] = closerIdx - openerIdx + lastJump; + jumps[openerIdx] = lastJump; + closer.open = false; + opener.end = closerIdx; + opener.close = false; + newMinOpenerIdx = -1; + lastTokenIdx = -2; + break; + } + } + } + if (newMinOpenerIdx !== -1) { + openersBottom[closer.marker][(closer.open ? 3 : 0) + (closer.length || 0) % 3] = newMinOpenerIdx; + } + } +} +function link_pairs(state) { + const tokens_meta = state.tokens_meta; + const max = state.tokens_meta.length; + processDelimiters(state.delimiters); + for (let curr = 0; curr < max; curr++) { + if (tokens_meta[curr] && tokens_meta[curr].delimiters) { + processDelimiters(tokens_meta[curr].delimiters); + } + } +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/rules_inline/fragments_join.mjs +function fragments_join(state) { + let curr, last2; + let level = 0; + const tokens = state.tokens; + const max = state.tokens.length; + for (curr = last2 = 0; curr < max; curr++) { + if (tokens[curr].nesting < 0) + level--; + tokens[curr].level = level; + if (tokens[curr].nesting > 0) + level++; + if (tokens[curr].type === "text" && curr + 1 < max && tokens[curr + 1].type === "text") { + tokens[curr + 1].content = tokens[curr].content + tokens[curr + 1].content; + } else { + if (curr !== last2) { + tokens[last2] = tokens[curr]; + } + last2++; + } + } + if (curr !== last2) { + tokens.length = last2; + } +} + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/parser_inline.mjs +var _rules3 = [ + ["text", text3], + ["linkify", linkify2], + ["newline", newline], + ["escape", escape2], + ["backticks", backtick], + ["strikethrough", strikethrough_default.tokenize], + ["emphasis", emphasis_default.tokenize], + ["link", link], + ["image", image], + ["autolink", autolink], + ["html_inline", html_inline], + ["entity", entity] +]; +var _rules22 = [ + ["balance_pairs", link_pairs], + ["strikethrough", strikethrough_default.postProcess], + ["emphasis", emphasis_default.postProcess], + ["fragments_join", fragments_join] +]; +function ParserInline() { + this.ruler = new ruler_default(); + for (let i = 0; i < _rules3.length; i++) { + this.ruler.push(_rules3[i][0], _rules3[i][1]); + } + this.ruler2 = new ruler_default(); + for (let i = 0; i < _rules22.length; i++) { + this.ruler2.push(_rules22[i][0], _rules22[i][1]); + } +} +ParserInline.prototype.skipToken = function(state) { + const pos = state.pos; + const rules = this.ruler.getRules(""); + const len = rules.length; + const maxNesting = state.md.options.maxNesting; + const cache = state.cache; + if (typeof cache[pos] !== "undefined") { + state.pos = cache[pos]; + return; + } + let ok = false; + if (state.level < maxNesting) { + for (let i = 0; i < len; i++) { + state.level++; + ok = rules[i](state, true); + state.level--; + if (ok) { + if (pos >= state.pos) { + throw new Error("inline rule didn't increment state.pos"); + } + break; + } + } + } else { + state.pos = state.posMax; + } + if (!ok) { + state.pos++; + } + cache[pos] = state.pos; +}; +ParserInline.prototype.tokenize = function(state) { + const rules = this.ruler.getRules(""); + const len = rules.length; + const end2 = state.posMax; + const maxNesting = state.md.options.maxNesting; + while (state.pos < end2) { + const prevPos = state.pos; + let ok = false; + if (state.level < maxNesting) { + for (let i = 0; i < len; i++) { + ok = rules[i](state, false); + if (ok) { + if (prevPos >= state.pos) { + throw new Error("inline rule didn't increment state.pos"); + } + break; + } + } + } + if (ok) { + if (state.pos >= end2) { + break; + } + continue; + } + state.pending += state.src[state.pos++]; + } + if (state.pending) { + state.pushPending(); + } +}; +ParserInline.prototype.parse = function(str, md, env, outTokens) { + const state = new this.State(str, md, env, outTokens); + this.tokenize(state); + const rules = this.ruler2.getRules(""); + const len = rules.length; + for (let i = 0; i < len; i++) { + rules[i](state); + } +}; +ParserInline.prototype.State = state_inline_default; +var parser_inline_default = ParserInline; + +// ../../node_modules/.pnpm/linkify-it@5.0.0/node_modules/linkify-it/lib/re.mjs +function re_default(opts) { + const re = {}; + opts = opts || {}; + re.src_Any = regex_default.source; + re.src_Cc = regex_default2.source; + re.src_Z = regex_default6.source; + re.src_P = regex_default4.source; + re.src_ZPCc = [re.src_Z, re.src_P, re.src_Cc].join("|"); + re.src_ZCc = [re.src_Z, re.src_Cc].join("|"); + const text_separators = "[><\uFF5C]"; + re.src_pseudo_letter = "(?:(?!" + text_separators + "|" + re.src_ZPCc + ")" + re.src_Any + ")"; + re.src_ip4 = "(?:(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)"; + re.src_auth = "(?:(?:(?!" + re.src_ZCc + "|[@/\\[\\]()]).)+@)?"; + re.src_port = "(?::(?:6(?:[0-4]\\d{3}|5(?:[0-4]\\d{2}|5(?:[0-2]\\d|3[0-5])))|[1-5]?\\d{1,4}))?"; + re.src_host_terminator = "(?=$|" + text_separators + "|" + re.src_ZPCc + ")(?!" + (opts["---"] ? "-(?!--)|" : "-|") + "_|:\\d|\\.-|\\.(?!$|" + re.src_ZPCc + "))"; + re.src_path = "(?:[/?#](?:(?!" + re.src_ZCc + "|" + text_separators + `|[()[\\]{}.,"'?!\\-;]).|\\[(?:(?!` + re.src_ZCc + "|\\]).)*\\]|\\((?:(?!" + re.src_ZCc + "|[)]).)*\\)|\\{(?:(?!" + re.src_ZCc + '|[}]).)*\\}|\\"(?:(?!' + re.src_ZCc + `|["]).)+\\"|\\'(?:(?!` + re.src_ZCc + "|[']).)+\\'|\\'(?=" + re.src_pseudo_letter + "|[-])|\\.{2,}[a-zA-Z0-9%/&]|\\.(?!" + re.src_ZCc + "|[.]|$)|" + (opts["---"] ? "\\-(?!--(?:[^-]|$))(?:-*)|" : "\\-+|") + ",(?!" + re.src_ZCc + "|$)|;(?!" + re.src_ZCc + "|$)|\\!+(?!" + re.src_ZCc + "|[!]|$)|\\?(?!" + re.src_ZCc + "|[?]|$))+|\\/)?"; + re.src_email_name = '[\\-;:&=\\+\\$,\\.a-zA-Z0-9_][\\-;:&=\\+\\$,\\"\\.a-zA-Z0-9_]*'; + re.src_xn = "xn--[a-z0-9\\-]{1,59}"; + re.src_domain_root = "(?:" + re.src_xn + "|" + re.src_pseudo_letter + "{1,63})"; + re.src_domain = "(?:" + re.src_xn + "|(?:" + re.src_pseudo_letter + ")|(?:" + re.src_pseudo_letter + "(?:-|" + re.src_pseudo_letter + "){0,61}" + re.src_pseudo_letter + "))"; + re.src_host = "(?:(?:(?:(?:" + re.src_domain + ")\\.)*" + re.src_domain + "))"; + re.tpl_host_fuzzy = "(?:" + re.src_ip4 + "|(?:(?:(?:" + re.src_domain + ")\\.)+(?:%TLDS%)))"; + re.tpl_host_no_ip_fuzzy = "(?:(?:(?:" + re.src_domain + ")\\.)+(?:%TLDS%))"; + re.src_host_strict = re.src_host + re.src_host_terminator; + re.tpl_host_fuzzy_strict = re.tpl_host_fuzzy + re.src_host_terminator; + re.src_host_port_strict = re.src_host + re.src_port + re.src_host_terminator; + re.tpl_host_port_fuzzy_strict = re.tpl_host_fuzzy + re.src_port + re.src_host_terminator; + re.tpl_host_port_no_ip_fuzzy_strict = re.tpl_host_no_ip_fuzzy + re.src_port + re.src_host_terminator; + re.tpl_host_fuzzy_test = "localhost|www\\.|\\.\\d{1,3}\\.|(?:\\.(?:%TLDS%)(?:" + re.src_ZPCc + "|>|$))"; + re.tpl_email_fuzzy = "(^|" + text_separators + '|"|\\(|' + re.src_ZCc + ")(" + re.src_email_name + "@" + re.tpl_host_fuzzy_strict + ")"; + re.tpl_link_fuzzy = "(^|(?![.:/\\-_@])(?:[$+<=>^`|\uFF5C]|" + re.src_ZPCc + "))((?![$+<=>^`|\uFF5C])" + re.tpl_host_port_fuzzy_strict + re.src_path + ")"; + re.tpl_link_no_ip_fuzzy = "(^|(?![.:/\\-_@])(?:[$+<=>^`|\uFF5C]|" + re.src_ZPCc + "))((?![$+<=>^`|\uFF5C])" + re.tpl_host_port_no_ip_fuzzy_strict + re.src_path + ")"; + return re; +} + +// ../../node_modules/.pnpm/linkify-it@5.0.0/node_modules/linkify-it/index.mjs +function assign2(obj) { + const sources = Array.prototype.slice.call(arguments, 1); + sources.forEach(function(source) { + if (!source) { + return; + } + Object.keys(source).forEach(function(key) { + obj[key] = source[key]; + }); + }); + return obj; +} +function _class2(obj) { + return Object.prototype.toString.call(obj); +} +function isString2(obj) { + return _class2(obj) === "[object String]"; +} +function isObject(obj) { + return _class2(obj) === "[object Object]"; +} +function isRegExp(obj) { + return _class2(obj) === "[object RegExp]"; +} +function isFunction(obj) { + return _class2(obj) === "[object Function]"; +} +function escapeRE2(str) { + return str.replace(/[.?*+^$[\]\\(){}|-]/g, "\\$&"); +} +var defaultOptions3 = { + fuzzyLink: true, + fuzzyEmail: true, + fuzzyIP: false +}; +function isOptionsObj(obj) { + return Object.keys(obj || {}).reduce(function(acc, k) { + return acc || defaultOptions3.hasOwnProperty(k); + }, false); +} +var defaultSchemas = { + "http:": { + validate: function(text4, pos, self2) { + const tail = text4.slice(pos); + if (!self2.re.http) { + self2.re.http = new RegExp( + "^\\/\\/" + self2.re.src_auth + self2.re.src_host_port_strict + self2.re.src_path, + "i" + ); + } + if (self2.re.http.test(tail)) { + return tail.match(self2.re.http)[0].length; + } + return 0; + } + }, + "https:": "http:", + "ftp:": "http:", + "//": { + validate: function(text4, pos, self2) { + const tail = text4.slice(pos); + if (!self2.re.no_http) { + self2.re.no_http = new RegExp( + "^" + self2.re.src_auth + "(?:localhost|(?:(?:" + self2.re.src_domain + ")\\.)+" + self2.re.src_domain_root + ")" + self2.re.src_port + self2.re.src_host_terminator + self2.re.src_path, + "i" + ); + } + if (self2.re.no_http.test(tail)) { + if (pos >= 3 && text4[pos - 3] === ":") { + return 0; + } + if (pos >= 3 && text4[pos - 3] === "/") { + return 0; + } + return tail.match(self2.re.no_http)[0].length; + } + return 0; + } + }, + "mailto:": { + validate: function(text4, pos, self2) { + const tail = text4.slice(pos); + if (!self2.re.mailto) { + self2.re.mailto = new RegExp( + "^" + self2.re.src_email_name + "@" + self2.re.src_host_strict, + "i" + ); + } + if (self2.re.mailto.test(tail)) { + return tail.match(self2.re.mailto)[0].length; + } + return 0; + } + } +}; +var tlds_2ch_src_re = "a[cdefgilmnoqrstuwxz]|b[abdefghijmnorstvwyz]|c[acdfghiklmnoruvwxyz]|d[ejkmoz]|e[cegrstu]|f[ijkmor]|g[abdefghilmnpqrstuwy]|h[kmnrtu]|i[delmnoqrst]|j[emop]|k[eghimnprwyz]|l[abcikrstuvy]|m[acdeghklmnopqrstuvwxyz]|n[acefgilopruz]|om|p[aefghklmnrstwy]|qa|r[eosuw]|s[abcdeghijklmnortuvxyz]|t[cdfghjklmnortvwz]|u[agksyz]|v[aceginu]|w[fs]|y[et]|z[amw]"; +var tlds_default = "biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|\u0440\u0444".split("|"); +function resetScanCache(self2) { + self2.__index__ = -1; + self2.__text_cache__ = ""; +} +function createValidator(re) { + return function(text4, pos) { + const tail = text4.slice(pos); + if (re.test(tail)) { + return tail.match(re)[0].length; + } + return 0; + }; +} +function createNormalizer() { + return function(match2, self2) { + self2.normalize(match2); + }; +} +function compile4(self2) { + const re = self2.re = re_default(self2.__opts__); + const tlds2 = self2.__tlds__.slice(); + self2.onCompile(); + if (!self2.__tlds_replaced__) { + tlds2.push(tlds_2ch_src_re); + } + tlds2.push(re.src_xn); + re.src_tlds = tlds2.join("|"); + function untpl(tpl) { + return tpl.replace("%TLDS%", re.src_tlds); + } + re.email_fuzzy = RegExp(untpl(re.tpl_email_fuzzy), "i"); + re.link_fuzzy = RegExp(untpl(re.tpl_link_fuzzy), "i"); + re.link_no_ip_fuzzy = RegExp(untpl(re.tpl_link_no_ip_fuzzy), "i"); + re.host_fuzzy_test = RegExp(untpl(re.tpl_host_fuzzy_test), "i"); + const aliases2 = []; + self2.__compiled__ = {}; + function schemaError(name2, val2) { + throw new Error('(LinkifyIt) Invalid schema "' + name2 + '": ' + val2); + } + Object.keys(self2.__schemas__).forEach(function(name2) { + const val2 = self2.__schemas__[name2]; + if (val2 === null) { + return; + } + const compiled = { validate: null, link: null }; + self2.__compiled__[name2] = compiled; + if (isObject(val2)) { + if (isRegExp(val2.validate)) { + compiled.validate = createValidator(val2.validate); + } else if (isFunction(val2.validate)) { + compiled.validate = val2.validate; + } else { + schemaError(name2, val2); + } + if (isFunction(val2.normalize)) { + compiled.normalize = val2.normalize; + } else if (!val2.normalize) { + compiled.normalize = createNormalizer(); + } else { + schemaError(name2, val2); + } + return; + } + if (isString2(val2)) { + aliases2.push(name2); + return; + } + schemaError(name2, val2); + }); + aliases2.forEach(function(alias) { + if (!self2.__compiled__[self2.__schemas__[alias]]) { + return; + } + self2.__compiled__[alias].validate = self2.__compiled__[self2.__schemas__[alias]].validate; + self2.__compiled__[alias].normalize = self2.__compiled__[self2.__schemas__[alias]].normalize; + }); + self2.__compiled__[""] = { validate: null, normalize: createNormalizer() }; + const slist = Object.keys(self2.__compiled__).filter(function(name2) { + return name2.length > 0 && self2.__compiled__[name2]; + }).map(escapeRE2).join("|"); + self2.re.schema_test = RegExp("(^|(?!_)(?:[><\uFF5C]|" + re.src_ZPCc + "))(" + slist + ")", "i"); + self2.re.schema_search = RegExp("(^|(?!_)(?:[><\uFF5C]|" + re.src_ZPCc + "))(" + slist + ")", "ig"); + self2.re.schema_at_start = RegExp("^" + self2.re.schema_search.source, "i"); + self2.re.pretest = RegExp( + "(" + self2.re.schema_test.source + ")|(" + self2.re.host_fuzzy_test.source + ")|@", + "i" + ); + resetScanCache(self2); +} +function Match(self2, shift) { + const start = self2.__index__; + const end2 = self2.__last_index__; + const text4 = self2.__text_cache__.slice(start, end2); + this.schema = self2.__schema__.toLowerCase(); + this.index = start + shift; + this.lastIndex = end2 + shift; + this.raw = text4; + this.text = text4; + this.url = text4; +} +function createMatch(self2, shift) { + const match2 = new Match(self2, shift); + self2.__compiled__[match2.schema].normalize(match2, self2); + return match2; +} +function LinkifyIt(schemas2, options) { + if (!(this instanceof LinkifyIt)) { + return new LinkifyIt(schemas2, options); + } + if (!options) { + if (isOptionsObj(schemas2)) { + options = schemas2; + schemas2 = {}; + } + } + this.__opts__ = assign2({}, defaultOptions3, options); + this.__index__ = -1; + this.__last_index__ = -1; + this.__schema__ = ""; + this.__text_cache__ = ""; + this.__schemas__ = assign2({}, defaultSchemas, schemas2); + this.__compiled__ = {}; + this.__tlds__ = tlds_default; + this.__tlds_replaced__ = false; + this.re = {}; + compile4(this); +} +LinkifyIt.prototype.add = function add2(schema4, definition) { + this.__schemas__[schema4] = definition; + compile4(this); + return this; +}; +LinkifyIt.prototype.set = function set(options) { + this.__opts__ = assign2(this.__opts__, options); + return this; +}; +LinkifyIt.prototype.test = function test(text4) { + this.__text_cache__ = text4; + this.__index__ = -1; + if (!text4.length) { + return false; + } + let m, ml, me, len, shift, next2, re, tld_pos, at_pos; + if (this.re.schema_test.test(text4)) { + re = this.re.schema_search; + re.lastIndex = 0; + while ((m = re.exec(text4)) !== null) { + len = this.testSchemaAt(text4, m[2], re.lastIndex); + if (len) { + this.__schema__ = m[2]; + this.__index__ = m.index + m[1].length; + this.__last_index__ = m.index + m[0].length + len; + break; + } + } + } + if (this.__opts__.fuzzyLink && this.__compiled__["http:"]) { + tld_pos = text4.search(this.re.host_fuzzy_test); + if (tld_pos >= 0) { + if (this.__index__ < 0 || tld_pos < this.__index__) { + if ((ml = text4.match(this.__opts__.fuzzyIP ? this.re.link_fuzzy : this.re.link_no_ip_fuzzy)) !== null) { + shift = ml.index + ml[1].length; + if (this.__index__ < 0 || shift < this.__index__) { + this.__schema__ = ""; + this.__index__ = shift; + this.__last_index__ = ml.index + ml[0].length; + } + } + } + } + } + if (this.__opts__.fuzzyEmail && this.__compiled__["mailto:"]) { + at_pos = text4.indexOf("@"); + if (at_pos >= 0) { + if ((me = text4.match(this.re.email_fuzzy)) !== null) { + shift = me.index + me[1].length; + next2 = me.index + me[0].length; + if (this.__index__ < 0 || shift < this.__index__ || shift === this.__index__ && next2 > this.__last_index__) { + this.__schema__ = "mailto:"; + this.__index__ = shift; + this.__last_index__ = next2; + } + } + } + } + return this.__index__ >= 0; +}; +LinkifyIt.prototype.pretest = function pretest(text4) { + return this.re.pretest.test(text4); +}; +LinkifyIt.prototype.testSchemaAt = function testSchemaAt(text4, schema4, pos) { + if (!this.__compiled__[schema4.toLowerCase()]) { + return 0; + } + return this.__compiled__[schema4.toLowerCase()].validate(text4, pos, this); +}; +LinkifyIt.prototype.match = function match(text4) { + const result = []; + let shift = 0; + if (this.__index__ >= 0 && this.__text_cache__ === text4) { + result.push(createMatch(this, shift)); + shift = this.__last_index__; + } + let tail = shift ? text4.slice(shift) : text4; + while (this.test(tail)) { + result.push(createMatch(this, shift)); + tail = tail.slice(this.__last_index__); + shift += this.__last_index__; + } + if (result.length) { + return result; + } + return null; +}; +LinkifyIt.prototype.matchAtStart = function matchAtStart(text4) { + this.__text_cache__ = text4; + this.__index__ = -1; + if (!text4.length) + return null; + const m = this.re.schema_at_start.exec(text4); + if (!m) + return null; + const len = this.testSchemaAt(text4, m[2], m[0].length); + if (!len) + return null; + this.__schema__ = m[2]; + this.__index__ = m.index + m[1].length; + this.__last_index__ = m.index + m[0].length + len; + return createMatch(this, 0); +}; +LinkifyIt.prototype.tlds = function tlds(list2, keepOld) { + list2 = Array.isArray(list2) ? list2 : [list2]; + if (!keepOld) { + this.__tlds__ = list2.slice(); + this.__tlds_replaced__ = true; + compile4(this); + return this; + } + this.__tlds__ = this.__tlds__.concat(list2).sort().filter(function(el, idx, arr) { + return el !== arr[idx - 1]; + }).reverse(); + compile4(this); + return this; +}; +LinkifyIt.prototype.normalize = function normalize2(match2) { + if (!match2.schema) { + match2.url = "http://" + match2.url; + } + if (match2.schema === "mailto:" && !/^mailto:/i.test(match2.url)) { + match2.url = "mailto:" + match2.url; + } +}; +LinkifyIt.prototype.onCompile = function onCompile() { +}; +var linkify_it_default = LinkifyIt; + +// ../../node_modules/.pnpm/punycode.js@2.3.1/node_modules/punycode.js/punycode.es6.js +var maxInt = 2147483647; +var base = 36; +var tMin = 1; +var tMax = 26; +var skew = 38; +var damp = 700; +var initialBias = 72; +var initialN = 128; +var delimiter = "-"; +var regexPunycode = /^xn--/; +var regexNonASCII = /[^\0-\x7F]/; +var regexSeparators = /[\x2E\u3002\uFF0E\uFF61]/g; +var errors = { + "overflow": "Overflow: input needs wider integers to process", + "not-basic": "Illegal input >= 0x80 (not a basic code point)", + "invalid-input": "Invalid input" +}; +var baseMinusTMin = base - tMin; +var floor = Math.floor; +var stringFromCharCode = String.fromCharCode; +function error(type) { + throw new RangeError(errors[type]); +} +function map2(array, callback) { + const result = []; + let length = array.length; + while (length--) { + result[length] = callback(array[length]); + } + return result; +} +function mapDomain(domain, callback) { + const parts = domain.split("@"); + let result = ""; + if (parts.length > 1) { + result = parts[0] + "@"; + domain = parts[1]; + } + domain = domain.replace(regexSeparators, "."); + const labels = domain.split("."); + const encoded = map2(labels, callback).join("."); + return result + encoded; +} +function ucs2decode(string2) { + const output = []; + let counter = 0; + const length = string2.length; + while (counter < length) { + const value = string2.charCodeAt(counter++); + if (value >= 55296 && value <= 56319 && counter < length) { + const extra = string2.charCodeAt(counter++); + if ((extra & 64512) == 56320) { + output.push(((value & 1023) << 10) + (extra & 1023) + 65536); + } else { + output.push(value); + counter--; + } + } else { + output.push(value); + } + } + return output; +} +var ucs2encode = (codePoints) => String.fromCodePoint(...codePoints); +var basicToDigit = function(codePoint) { + if (codePoint >= 48 && codePoint < 58) { + return 26 + (codePoint - 48); + } + if (codePoint >= 65 && codePoint < 91) { + return codePoint - 65; + } + if (codePoint >= 97 && codePoint < 123) { + return codePoint - 97; + } + return base; +}; +var digitToBasic = function(digit, flag) { + return digit + 22 + 75 * (digit < 26) - ((flag != 0) << 5); +}; +var adapt = function(delta, numPoints, firstTime) { + let k = 0; + delta = firstTime ? floor(delta / damp) : delta >> 1; + delta += floor(delta / numPoints); + for (; delta > baseMinusTMin * tMax >> 1; k += base) { + delta = floor(delta / baseMinusTMin); + } + return floor(k + (baseMinusTMin + 1) * delta / (delta + skew)); +}; +var decode2 = function(input) { + const output = []; + const inputLength = input.length; + let i = 0; + let n = initialN; + let bias = initialBias; + let basic = input.lastIndexOf(delimiter); + if (basic < 0) { + basic = 0; + } + for (let j = 0; j < basic; ++j) { + if (input.charCodeAt(j) >= 128) { + error("not-basic"); + } + output.push(input.charCodeAt(j)); + } + for (let index2 = basic > 0 ? basic + 1 : 0; index2 < inputLength; ) { + const oldi = i; + for (let w = 1, k = base; ; k += base) { + if (index2 >= inputLength) { + error("invalid-input"); + } + const digit = basicToDigit(input.charCodeAt(index2++)); + if (digit >= base) { + error("invalid-input"); + } + if (digit > floor((maxInt - i) / w)) { + error("overflow"); + } + i += digit * w; + const t2 = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias; + if (digit < t2) { + break; + } + const baseMinusT = base - t2; + if (w > floor(maxInt / baseMinusT)) { + error("overflow"); + } + w *= baseMinusT; + } + const out = output.length + 1; + bias = adapt(i - oldi, out, oldi == 0); + if (floor(i / out) > maxInt - n) { + error("overflow"); + } + n += floor(i / out); + i %= out; + output.splice(i++, 0, n); + } + return String.fromCodePoint(...output); +}; +var encode2 = function(input) { + const output = []; + input = ucs2decode(input); + const inputLength = input.length; + let n = initialN; + let delta = 0; + let bias = initialBias; + for (const currentValue of input) { + if (currentValue < 128) { + output.push(stringFromCharCode(currentValue)); + } + } + const basicLength = output.length; + let handledCPCount = basicLength; + if (basicLength) { + output.push(delimiter); + } + while (handledCPCount < inputLength) { + let m = maxInt; + for (const currentValue of input) { + if (currentValue >= n && currentValue < m) { + m = currentValue; + } + } + const handledCPCountPlusOne = handledCPCount + 1; + if (m - n > floor((maxInt - delta) / handledCPCountPlusOne)) { + error("overflow"); + } + delta += (m - n) * handledCPCountPlusOne; + n = m; + for (const currentValue of input) { + if (currentValue < n && ++delta > maxInt) { + error("overflow"); + } + if (currentValue === n) { + let q = delta; + for (let k = base; ; k += base) { + const t2 = k <= bias ? tMin : k >= bias + tMax ? tMax : k - bias; + if (q < t2) { + break; + } + const qMinusT = q - t2; + const baseMinusT = base - t2; + output.push( + stringFromCharCode(digitToBasic(t2 + qMinusT % baseMinusT, 0)) + ); + q = floor(qMinusT / baseMinusT); + } + output.push(stringFromCharCode(digitToBasic(q, 0))); + bias = adapt(delta, handledCPCountPlusOne, handledCPCount === basicLength); + delta = 0; + ++handledCPCount; + } + } + ++delta; + ++n; + } + return output.join(""); +}; +var toUnicode = function(input) { + return mapDomain(input, function(string2) { + return regexPunycode.test(string2) ? decode2(string2.slice(4).toLowerCase()) : string2; + }); +}; +var toASCII = function(input) { + return mapDomain(input, function(string2) { + return regexNonASCII.test(string2) ? "xn--" + encode2(string2) : string2; + }); +}; +var punycode = { + "version": "2.3.1", + "ucs2": { + "decode": ucs2decode, + "encode": ucs2encode + }, + "decode": decode2, + "encode": encode2, + "toASCII": toASCII, + "toUnicode": toUnicode +}; +var punycode_es6_default = punycode; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/presets/default.mjs +var default_default = { + options: { + html: false, + xhtmlOut: false, + breaks: false, + langPrefix: "language-", + linkify: false, + typographer: false, + quotes: "\u201C\u201D\u2018\u2019", + highlight: null, + maxNesting: 100 + }, + components: { + core: {}, + block: {}, + inline: {} + } +}; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/presets/zero.mjs +var zero_default = { + options: { + html: false, + xhtmlOut: false, + breaks: false, + langPrefix: "language-", + linkify: false, + typographer: false, + quotes: "\u201C\u201D\u2018\u2019", + highlight: null, + maxNesting: 20 + }, + components: { + core: { + rules: [ + "normalize", + "block", + "inline", + "text_join" + ] + }, + block: { + rules: [ + "paragraph" + ] + }, + inline: { + rules: [ + "text" + ], + rules2: [ + "balance_pairs", + "fragments_join" + ] + } + } +}; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/presets/commonmark.mjs +var commonmark_default = { + options: { + html: true, + xhtmlOut: true, + breaks: false, + langPrefix: "language-", + linkify: false, + typographer: false, + quotes: "\u201C\u201D\u2018\u2019", + highlight: null, + maxNesting: 20 + }, + components: { + core: { + rules: [ + "normalize", + "block", + "inline", + "text_join" + ] + }, + block: { + rules: [ + "blockquote", + "code", + "fence", + "heading", + "hr", + "html_block", + "lheading", + "list", + "reference", + "paragraph" + ] + }, + inline: { + rules: [ + "autolink", + "backticks", + "emphasis", + "entity", + "escape", + "html_inline", + "image", + "link", + "newline", + "text" + ], + rules2: [ + "balance_pairs", + "emphasis", + "fragments_join" + ] + } + } +}; + +// ../../node_modules/.pnpm/markdown-it@14.1.0/node_modules/markdown-it/lib/index.mjs +var config = { + default: default_default, + zero: zero_default, + commonmark: commonmark_default +}; +var BAD_PROTO_RE = /^(vbscript|javascript|file|data):/; +var GOOD_DATA_RE = /^data:image\/(gif|png|jpeg|webp);/; +function validateLink(url) { + const str = url.trim().toLowerCase(); + return BAD_PROTO_RE.test(str) ? GOOD_DATA_RE.test(str) : true; +} +var RECODE_HOSTNAME_FOR = ["http:", "https:", "mailto:"]; +function normalizeLink(url) { + const parsed = parse_default(url, true); + if (parsed.hostname) { + if (!parsed.protocol || RECODE_HOSTNAME_FOR.indexOf(parsed.protocol) >= 0) { + try { + parsed.hostname = punycode_es6_default.toASCII(parsed.hostname); + } catch (er) { + } + } + } + return encode_default(format(parsed)); +} +function normalizeLinkText(url) { + const parsed = parse_default(url, true); + if (parsed.hostname) { + if (!parsed.protocol || RECODE_HOSTNAME_FOR.indexOf(parsed.protocol) >= 0) { + try { + parsed.hostname = punycode_es6_default.toUnicode(parsed.hostname); + } catch (er) { + } + } + } + return decode_default(format(parsed), decode_default.defaultChars + "%"); +} +function MarkdownIt(presetName, options) { + if (!(this instanceof MarkdownIt)) { + return new MarkdownIt(presetName, options); + } + if (!options) { + if (!isString(presetName)) { + options = presetName || {}; + presetName = "default"; + } + } + this.inline = new parser_inline_default(); + this.block = new parser_block_default(); + this.core = new parser_core_default(); + this.renderer = new renderer_default(); + this.linkify = new linkify_it_default(); + this.validateLink = validateLink; + this.normalizeLink = normalizeLink; + this.normalizeLinkText = normalizeLinkText; + this.utils = utils_exports; + this.helpers = assign({}, helpers_exports); + this.options = {}; + this.configure(presetName); + if (options) { + this.set(options); + } +} +MarkdownIt.prototype.set = function(options) { + assign(this.options, options); + return this; +}; +MarkdownIt.prototype.configure = function(presets) { + const self2 = this; + if (isString(presets)) { + const presetName = presets; + presets = config[presetName]; + if (!presets) { + throw new Error('Wrong `markdown-it` preset "' + presetName + '", check name'); + } + } + if (!presets) { + throw new Error("Wrong `markdown-it` preset, can't be empty"); + } + if (presets.options) { + self2.set(presets.options); + } + if (presets.components) { + Object.keys(presets.components).forEach(function(name2) { + if (presets.components[name2].rules) { + self2[name2].ruler.enableOnly(presets.components[name2].rules); + } + if (presets.components[name2].rules2) { + self2[name2].ruler2.enableOnly(presets.components[name2].rules2); + } + }); + } + return this; +}; +MarkdownIt.prototype.enable = function(list2, ignoreInvalid) { + let result = []; + if (!Array.isArray(list2)) { + list2 = [list2]; + } + ["core", "block", "inline"].forEach(function(chain) { + result = result.concat(this[chain].ruler.enable(list2, true)); + }, this); + result = result.concat(this.inline.ruler2.enable(list2, true)); + const missed = list2.filter(function(name2) { + return result.indexOf(name2) < 0; + }); + if (missed.length && !ignoreInvalid) { + throw new Error("MarkdownIt. Failed to enable unknown rule(s): " + missed); + } + return this; +}; +MarkdownIt.prototype.disable = function(list2, ignoreInvalid) { + let result = []; + if (!Array.isArray(list2)) { + list2 = [list2]; + } + ["core", "block", "inline"].forEach(function(chain) { + result = result.concat(this[chain].ruler.disable(list2, true)); + }, this); + result = result.concat(this.inline.ruler2.disable(list2, true)); + const missed = list2.filter(function(name2) { + return result.indexOf(name2) < 0; + }); + if (missed.length && !ignoreInvalid) { + throw new Error("MarkdownIt. Failed to disable unknown rule(s): " + missed); + } + return this; +}; +MarkdownIt.prototype.use = function(plugin2) { + const args = [this].concat(Array.prototype.slice.call(arguments, 1)); + plugin2.apply(plugin2, args); + return this; +}; +MarkdownIt.prototype.parse = function(src, env) { + if (typeof src !== "string") { + throw new Error("Input data should be a String"); + } + const state = new this.core.State(src, this, env); + this.core.process(state); + return state.tokens; +}; +MarkdownIt.prototype.render = function(src, env) { + env = env || {}; + return this.renderer.render(this.parse(src, env), this.options, env); +}; +MarkdownIt.prototype.parseInline = function(src, env) { + const state = new this.core.State(src, this, env); + state.inlineMode = true; + this.core.process(state); + return state.tokens; +}; +MarkdownIt.prototype.renderInline = function(src, env) { + env = env || {}; + return this.renderer.render(this.parseInline(src, env), this.options, env); +}; +var lib_default = MarkdownIt; + +// ../../node_modules/.pnpm/markdown-it-ins@4.0.0/node_modules/markdown-it-ins/index.mjs +function ins_plugin(md) { + function tokenize(state, silent) { + const start = state.pos; + const marker = state.src.charCodeAt(start); + if (silent) { + return false; + } + if (marker !== 43) { + return false; + } + const scanned = state.scanDelims(state.pos, true); + let len = scanned.length; + const ch = String.fromCharCode(marker); + if (len < 2) { + return false; + } + if (len % 2) { + const token = state.push("text", "", 0); + token.content = ch; + len--; + } + for (let i = 0; i < len; i += 2) { + const token = state.push("text", "", 0); + token.content = ch + ch; + if (!scanned.can_open && !scanned.can_close) { + continue; + } + state.delimiters.push({ + marker, + length: 0, + jump: i / 2, + token: state.tokens.length - 1, + end: -1, + open: scanned.can_open, + close: scanned.can_close + }); + } + state.pos += scanned.length; + return true; + } + function postProcess3(state, delimiters) { + let token; + const loneMarkers = []; + const max = delimiters.length; + for (let i = 0; i < max; i++) { + const startDelim = delimiters[i]; + if (startDelim.marker !== 43) { + continue; + } + if (startDelim.end === -1) { + continue; + } + const endDelim = delimiters[startDelim.end]; + token = state.tokens[startDelim.token]; + token.type = "ins_open"; + token.tag = "ins"; + token.nesting = 1; + token.markup = "++"; + token.content = ""; + token = state.tokens[endDelim.token]; + token.type = "ins_close"; + token.tag = "ins"; + token.nesting = -1; + token.markup = "++"; + token.content = ""; + if (state.tokens[endDelim.token - 1].type === "text" && state.tokens[endDelim.token - 1].content === "+") { + loneMarkers.push(endDelim.token - 1); + } + } + while (loneMarkers.length) { + const i = loneMarkers.pop(); + let j = i + 1; + while (j < state.tokens.length && state.tokens[j].type === "ins_close") { + j++; + } + j--; + if (i !== j) { + token = state.tokens[j]; + state.tokens[j] = state.tokens[i]; + state.tokens[i] = token; + } + } + } + md.inline.ruler.before("emphasis", "ins", tokenize); + md.inline.ruler2.before("emphasis", "ins", function(state) { + const tokens_meta = state.tokens_meta; + const max = (state.tokens_meta || []).length; + postProcess3(state, state.delimiters); + for (let curr = 0; curr < max; curr++) { + if (tokens_meta[curr] && tokens_meta[curr].delimiters) { + postProcess3(state, tokens_meta[curr].delimiters); + } + } + }); +} + +// ../../node_modules/.pnpm/markdown-it-mark@4.0.0/node_modules/markdown-it-mark/index.mjs +function ins_plugin2(md) { + function tokenize(state, silent) { + const start = state.pos; + const marker = state.src.charCodeAt(start); + if (silent) { + return false; + } + if (marker !== 61) { + return false; + } + const scanned = state.scanDelims(state.pos, true); + let len = scanned.length; + const ch = String.fromCharCode(marker); + if (len < 2) { + return false; + } + if (len % 2) { + const token = state.push("text", "", 0); + token.content = ch; + len--; + } + for (let i = 0; i < len; i += 2) { + const token = state.push("text", "", 0); + token.content = ch + ch; + if (!scanned.can_open && !scanned.can_close) { + continue; + } + state.delimiters.push({ + marker, + length: 0, + jump: i / 2, + token: state.tokens.length - 1, + end: -1, + open: scanned.can_open, + close: scanned.can_close + }); + } + state.pos += scanned.length; + return true; + } + function postProcess3(state, delimiters) { + const loneMarkers = []; + const max = delimiters.length; + for (let i = 0; i < max; i++) { + const startDelim = delimiters[i]; + if (startDelim.marker !== 61) { + continue; + } + if (startDelim.end === -1) { + continue; + } + const endDelim = delimiters[startDelim.end]; + const token_o = state.tokens[startDelim.token]; + token_o.type = "mark_open"; + token_o.tag = "mark"; + token_o.nesting = 1; + token_o.markup = "=="; + token_o.content = ""; + const token_c = state.tokens[endDelim.token]; + token_c.type = "mark_close"; + token_c.tag = "mark"; + token_c.nesting = -1; + token_c.markup = "=="; + token_c.content = ""; + if (state.tokens[endDelim.token - 1].type === "text" && state.tokens[endDelim.token - 1].content === "=") { + loneMarkers.push(endDelim.token - 1); + } + } + while (loneMarkers.length) { + const i = loneMarkers.pop(); + let j = i + 1; + while (j < state.tokens.length && state.tokens[j].type === "mark_close") { + j++; + } + j--; + if (i !== j) { + const token = state.tokens[j]; + state.tokens[j] = state.tokens[i]; + state.tokens[i] = token; + } + } + } + md.inline.ruler.before("emphasis", "mark", tokenize); + md.inline.ruler2.before("emphasis", "mark", function(state) { + let curr; + const tokens_meta = state.tokens_meta; + const max = (state.tokens_meta || []).length; + postProcess3(state, state.delimiters); + for (curr = 0; curr < max; curr++) { + if (tokens_meta[curr] && tokens_meta[curr].delimiters) { + postProcess3(state, tokens_meta[curr].delimiters); + } + } + }); +} + +// ../../node_modules/.pnpm/markdown-it-sub@2.0.0/node_modules/markdown-it-sub/index.mjs +var UNESCAPE_RE = /\\([ \\!"#$%&'()*+,./:;<=>?@[\]^_`{|}~-])/g; +function subscript(state, silent) { + const max = state.posMax; + const start = state.pos; + if (state.src.charCodeAt(start) !== 126) { + return false; + } + if (silent) { + return false; + } + if (start + 2 >= max) { + return false; + } + state.pos = start + 1; + let found = false; + while (state.pos < max) { + if (state.src.charCodeAt(state.pos) === 126) { + found = true; + break; + } + state.md.inline.skipToken(state); + } + if (!found || start + 1 === state.pos) { + state.pos = start; + return false; + } + const content = state.src.slice(start + 1, state.pos); + if (content.match(/(^|[^\\])(\\\\)*\s/)) { + state.pos = start; + return false; + } + state.posMax = state.pos; + state.pos = start + 1; + const token_so = state.push("sub_open", "sub", 1); + token_so.markup = "~"; + const token_t = state.push("text", "", 0); + token_t.content = content.replace(UNESCAPE_RE, "$1"); + const token_sc = state.push("sub_close", "sub", -1); + token_sc.markup = "~"; + state.pos = state.posMax + 1; + state.posMax = max; + return true; +} +function sub_plugin(md) { + md.inline.ruler.after("emphasis", "sub", subscript); +} + +// ../../node_modules/.pnpm/markdown-it-sup@2.0.0/node_modules/markdown-it-sup/index.mjs +var UNESCAPE_RE2 = /\\([ \\!"#$%&'()*+,./:;<=>?@[\]^_`{|}~-])/g; +function superscript(state, silent) { + const max = state.posMax; + const start = state.pos; + if (state.src.charCodeAt(start) !== 94) { + return false; + } + if (silent) { + return false; + } + if (start + 2 >= max) { + return false; + } + state.pos = start + 1; + let found = false; + while (state.pos < max) { + if (state.src.charCodeAt(state.pos) === 94) { + found = true; + break; + } + state.md.inline.skipToken(state); + } + if (!found || start + 1 === state.pos) { + state.pos = start; + return false; + } + const content = state.src.slice(start + 1, state.pos); + if (content.match(/(^|[^\\])(\\\\)*\s/)) { + state.pos = start; + return false; + } + state.posMax = state.pos; + state.pos = start + 1; + const token_so = state.push("sup_open", "sup", 1); + token_so.markup = "^"; + const token_t = state.push("text", "", 0); + token_t.content = content.replace(UNESCAPE_RE2, "$1"); + const token_sc = state.push("sup_close", "sup", -1); + token_sc.markup = "^"; + state.pos = state.posMax + 1; + state.posMax = max; + return true; +} +function sup_plugin(md) { + md.inline.ruler.after("emphasis", "sup", superscript); +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/nodes/identity.js +var ALIAS = Symbol.for("yaml.alias"); +var DOC = Symbol.for("yaml.document"); +var MAP = Symbol.for("yaml.map"); +var PAIR = Symbol.for("yaml.pair"); +var SCALAR = Symbol.for("yaml.scalar"); +var SEQ = Symbol.for("yaml.seq"); +var NODE_TYPE = Symbol.for("yaml.node.type"); +var isAlias = (node) => !!node && typeof node === "object" && node[NODE_TYPE] === ALIAS; +var isDocument2 = (node) => !!node && typeof node === "object" && node[NODE_TYPE] === DOC; +var isMap = (node) => !!node && typeof node === "object" && node[NODE_TYPE] === MAP; +var isPair = (node) => !!node && typeof node === "object" && node[NODE_TYPE] === PAIR; +var isScalar = (node) => !!node && typeof node === "object" && node[NODE_TYPE] === SCALAR; +var isSeq = (node) => !!node && typeof node === "object" && node[NODE_TYPE] === SEQ; +function isCollection(node) { + if (node && typeof node === "object") + switch (node[NODE_TYPE]) { + case MAP: + case SEQ: + return true; + } + return false; +} +function isNode2(node) { + if (node && typeof node === "object") + switch (node[NODE_TYPE]) { + case ALIAS: + case MAP: + case SCALAR: + case SEQ: + return true; + } + return false; +} +var hasAnchor = (node) => (isScalar(node) || isCollection(node)) && !!node.anchor; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/visit.js +var BREAK = Symbol("break visit"); +var SKIP = Symbol("skip children"); +var REMOVE = Symbol("remove node"); +function visit(node, visitor) { + const visitor_ = initVisitor(visitor); + if (isDocument2(node)) { + const cd = visit_(null, node.contents, visitor_, Object.freeze([node])); + if (cd === REMOVE) + node.contents = null; + } else + visit_(null, node, visitor_, Object.freeze([])); +} +visit.BREAK = BREAK; +visit.SKIP = SKIP; +visit.REMOVE = REMOVE; +function visit_(key, node, visitor, path) { + const ctrl = callVisitor(key, node, visitor, path); + if (isNode2(ctrl) || isPair(ctrl)) { + replaceNode(key, path, ctrl); + return visit_(key, ctrl, visitor, path); + } + if (typeof ctrl !== "symbol") { + if (isCollection(node)) { + path = Object.freeze(path.concat(node)); + for (let i = 0; i < node.items.length; ++i) { + const ci = visit_(i, node.items[i], visitor, path); + if (typeof ci === "number") + i = ci - 1; + else if (ci === BREAK) + return BREAK; + else if (ci === REMOVE) { + node.items.splice(i, 1); + i -= 1; + } + } + } else if (isPair(node)) { + path = Object.freeze(path.concat(node)); + const ck = visit_("key", node.key, visitor, path); + if (ck === BREAK) + return BREAK; + else if (ck === REMOVE) + node.key = null; + const cv = visit_("value", node.value, visitor, path); + if (cv === BREAK) + return BREAK; + else if (cv === REMOVE) + node.value = null; + } + } + return ctrl; +} +async function visitAsync(node, visitor) { + const visitor_ = initVisitor(visitor); + if (isDocument2(node)) { + const cd = await visitAsync_(null, node.contents, visitor_, Object.freeze([node])); + if (cd === REMOVE) + node.contents = null; + } else + await visitAsync_(null, node, visitor_, Object.freeze([])); +} +visitAsync.BREAK = BREAK; +visitAsync.SKIP = SKIP; +visitAsync.REMOVE = REMOVE; +async function visitAsync_(key, node, visitor, path) { + const ctrl = await callVisitor(key, node, visitor, path); + if (isNode2(ctrl) || isPair(ctrl)) { + replaceNode(key, path, ctrl); + return visitAsync_(key, ctrl, visitor, path); + } + if (typeof ctrl !== "symbol") { + if (isCollection(node)) { + path = Object.freeze(path.concat(node)); + for (let i = 0; i < node.items.length; ++i) { + const ci = await visitAsync_(i, node.items[i], visitor, path); + if (typeof ci === "number") + i = ci - 1; + else if (ci === BREAK) + return BREAK; + else if (ci === REMOVE) { + node.items.splice(i, 1); + i -= 1; + } + } + } else if (isPair(node)) { + path = Object.freeze(path.concat(node)); + const ck = await visitAsync_("key", node.key, visitor, path); + if (ck === BREAK) + return BREAK; + else if (ck === REMOVE) + node.key = null; + const cv = await visitAsync_("value", node.value, visitor, path); + if (cv === BREAK) + return BREAK; + else if (cv === REMOVE) + node.value = null; + } + } + return ctrl; +} +function initVisitor(visitor) { + if (typeof visitor === "object" && (visitor.Collection || visitor.Node || visitor.Value)) { + return Object.assign({ + Alias: visitor.Node, + Map: visitor.Node, + Scalar: visitor.Node, + Seq: visitor.Node + }, visitor.Value && { + Map: visitor.Value, + Scalar: visitor.Value, + Seq: visitor.Value + }, visitor.Collection && { + Map: visitor.Collection, + Seq: visitor.Collection + }, visitor); + } + return visitor; +} +function callVisitor(key, node, visitor, path) { + var _a3, _b, _c, _d, _e; + if (typeof visitor === "function") + return visitor(key, node, path); + if (isMap(node)) + return (_a3 = visitor.Map) == null ? void 0 : _a3.call(visitor, key, node, path); + if (isSeq(node)) + return (_b = visitor.Seq) == null ? void 0 : _b.call(visitor, key, node, path); + if (isPair(node)) + return (_c = visitor.Pair) == null ? void 0 : _c.call(visitor, key, node, path); + if (isScalar(node)) + return (_d = visitor.Scalar) == null ? void 0 : _d.call(visitor, key, node, path); + if (isAlias(node)) + return (_e = visitor.Alias) == null ? void 0 : _e.call(visitor, key, node, path); + return void 0; +} +function replaceNode(key, path, node) { + const parent2 = path[path.length - 1]; + if (isCollection(parent2)) { + parent2.items[key] = node; + } else if (isPair(parent2)) { + if (key === "key") + parent2.key = node; + else + parent2.value = node; + } else if (isDocument2(parent2)) { + parent2.contents = node; + } else { + const pt = isAlias(parent2) ? "alias" : "scalar"; + throw new Error(`Cannot replace node with ${pt} parent`); + } +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/doc/directives.js +var escapeChars = { + "!": "%21", + ",": "%2C", + "[": "%5B", + "]": "%5D", + "{": "%7B", + "}": "%7D" +}; +var escapeTagName = (tn) => tn.replace(/[!,[\]{}]/g, (ch) => escapeChars[ch]); +var Directives = class { + constructor(yaml, tags) { + this.docStart = null; + this.docEnd = false; + this.yaml = Object.assign({}, Directives.defaultYaml, yaml); + this.tags = Object.assign({}, Directives.defaultTags, tags); + } + clone() { + const copy = new Directives(this.yaml, this.tags); + copy.docStart = this.docStart; + return copy; + } + atDocument() { + const res = new Directives(this.yaml, this.tags); + switch (this.yaml.version) { + case "1.1": + this.atNextDocument = true; + break; + case "1.2": + this.atNextDocument = false; + this.yaml = { + explicit: Directives.defaultYaml.explicit, + version: "1.2" + }; + this.tags = Object.assign({}, Directives.defaultTags); + break; + } + return res; + } + add(line, onError) { + if (this.atNextDocument) { + this.yaml = { explicit: Directives.defaultYaml.explicit, version: "1.1" }; + this.tags = Object.assign({}, Directives.defaultTags); + this.atNextDocument = false; + } + const parts = line.trim().split(/[ \t]+/); + const name2 = parts.shift(); + switch (name2) { + case "%TAG": { + if (parts.length !== 2) { + onError(0, "%TAG directive should contain exactly two parts"); + if (parts.length < 2) + return false; + } + const [handle, prefix] = parts; + this.tags[handle] = prefix; + return true; + } + case "%YAML": { + this.yaml.explicit = true; + if (parts.length !== 1) { + onError(0, "%YAML directive should contain exactly one part"); + return false; + } + const [version] = parts; + if (version === "1.1" || version === "1.2") { + this.yaml.version = version; + return true; + } else { + const isValid = /^\d+\.\d+$/.test(version); + onError(6, `Unsupported YAML version ${version}`, isValid); + return false; + } + } + default: + onError(0, `Unknown directive ${name2}`, true); + return false; + } + } + tagName(source, onError) { + if (source === "!") + return "!"; + if (source[0] !== "!") { + onError(`Not a valid tag: ${source}`); + return null; + } + if (source[1] === "<") { + const verbatim = source.slice(2, -1); + if (verbatim === "!" || verbatim === "!!") { + onError(`Verbatim tags aren't resolved, so ${source} is invalid.`); + return null; + } + if (source[source.length - 1] !== ">") + onError("Verbatim tags must end with a >"); + return verbatim; + } + const [, handle, suffix] = source.match(/^(.*!)([^!]*)$/s); + if (!suffix) + onError(`The ${source} tag has no suffix`); + const prefix = this.tags[handle]; + if (prefix) { + try { + return prefix + decodeURIComponent(suffix); + } catch (error2) { + onError(String(error2)); + return null; + } + } + if (handle === "!") + return source; + onError(`Could not resolve tag: ${source}`); + return null; + } + tagString(tag) { + for (const [handle, prefix] of Object.entries(this.tags)) { + if (tag.startsWith(prefix)) + return handle + escapeTagName(tag.substring(prefix.length)); + } + return tag[0] === "!" ? tag : `!<${tag}>`; + } + toString(doc) { + const lines = this.yaml.explicit ? [`%YAML ${this.yaml.version || "1.2"}`] : []; + const tagEntries = Object.entries(this.tags); + let tagNames; + if (doc && tagEntries.length > 0 && isNode2(doc.contents)) { + const tags = {}; + visit(doc.contents, (_key, node) => { + if (isNode2(node) && node.tag) + tags[node.tag] = true; + }); + tagNames = Object.keys(tags); + } else + tagNames = []; + for (const [handle, prefix] of tagEntries) { + if (handle === "!!" && prefix === "tag:yaml.org,2002:") + continue; + if (!doc || tagNames.some((tn) => tn.startsWith(prefix))) + lines.push(`%TAG ${handle} ${prefix}`); + } + return lines.join("\n"); + } +}; +Directives.defaultYaml = { explicit: false, version: "1.2" }; +Directives.defaultTags = { "!!": "tag:yaml.org,2002:" }; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/doc/anchors.js +function anchorIsValid(anchor) { + if (/[\x00-\x19\s,[\]{}]/.test(anchor)) { + const sa = JSON.stringify(anchor); + const msg = `Anchor must not contain whitespace or control characters: ${sa}`; + throw new Error(msg); + } + return true; +} +function anchorNames(root3) { + const anchors = /* @__PURE__ */ new Set(); + visit(root3, { + Value(_key, node) { + if (node.anchor) + anchors.add(node.anchor); + } + }); + return anchors; +} +function findNewAnchor(prefix, exclude) { + for (let i = 1; true; ++i) { + const name2 = `${prefix}${i}`; + if (!exclude.has(name2)) + return name2; + } +} +function createNodeAnchors(doc, prefix) { + const aliasObjects = []; + const sourceObjects = /* @__PURE__ */ new Map(); + let prevAnchors = null; + return { + onAnchor: (source) => { + aliasObjects.push(source); + if (!prevAnchors) + prevAnchors = anchorNames(doc); + const anchor = findNewAnchor(prefix, prevAnchors); + prevAnchors.add(anchor); + return anchor; + }, + setAnchors: () => { + for (const source of aliasObjects) { + const ref = sourceObjects.get(source); + if (typeof ref === "object" && ref.anchor && (isScalar(ref.node) || isCollection(ref.node))) { + ref.node.anchor = ref.anchor; + } else { + const error2 = new Error("Failed to resolve repeated object (this should not happen)"); + error2.source = source; + throw error2; + } + } + }, + sourceObjects + }; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/doc/applyReviver.js +function applyReviver(reviver, obj, key, val2) { + if (val2 && typeof val2 === "object") { + if (Array.isArray(val2)) { + for (let i = 0, len = val2.length; i < len; ++i) { + const v0 = val2[i]; + const v1 = applyReviver(reviver, val2, String(i), v0); + if (v1 === void 0) + delete val2[i]; + else if (v1 !== v0) + val2[i] = v1; + } + } else if (val2 instanceof Map) { + for (const k of Array.from(val2.keys())) { + const v0 = val2.get(k); + const v1 = applyReviver(reviver, val2, k, v0); + if (v1 === void 0) + val2.delete(k); + else if (v1 !== v0) + val2.set(k, v1); + } + } else if (val2 instanceof Set) { + for (const v0 of Array.from(val2)) { + const v1 = applyReviver(reviver, val2, v0, v0); + if (v1 === void 0) + val2.delete(v0); + else if (v1 !== v0) { + val2.delete(v0); + val2.add(v1); + } + } + } else { + for (const [k, v0] of Object.entries(val2)) { + const v1 = applyReviver(reviver, val2, k, v0); + if (v1 === void 0) + delete val2[k]; + else if (v1 !== v0) + val2[k] = v1; + } + } + } + return reviver.call(obj, key, val2); +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/nodes/toJS.js +function toJS(value, arg, ctx) { + if (Array.isArray(value)) + return value.map((v, i) => toJS(v, String(i), ctx)); + if (value && typeof value.toJSON === "function") { + if (!ctx || !hasAnchor(value)) + return value.toJSON(arg, ctx); + const data2 = { aliasCount: 0, count: 1, res: void 0 }; + ctx.anchors.set(value, data2); + ctx.onCreate = (res2) => { + data2.res = res2; + delete ctx.onCreate; + }; + const res = value.toJSON(arg, ctx); + if (ctx.onCreate) + ctx.onCreate(res); + return res; + } + if (typeof value === "bigint" && !(ctx == null ? void 0 : ctx.keep)) + return Number(value); + return value; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/nodes/Node.js +var NodeBase = class { + constructor(type) { + Object.defineProperty(this, NODE_TYPE, { value: type }); + } + clone() { + const copy = Object.create(Object.getPrototypeOf(this), Object.getOwnPropertyDescriptors(this)); + if (this.range) + copy.range = this.range.slice(); + return copy; + } + toJS(doc, { mapAsMap, maxAliasCount, onAnchor, reviver } = {}) { + if (!isDocument2(doc)) + throw new TypeError("A document argument is required"); + const ctx = { + anchors: /* @__PURE__ */ new Map(), + doc, + keep: true, + mapAsMap: mapAsMap === true, + mapKeyWarned: false, + maxAliasCount: typeof maxAliasCount === "number" ? maxAliasCount : 100 + }; + const res = toJS(this, "", ctx); + if (typeof onAnchor === "function") + for (const { count, res: res2 } of ctx.anchors.values()) + onAnchor(res2, count); + return typeof reviver === "function" ? applyReviver(reviver, { "": res }, "", res) : res; + } +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/nodes/Alias.js +var Alias = class extends NodeBase { + constructor(source) { + super(ALIAS); + this.source = source; + Object.defineProperty(this, "tag", { + set() { + throw new Error("Alias nodes cannot have tags"); + } + }); + } + resolve(doc) { + let found = void 0; + visit(doc, { + Node: (_key, node) => { + if (node === this) + return visit.BREAK; + if (node.anchor === this.source) + found = node; + } + }); + return found; + } + toJSON(_arg, ctx) { + if (!ctx) + return { source: this.source }; + const { anchors, doc, maxAliasCount } = ctx; + const source = this.resolve(doc); + if (!source) { + const msg = `Unresolved alias (the anchor must be set before the alias): ${this.source}`; + throw new ReferenceError(msg); + } + let data2 = anchors.get(source); + if (!data2) { + toJS(source, null, ctx); + data2 = anchors.get(source); + } + if (!data2 || data2.res === void 0) { + const msg = "This should not happen: Alias anchor was not resolved?"; + throw new ReferenceError(msg); + } + if (maxAliasCount >= 0) { + data2.count += 1; + if (data2.aliasCount === 0) + data2.aliasCount = getAliasCount(doc, source, anchors); + if (data2.count * data2.aliasCount > maxAliasCount) { + const msg = "Excessive alias count indicates a resource exhaustion attack"; + throw new ReferenceError(msg); + } + } + return data2.res; + } + toString(ctx, _onComment, _onChompKeep) { + const src = `*${this.source}`; + if (ctx) { + anchorIsValid(this.source); + if (ctx.options.verifyAliasOrder && !ctx.anchors.has(this.source)) { + const msg = `Unresolved alias (the anchor must be set before the alias): ${this.source}`; + throw new Error(msg); + } + if (ctx.implicitKey) + return `${src} `; + } + return src; + } +}; +function getAliasCount(doc, node, anchors) { + if (isAlias(node)) { + const source = node.resolve(doc); + const anchor = anchors && source && anchors.get(source); + return anchor ? anchor.count * anchor.aliasCount : 0; + } else if (isCollection(node)) { + let count = 0; + for (const item of node.items) { + const c = getAliasCount(doc, item, anchors); + if (c > count) + count = c; + } + return count; + } else if (isPair(node)) { + const kc = getAliasCount(doc, node.key, anchors); + const vc = getAliasCount(doc, node.value, anchors); + return Math.max(kc, vc); + } + return 1; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/nodes/Scalar.js +var isScalarValue = (value) => !value || typeof value !== "function" && typeof value !== "object"; +var Scalar = class extends NodeBase { + constructor(value) { + super(SCALAR); + this.value = value; + } + toJSON(arg, ctx) { + return (ctx == null ? void 0 : ctx.keep) ? this.value : toJS(this.value, arg, ctx); + } + toString() { + return String(this.value); + } +}; +Scalar.BLOCK_FOLDED = "BLOCK_FOLDED"; +Scalar.BLOCK_LITERAL = "BLOCK_LITERAL"; +Scalar.PLAIN = "PLAIN"; +Scalar.QUOTE_DOUBLE = "QUOTE_DOUBLE"; +Scalar.QUOTE_SINGLE = "QUOTE_SINGLE"; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/doc/createNode.js +var defaultTagPrefix = "tag:yaml.org,2002:"; +function findTagObject(value, tagName, tags) { + var _a3; + if (tagName) { + const match2 = tags.filter((t2) => t2.tag === tagName); + const tagObj = (_a3 = match2.find((t2) => !t2.format)) != null ? _a3 : match2[0]; + if (!tagObj) + throw new Error(`Tag ${tagName} not found`); + return tagObj; + } + return tags.find((t2) => { + var _a4; + return ((_a4 = t2.identify) == null ? void 0 : _a4.call(t2, value)) && !t2.format; + }); +} +function createNode(value, tagName, ctx) { + var _a3, _b, _c; + if (isDocument2(value)) + value = value.contents; + if (isNode2(value)) + return value; + if (isPair(value)) { + const map4 = (_b = (_a3 = ctx.schema[MAP]).createNode) == null ? void 0 : _b.call(_a3, ctx.schema, null, ctx); + map4.items.push(value); + return map4; + } + if (value instanceof String || value instanceof Number || value instanceof Boolean || typeof BigInt !== "undefined" && value instanceof BigInt) { + value = value.valueOf(); + } + const { aliasDuplicateObjects, onAnchor, onTagObj, schema: schema4, sourceObjects } = ctx; + let ref = void 0; + if (aliasDuplicateObjects && value && typeof value === "object") { + ref = sourceObjects.get(value); + if (ref) { + if (!ref.anchor) + ref.anchor = onAnchor(value); + return new Alias(ref.anchor); + } else { + ref = { anchor: null, node: null }; + sourceObjects.set(value, ref); + } + } + if (tagName == null ? void 0 : tagName.startsWith("!!")) + tagName = defaultTagPrefix + tagName.slice(2); + let tagObj = findTagObject(value, tagName, schema4.tags); + if (!tagObj) { + if (value && typeof value.toJSON === "function") { + value = value.toJSON(); + } + if (!value || typeof value !== "object") { + const node2 = new Scalar(value); + if (ref) + ref.node = node2; + return node2; + } + tagObj = value instanceof Map ? schema4[MAP] : Symbol.iterator in Object(value) ? schema4[SEQ] : schema4[MAP]; + } + if (onTagObj) { + onTagObj(tagObj); + delete ctx.onTagObj; + } + const node = (tagObj == null ? void 0 : tagObj.createNode) ? tagObj.createNode(ctx.schema, value, ctx) : typeof ((_c = tagObj == null ? void 0 : tagObj.nodeClass) == null ? void 0 : _c.from) === "function" ? tagObj.nodeClass.from(ctx.schema, value, ctx) : new Scalar(value); + if (tagName) + node.tag = tagName; + else if (!tagObj.default) + node.tag = tagObj.tag; + if (ref) + ref.node = node; + return node; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/nodes/Collection.js +function collectionFromPath(schema4, path, value) { + let v = value; + for (let i = path.length - 1; i >= 0; --i) { + const k = path[i]; + if (typeof k === "number" && Number.isInteger(k) && k >= 0) { + const a = []; + a[k] = v; + v = a; + } else { + v = /* @__PURE__ */ new Map([[k, v]]); + } + } + return createNode(v, void 0, { + aliasDuplicateObjects: false, + keepUndefined: false, + onAnchor: () => { + throw new Error("This should not happen, please report a bug."); + }, + schema: schema4, + sourceObjects: /* @__PURE__ */ new Map() + }); +} +var isEmptyPath = (path) => path == null || typeof path === "object" && !!path[Symbol.iterator]().next().done; +var Collection = class extends NodeBase { + constructor(type, schema4) { + super(type); + Object.defineProperty(this, "schema", { + value: schema4, + configurable: true, + enumerable: false, + writable: true + }); + } + clone(schema4) { + const copy = Object.create(Object.getPrototypeOf(this), Object.getOwnPropertyDescriptors(this)); + if (schema4) + copy.schema = schema4; + copy.items = copy.items.map((it) => isNode2(it) || isPair(it) ? it.clone(schema4) : it); + if (this.range) + copy.range = this.range.slice(); + return copy; + } + addIn(path, value) { + if (isEmptyPath(path)) + this.add(value); + else { + const [key, ...rest] = path; + const node = this.get(key, true); + if (isCollection(node)) + node.addIn(rest, value); + else if (node === void 0 && this.schema) + this.set(key, collectionFromPath(this.schema, rest, value)); + else + throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`); + } + } + deleteIn(path) { + const [key, ...rest] = path; + if (rest.length === 0) + return this.delete(key); + const node = this.get(key, true); + if (isCollection(node)) + return node.deleteIn(rest); + else + throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`); + } + getIn(path, keepScalar) { + const [key, ...rest] = path; + const node = this.get(key, true); + if (rest.length === 0) + return !keepScalar && isScalar(node) ? node.value : node; + else + return isCollection(node) ? node.getIn(rest, keepScalar) : void 0; + } + hasAllNullValues(allowScalar) { + return this.items.every((node) => { + if (!isPair(node)) + return false; + const n = node.value; + return n == null || allowScalar && isScalar(n) && n.value == null && !n.commentBefore && !n.comment && !n.tag; + }); + } + hasIn(path) { + const [key, ...rest] = path; + if (rest.length === 0) + return this.has(key); + const node = this.get(key, true); + return isCollection(node) ? node.hasIn(rest) : false; + } + setIn(path, value) { + const [key, ...rest] = path; + if (rest.length === 0) { + this.set(key, value); + } else { + const node = this.get(key, true); + if (isCollection(node)) + node.setIn(rest, value); + else if (node === void 0 && this.schema) + this.set(key, collectionFromPath(this.schema, rest, value)); + else + throw new Error(`Expected YAML collection at ${key}. Remaining path: ${rest}`); + } + } +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/stringify/stringifyComment.js +var stringifyComment = (str) => str.replace(/^(?!$)(?: $)?/gm, "#"); +function indentComment(comment2, indent) { + if (/^\n+$/.test(comment2)) + return comment2.substring(1); + return indent ? comment2.replace(/^(?! *$)/gm, indent) : comment2; +} +var lineComment = (str, indent, comment2) => str.endsWith("\n") ? indentComment(comment2, indent) : comment2.includes("\n") ? "\n" + indentComment(comment2, indent) : (str.endsWith(" ") ? "" : " ") + comment2; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/stringify/foldFlowLines.js +var FOLD_FLOW = "flow"; +var FOLD_BLOCK = "block"; +var FOLD_QUOTED = "quoted"; +function foldFlowLines(text4, indent, mode = "flow", { indentAtStart, lineWidth = 80, minContentWidth = 20, onFold, onOverflow } = {}) { + if (!lineWidth || lineWidth < 0) + return text4; + if (lineWidth < minContentWidth) + minContentWidth = 0; + const endStep = Math.max(1 + minContentWidth, 1 + lineWidth - indent.length); + if (text4.length <= endStep) + return text4; + const folds = []; + const escapedFolds = {}; + let end2 = lineWidth - indent.length; + if (typeof indentAtStart === "number") { + if (indentAtStart > lineWidth - Math.max(2, minContentWidth)) + folds.push(0); + else + end2 = lineWidth - indentAtStart; + } + let split = void 0; + let prev2 = void 0; + let overflow = false; + let i = -1; + let escStart = -1; + let escEnd = -1; + if (mode === FOLD_BLOCK) { + i = consumeMoreIndentedLines(text4, i, indent.length); + if (i !== -1) + end2 = i + endStep; + } + for (let ch; ch = text4[i += 1]; ) { + if (mode === FOLD_QUOTED && ch === "\\") { + escStart = i; + switch (text4[i + 1]) { + case "x": + i += 3; + break; + case "u": + i += 5; + break; + case "U": + i += 9; + break; + default: + i += 1; + } + escEnd = i; + } + if (ch === "\n") { + if (mode === FOLD_BLOCK) + i = consumeMoreIndentedLines(text4, i, indent.length); + end2 = i + indent.length + endStep; + split = void 0; + } else { + if (ch === " " && prev2 && prev2 !== " " && prev2 !== "\n" && prev2 !== " ") { + const next2 = text4[i + 1]; + if (next2 && next2 !== " " && next2 !== "\n" && next2 !== " ") + split = i; + } + if (i >= end2) { + if (split) { + folds.push(split); + end2 = split + endStep; + split = void 0; + } else if (mode === FOLD_QUOTED) { + while (prev2 === " " || prev2 === " ") { + prev2 = ch; + ch = text4[i += 1]; + overflow = true; + } + const j = i > escEnd + 1 ? i - 2 : escStart - 1; + if (escapedFolds[j]) + return text4; + folds.push(j); + escapedFolds[j] = true; + end2 = j + endStep; + split = void 0; + } else { + overflow = true; + } + } + } + prev2 = ch; + } + if (overflow && onOverflow) + onOverflow(); + if (folds.length === 0) + return text4; + if (onFold) + onFold(); + let res = text4.slice(0, folds[0]); + for (let i2 = 0; i2 < folds.length; ++i2) { + const fold = folds[i2]; + const end3 = folds[i2 + 1] || text4.length; + if (fold === 0) + res = ` +${indent}${text4.slice(0, end3)}`; + else { + if (mode === FOLD_QUOTED && escapedFolds[fold]) + res += `${text4[fold]}\\`; + res += ` +${indent}${text4.slice(fold + 1, end3)}`; + } + } + return res; +} +function consumeMoreIndentedLines(text4, i, indent) { + let end2 = i; + let start = i + 1; + let ch = text4[start]; + while (ch === " " || ch === " ") { + if (i < start + indent) { + ch = text4[++i]; + } else { + do { + ch = text4[++i]; + } while (ch && ch !== "\n"); + end2 = i; + start = i + 1; + ch = text4[start]; + } + } + return end2; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/stringify/stringifyString.js +var getFoldOptions = (ctx, isBlock2) => ({ + indentAtStart: isBlock2 ? ctx.indent.length : ctx.indentAtStart, + lineWidth: ctx.options.lineWidth, + minContentWidth: ctx.options.minContentWidth +}); +var containsDocumentMarker = (str) => /^(%|---|\.\.\.)/m.test(str); +function lineLengthOverLimit(str, lineWidth, indentLength) { + if (!lineWidth || lineWidth < 0) + return false; + const limit = lineWidth - indentLength; + const strLen = str.length; + if (strLen <= limit) + return false; + for (let i = 0, start = 0; i < strLen; ++i) { + if (str[i] === "\n") { + if (i - start > limit) + return true; + start = i + 1; + if (strLen - start <= limit) + return false; + } + } + return true; +} +function doubleQuotedString(value, ctx) { + const json = JSON.stringify(value); + if (ctx.options.doubleQuotedAsJSON) + return json; + const { implicitKey } = ctx; + const minMultiLineLength = ctx.options.doubleQuotedMinMultiLineLength; + const indent = ctx.indent || (containsDocumentMarker(value) ? " " : ""); + let str = ""; + let start = 0; + for (let i = 0, ch = json[i]; ch; ch = json[++i]) { + if (ch === " " && json[i + 1] === "\\" && json[i + 2] === "n") { + str += json.slice(start, i) + "\\ "; + i += 1; + start = i; + ch = "\\"; + } + if (ch === "\\") + switch (json[i + 1]) { + case "u": + { + str += json.slice(start, i); + const code2 = json.substr(i + 2, 4); + switch (code2) { + case "0000": + str += "\\0"; + break; + case "0007": + str += "\\a"; + break; + case "000b": + str += "\\v"; + break; + case "001b": + str += "\\e"; + break; + case "0085": + str += "\\N"; + break; + case "00a0": + str += "\\_"; + break; + case "2028": + str += "\\L"; + break; + case "2029": + str += "\\P"; + break; + default: + if (code2.substr(0, 2) === "00") + str += "\\x" + code2.substr(2); + else + str += json.substr(i, 6); + } + i += 5; + start = i + 1; + } + break; + case "n": + if (implicitKey || json[i + 2] === '"' || json.length < minMultiLineLength) { + i += 1; + } else { + str += json.slice(start, i) + "\n\n"; + while (json[i + 2] === "\\" && json[i + 3] === "n" && json[i + 4] !== '"') { + str += "\n"; + i += 2; + } + str += indent; + if (json[i + 2] === " ") + str += "\\"; + i += 1; + start = i + 1; + } + break; + default: + i += 1; + } + } + str = start ? str + json.slice(start) : json; + return implicitKey ? str : foldFlowLines(str, indent, FOLD_QUOTED, getFoldOptions(ctx, false)); +} +function singleQuotedString(value, ctx) { + if (ctx.options.singleQuote === false || ctx.implicitKey && value.includes("\n") || /[ \t]\n|\n[ \t]/.test(value)) + return doubleQuotedString(value, ctx); + const indent = ctx.indent || (containsDocumentMarker(value) ? " " : ""); + const res = "'" + value.replace(/'/g, "''").replace(/\n+/g, `$& +${indent}`) + "'"; + return ctx.implicitKey ? res : foldFlowLines(res, indent, FOLD_FLOW, getFoldOptions(ctx, false)); +} +function quotedString(value, ctx) { + const { singleQuote } = ctx.options; + let qs; + if (singleQuote === false) + qs = doubleQuotedString; + else { + const hasDouble = value.includes('"'); + const hasSingle = value.includes("'"); + if (hasDouble && !hasSingle) + qs = singleQuotedString; + else if (hasSingle && !hasDouble) + qs = doubleQuotedString; + else + qs = singleQuote ? singleQuotedString : doubleQuotedString; + } + return qs(value, ctx); +} +var blockEndNewlines; +try { + blockEndNewlines = new RegExp("(^|(?\n"; + let chomp; + let endStart; + for (endStart = value.length; endStart > 0; --endStart) { + const ch = value[endStart - 1]; + if (ch !== "\n" && ch !== " " && ch !== " ") + break; + } + let end2 = value.substring(endStart); + const endNlPos = end2.indexOf("\n"); + if (endNlPos === -1) { + chomp = "-"; + } else if (value === end2 || endNlPos !== end2.length - 1) { + chomp = "+"; + if (onChompKeep) + onChompKeep(); + } else { + chomp = ""; + } + if (end2) { + value = value.slice(0, -end2.length); + if (end2[end2.length - 1] === "\n") + end2 = end2.slice(0, -1); + end2 = end2.replace(blockEndNewlines, `$&${indent}`); + } + let startWithSpace = false; + let startEnd; + let startNlPos = -1; + for (startEnd = 0; startEnd < value.length; ++startEnd) { + const ch = value[startEnd]; + if (ch === " ") + startWithSpace = true; + else if (ch === "\n") + startNlPos = startEnd; + else + break; + } + let start = value.substring(0, startNlPos < startEnd ? startNlPos + 1 : startEnd); + if (start) { + value = value.substring(start.length); + start = start.replace(/\n+/g, `$&${indent}`); + } + const indentSize = indent ? "2" : "1"; + let header = (startWithSpace ? indentSize : "") + chomp; + if (comment2) { + header += " " + commentString(comment2.replace(/ ?[\r\n]+/g, " ")); + if (onComment) + onComment(); + } + if (!literal) { + const foldedValue = value.replace(/\n+/g, "\n$&").replace(/(?:^|\n)([\t ].*)(?:([\n\t ]*)\n(?![\n\t ]))?/g, "$1$2").replace(/\n+/g, `$&${indent}`); + let literalFallback = false; + const foldOptions = getFoldOptions(ctx, true); + if (blockQuote !== "folded" && type !== Scalar.BLOCK_FOLDED) { + foldOptions.onOverflow = () => { + literalFallback = true; + }; + } + const body = foldFlowLines(`${start}${foldedValue}${end2}`, indent, FOLD_BLOCK, foldOptions); + if (!literalFallback) + return `>${header} +${indent}${body}`; + } + value = value.replace(/\n+/g, `$&${indent}`); + return `|${header} +${indent}${start}${value}${end2}`; +} +function plainString(item, ctx, onComment, onChompKeep) { + const { type, value } = item; + const { actualString, implicitKey, indent, indentStep, inFlow } = ctx; + if (implicitKey && value.includes("\n") || inFlow && /[[\]{},]/.test(value)) { + return quotedString(value, ctx); + } + if (!value || /^[\n\t ,[\]{}#&*!|>'"%@`]|^[?-]$|^[?-][ \t]|[\n:][ \t]|[ \t]\n|[\n\t ]#|[\n\t :]$/.test(value)) { + return implicitKey || inFlow || !value.includes("\n") ? quotedString(value, ctx) : blockString(item, ctx, onComment, onChompKeep); + } + if (!implicitKey && !inFlow && type !== Scalar.PLAIN && value.includes("\n")) { + return blockString(item, ctx, onComment, onChompKeep); + } + if (containsDocumentMarker(value)) { + if (indent === "") { + ctx.forceBlockIndent = true; + return blockString(item, ctx, onComment, onChompKeep); + } else if (implicitKey && indent === indentStep) { + return quotedString(value, ctx); + } + } + const str = value.replace(/\n+/g, `$& +${indent}`); + if (actualString) { + const test2 = (tag) => { + var _a3; + return tag.default && tag.tag !== "tag:yaml.org,2002:str" && ((_a3 = tag.test) == null ? void 0 : _a3.test(str)); + }; + const { compat, tags } = ctx.doc.schema; + if (tags.some(test2) || (compat == null ? void 0 : compat.some(test2))) + return quotedString(value, ctx); + } + return implicitKey ? str : foldFlowLines(str, indent, FOLD_FLOW, getFoldOptions(ctx, false)); +} +function stringifyString(item, ctx, onComment, onChompKeep) { + const { implicitKey, inFlow } = ctx; + const ss = typeof item.value === "string" ? item : Object.assign({}, item, { value: String(item.value) }); + let { type } = item; + if (type !== Scalar.QUOTE_DOUBLE) { + if (/[\x00-\x08\x0b-\x1f\x7f-\x9f\u{D800}-\u{DFFF}]/u.test(ss.value)) + type = Scalar.QUOTE_DOUBLE; + } + const _stringify = (_type) => { + switch (_type) { + case Scalar.BLOCK_FOLDED: + case Scalar.BLOCK_LITERAL: + return implicitKey || inFlow ? quotedString(ss.value, ctx) : blockString(ss, ctx, onComment, onChompKeep); + case Scalar.QUOTE_DOUBLE: + return doubleQuotedString(ss.value, ctx); + case Scalar.QUOTE_SINGLE: + return singleQuotedString(ss.value, ctx); + case Scalar.PLAIN: + return plainString(ss, ctx, onComment, onChompKeep); + default: + return null; + } + }; + let res = _stringify(type); + if (res === null) { + const { defaultKeyType, defaultStringType } = ctx.options; + const t2 = implicitKey && defaultKeyType || defaultStringType; + res = _stringify(t2); + if (res === null) + throw new Error(`Unsupported default string type ${t2}`); + } + return res; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/stringify/stringify.js +function createStringifyContext(doc, options) { + const opt = Object.assign({ + blockQuote: true, + commentString: stringifyComment, + defaultKeyType: null, + defaultStringType: "PLAIN", + directives: null, + doubleQuotedAsJSON: false, + doubleQuotedMinMultiLineLength: 40, + falseStr: "false", + flowCollectionPadding: true, + indentSeq: true, + lineWidth: 80, + minContentWidth: 20, + nullStr: "null", + simpleKeys: false, + singleQuote: null, + trueStr: "true", + verifyAliasOrder: true + }, doc.schema.toStringOptions, options); + let inFlow; + switch (opt.collectionStyle) { + case "block": + inFlow = false; + break; + case "flow": + inFlow = true; + break; + default: + inFlow = null; + } + return { + anchors: /* @__PURE__ */ new Set(), + doc, + flowCollectionPadding: opt.flowCollectionPadding ? " " : "", + indent: "", + indentStep: typeof opt.indent === "number" ? " ".repeat(opt.indent) : " ", + inFlow, + options: opt + }; +} +function getTagObject(tags, item) { + var _a3, _b, _c, _d; + if (item.tag) { + const match2 = tags.filter((t2) => t2.tag === item.tag); + if (match2.length > 0) + return (_a3 = match2.find((t2) => t2.format === item.format)) != null ? _a3 : match2[0]; + } + let tagObj = void 0; + let obj; + if (isScalar(item)) { + obj = item.value; + let match2 = tags.filter((t2) => { + var _a4; + return (_a4 = t2.identify) == null ? void 0 : _a4.call(t2, obj); + }); + if (match2.length > 1) { + const testMatch = match2.filter((t2) => t2.test); + if (testMatch.length > 0) + match2 = testMatch; + } + tagObj = (_b = match2.find((t2) => t2.format === item.format)) != null ? _b : match2.find((t2) => !t2.format); + } else { + obj = item; + tagObj = tags.find((t2) => t2.nodeClass && obj instanceof t2.nodeClass); + } + if (!tagObj) { + const name2 = (_d = (_c = obj == null ? void 0 : obj.constructor) == null ? void 0 : _c.name) != null ? _d : typeof obj; + throw new Error(`Tag not resolved for ${name2} value`); + } + return tagObj; +} +function stringifyProps(node, tagObj, { anchors, doc }) { + if (!doc.directives) + return ""; + const props = []; + const anchor = (isScalar(node) || isCollection(node)) && node.anchor; + if (anchor && anchorIsValid(anchor)) { + anchors.add(anchor); + props.push(`&${anchor}`); + } + const tag = node.tag ? node.tag : tagObj.default ? null : tagObj.tag; + if (tag) + props.push(doc.directives.tagString(tag)); + return props.join(" "); +} +function stringify2(item, ctx, onComment, onChompKeep) { + var _a3, _b; + if (isPair(item)) + return item.toString(ctx, onComment, onChompKeep); + if (isAlias(item)) { + if (ctx.doc.directives) + return item.toString(ctx); + if ((_a3 = ctx.resolvedAliases) == null ? void 0 : _a3.has(item)) { + throw new TypeError(`Cannot stringify circular structure without alias nodes`); + } else { + if (ctx.resolvedAliases) + ctx.resolvedAliases.add(item); + else + ctx.resolvedAliases = /* @__PURE__ */ new Set([item]); + item = item.resolve(ctx.doc); + } + } + let tagObj = void 0; + const node = isNode2(item) ? item : ctx.doc.createNode(item, { onTagObj: (o) => tagObj = o }); + if (!tagObj) + tagObj = getTagObject(ctx.doc.schema.tags, node); + const props = stringifyProps(node, tagObj, ctx); + if (props.length > 0) + ctx.indentAtStart = ((_b = ctx.indentAtStart) != null ? _b : 0) + props.length + 1; + const str = typeof tagObj.stringify === "function" ? tagObj.stringify(node, ctx, onComment, onChompKeep) : isScalar(node) ? stringifyString(node, ctx, onComment, onChompKeep) : node.toString(ctx, onComment, onChompKeep); + if (!props) + return str; + return isScalar(node) || str[0] === "{" || str[0] === "[" ? `${props} ${str}` : `${props} +${ctx.indent}${str}`; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/stringify/stringifyPair.js +function stringifyPair({ key, value }, ctx, onComment, onChompKeep) { + var _a3, _b; + const { allNullValues, doc, indent, indentStep, options: { commentString, indentSeq, simpleKeys } } = ctx; + let keyComment = isNode2(key) && key.comment || null; + if (simpleKeys) { + if (keyComment) { + throw new Error("With simple keys, key nodes cannot have comments"); + } + if (isCollection(key) || !isNode2(key) && typeof key === "object") { + const msg = "With simple keys, collection cannot be used as a key value"; + throw new Error(msg); + } + } + let explicitKey = !simpleKeys && (!key || keyComment && value == null && !ctx.inFlow || isCollection(key) || (isScalar(key) ? key.type === Scalar.BLOCK_FOLDED || key.type === Scalar.BLOCK_LITERAL : typeof key === "object")); + ctx = Object.assign({}, ctx, { + allNullValues: false, + implicitKey: !explicitKey && (simpleKeys || !allNullValues), + indent: indent + indentStep + }); + let keyCommentDone = false; + let chompKeep = false; + let str = stringify2(key, ctx, () => keyCommentDone = true, () => chompKeep = true); + if (!explicitKey && !ctx.inFlow && str.length > 1024) { + if (simpleKeys) + throw new Error("With simple keys, single line scalar must not span more than 1024 characters"); + explicitKey = true; + } + if (ctx.inFlow) { + if (allNullValues || value == null) { + if (keyCommentDone && onComment) + onComment(); + return str === "" ? "?" : explicitKey ? `? ${str}` : str; + } + } else if (allNullValues && !simpleKeys || value == null && explicitKey) { + str = `? ${str}`; + if (keyComment && !keyCommentDone) { + str += lineComment(str, ctx.indent, commentString(keyComment)); + } else if (chompKeep && onChompKeep) + onChompKeep(); + return str; + } + if (keyCommentDone) + keyComment = null; + if (explicitKey) { + if (keyComment) + str += lineComment(str, ctx.indent, commentString(keyComment)); + str = `? ${str} +${indent}:`; + } else { + str = `${str}:`; + if (keyComment) + str += lineComment(str, ctx.indent, commentString(keyComment)); + } + let vsb, vcb, valueComment; + if (isNode2(value)) { + vsb = !!value.spaceBefore; + vcb = value.commentBefore; + valueComment = value.comment; + } else { + vsb = false; + vcb = null; + valueComment = null; + if (value && typeof value === "object") + value = doc.createNode(value); + } + ctx.implicitKey = false; + if (!explicitKey && !keyComment && isScalar(value)) + ctx.indentAtStart = str.length + 1; + chompKeep = false; + if (!indentSeq && indentStep.length >= 2 && !ctx.inFlow && !explicitKey && isSeq(value) && !value.flow && !value.tag && !value.anchor) { + ctx.indent = ctx.indent.substring(2); + } + let valueCommentDone = false; + const valueStr = stringify2(value, ctx, () => valueCommentDone = true, () => chompKeep = true); + let ws = " "; + if (keyComment || vsb || vcb) { + ws = vsb ? "\n" : ""; + if (vcb) { + const cs = commentString(vcb); + ws += ` +${indentComment(cs, ctx.indent)}`; + } + if (valueStr === "" && !ctx.inFlow) { + if (ws === "\n") + ws = "\n\n"; + } else { + ws += ` +${ctx.indent}`; + } + } else if (!explicitKey && isCollection(value)) { + const vs0 = valueStr[0]; + const nl0 = valueStr.indexOf("\n"); + const hasNewline = nl0 !== -1; + const flow = (_b = (_a3 = ctx.inFlow) != null ? _a3 : value.flow) != null ? _b : value.items.length === 0; + if (hasNewline || !flow) { + let hasPropsLine = false; + if (hasNewline && (vs0 === "&" || vs0 === "!")) { + let sp0 = valueStr.indexOf(" "); + if (vs0 === "&" && sp0 !== -1 && sp0 < nl0 && valueStr[sp0 + 1] === "!") { + sp0 = valueStr.indexOf(" ", sp0 + 1); + } + if (sp0 === -1 || nl0 < sp0) + hasPropsLine = true; + } + if (!hasPropsLine) + ws = ` +${ctx.indent}`; + } + } else if (valueStr === "" || valueStr[0] === "\n") { + ws = ""; + } + str += ws + valueStr; + if (ctx.inFlow) { + if (valueCommentDone && onComment) + onComment(); + } else if (valueComment && !valueCommentDone) { + str += lineComment(str, ctx.indent, commentString(valueComment)); + } else if (chompKeep && onChompKeep) { + onChompKeep(); + } + return str; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/log.js +function warn(logLevel, warning) { + if (logLevel === "debug" || logLevel === "warn") { + console.warn(warning); + } +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/yaml-1.1/merge.js +var MERGE_KEY = "<<"; +var merge3 = { + identify: (value) => value === MERGE_KEY || typeof value === "symbol" && value.description === MERGE_KEY, + default: "key", + tag: "tag:yaml.org,2002:merge", + test: /^<<$/, + resolve: () => Object.assign(new Scalar(Symbol(MERGE_KEY)), { + addToJSMap: addMergeToJSMap + }), + stringify: () => MERGE_KEY +}; +var isMergeKey = (ctx, key) => (merge3.identify(key) || isScalar(key) && (!key.type || key.type === Scalar.PLAIN) && merge3.identify(key.value)) && (ctx == null ? void 0 : ctx.doc.schema.tags.some((tag) => tag.tag === merge3.tag && tag.default)); +function addMergeToJSMap(ctx, map4, value) { + value = ctx && isAlias(value) ? value.resolve(ctx.doc) : value; + if (isSeq(value)) + for (const it of value.items) + mergeValue(ctx, map4, it); + else if (Array.isArray(value)) + for (const it of value) + mergeValue(ctx, map4, it); + else + mergeValue(ctx, map4, value); +} +function mergeValue(ctx, map4, value) { + const source = ctx && isAlias(value) ? value.resolve(ctx.doc) : value; + if (!isMap(source)) + throw new Error("Merge sources must be maps or map aliases"); + const srcMap = source.toJSON(null, ctx, Map); + for (const [key, value2] of srcMap) { + if (map4 instanceof Map) { + if (!map4.has(key)) + map4.set(key, value2); + } else if (map4 instanceof Set) { + map4.add(key); + } else if (!Object.prototype.hasOwnProperty.call(map4, key)) { + Object.defineProperty(map4, key, { + value: value2, + writable: true, + enumerable: true, + configurable: true + }); + } + } + return map4; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/nodes/addPairToJSMap.js +function addPairToJSMap(ctx, map4, { key, value }) { + if (isNode2(key) && key.addToJSMap) + key.addToJSMap(ctx, map4, value); + else if (isMergeKey(ctx, key)) + addMergeToJSMap(ctx, map4, value); + else { + const jsKey = toJS(key, "", ctx); + if (map4 instanceof Map) { + map4.set(jsKey, toJS(value, jsKey, ctx)); + } else if (map4 instanceof Set) { + map4.add(jsKey); + } else { + const stringKey = stringifyKey(key, jsKey, ctx); + const jsValue = toJS(value, stringKey, ctx); + if (stringKey in map4) + Object.defineProperty(map4, stringKey, { + value: jsValue, + writable: true, + enumerable: true, + configurable: true + }); + else + map4[stringKey] = jsValue; + } + } + return map4; +} +function stringifyKey(key, jsKey, ctx) { + if (jsKey === null) + return ""; + if (typeof jsKey !== "object") + return String(jsKey); + if (isNode2(key) && (ctx == null ? void 0 : ctx.doc)) { + const strCtx = createStringifyContext(ctx.doc, {}); + strCtx.anchors = /* @__PURE__ */ new Set(); + for (const node of ctx.anchors.keys()) + strCtx.anchors.add(node.anchor); + strCtx.inFlow = true; + strCtx.inStringifyKey = true; + const strKey = key.toString(strCtx); + if (!ctx.mapKeyWarned) { + let jsonStr = JSON.stringify(strKey); + if (jsonStr.length > 40) + jsonStr = jsonStr.substring(0, 36) + '..."'; + warn(ctx.doc.options.logLevel, `Keys with collection values will be stringified due to JS Object restrictions: ${jsonStr}. Set mapAsMap: true to use object keys.`); + ctx.mapKeyWarned = true; + } + return strKey; + } + return JSON.stringify(jsKey); +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/nodes/Pair.js +function createPair(key, value, ctx) { + const k = createNode(key, void 0, ctx); + const v = createNode(value, void 0, ctx); + return new Pair(k, v); +} +var Pair = class { + constructor(key, value = null) { + Object.defineProperty(this, NODE_TYPE, { value: PAIR }); + this.key = key; + this.value = value; + } + clone(schema4) { + let { key, value } = this; + if (isNode2(key)) + key = key.clone(schema4); + if (isNode2(value)) + value = value.clone(schema4); + return new Pair(key, value); + } + toJSON(_, ctx) { + const pair = (ctx == null ? void 0 : ctx.mapAsMap) ? /* @__PURE__ */ new Map() : {}; + return addPairToJSMap(ctx, pair, this); + } + toString(ctx, onComment, onChompKeep) { + return (ctx == null ? void 0 : ctx.doc) ? stringifyPair(this, ctx, onComment, onChompKeep) : JSON.stringify(this); + } +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/stringify/stringifyCollection.js +function stringifyCollection(collection, ctx, options) { + var _a3; + const flow = (_a3 = ctx.inFlow) != null ? _a3 : collection.flow; + const stringify5 = flow ? stringifyFlowCollection : stringifyBlockCollection; + return stringify5(collection, ctx, options); +} +function stringifyBlockCollection({ comment: comment2, items }, ctx, { blockItemPrefix, flowChars, itemIndent, onChompKeep, onComment }) { + const { indent, options: { commentString } } = ctx; + const itemCtx = Object.assign({}, ctx, { indent: itemIndent, type: null }); + let chompKeep = false; + const lines = []; + for (let i = 0; i < items.length; ++i) { + const item = items[i]; + let comment3 = null; + if (isNode2(item)) { + if (!chompKeep && item.spaceBefore) + lines.push(""); + addCommentBefore(ctx, lines, item.commentBefore, chompKeep); + if (item.comment) + comment3 = item.comment; + } else if (isPair(item)) { + const ik = isNode2(item.key) ? item.key : null; + if (ik) { + if (!chompKeep && ik.spaceBefore) + lines.push(""); + addCommentBefore(ctx, lines, ik.commentBefore, chompKeep); + } + } + chompKeep = false; + let str2 = stringify2(item, itemCtx, () => comment3 = null, () => chompKeep = true); + if (comment3) + str2 += lineComment(str2, itemIndent, commentString(comment3)); + if (chompKeep && comment3) + chompKeep = false; + lines.push(blockItemPrefix + str2); + } + let str; + if (lines.length === 0) { + str = flowChars.start + flowChars.end; + } else { + str = lines[0]; + for (let i = 1; i < lines.length; ++i) { + const line = lines[i]; + str += line ? ` +${indent}${line}` : "\n"; + } + } + if (comment2) { + str += "\n" + indentComment(commentString(comment2), indent); + if (onComment) + onComment(); + } else if (chompKeep && onChompKeep) + onChompKeep(); + return str; +} +function stringifyFlowCollection({ items }, ctx, { flowChars, itemIndent }) { + const { indent, indentStep, flowCollectionPadding: fcPadding, options: { commentString } } = ctx; + itemIndent += indentStep; + const itemCtx = Object.assign({}, ctx, { + indent: itemIndent, + inFlow: true, + type: null + }); + let reqNewline = false; + let linesAtValue = 0; + const lines = []; + for (let i = 0; i < items.length; ++i) { + const item = items[i]; + let comment2 = null; + if (isNode2(item)) { + if (item.spaceBefore) + lines.push(""); + addCommentBefore(ctx, lines, item.commentBefore, false); + if (item.comment) + comment2 = item.comment; + } else if (isPair(item)) { + const ik = isNode2(item.key) ? item.key : null; + if (ik) { + if (ik.spaceBefore) + lines.push(""); + addCommentBefore(ctx, lines, ik.commentBefore, false); + if (ik.comment) + reqNewline = true; + } + const iv = isNode2(item.value) ? item.value : null; + if (iv) { + if (iv.comment) + comment2 = iv.comment; + if (iv.commentBefore) + reqNewline = true; + } else if (item.value == null && (ik == null ? void 0 : ik.comment)) { + comment2 = ik.comment; + } + } + if (comment2) + reqNewline = true; + let str = stringify2(item, itemCtx, () => comment2 = null); + if (i < items.length - 1) + str += ","; + if (comment2) + str += lineComment(str, itemIndent, commentString(comment2)); + if (!reqNewline && (lines.length > linesAtValue || str.includes("\n"))) + reqNewline = true; + lines.push(str); + linesAtValue = lines.length; + } + const { start, end: end2 } = flowChars; + if (lines.length === 0) { + return start + end2; + } else { + if (!reqNewline) { + const len = lines.reduce((sum, line) => sum + line.length + 2, 2); + reqNewline = ctx.options.lineWidth > 0 && len > ctx.options.lineWidth; + } + if (reqNewline) { + let str = start; + for (const line of lines) + str += line ? ` +${indentStep}${indent}${line}` : "\n"; + return `${str} +${indent}${end2}`; + } else { + return `${start}${fcPadding}${lines.join(" ")}${fcPadding}${end2}`; + } + } +} +function addCommentBefore({ indent, options: { commentString } }, lines, comment2, chompKeep) { + if (comment2 && chompKeep) + comment2 = comment2.replace(/^\n+/, ""); + if (comment2) { + const ic = indentComment(commentString(comment2), indent); + lines.push(ic.trimStart()); + } +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/nodes/YAMLMap.js +function findPair(items, key) { + const k = isScalar(key) ? key.value : key; + for (const it of items) { + if (isPair(it)) { + if (it.key === key || it.key === k) + return it; + if (isScalar(it.key) && it.key.value === k) + return it; + } + } + return void 0; +} +var YAMLMap = class extends Collection { + static get tagName() { + return "tag:yaml.org,2002:map"; + } + constructor(schema4) { + super(MAP, schema4); + this.items = []; + } + static from(schema4, obj, ctx) { + const { keepUndefined, replacer } = ctx; + const map4 = new this(schema4); + const add3 = (key, value) => { + if (typeof replacer === "function") + value = replacer.call(obj, key, value); + else if (Array.isArray(replacer) && !replacer.includes(key)) + return; + if (value !== void 0 || keepUndefined) + map4.items.push(createPair(key, value, ctx)); + }; + if (obj instanceof Map) { + for (const [key, value] of obj) + add3(key, value); + } else if (obj && typeof obj === "object") { + for (const key of Object.keys(obj)) + add3(key, obj[key]); + } + if (typeof schema4.sortMapEntries === "function") { + map4.items.sort(schema4.sortMapEntries); + } + return map4; + } + add(pair, overwrite) { + var _a3; + let _pair; + if (isPair(pair)) + _pair = pair; + else if (!pair || typeof pair !== "object" || !("key" in pair)) { + _pair = new Pair(pair, pair == null ? void 0 : pair.value); + } else + _pair = new Pair(pair.key, pair.value); + const prev2 = findPair(this.items, _pair.key); + const sortEntries = (_a3 = this.schema) == null ? void 0 : _a3.sortMapEntries; + if (prev2) { + if (!overwrite) + throw new Error(`Key ${_pair.key} already set`); + if (isScalar(prev2.value) && isScalarValue(_pair.value)) + prev2.value.value = _pair.value; + else + prev2.value = _pair.value; + } else if (sortEntries) { + const i = this.items.findIndex((item) => sortEntries(_pair, item) < 0); + if (i === -1) + this.items.push(_pair); + else + this.items.splice(i, 0, _pair); + } else { + this.items.push(_pair); + } + } + delete(key) { + const it = findPair(this.items, key); + if (!it) + return false; + const del = this.items.splice(this.items.indexOf(it), 1); + return del.length > 0; + } + get(key, keepScalar) { + var _a3; + const it = findPair(this.items, key); + const node = it == null ? void 0 : it.value; + return (_a3 = !keepScalar && isScalar(node) ? node.value : node) != null ? _a3 : void 0; + } + has(key) { + return !!findPair(this.items, key); + } + set(key, value) { + this.add(new Pair(key, value), true); + } + toJSON(_, ctx, Type) { + const map4 = Type ? new Type() : (ctx == null ? void 0 : ctx.mapAsMap) ? /* @__PURE__ */ new Map() : {}; + if (ctx == null ? void 0 : ctx.onCreate) + ctx.onCreate(map4); + for (const item of this.items) + addPairToJSMap(ctx, map4, item); + return map4; + } + toString(ctx, onComment, onChompKeep) { + if (!ctx) + return JSON.stringify(this); + for (const item of this.items) { + if (!isPair(item)) + throw new Error(`Map items must all be pairs; found ${JSON.stringify(item)} instead`); + } + if (!ctx.allNullValues && this.hasAllNullValues(false)) + ctx = Object.assign({}, ctx, { allNullValues: true }); + return stringifyCollection(this, ctx, { + blockItemPrefix: "", + flowChars: { start: "{", end: "}" }, + itemIndent: ctx.indent || "", + onChompKeep, + onComment + }); + } +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/common/map.js +var map3 = { + collection: "map", + default: true, + nodeClass: YAMLMap, + tag: "tag:yaml.org,2002:map", + resolve(map4, onError) { + if (!isMap(map4)) + onError("Expected a mapping for this tag"); + return map4; + }, + createNode: (schema4, obj, ctx) => YAMLMap.from(schema4, obj, ctx) +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/nodes/YAMLSeq.js +var YAMLSeq = class extends Collection { + static get tagName() { + return "tag:yaml.org,2002:seq"; + } + constructor(schema4) { + super(SEQ, schema4); + this.items = []; + } + add(value) { + this.items.push(value); + } + delete(key) { + const idx = asItemIndex(key); + if (typeof idx !== "number") + return false; + const del = this.items.splice(idx, 1); + return del.length > 0; + } + get(key, keepScalar) { + const idx = asItemIndex(key); + if (typeof idx !== "number") + return void 0; + const it = this.items[idx]; + return !keepScalar && isScalar(it) ? it.value : it; + } + has(key) { + const idx = asItemIndex(key); + return typeof idx === "number" && idx < this.items.length; + } + set(key, value) { + const idx = asItemIndex(key); + if (typeof idx !== "number") + throw new Error(`Expected a valid index, not ${key}.`); + const prev2 = this.items[idx]; + if (isScalar(prev2) && isScalarValue(value)) + prev2.value = value; + else + this.items[idx] = value; + } + toJSON(_, ctx) { + const seq2 = []; + if (ctx == null ? void 0 : ctx.onCreate) + ctx.onCreate(seq2); + let i = 0; + for (const item of this.items) + seq2.push(toJS(item, String(i++), ctx)); + return seq2; + } + toString(ctx, onComment, onChompKeep) { + if (!ctx) + return JSON.stringify(this); + return stringifyCollection(this, ctx, { + blockItemPrefix: "- ", + flowChars: { start: "[", end: "]" }, + itemIndent: (ctx.indent || "") + " ", + onChompKeep, + onComment + }); + } + static from(schema4, obj, ctx) { + const { replacer } = ctx; + const seq2 = new this(schema4); + if (obj && Symbol.iterator in Object(obj)) { + let i = 0; + for (let it of obj) { + if (typeof replacer === "function") { + const key = obj instanceof Set ? it : String(i++); + it = replacer.call(obj, key, it); + } + seq2.items.push(createNode(it, void 0, ctx)); + } + } + return seq2; + } +}; +function asItemIndex(key) { + let idx = isScalar(key) ? key.value : key; + if (idx && typeof idx === "string") + idx = Number(idx); + return typeof idx === "number" && Number.isInteger(idx) && idx >= 0 ? idx : null; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/common/seq.js +var seq = { + collection: "seq", + default: true, + nodeClass: YAMLSeq, + tag: "tag:yaml.org,2002:seq", + resolve(seq2, onError) { + if (!isSeq(seq2)) + onError("Expected a sequence for this tag"); + return seq2; + }, + createNode: (schema4, obj, ctx) => YAMLSeq.from(schema4, obj, ctx) +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/common/string.js +var string = { + identify: (value) => typeof value === "string", + default: true, + tag: "tag:yaml.org,2002:str", + resolve: (str) => str, + stringify(item, ctx, onComment, onChompKeep) { + ctx = Object.assign({ actualString: true }, ctx); + return stringifyString(item, ctx, onComment, onChompKeep); + } +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/common/null.js +var nullTag = { + identify: (value) => value == null, + createNode: () => new Scalar(null), + default: true, + tag: "tag:yaml.org,2002:null", + test: /^(?:~|[Nn]ull|NULL)?$/, + resolve: () => new Scalar(null), + stringify: ({ source }, ctx) => typeof source === "string" && nullTag.test.test(source) ? source : ctx.options.nullStr +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/core/bool.js +var boolTag = { + identify: (value) => typeof value === "boolean", + default: true, + tag: "tag:yaml.org,2002:bool", + test: /^(?:[Tt]rue|TRUE|[Ff]alse|FALSE)$/, + resolve: (str) => new Scalar(str[0] === "t" || str[0] === "T"), + stringify({ source, value }, ctx) { + if (source && boolTag.test.test(source)) { + const sv = source[0] === "t" || source[0] === "T"; + if (value === sv) + return source; + } + return value ? ctx.options.trueStr : ctx.options.falseStr; + } +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/stringify/stringifyNumber.js +function stringifyNumber({ format: format2, minFractionDigits, tag, value }) { + if (typeof value === "bigint") + return String(value); + const num = typeof value === "number" ? value : Number(value); + if (!isFinite(num)) + return isNaN(num) ? ".nan" : num < 0 ? "-.inf" : ".inf"; + let n = JSON.stringify(value); + if (!format2 && minFractionDigits && (!tag || tag === "tag:yaml.org,2002:float") && /^\d/.test(n)) { + let i = n.indexOf("."); + if (i < 0) { + i = n.length; + n += "."; + } + let d = minFractionDigits - (n.length - i - 1); + while (d-- > 0) + n += "0"; + } + return n; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/core/float.js +var floatNaN = { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:float", + test: /^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/, + resolve: (str) => str.slice(-3).toLowerCase() === "nan" ? NaN : str[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY, + stringify: stringifyNumber +}; +var floatExp = { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:float", + format: "EXP", + test: /^[-+]?(?:\.[0-9]+|[0-9]+(?:\.[0-9]*)?)[eE][-+]?[0-9]+$/, + resolve: (str) => parseFloat(str), + stringify(node) { + const num = Number(node.value); + return isFinite(num) ? num.toExponential() : stringifyNumber(node); + } +}; +var float = { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:float", + test: /^[-+]?(?:\.[0-9]+|[0-9]+\.[0-9]*)$/, + resolve(str) { + const node = new Scalar(parseFloat(str)); + const dot = str.indexOf("."); + if (dot !== -1 && str[str.length - 1] === "0") + node.minFractionDigits = str.length - dot - 1; + return node; + }, + stringify: stringifyNumber +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/core/int.js +var intIdentify = (value) => typeof value === "bigint" || Number.isInteger(value); +var intResolve = (str, offset, radix, { intAsBigInt }) => intAsBigInt ? BigInt(str) : parseInt(str.substring(offset), radix); +function intStringify(node, radix, prefix) { + const { value } = node; + if (intIdentify(value) && value >= 0) + return prefix + value.toString(radix); + return stringifyNumber(node); +} +var intOct = { + identify: (value) => intIdentify(value) && value >= 0, + default: true, + tag: "tag:yaml.org,2002:int", + format: "OCT", + test: /^0o[0-7]+$/, + resolve: (str, _onError, opt) => intResolve(str, 2, 8, opt), + stringify: (node) => intStringify(node, 8, "0o") +}; +var int = { + identify: intIdentify, + default: true, + tag: "tag:yaml.org,2002:int", + test: /^[-+]?[0-9]+$/, + resolve: (str, _onError, opt) => intResolve(str, 0, 10, opt), + stringify: stringifyNumber +}; +var intHex = { + identify: (value) => intIdentify(value) && value >= 0, + default: true, + tag: "tag:yaml.org,2002:int", + format: "HEX", + test: /^0x[0-9a-fA-F]+$/, + resolve: (str, _onError, opt) => intResolve(str, 2, 16, opt), + stringify: (node) => intStringify(node, 16, "0x") +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/core/schema.js +var schema = [ + map3, + seq, + string, + nullTag, + boolTag, + intOct, + int, + intHex, + floatNaN, + floatExp, + float +]; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/json/schema.js +function intIdentify2(value) { + return typeof value === "bigint" || Number.isInteger(value); +} +var stringifyJSON = ({ value }) => JSON.stringify(value); +var jsonScalars = [ + { + identify: (value) => typeof value === "string", + default: true, + tag: "tag:yaml.org,2002:str", + resolve: (str) => str, + stringify: stringifyJSON + }, + { + identify: (value) => value == null, + createNode: () => new Scalar(null), + default: true, + tag: "tag:yaml.org,2002:null", + test: /^null$/, + resolve: () => null, + stringify: stringifyJSON + }, + { + identify: (value) => typeof value === "boolean", + default: true, + tag: "tag:yaml.org,2002:bool", + test: /^true$|^false$/, + resolve: (str) => str === "true", + stringify: stringifyJSON + }, + { + identify: intIdentify2, + default: true, + tag: "tag:yaml.org,2002:int", + test: /^-?(?:0|[1-9][0-9]*)$/, + resolve: (str, _onError, { intAsBigInt }) => intAsBigInt ? BigInt(str) : parseInt(str, 10), + stringify: ({ value }) => intIdentify2(value) ? value.toString() : JSON.stringify(value) + }, + { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:float", + test: /^-?(?:0|[1-9][0-9]*)(?:\.[0-9]*)?(?:[eE][-+]?[0-9]+)?$/, + resolve: (str) => parseFloat(str), + stringify: stringifyJSON + } +]; +var jsonError = { + default: true, + tag: "", + test: /^/, + resolve(str, onError) { + onError(`Unresolved plain scalar ${JSON.stringify(str)}`); + return str; + } +}; +var schema2 = [map3, seq].concat(jsonScalars, jsonError); + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/yaml-1.1/binary.js +var binary = { + identify: (value) => value instanceof Uint8Array, + default: false, + tag: "tag:yaml.org,2002:binary", + resolve(src, onError) { + if (typeof atob === "function") { + const str = atob(src.replace(/[\n\r]/g, "")); + const buffer = new Uint8Array(str.length); + for (let i = 0; i < str.length; ++i) + buffer[i] = str.charCodeAt(i); + return buffer; + } else { + onError("This environment does not support reading binary tags; either Buffer or atob is required"); + return src; + } + }, + stringify({ comment: comment2, type, value }, ctx, onComment, onChompKeep) { + if (!value) + return ""; + const buf = value; + let str; + if (typeof btoa === "function") { + let s = ""; + for (let i = 0; i < buf.length; ++i) + s += String.fromCharCode(buf[i]); + str = btoa(s); + } else { + throw new Error("This environment does not support writing binary tags; either Buffer or btoa is required"); + } + if (!type) + type = Scalar.BLOCK_LITERAL; + if (type !== Scalar.QUOTE_DOUBLE) { + const lineWidth = Math.max(ctx.options.lineWidth - ctx.indent.length, ctx.options.minContentWidth); + const n = Math.ceil(str.length / lineWidth); + const lines = new Array(n); + for (let i = 0, o = 0; i < n; ++i, o += lineWidth) { + lines[i] = str.substr(o, lineWidth); + } + str = lines.join(type === Scalar.BLOCK_LITERAL ? "\n" : " "); + } + return stringifyString({ comment: comment2, type, value: str }, ctx, onComment, onChompKeep); + } +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/yaml-1.1/pairs.js +function resolvePairs(seq2, onError) { + var _a3; + if (isSeq(seq2)) { + for (let i = 0; i < seq2.items.length; ++i) { + let item = seq2.items[i]; + if (isPair(item)) + continue; + else if (isMap(item)) { + if (item.items.length > 1) + onError("Each pair must have its own sequence indicator"); + const pair = item.items[0] || new Pair(new Scalar(null)); + if (item.commentBefore) + pair.key.commentBefore = pair.key.commentBefore ? `${item.commentBefore} +${pair.key.commentBefore}` : item.commentBefore; + if (item.comment) { + const cn = (_a3 = pair.value) != null ? _a3 : pair.key; + cn.comment = cn.comment ? `${item.comment} +${cn.comment}` : item.comment; + } + item = pair; + } + seq2.items[i] = isPair(item) ? item : new Pair(item); + } + } else + onError("Expected a sequence for this tag"); + return seq2; +} +function createPairs(schema4, iterable, ctx) { + const { replacer } = ctx; + const pairs2 = new YAMLSeq(schema4); + pairs2.tag = "tag:yaml.org,2002:pairs"; + let i = 0; + if (iterable && Symbol.iterator in Object(iterable)) + for (let it of iterable) { + if (typeof replacer === "function") + it = replacer.call(iterable, String(i++), it); + let key, value; + if (Array.isArray(it)) { + if (it.length === 2) { + key = it[0]; + value = it[1]; + } else + throw new TypeError(`Expected [key, value] tuple: ${it}`); + } else if (it && it instanceof Object) { + const keys = Object.keys(it); + if (keys.length === 1) { + key = keys[0]; + value = it[key]; + } else { + throw new TypeError(`Expected tuple with one key, not ${keys.length} keys`); + } + } else { + key = it; + } + pairs2.items.push(createPair(key, value, ctx)); + } + return pairs2; +} +var pairs = { + collection: "seq", + default: false, + tag: "tag:yaml.org,2002:pairs", + resolve: resolvePairs, + createNode: createPairs +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/yaml-1.1/omap.js +var YAMLOMap = class extends YAMLSeq { + constructor() { + super(); + this.add = YAMLMap.prototype.add.bind(this); + this.delete = YAMLMap.prototype.delete.bind(this); + this.get = YAMLMap.prototype.get.bind(this); + this.has = YAMLMap.prototype.has.bind(this); + this.set = YAMLMap.prototype.set.bind(this); + this.tag = YAMLOMap.tag; + } + toJSON(_, ctx) { + if (!ctx) + return super.toJSON(_); + const map4 = /* @__PURE__ */ new Map(); + if (ctx == null ? void 0 : ctx.onCreate) + ctx.onCreate(map4); + for (const pair of this.items) { + let key, value; + if (isPair(pair)) { + key = toJS(pair.key, "", ctx); + value = toJS(pair.value, key, ctx); + } else { + key = toJS(pair, "", ctx); + } + if (map4.has(key)) + throw new Error("Ordered maps must not include duplicate keys"); + map4.set(key, value); + } + return map4; + } + static from(schema4, iterable, ctx) { + const pairs2 = createPairs(schema4, iterable, ctx); + const omap2 = new this(); + omap2.items = pairs2.items; + return omap2; + } +}; +YAMLOMap.tag = "tag:yaml.org,2002:omap"; +var omap = { + collection: "seq", + identify: (value) => value instanceof Map, + nodeClass: YAMLOMap, + default: false, + tag: "tag:yaml.org,2002:omap", + resolve(seq2, onError) { + const pairs2 = resolvePairs(seq2, onError); + const seenKeys = []; + for (const { key } of pairs2.items) { + if (isScalar(key)) { + if (seenKeys.includes(key.value)) { + onError(`Ordered maps must not include duplicate keys: ${key.value}`); + } else { + seenKeys.push(key.value); + } + } + } + return Object.assign(new YAMLOMap(), pairs2); + }, + createNode: (schema4, iterable, ctx) => YAMLOMap.from(schema4, iterable, ctx) +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/yaml-1.1/bool.js +function boolStringify({ value, source }, ctx) { + const boolObj = value ? trueTag : falseTag; + if (source && boolObj.test.test(source)) + return source; + return value ? ctx.options.trueStr : ctx.options.falseStr; +} +var trueTag = { + identify: (value) => value === true, + default: true, + tag: "tag:yaml.org,2002:bool", + test: /^(?:Y|y|[Yy]es|YES|[Tt]rue|TRUE|[Oo]n|ON)$/, + resolve: () => new Scalar(true), + stringify: boolStringify +}; +var falseTag = { + identify: (value) => value === false, + default: true, + tag: "tag:yaml.org,2002:bool", + test: /^(?:N|n|[Nn]o|NO|[Ff]alse|FALSE|[Oo]ff|OFF)$/, + resolve: () => new Scalar(false), + stringify: boolStringify +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/yaml-1.1/float.js +var floatNaN2 = { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:float", + test: /^(?:[-+]?\.(?:inf|Inf|INF)|\.nan|\.NaN|\.NAN)$/, + resolve: (str) => str.slice(-3).toLowerCase() === "nan" ? NaN : str[0] === "-" ? Number.NEGATIVE_INFINITY : Number.POSITIVE_INFINITY, + stringify: stringifyNumber +}; +var floatExp2 = { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:float", + format: "EXP", + test: /^[-+]?(?:[0-9][0-9_]*)?(?:\.[0-9_]*)?[eE][-+]?[0-9]+$/, + resolve: (str) => parseFloat(str.replace(/_/g, "")), + stringify(node) { + const num = Number(node.value); + return isFinite(num) ? num.toExponential() : stringifyNumber(node); + } +}; +var float2 = { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:float", + test: /^[-+]?(?:[0-9][0-9_]*)?\.[0-9_]*$/, + resolve(str) { + const node = new Scalar(parseFloat(str.replace(/_/g, ""))); + const dot = str.indexOf("."); + if (dot !== -1) { + const f = str.substring(dot + 1).replace(/_/g, ""); + if (f[f.length - 1] === "0") + node.minFractionDigits = f.length; + } + return node; + }, + stringify: stringifyNumber +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/yaml-1.1/int.js +var intIdentify3 = (value) => typeof value === "bigint" || Number.isInteger(value); +function intResolve2(str, offset, radix, { intAsBigInt }) { + const sign = str[0]; + if (sign === "-" || sign === "+") + offset += 1; + str = str.substring(offset).replace(/_/g, ""); + if (intAsBigInt) { + switch (radix) { + case 2: + str = `0b${str}`; + break; + case 8: + str = `0o${str}`; + break; + case 16: + str = `0x${str}`; + break; + } + const n2 = BigInt(str); + return sign === "-" ? BigInt(-1) * n2 : n2; + } + const n = parseInt(str, radix); + return sign === "-" ? -1 * n : n; +} +function intStringify2(node, radix, prefix) { + const { value } = node; + if (intIdentify3(value)) { + const str = value.toString(radix); + return value < 0 ? "-" + prefix + str.substr(1) : prefix + str; + } + return stringifyNumber(node); +} +var intBin = { + identify: intIdentify3, + default: true, + tag: "tag:yaml.org,2002:int", + format: "BIN", + test: /^[-+]?0b[0-1_]+$/, + resolve: (str, _onError, opt) => intResolve2(str, 2, 2, opt), + stringify: (node) => intStringify2(node, 2, "0b") +}; +var intOct2 = { + identify: intIdentify3, + default: true, + tag: "tag:yaml.org,2002:int", + format: "OCT", + test: /^[-+]?0[0-7_]+$/, + resolve: (str, _onError, opt) => intResolve2(str, 1, 8, opt), + stringify: (node) => intStringify2(node, 8, "0") +}; +var int2 = { + identify: intIdentify3, + default: true, + tag: "tag:yaml.org,2002:int", + test: /^[-+]?[0-9][0-9_]*$/, + resolve: (str, _onError, opt) => intResolve2(str, 0, 10, opt), + stringify: stringifyNumber +}; +var intHex2 = { + identify: intIdentify3, + default: true, + tag: "tag:yaml.org,2002:int", + format: "HEX", + test: /^[-+]?0x[0-9a-fA-F_]+$/, + resolve: (str, _onError, opt) => intResolve2(str, 2, 16, opt), + stringify: (node) => intStringify2(node, 16, "0x") +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/yaml-1.1/set.js +var YAMLSet = class extends YAMLMap { + constructor(schema4) { + super(schema4); + this.tag = YAMLSet.tag; + } + add(key) { + let pair; + if (isPair(key)) + pair = key; + else if (key && typeof key === "object" && "key" in key && "value" in key && key.value === null) + pair = new Pair(key.key, null); + else + pair = new Pair(key, null); + const prev2 = findPair(this.items, pair.key); + if (!prev2) + this.items.push(pair); + } + get(key, keepPair) { + const pair = findPair(this.items, key); + return !keepPair && isPair(pair) ? isScalar(pair.key) ? pair.key.value : pair.key : pair; + } + set(key, value) { + if (typeof value !== "boolean") + throw new Error(`Expected boolean value for set(key, value) in a YAML set, not ${typeof value}`); + const prev2 = findPair(this.items, key); + if (prev2 && !value) { + this.items.splice(this.items.indexOf(prev2), 1); + } else if (!prev2 && value) { + this.items.push(new Pair(key)); + } + } + toJSON(_, ctx) { + return super.toJSON(_, ctx, Set); + } + toString(ctx, onComment, onChompKeep) { + if (!ctx) + return JSON.stringify(this); + if (this.hasAllNullValues(true)) + return super.toString(Object.assign({}, ctx, { allNullValues: true }), onComment, onChompKeep); + else + throw new Error("Set items must all have null values"); + } + static from(schema4, iterable, ctx) { + const { replacer } = ctx; + const set3 = new this(schema4); + if (iterable && Symbol.iterator in Object(iterable)) + for (let value of iterable) { + if (typeof replacer === "function") + value = replacer.call(iterable, value, value); + set3.items.push(createPair(value, null, ctx)); + } + return set3; + } +}; +YAMLSet.tag = "tag:yaml.org,2002:set"; +var set2 = { + collection: "map", + identify: (value) => value instanceof Set, + nodeClass: YAMLSet, + default: false, + tag: "tag:yaml.org,2002:set", + createNode: (schema4, iterable, ctx) => YAMLSet.from(schema4, iterable, ctx), + resolve(map4, onError) { + if (isMap(map4)) { + if (map4.hasAllNullValues(true)) + return Object.assign(new YAMLSet(), map4); + else + onError("Set items must all have null values"); + } else + onError("Expected a mapping for this tag"); + return map4; + } +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/yaml-1.1/timestamp.js +function parseSexagesimal(str, asBigInt) { + const sign = str[0]; + const parts = sign === "-" || sign === "+" ? str.substring(1) : str; + const num = (n) => asBigInt ? BigInt(n) : Number(n); + const res = parts.replace(/_/g, "").split(":").reduce((res2, p) => res2 * num(60) + num(p), num(0)); + return sign === "-" ? num(-1) * res : res; +} +function stringifySexagesimal(node) { + let { value } = node; + let num = (n) => n; + if (typeof value === "bigint") + num = (n) => BigInt(n); + else if (isNaN(value) || !isFinite(value)) + return stringifyNumber(node); + let sign = ""; + if (value < 0) { + sign = "-"; + value *= num(-1); + } + const _60 = num(60); + const parts = [value % _60]; + if (value < 60) { + parts.unshift(0); + } else { + value = (value - parts[0]) / _60; + parts.unshift(value % _60); + if (value >= 60) { + value = (value - parts[0]) / _60; + parts.unshift(value); + } + } + return sign + parts.map((n) => String(n).padStart(2, "0")).join(":").replace(/000000\d*$/, ""); +} +var intTime = { + identify: (value) => typeof value === "bigint" || Number.isInteger(value), + default: true, + tag: "tag:yaml.org,2002:int", + format: "TIME", + test: /^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+$/, + resolve: (str, _onError, { intAsBigInt }) => parseSexagesimal(str, intAsBigInt), + stringify: stringifySexagesimal +}; +var floatTime = { + identify: (value) => typeof value === "number", + default: true, + tag: "tag:yaml.org,2002:float", + format: "TIME", + test: /^[-+]?[0-9][0-9_]*(?::[0-5]?[0-9])+\.[0-9_]*$/, + resolve: (str) => parseSexagesimal(str, false), + stringify: stringifySexagesimal +}; +var timestamp = { + identify: (value) => value instanceof Date, + default: true, + tag: "tag:yaml.org,2002:timestamp", + test: RegExp("^([0-9]{4})-([0-9]{1,2})-([0-9]{1,2})(?:(?:t|T|[ \\t]+)([0-9]{1,2}):([0-9]{1,2}):([0-9]{1,2}(\\.[0-9]+)?)(?:[ \\t]*(Z|[-+][012]?[0-9](?::[0-9]{2})?))?)?$"), + resolve(str) { + const match2 = str.match(timestamp.test); + if (!match2) + throw new Error("!!timestamp expects a date, starting with yyyy-mm-dd"); + const [, year, month, day, hour, minute, second] = match2.map(Number); + const millisec = match2[7] ? Number((match2[7] + "00").substr(1, 3)) : 0; + let date = Date.UTC(year, month - 1, day, hour || 0, minute || 0, second || 0, millisec); + const tz = match2[8]; + if (tz && tz !== "Z") { + let d = parseSexagesimal(tz, false); + if (Math.abs(d) < 30) + d *= 60; + date -= 6e4 * d; + } + return new Date(date); + }, + stringify: ({ value }) => { + var _a3; + return (_a3 = value == null ? void 0 : value.toISOString().replace(/(T00:00:00)?\.000Z$/, "")) != null ? _a3 : ""; + } +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/yaml-1.1/schema.js +var schema3 = [ + map3, + seq, + string, + nullTag, + trueTag, + falseTag, + intBin, + intOct2, + int2, + intHex2, + floatNaN2, + floatExp2, + float2, + binary, + merge3, + omap, + pairs, + set2, + intTime, + floatTime, + timestamp +]; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/tags.js +var schemas = /* @__PURE__ */ new Map([ + ["core", schema], + ["failsafe", [map3, seq, string]], + ["json", schema2], + ["yaml11", schema3], + ["yaml-1.1", schema3] +]); +var tagsByName = { + binary, + bool: boolTag, + float, + floatExp, + floatNaN, + floatTime, + int, + intHex, + intOct, + intTime, + map: map3, + merge: merge3, + null: nullTag, + omap, + pairs, + seq, + set: set2, + timestamp +}; +var coreKnownTags = { + "tag:yaml.org,2002:binary": binary, + "tag:yaml.org,2002:merge": merge3, + "tag:yaml.org,2002:omap": omap, + "tag:yaml.org,2002:pairs": pairs, + "tag:yaml.org,2002:set": set2, + "tag:yaml.org,2002:timestamp": timestamp +}; +function getTags(customTags, schemaName, addMergeTag) { + const schemaTags = schemas.get(schemaName); + if (schemaTags && !customTags) { + return addMergeTag && !schemaTags.includes(merge3) ? schemaTags.concat(merge3) : schemaTags.slice(); + } + let tags = schemaTags; + if (!tags) { + if (Array.isArray(customTags)) + tags = []; + else { + const keys = Array.from(schemas.keys()).filter((key) => key !== "yaml11").map((key) => JSON.stringify(key)).join(", "); + throw new Error(`Unknown schema "${schemaName}"; use one of ${keys} or define customTags array`); + } + } + if (Array.isArray(customTags)) { + for (const tag of customTags) + tags = tags.concat(tag); + } else if (typeof customTags === "function") { + tags = customTags(tags.slice()); + } + if (addMergeTag) + tags = tags.concat(merge3); + return tags.reduce((tags2, tag) => { + const tagObj = typeof tag === "string" ? tagsByName[tag] : tag; + if (!tagObj) { + const tagName = JSON.stringify(tag); + const keys = Object.keys(tagsByName).map((key) => JSON.stringify(key)).join(", "); + throw new Error(`Unknown custom tag ${tagName}; use one of ${keys}`); + } + if (!tags2.includes(tagObj)) + tags2.push(tagObj); + return tags2; + }, []); +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/schema/Schema.js +var sortMapEntriesByKey = (a, b) => a.key < b.key ? -1 : a.key > b.key ? 1 : 0; +var Schema = class { + constructor({ compat, customTags, merge: merge4, resolveKnownTags, schema: schema4, sortMapEntries, toStringDefaults }) { + this.compat = Array.isArray(compat) ? getTags(compat, "compat") : compat ? getTags(null, compat) : null; + this.name = typeof schema4 === "string" && schema4 || "core"; + this.knownTags = resolveKnownTags ? coreKnownTags : {}; + this.tags = getTags(customTags, this.name, merge4); + this.toStringOptions = toStringDefaults != null ? toStringDefaults : null; + Object.defineProperty(this, MAP, { value: map3 }); + Object.defineProperty(this, SCALAR, { value: string }); + Object.defineProperty(this, SEQ, { value: seq }); + this.sortMapEntries = typeof sortMapEntries === "function" ? sortMapEntries : sortMapEntries === true ? sortMapEntriesByKey : null; + } + clone() { + const copy = Object.create(Schema.prototype, Object.getOwnPropertyDescriptors(this)); + copy.tags = this.tags.slice(); + return copy; + } +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/stringify/stringifyDocument.js +function stringifyDocument(doc, options) { + var _a3; + const lines = []; + let hasDirectives = options.directives === true; + if (options.directives !== false && doc.directives) { + const dir = doc.directives.toString(doc); + if (dir) { + lines.push(dir); + hasDirectives = true; + } else if (doc.directives.docStart) + hasDirectives = true; + } + if (hasDirectives) + lines.push("---"); + const ctx = createStringifyContext(doc, options); + const { commentString } = ctx.options; + if (doc.commentBefore) { + if (lines.length !== 1) + lines.unshift(""); + const cs = commentString(doc.commentBefore); + lines.unshift(indentComment(cs, "")); + } + let chompKeep = false; + let contentComment = null; + if (doc.contents) { + if (isNode2(doc.contents)) { + if (doc.contents.spaceBefore && hasDirectives) + lines.push(""); + if (doc.contents.commentBefore) { + const cs = commentString(doc.contents.commentBefore); + lines.push(indentComment(cs, "")); + } + ctx.forceBlockIndent = !!doc.comment; + contentComment = doc.contents.comment; + } + const onChompKeep = contentComment ? void 0 : () => chompKeep = true; + let body = stringify2(doc.contents, ctx, () => contentComment = null, onChompKeep); + if (contentComment) + body += lineComment(body, "", commentString(contentComment)); + if ((body[0] === "|" || body[0] === ">") && lines[lines.length - 1] === "---") { + lines[lines.length - 1] = `--- ${body}`; + } else + lines.push(body); + } else { + lines.push(stringify2(doc.contents, ctx)); + } + if ((_a3 = doc.directives) == null ? void 0 : _a3.docEnd) { + if (doc.comment) { + const cs = commentString(doc.comment); + if (cs.includes("\n")) { + lines.push("..."); + lines.push(indentComment(cs, "")); + } else { + lines.push(`... ${cs}`); + } + } else { + lines.push("..."); + } + } else { + let dc = doc.comment; + if (dc && chompKeep) + dc = dc.replace(/^\n+/, ""); + if (dc) { + if ((!chompKeep || contentComment) && lines[lines.length - 1] !== "") + lines.push(""); + lines.push(indentComment(commentString(dc), "")); + } + } + return lines.join("\n") + "\n"; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/doc/Document.js +var Document2 = class { + constructor(value, replacer, options) { + this.commentBefore = null; + this.comment = null; + this.errors = []; + this.warnings = []; + Object.defineProperty(this, NODE_TYPE, { value: DOC }); + let _replacer = null; + if (typeof replacer === "function" || Array.isArray(replacer)) { + _replacer = replacer; + } else if (options === void 0 && replacer) { + options = replacer; + replacer = void 0; + } + const opt = Object.assign({ + intAsBigInt: false, + keepSourceTokens: false, + logLevel: "warn", + prettyErrors: true, + strict: true, + stringKeys: false, + uniqueKeys: true, + version: "1.2" + }, options); + this.options = opt; + let { version } = opt; + if (options == null ? void 0 : options._directives) { + this.directives = options._directives.atDocument(); + if (this.directives.yaml.explicit) + version = this.directives.yaml.version; + } else + this.directives = new Directives({ version }); + this.setSchema(version, options); + this.contents = value === void 0 ? null : this.createNode(value, _replacer, options); + } + clone() { + const copy = Object.create(Document2.prototype, { + [NODE_TYPE]: { value: DOC } + }); + copy.commentBefore = this.commentBefore; + copy.comment = this.comment; + copy.errors = this.errors.slice(); + copy.warnings = this.warnings.slice(); + copy.options = Object.assign({}, this.options); + if (this.directives) + copy.directives = this.directives.clone(); + copy.schema = this.schema.clone(); + copy.contents = isNode2(this.contents) ? this.contents.clone(copy.schema) : this.contents; + if (this.range) + copy.range = this.range.slice(); + return copy; + } + add(value) { + if (assertCollection(this.contents)) + this.contents.add(value); + } + addIn(path, value) { + if (assertCollection(this.contents)) + this.contents.addIn(path, value); + } + createAlias(node, name2) { + if (!node.anchor) { + const prev2 = anchorNames(this); + node.anchor = !name2 || prev2.has(name2) ? findNewAnchor(name2 || "a", prev2) : name2; + } + return new Alias(node.anchor); + } + createNode(value, replacer, options) { + let _replacer = void 0; + if (typeof replacer === "function") { + value = replacer.call({ "": value }, "", value); + _replacer = replacer; + } else if (Array.isArray(replacer)) { + const keyToStr = (v) => typeof v === "number" || v instanceof String || v instanceof Number; + const asStr = replacer.filter(keyToStr).map(String); + if (asStr.length > 0) + replacer = replacer.concat(asStr); + _replacer = replacer; + } else if (options === void 0 && replacer) { + options = replacer; + replacer = void 0; + } + const { aliasDuplicateObjects, anchorPrefix, flow, keepUndefined, onTagObj, tag } = options != null ? options : {}; + const { onAnchor, setAnchors, sourceObjects } = createNodeAnchors( + this, + anchorPrefix || "a" + ); + const ctx = { + aliasDuplicateObjects: aliasDuplicateObjects != null ? aliasDuplicateObjects : true, + keepUndefined: keepUndefined != null ? keepUndefined : false, + onAnchor, + onTagObj, + replacer: _replacer, + schema: this.schema, + sourceObjects + }; + const node = createNode(value, tag, ctx); + if (flow && isCollection(node)) + node.flow = true; + setAnchors(); + return node; + } + createPair(key, value, options = {}) { + const k = this.createNode(key, null, options); + const v = this.createNode(value, null, options); + return new Pair(k, v); + } + delete(key) { + return assertCollection(this.contents) ? this.contents.delete(key) : false; + } + deleteIn(path) { + if (isEmptyPath(path)) { + if (this.contents == null) + return false; + this.contents = null; + return true; + } + return assertCollection(this.contents) ? this.contents.deleteIn(path) : false; + } + get(key, keepScalar) { + return isCollection(this.contents) ? this.contents.get(key, keepScalar) : void 0; + } + getIn(path, keepScalar) { + if (isEmptyPath(path)) + return !keepScalar && isScalar(this.contents) ? this.contents.value : this.contents; + return isCollection(this.contents) ? this.contents.getIn(path, keepScalar) : void 0; + } + has(key) { + return isCollection(this.contents) ? this.contents.has(key) : false; + } + hasIn(path) { + if (isEmptyPath(path)) + return this.contents !== void 0; + return isCollection(this.contents) ? this.contents.hasIn(path) : false; + } + set(key, value) { + if (this.contents == null) { + this.contents = collectionFromPath(this.schema, [key], value); + } else if (assertCollection(this.contents)) { + this.contents.set(key, value); + } + } + setIn(path, value) { + if (isEmptyPath(path)) { + this.contents = value; + } else if (this.contents == null) { + this.contents = collectionFromPath(this.schema, Array.from(path), value); + } else if (assertCollection(this.contents)) { + this.contents.setIn(path, value); + } + } + setSchema(version, options = {}) { + if (typeof version === "number") + version = String(version); + let opt; + switch (version) { + case "1.1": + if (this.directives) + this.directives.yaml.version = "1.1"; + else + this.directives = new Directives({ version: "1.1" }); + opt = { resolveKnownTags: false, schema: "yaml-1.1" }; + break; + case "1.2": + case "next": + if (this.directives) + this.directives.yaml.version = version; + else + this.directives = new Directives({ version }); + opt = { resolveKnownTags: true, schema: "core" }; + break; + case null: + if (this.directives) + delete this.directives; + opt = null; + break; + default: { + const sv = JSON.stringify(version); + throw new Error(`Expected '1.1', '1.2' or null as first argument, but found: ${sv}`); + } + } + if (options.schema instanceof Object) + this.schema = options.schema; + else if (opt) + this.schema = new Schema(Object.assign(opt, options)); + else + throw new Error(`With a null YAML version, the { schema: Schema } option is required`); + } + toJS({ json, jsonArg, mapAsMap, maxAliasCount, onAnchor, reviver } = {}) { + const ctx = { + anchors: /* @__PURE__ */ new Map(), + doc: this, + keep: !json, + mapAsMap: mapAsMap === true, + mapKeyWarned: false, + maxAliasCount: typeof maxAliasCount === "number" ? maxAliasCount : 100 + }; + const res = toJS(this.contents, jsonArg != null ? jsonArg : "", ctx); + if (typeof onAnchor === "function") + for (const { count, res: res2 } of ctx.anchors.values()) + onAnchor(res2, count); + return typeof reviver === "function" ? applyReviver(reviver, { "": res }, "", res) : res; + } + toJSON(jsonArg, onAnchor) { + return this.toJS({ json: true, jsonArg, mapAsMap: false, onAnchor }); + } + toString(options = {}) { + if (this.errors.length > 0) + throw new Error("Document with errors cannot be stringified"); + if ("indent" in options && (!Number.isInteger(options.indent) || Number(options.indent) <= 0)) { + const s = JSON.stringify(options.indent); + throw new Error(`"indent" option must be a positive integer, not ${s}`); + } + return stringifyDocument(this, options); + } +}; +function assertCollection(contents2) { + if (isCollection(contents2)) + return true; + throw new Error("Expected a YAML collection as document contents"); +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/errors.js +var YAMLError = class extends Error { + constructor(name2, pos, code2, message) { + super(); + this.name = name2; + this.code = code2; + this.message = message; + this.pos = pos; + } +}; +var YAMLParseError = class extends YAMLError { + constructor(pos, code2, message) { + super("YAMLParseError", pos, code2, message); + } +}; +var YAMLWarning = class extends YAMLError { + constructor(pos, code2, message) { + super("YAMLWarning", pos, code2, message); + } +}; +var prettifyError = (src, lc) => (error2) => { + if (error2.pos[0] === -1) + return; + error2.linePos = error2.pos.map((pos) => lc.linePos(pos)); + const { line, col } = error2.linePos[0]; + error2.message += ` at line ${line}, column ${col}`; + let ci = col - 1; + let lineStr = src.substring(lc.lineStarts[line - 1], lc.lineStarts[line]).replace(/[\n\r]+$/, ""); + if (ci >= 60 && lineStr.length > 80) { + const trimStart = Math.min(ci - 39, lineStr.length - 79); + lineStr = "\u2026" + lineStr.substring(trimStart); + ci -= trimStart - 1; + } + if (lineStr.length > 80) + lineStr = lineStr.substring(0, 79) + "\u2026"; + if (line > 1 && /^ *$/.test(lineStr.substring(0, ci))) { + let prev2 = src.substring(lc.lineStarts[line - 2], lc.lineStarts[line - 1]); + if (prev2.length > 80) + prev2 = prev2.substring(0, 79) + "\u2026\n"; + lineStr = prev2 + lineStr; + } + if (/[^ ]/.test(lineStr)) { + let count = 1; + const end2 = error2.linePos[1]; + if (end2 && end2.line === line && end2.col > col) { + count = Math.max(1, Math.min(end2.col - col, 80 - ci)); + } + const pointer = " ".repeat(ci) + "^".repeat(count); + error2.message += `: + +${lineStr} +${pointer} +`; + } +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/compose/resolve-props.js +function resolveProps(tokens, { flow, indicator, next: next2, offset, onError, parentIndent, startOnNewline }) { + let spaceBefore = false; + let atNewline = startOnNewline; + let hasSpace = startOnNewline; + let comment2 = ""; + let commentSep = ""; + let hasNewline = false; + let reqSpace = false; + let tab = null; + let anchor = null; + let tag = null; + let newlineAfterProp = null; + let comma = null; + let found = null; + let start = null; + for (const token of tokens) { + if (reqSpace) { + if (token.type !== "space" && token.type !== "newline" && token.type !== "comma") + onError(token.offset, "MISSING_CHAR", "Tags and anchors must be separated from the next token by white space"); + reqSpace = false; + } + if (tab) { + if (atNewline && token.type !== "comment" && token.type !== "newline") { + onError(tab, "TAB_AS_INDENT", "Tabs are not allowed as indentation"); + } + tab = null; + } + switch (token.type) { + case "space": + if (!flow && (indicator !== "doc-start" || (next2 == null ? void 0 : next2.type) !== "flow-collection") && token.source.includes(" ")) { + tab = token; + } + hasSpace = true; + break; + case "comment": { + if (!hasSpace) + onError(token, "MISSING_CHAR", "Comments must be separated from other tokens by white space characters"); + const cb = token.source.substring(1) || " "; + if (!comment2) + comment2 = cb; + else + comment2 += commentSep + cb; + commentSep = ""; + atNewline = false; + break; + } + case "newline": + if (atNewline) { + if (comment2) + comment2 += token.source; + else if (!found || indicator !== "seq-item-ind") + spaceBefore = true; + } else + commentSep += token.source; + atNewline = true; + hasNewline = true; + if (anchor || tag) + newlineAfterProp = token; + hasSpace = true; + break; + case "anchor": + if (anchor) + onError(token, "MULTIPLE_ANCHORS", "A node can have at most one anchor"); + if (token.source.endsWith(":")) + onError(token.offset + token.source.length - 1, "BAD_ALIAS", "Anchor ending in : is ambiguous", true); + anchor = token; + if (start === null) + start = token.offset; + atNewline = false; + hasSpace = false; + reqSpace = true; + break; + case "tag": { + if (tag) + onError(token, "MULTIPLE_TAGS", "A node can have at most one tag"); + tag = token; + if (start === null) + start = token.offset; + atNewline = false; + hasSpace = false; + reqSpace = true; + break; + } + case indicator: + if (anchor || tag) + onError(token, "BAD_PROP_ORDER", `Anchors and tags must be after the ${token.source} indicator`); + if (found) + onError(token, "UNEXPECTED_TOKEN", `Unexpected ${token.source} in ${flow != null ? flow : "collection"}`); + found = token; + atNewline = indicator === "seq-item-ind" || indicator === "explicit-key-ind"; + hasSpace = false; + break; + case "comma": + if (flow) { + if (comma) + onError(token, "UNEXPECTED_TOKEN", `Unexpected , in ${flow}`); + comma = token; + atNewline = false; + hasSpace = false; + break; + } + default: + onError(token, "UNEXPECTED_TOKEN", `Unexpected ${token.type} token`); + atNewline = false; + hasSpace = false; + } + } + const last2 = tokens[tokens.length - 1]; + const end2 = last2 ? last2.offset + last2.source.length : offset; + if (reqSpace && next2 && next2.type !== "space" && next2.type !== "newline" && next2.type !== "comma" && (next2.type !== "scalar" || next2.source !== "")) { + onError(next2.offset, "MISSING_CHAR", "Tags and anchors must be separated from the next token by white space"); + } + if (tab && (atNewline && tab.indent <= parentIndent || (next2 == null ? void 0 : next2.type) === "block-map" || (next2 == null ? void 0 : next2.type) === "block-seq")) + onError(tab, "TAB_AS_INDENT", "Tabs are not allowed as indentation"); + return { + comma, + found, + spaceBefore, + comment: comment2, + hasNewline, + anchor, + tag, + newlineAfterProp, + end: end2, + start: start != null ? start : end2 + }; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/compose/util-contains-newline.js +function containsNewline(key) { + if (!key) + return null; + switch (key.type) { + case "alias": + case "scalar": + case "double-quoted-scalar": + case "single-quoted-scalar": + if (key.source.includes("\n")) + return true; + if (key.end) { + for (const st of key.end) + if (st.type === "newline") + return true; + } + return false; + case "flow-collection": + for (const it of key.items) { + for (const st of it.start) + if (st.type === "newline") + return true; + if (it.sep) { + for (const st of it.sep) + if (st.type === "newline") + return true; + } + if (containsNewline(it.key) || containsNewline(it.value)) + return true; + } + return false; + default: + return true; + } +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/compose/util-flow-indent-check.js +function flowIndentCheck(indent, fc, onError) { + if ((fc == null ? void 0 : fc.type) === "flow-collection") { + const end2 = fc.end[0]; + if (end2.indent === indent && (end2.source === "]" || end2.source === "}") && containsNewline(fc)) { + const msg = "Flow end indicator should be more indented than parent"; + onError(end2, "BAD_INDENT", msg, true); + } + } +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/compose/util-map-includes.js +function mapIncludes(ctx, items, search) { + const { uniqueKeys } = ctx.options; + if (uniqueKeys === false) + return false; + const isEqual = typeof uniqueKeys === "function" ? uniqueKeys : (a, b) => a === b || isScalar(a) && isScalar(b) && a.value === b.value; + return items.some((pair) => isEqual(pair.key, search)); +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/compose/resolve-block-map.js +var startColMsg = "All mapping items must start at the same column"; +function resolveBlockMap({ composeNode: composeNode2, composeEmptyNode: composeEmptyNode2 }, ctx, bm, onError, tag) { + var _a3, _b; + const NodeClass = (_a3 = tag == null ? void 0 : tag.nodeClass) != null ? _a3 : YAMLMap; + const map4 = new NodeClass(ctx.schema); + if (ctx.atRoot) + ctx.atRoot = false; + let offset = bm.offset; + let commentEnd = null; + for (const collItem of bm.items) { + const { start, key, sep, value } = collItem; + const keyProps = resolveProps(start, { + indicator: "explicit-key-ind", + next: key != null ? key : sep == null ? void 0 : sep[0], + offset, + onError, + parentIndent: bm.indent, + startOnNewline: true + }); + const implicitKey = !keyProps.found; + if (implicitKey) { + if (key) { + if (key.type === "block-seq") + onError(offset, "BLOCK_AS_IMPLICIT_KEY", "A block sequence may not be used as an implicit map key"); + else if ("indent" in key && key.indent !== bm.indent) + onError(offset, "BAD_INDENT", startColMsg); + } + if (!keyProps.anchor && !keyProps.tag && !sep) { + commentEnd = keyProps.end; + if (keyProps.comment) { + if (map4.comment) + map4.comment += "\n" + keyProps.comment; + else + map4.comment = keyProps.comment; + } + continue; + } + if (keyProps.newlineAfterProp || containsNewline(key)) { + onError(key != null ? key : start[start.length - 1], "MULTILINE_IMPLICIT_KEY", "Implicit keys need to be on a single line"); + } + } else if (((_b = keyProps.found) == null ? void 0 : _b.indent) !== bm.indent) { + onError(offset, "BAD_INDENT", startColMsg); + } + ctx.atKey = true; + const keyStart = keyProps.end; + const keyNode = key ? composeNode2(ctx, key, keyProps, onError) : composeEmptyNode2(ctx, keyStart, start, null, keyProps, onError); + if (ctx.schema.compat) + flowIndentCheck(bm.indent, key, onError); + ctx.atKey = false; + if (mapIncludes(ctx, map4.items, keyNode)) + onError(keyStart, "DUPLICATE_KEY", "Map keys must be unique"); + const valueProps = resolveProps(sep != null ? sep : [], { + indicator: "map-value-ind", + next: value, + offset: keyNode.range[2], + onError, + parentIndent: bm.indent, + startOnNewline: !key || key.type === "block-scalar" + }); + offset = valueProps.end; + if (valueProps.found) { + if (implicitKey) { + if ((value == null ? void 0 : value.type) === "block-map" && !valueProps.hasNewline) + onError(offset, "BLOCK_AS_IMPLICIT_KEY", "Nested mappings are not allowed in compact mappings"); + if (ctx.options.strict && keyProps.start < valueProps.found.offset - 1024) + onError(keyNode.range, "KEY_OVER_1024_CHARS", "The : indicator must be at most 1024 chars after the start of an implicit block mapping key"); + } + const valueNode = value ? composeNode2(ctx, value, valueProps, onError) : composeEmptyNode2(ctx, offset, sep, null, valueProps, onError); + if (ctx.schema.compat) + flowIndentCheck(bm.indent, value, onError); + offset = valueNode.range[2]; + const pair = new Pair(keyNode, valueNode); + if (ctx.options.keepSourceTokens) + pair.srcToken = collItem; + map4.items.push(pair); + } else { + if (implicitKey) + onError(keyNode.range, "MISSING_CHAR", "Implicit map keys need to be followed by map values"); + if (valueProps.comment) { + if (keyNode.comment) + keyNode.comment += "\n" + valueProps.comment; + else + keyNode.comment = valueProps.comment; + } + const pair = new Pair(keyNode); + if (ctx.options.keepSourceTokens) + pair.srcToken = collItem; + map4.items.push(pair); + } + } + if (commentEnd && commentEnd < offset) + onError(commentEnd, "IMPOSSIBLE", "Map comment with trailing content"); + map4.range = [bm.offset, offset, commentEnd != null ? commentEnd : offset]; + return map4; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/compose/resolve-block-seq.js +function resolveBlockSeq({ composeNode: composeNode2, composeEmptyNode: composeEmptyNode2 }, ctx, bs, onError, tag) { + var _a3; + const NodeClass = (_a3 = tag == null ? void 0 : tag.nodeClass) != null ? _a3 : YAMLSeq; + const seq2 = new NodeClass(ctx.schema); + if (ctx.atRoot) + ctx.atRoot = false; + if (ctx.atKey) + ctx.atKey = false; + let offset = bs.offset; + let commentEnd = null; + for (const { start, value } of bs.items) { + const props = resolveProps(start, { + indicator: "seq-item-ind", + next: value, + offset, + onError, + parentIndent: bs.indent, + startOnNewline: true + }); + if (!props.found) { + if (props.anchor || props.tag || value) { + if (value && value.type === "block-seq") + onError(props.end, "BAD_INDENT", "All sequence items must start at the same column"); + else + onError(offset, "MISSING_CHAR", "Sequence item without - indicator"); + } else { + commentEnd = props.end; + if (props.comment) + seq2.comment = props.comment; + continue; + } + } + const node = value ? composeNode2(ctx, value, props, onError) : composeEmptyNode2(ctx, props.end, start, null, props, onError); + if (ctx.schema.compat) + flowIndentCheck(bs.indent, value, onError); + offset = node.range[2]; + seq2.items.push(node); + } + seq2.range = [bs.offset, offset, commentEnd != null ? commentEnd : offset]; + return seq2; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/compose/resolve-end.js +function resolveEnd(end2, offset, reqSpace, onError) { + let comment2 = ""; + if (end2) { + let hasSpace = false; + let sep = ""; + for (const token of end2) { + const { source, type } = token; + switch (type) { + case "space": + hasSpace = true; + break; + case "comment": { + if (reqSpace && !hasSpace) + onError(token, "MISSING_CHAR", "Comments must be separated from other tokens by white space characters"); + const cb = source.substring(1) || " "; + if (!comment2) + comment2 = cb; + else + comment2 += sep + cb; + sep = ""; + break; + } + case "newline": + if (comment2) + sep += source; + hasSpace = true; + break; + default: + onError(token, "UNEXPECTED_TOKEN", `Unexpected ${type} at node end`); + } + offset += source.length; + } + } + return { comment: comment2, offset }; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/compose/resolve-flow-collection.js +var blockMsg = "Block collections are not allowed within flow collections"; +var isBlock = (token) => token && (token.type === "block-map" || token.type === "block-seq"); +function resolveFlowCollection({ composeNode: composeNode2, composeEmptyNode: composeEmptyNode2 }, ctx, fc, onError, tag) { + var _a3, _b; + const isMap2 = fc.start.source === "{"; + const fcName = isMap2 ? "flow map" : "flow sequence"; + const NodeClass = (_a3 = tag == null ? void 0 : tag.nodeClass) != null ? _a3 : isMap2 ? YAMLMap : YAMLSeq; + const coll = new NodeClass(ctx.schema); + coll.flow = true; + const atRoot = ctx.atRoot; + if (atRoot) + ctx.atRoot = false; + if (ctx.atKey) + ctx.atKey = false; + let offset = fc.offset + fc.start.source.length; + for (let i = 0; i < fc.items.length; ++i) { + const collItem = fc.items[i]; + const { start, key, sep, value } = collItem; + const props = resolveProps(start, { + flow: fcName, + indicator: "explicit-key-ind", + next: key != null ? key : sep == null ? void 0 : sep[0], + offset, + onError, + parentIndent: fc.indent, + startOnNewline: false + }); + if (!props.found) { + if (!props.anchor && !props.tag && !sep && !value) { + if (i === 0 && props.comma) + onError(props.comma, "UNEXPECTED_TOKEN", `Unexpected , in ${fcName}`); + else if (i < fc.items.length - 1) + onError(props.start, "UNEXPECTED_TOKEN", `Unexpected empty item in ${fcName}`); + if (props.comment) { + if (coll.comment) + coll.comment += "\n" + props.comment; + else + coll.comment = props.comment; + } + offset = props.end; + continue; + } + if (!isMap2 && ctx.options.strict && containsNewline(key)) + onError( + key, + "MULTILINE_IMPLICIT_KEY", + "Implicit keys of flow sequence pairs need to be on a single line" + ); + } + if (i === 0) { + if (props.comma) + onError(props.comma, "UNEXPECTED_TOKEN", `Unexpected , in ${fcName}`); + } else { + if (!props.comma) + onError(props.start, "MISSING_CHAR", `Missing , between ${fcName} items`); + if (props.comment) { + let prevItemComment = ""; + loop: + for (const st of start) { + switch (st.type) { + case "comma": + case "space": + break; + case "comment": + prevItemComment = st.source.substring(1); + break loop; + default: + break loop; + } + } + if (prevItemComment) { + let prev2 = coll.items[coll.items.length - 1]; + if (isPair(prev2)) + prev2 = (_b = prev2.value) != null ? _b : prev2.key; + if (prev2.comment) + prev2.comment += "\n" + prevItemComment; + else + prev2.comment = prevItemComment; + props.comment = props.comment.substring(prevItemComment.length + 1); + } + } + } + if (!isMap2 && !sep && !props.found) { + const valueNode = value ? composeNode2(ctx, value, props, onError) : composeEmptyNode2(ctx, props.end, sep, null, props, onError); + coll.items.push(valueNode); + offset = valueNode.range[2]; + if (isBlock(value)) + onError(valueNode.range, "BLOCK_IN_FLOW", blockMsg); + } else { + ctx.atKey = true; + const keyStart = props.end; + const keyNode = key ? composeNode2(ctx, key, props, onError) : composeEmptyNode2(ctx, keyStart, start, null, props, onError); + if (isBlock(key)) + onError(keyNode.range, "BLOCK_IN_FLOW", blockMsg); + ctx.atKey = false; + const valueProps = resolveProps(sep != null ? sep : [], { + flow: fcName, + indicator: "map-value-ind", + next: value, + offset: keyNode.range[2], + onError, + parentIndent: fc.indent, + startOnNewline: false + }); + if (valueProps.found) { + if (!isMap2 && !props.found && ctx.options.strict) { + if (sep) + for (const st of sep) { + if (st === valueProps.found) + break; + if (st.type === "newline") { + onError(st, "MULTILINE_IMPLICIT_KEY", "Implicit keys of flow sequence pairs need to be on a single line"); + break; + } + } + if (props.start < valueProps.found.offset - 1024) + onError(valueProps.found, "KEY_OVER_1024_CHARS", "The : indicator must be at most 1024 chars after the start of an implicit flow sequence key"); + } + } else if (value) { + if ("source" in value && value.source && value.source[0] === ":") + onError(value, "MISSING_CHAR", `Missing space after : in ${fcName}`); + else + onError(valueProps.start, "MISSING_CHAR", `Missing , or : between ${fcName} items`); + } + const valueNode = value ? composeNode2(ctx, value, valueProps, onError) : valueProps.found ? composeEmptyNode2(ctx, valueProps.end, sep, null, valueProps, onError) : null; + if (valueNode) { + if (isBlock(value)) + onError(valueNode.range, "BLOCK_IN_FLOW", blockMsg); + } else if (valueProps.comment) { + if (keyNode.comment) + keyNode.comment += "\n" + valueProps.comment; + else + keyNode.comment = valueProps.comment; + } + const pair = new Pair(keyNode, valueNode); + if (ctx.options.keepSourceTokens) + pair.srcToken = collItem; + if (isMap2) { + const map4 = coll; + if (mapIncludes(ctx, map4.items, keyNode)) + onError(keyStart, "DUPLICATE_KEY", "Map keys must be unique"); + map4.items.push(pair); + } else { + const map4 = new YAMLMap(ctx.schema); + map4.flow = true; + map4.items.push(pair); + const endRange = (valueNode != null ? valueNode : keyNode).range; + map4.range = [keyNode.range[0], endRange[1], endRange[2]]; + coll.items.push(map4); + } + offset = valueNode ? valueNode.range[2] : valueProps.end; + } + } + const expectedEnd = isMap2 ? "}" : "]"; + const [ce, ...ee] = fc.end; + let cePos = offset; + if (ce && ce.source === expectedEnd) + cePos = ce.offset + ce.source.length; + else { + const name2 = fcName[0].toUpperCase() + fcName.substring(1); + const msg = atRoot ? `${name2} must end with a ${expectedEnd}` : `${name2} in block collection must be sufficiently indented and end with a ${expectedEnd}`; + onError(offset, atRoot ? "MISSING_CHAR" : "BAD_INDENT", msg); + if (ce && ce.source.length !== 1) + ee.unshift(ce); + } + if (ee.length > 0) { + const end2 = resolveEnd(ee, cePos, ctx.options.strict, onError); + if (end2.comment) { + if (coll.comment) + coll.comment += "\n" + end2.comment; + else + coll.comment = end2.comment; + } + coll.range = [fc.offset, cePos, end2.offset]; + } else { + coll.range = [fc.offset, cePos, cePos]; + } + return coll; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/compose/compose-collection.js +function resolveCollection(CN2, ctx, token, onError, tagName, tag) { + const coll = token.type === "block-map" ? resolveBlockMap(CN2, ctx, token, onError, tag) : token.type === "block-seq" ? resolveBlockSeq(CN2, ctx, token, onError, tag) : resolveFlowCollection(CN2, ctx, token, onError, tag); + const Coll = coll.constructor; + if (tagName === "!" || tagName === Coll.tagName) { + coll.tag = Coll.tagName; + return coll; + } + if (tagName) + coll.tag = tagName; + return coll; +} +function composeCollection(CN2, ctx, token, props, onError) { + var _a3, _b, _c; + const tagToken = props.tag; + const tagName = !tagToken ? null : ctx.directives.tagName(tagToken.source, (msg) => onError(tagToken, "TAG_RESOLVE_FAILED", msg)); + if (token.type === "block-seq") { + const { anchor, newlineAfterProp: nl } = props; + const lastProp = anchor && tagToken ? anchor.offset > tagToken.offset ? anchor : tagToken : anchor != null ? anchor : tagToken; + if (lastProp && (!nl || nl.offset < lastProp.offset)) { + const message = "Missing newline after block sequence props"; + onError(lastProp, "MISSING_CHAR", message); + } + } + const expType = token.type === "block-map" ? "map" : token.type === "block-seq" ? "seq" : token.start.source === "{" ? "map" : "seq"; + if (!tagToken || !tagName || tagName === "!" || tagName === YAMLMap.tagName && expType === "map" || tagName === YAMLSeq.tagName && expType === "seq") { + return resolveCollection(CN2, ctx, token, onError, tagName); + } + let tag = ctx.schema.tags.find((t2) => t2.tag === tagName && t2.collection === expType); + if (!tag) { + const kt = ctx.schema.knownTags[tagName]; + if (kt && kt.collection === expType) { + ctx.schema.tags.push(Object.assign({}, kt, { default: false })); + tag = kt; + } else { + if (kt) { + onError(tagToken, "BAD_COLLECTION_TYPE", `${kt.tag} used for ${expType} collection, but expects ${(_a3 = kt.collection) != null ? _a3 : "scalar"}`, true); + } else { + onError(tagToken, "TAG_RESOLVE_FAILED", `Unresolved tag: ${tagName}`, true); + } + return resolveCollection(CN2, ctx, token, onError, tagName); + } + } + const coll = resolveCollection(CN2, ctx, token, onError, tagName, tag); + const res = (_c = (_b = tag.resolve) == null ? void 0 : _b.call(tag, coll, (msg) => onError(tagToken, "TAG_RESOLVE_FAILED", msg), ctx.options)) != null ? _c : coll; + const node = isNode2(res) ? res : new Scalar(res); + node.range = coll.range; + node.tag = tagName; + if (tag == null ? void 0 : tag.format) + node.format = tag.format; + return node; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/compose/resolve-block-scalar.js +function resolveBlockScalar(ctx, scalar, onError) { + const start = scalar.offset; + const header = parseBlockScalarHeader(scalar, ctx.options.strict, onError); + if (!header) + return { value: "", type: null, comment: "", range: [start, start, start] }; + const type = header.mode === ">" ? Scalar.BLOCK_FOLDED : Scalar.BLOCK_LITERAL; + const lines = scalar.source ? splitLines(scalar.source) : []; + let chompStart = lines.length; + for (let i = lines.length - 1; i >= 0; --i) { + const content = lines[i][1]; + if (content === "" || content === "\r") + chompStart = i; + else + break; + } + if (chompStart === 0) { + const value2 = header.chomp === "+" && lines.length > 0 ? "\n".repeat(Math.max(1, lines.length - 1)) : ""; + let end3 = start + header.length; + if (scalar.source) + end3 += scalar.source.length; + return { value: value2, type, comment: header.comment, range: [start, end3, end3] }; + } + let trimIndent = scalar.indent + header.indent; + let offset = scalar.offset + header.length; + let contentStart = 0; + for (let i = 0; i < chompStart; ++i) { + const [indent, content] = lines[i]; + if (content === "" || content === "\r") { + if (header.indent === 0 && indent.length > trimIndent) + trimIndent = indent.length; + } else { + if (indent.length < trimIndent) { + const message = "Block scalars with more-indented leading empty lines must use an explicit indentation indicator"; + onError(offset + indent.length, "MISSING_CHAR", message); + } + if (header.indent === 0) + trimIndent = indent.length; + contentStart = i; + if (trimIndent === 0 && !ctx.atRoot) { + const message = "Block scalar values in collections must be indented"; + onError(offset, "BAD_INDENT", message); + } + break; + } + offset += indent.length + content.length + 1; + } + for (let i = lines.length - 1; i >= chompStart; --i) { + if (lines[i][0].length > trimIndent) + chompStart = i + 1; + } + let value = ""; + let sep = ""; + let prevMoreIndented = false; + for (let i = 0; i < contentStart; ++i) + value += lines[i][0].slice(trimIndent) + "\n"; + for (let i = contentStart; i < chompStart; ++i) { + let [indent, content] = lines[i]; + offset += indent.length + content.length + 1; + const crlf = content[content.length - 1] === "\r"; + if (crlf) + content = content.slice(0, -1); + if (content && indent.length < trimIndent) { + const src = header.indent ? "explicit indentation indicator" : "first line"; + const message = `Block scalar lines must not be less indented than their ${src}`; + onError(offset - content.length - (crlf ? 2 : 1), "BAD_INDENT", message); + indent = ""; + } + if (type === Scalar.BLOCK_LITERAL) { + value += sep + indent.slice(trimIndent) + content; + sep = "\n"; + } else if (indent.length > trimIndent || content[0] === " ") { + if (sep === " ") + sep = "\n"; + else if (!prevMoreIndented && sep === "\n") + sep = "\n\n"; + value += sep + indent.slice(trimIndent) + content; + sep = "\n"; + prevMoreIndented = true; + } else if (content === "") { + if (sep === "\n") + value += "\n"; + else + sep = "\n"; + } else { + value += sep + content; + sep = " "; + prevMoreIndented = false; + } + } + switch (header.chomp) { + case "-": + break; + case "+": + for (let i = chompStart; i < lines.length; ++i) + value += "\n" + lines[i][0].slice(trimIndent); + if (value[value.length - 1] !== "\n") + value += "\n"; + break; + default: + value += "\n"; + } + const end2 = start + header.length + scalar.source.length; + return { value, type, comment: header.comment, range: [start, end2, end2] }; +} +function parseBlockScalarHeader({ offset, props }, strict, onError) { + if (props[0].type !== "block-scalar-header") { + onError(props[0], "IMPOSSIBLE", "Block scalar header not found"); + return null; + } + const { source } = props[0]; + const mode = source[0]; + let indent = 0; + let chomp = ""; + let error2 = -1; + for (let i = 1; i < source.length; ++i) { + const ch = source[i]; + if (!chomp && (ch === "-" || ch === "+")) + chomp = ch; + else { + const n = Number(ch); + if (!indent && n) + indent = n; + else if (error2 === -1) + error2 = offset + i; + } + } + if (error2 !== -1) + onError(error2, "UNEXPECTED_TOKEN", `Block scalar header includes extra characters: ${source}`); + let hasSpace = false; + let comment2 = ""; + let length = source.length; + for (let i = 1; i < props.length; ++i) { + const token = props[i]; + switch (token.type) { + case "space": + hasSpace = true; + case "newline": + length += token.source.length; + break; + case "comment": + if (strict && !hasSpace) { + const message = "Comments must be separated from other tokens by white space characters"; + onError(token, "MISSING_CHAR", message); + } + length += token.source.length; + comment2 = token.source.substring(1); + break; + case "error": + onError(token, "UNEXPECTED_TOKEN", token.message); + length += token.source.length; + break; + default: { + const message = `Unexpected token in block scalar header: ${token.type}`; + onError(token, "UNEXPECTED_TOKEN", message); + const ts = token.source; + if (ts && typeof ts === "string") + length += ts.length; + } + } + } + return { mode, indent, chomp, comment: comment2, length }; +} +function splitLines(source) { + const split = source.split(/\n( *)/); + const first2 = split[0]; + const m = first2.match(/^( *)/); + const line0 = (m == null ? void 0 : m[1]) ? [m[1], first2.slice(m[1].length)] : ["", first2]; + const lines = [line0]; + for (let i = 1; i < split.length; i += 2) + lines.push([split[i], split[i + 1]]); + return lines; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/compose/resolve-flow-scalar.js +function resolveFlowScalar(scalar, strict, onError) { + const { offset, type, source, end: end2 } = scalar; + let _type; + let value; + const _onError = (rel, code2, msg) => onError(offset + rel, code2, msg); + switch (type) { + case "scalar": + _type = Scalar.PLAIN; + value = plainValue(source, _onError); + break; + case "single-quoted-scalar": + _type = Scalar.QUOTE_SINGLE; + value = singleQuotedValue(source, _onError); + break; + case "double-quoted-scalar": + _type = Scalar.QUOTE_DOUBLE; + value = doubleQuotedValue(source, _onError); + break; + default: + onError(scalar, "UNEXPECTED_TOKEN", `Expected a flow scalar value, but found: ${type}`); + return { + value: "", + type: null, + comment: "", + range: [offset, offset + source.length, offset + source.length] + }; + } + const valueEnd = offset + source.length; + const re = resolveEnd(end2, valueEnd, strict, onError); + return { + value, + type: _type, + comment: re.comment, + range: [offset, valueEnd, re.offset] + }; +} +function plainValue(source, onError) { + let badChar = ""; + switch (source[0]) { + case " ": + badChar = "a tab character"; + break; + case ",": + badChar = "flow indicator character ,"; + break; + case "%": + badChar = "directive indicator character %"; + break; + case "|": + case ">": { + badChar = `block scalar indicator ${source[0]}`; + break; + } + case "@": + case "`": { + badChar = `reserved character ${source[0]}`; + break; + } + } + if (badChar) + onError(0, "BAD_SCALAR_START", `Plain value cannot start with ${badChar}`); + return foldLines(source); +} +function singleQuotedValue(source, onError) { + if (source[source.length - 1] !== "'" || source.length === 1) + onError(source.length, "MISSING_CHAR", "Missing closing 'quote"); + return foldLines(source.slice(1, -1)).replace(/''/g, "'"); +} +function foldLines(source) { + var _a3; + let first2, line; + try { + first2 = new RegExp("(.*?)(? wsStart ? source.slice(wsStart, i + 1) : ch; + } else { + res += ch; + } + } + if (source[source.length - 1] !== '"' || source.length === 1) + onError(source.length, "MISSING_CHAR", 'Missing closing "quote'); + return res; +} +function foldNewline(source, offset) { + let fold = ""; + let ch = source[offset + 1]; + while (ch === " " || ch === " " || ch === "\n" || ch === "\r") { + if (ch === "\r" && source[offset + 2] !== "\n") + break; + if (ch === "\n") + fold += "\n"; + offset += 1; + ch = source[offset + 1]; + } + if (!fold) + fold = " "; + return { fold, offset }; +} +var escapeCodes = { + "0": "\0", + a: "\x07", + b: "\b", + e: "\x1B", + f: "\f", + n: "\n", + r: "\r", + t: " ", + v: "\v", + N: "\x85", + _: "\xA0", + L: "\u2028", + P: "\u2029", + " ": " ", + '"': '"', + "/": "/", + "\\": "\\", + " ": " " +}; +function parseCharCode(source, offset, length, onError) { + const cc = source.substr(offset, length); + const ok = cc.length === length && /^[0-9a-fA-F]+$/.test(cc); + const code2 = ok ? parseInt(cc, 16) : NaN; + if (isNaN(code2)) { + const raw = source.substr(offset - 2, length + 2); + onError(offset - 2, "BAD_DQ_ESCAPE", `Invalid escape sequence ${raw}`); + return raw; + } + return String.fromCodePoint(code2); +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/compose/compose-scalar.js +function composeScalar(ctx, token, tagToken, onError) { + const { value, type, comment: comment2, range } = token.type === "block-scalar" ? resolveBlockScalar(ctx, token, onError) : resolveFlowScalar(token, ctx.options.strict, onError); + const tagName = tagToken ? ctx.directives.tagName(tagToken.source, (msg) => onError(tagToken, "TAG_RESOLVE_FAILED", msg)) : null; + let tag; + if (ctx.options.stringKeys && ctx.atKey) { + tag = ctx.schema[SCALAR]; + } else if (tagName) + tag = findScalarTagByName(ctx.schema, value, tagName, tagToken, onError); + else if (token.type === "scalar") + tag = findScalarTagByTest(ctx, value, token, onError); + else + tag = ctx.schema[SCALAR]; + let scalar; + try { + const res = tag.resolve(value, (msg) => onError(tagToken != null ? tagToken : token, "TAG_RESOLVE_FAILED", msg), ctx.options); + scalar = isScalar(res) ? res : new Scalar(res); + } catch (error2) { + const msg = error2 instanceof Error ? error2.message : String(error2); + onError(tagToken != null ? tagToken : token, "TAG_RESOLVE_FAILED", msg); + scalar = new Scalar(value); + } + scalar.range = range; + scalar.source = value; + if (type) + scalar.type = type; + if (tagName) + scalar.tag = tagName; + if (tag.format) + scalar.format = tag.format; + if (comment2) + scalar.comment = comment2; + return scalar; +} +function findScalarTagByName(schema4, value, tagName, tagToken, onError) { + var _a3; + if (tagName === "!") + return schema4[SCALAR]; + const matchWithTest = []; + for (const tag of schema4.tags) { + if (!tag.collection && tag.tag === tagName) { + if (tag.default && tag.test) + matchWithTest.push(tag); + else + return tag; + } + } + for (const tag of matchWithTest) + if ((_a3 = tag.test) == null ? void 0 : _a3.test(value)) + return tag; + const kt = schema4.knownTags[tagName]; + if (kt && !kt.collection) { + schema4.tags.push(Object.assign({}, kt, { default: false, test: void 0 })); + return kt; + } + onError(tagToken, "TAG_RESOLVE_FAILED", `Unresolved tag: ${tagName}`, tagName !== "tag:yaml.org,2002:str"); + return schema4[SCALAR]; +} +function findScalarTagByTest({ atKey, directives, schema: schema4 }, value, token, onError) { + var _a3; + const tag = schema4.tags.find((tag2) => { + var _a4; + return (tag2.default === true || atKey && tag2.default === "key") && ((_a4 = tag2.test) == null ? void 0 : _a4.test(value)); + }) || schema4[SCALAR]; + if (schema4.compat) { + const compat = (_a3 = schema4.compat.find((tag2) => { + var _a4; + return tag2.default && ((_a4 = tag2.test) == null ? void 0 : _a4.test(value)); + })) != null ? _a3 : schema4[SCALAR]; + if (tag.tag !== compat.tag) { + const ts = directives.tagString(tag.tag); + const cs = directives.tagString(compat.tag); + const msg = `Value may be parsed as either ${ts} or ${cs}`; + onError(token, "TAG_RESOLVE_FAILED", msg, true); + } + } + return tag; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/compose/util-empty-scalar-position.js +function emptyScalarPosition(offset, before2, pos) { + if (before2) { + if (pos === null) + pos = before2.length; + for (let i = pos - 1; i >= 0; --i) { + let st = before2[i]; + switch (st.type) { + case "space": + case "comment": + case "newline": + offset -= st.source.length; + continue; + } + st = before2[++i]; + while ((st == null ? void 0 : st.type) === "space") { + offset += st.source.length; + st = before2[++i]; + } + break; + } + } + return offset; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/compose/compose-node.js +var CN = { composeNode, composeEmptyNode }; +function composeNode(ctx, token, props, onError) { + const atKey = ctx.atKey; + const { spaceBefore, comment: comment2, anchor, tag } = props; + let node; + let isSrcToken = true; + switch (token.type) { + case "alias": + node = composeAlias(ctx, token, onError); + if (anchor || tag) + onError(token, "ALIAS_PROPS", "An alias node must not specify any properties"); + break; + case "scalar": + case "single-quoted-scalar": + case "double-quoted-scalar": + case "block-scalar": + node = composeScalar(ctx, token, tag, onError); + if (anchor) + node.anchor = anchor.source.substring(1); + break; + case "block-map": + case "block-seq": + case "flow-collection": + node = composeCollection(CN, ctx, token, props, onError); + if (anchor) + node.anchor = anchor.source.substring(1); + break; + default: { + const message = token.type === "error" ? token.message : `Unsupported token (type: ${token.type})`; + onError(token, "UNEXPECTED_TOKEN", message); + node = composeEmptyNode(ctx, token.offset, void 0, null, props, onError); + isSrcToken = false; + } + } + if (anchor && node.anchor === "") + onError(anchor, "BAD_ALIAS", "Anchor cannot be an empty string"); + if (atKey && ctx.options.stringKeys && (!isScalar(node) || typeof node.value !== "string" || node.tag && node.tag !== "tag:yaml.org,2002:str")) { + const msg = "With stringKeys, all keys must be strings"; + onError(tag != null ? tag : token, "NON_STRING_KEY", msg); + } + if (spaceBefore) + node.spaceBefore = true; + if (comment2) { + if (token.type === "scalar" && token.source === "") + node.comment = comment2; + else + node.commentBefore = comment2; + } + if (ctx.options.keepSourceTokens && isSrcToken) + node.srcToken = token; + return node; +} +function composeEmptyNode(ctx, offset, before2, pos, { spaceBefore, comment: comment2, anchor, tag, end: end2 }, onError) { + const token = { + type: "scalar", + offset: emptyScalarPosition(offset, before2, pos), + indent: -1, + source: "" + }; + const node = composeScalar(ctx, token, tag, onError); + if (anchor) { + node.anchor = anchor.source.substring(1); + if (node.anchor === "") + onError(anchor, "BAD_ALIAS", "Anchor cannot be an empty string"); + } + if (spaceBefore) + node.spaceBefore = true; + if (comment2) { + node.comment = comment2; + node.range[2] = end2; + } + return node; +} +function composeAlias({ options }, { offset, source, end: end2 }, onError) { + const alias = new Alias(source.substring(1)); + if (alias.source === "") + onError(offset, "BAD_ALIAS", "Alias cannot be an empty string"); + if (alias.source.endsWith(":")) + onError(offset + source.length - 1, "BAD_ALIAS", "Alias ending in : is ambiguous", true); + const valueEnd = offset + source.length; + const re = resolveEnd(end2, valueEnd, options.strict, onError); + alias.range = [offset, valueEnd, re.offset]; + if (re.comment) + alias.comment = re.comment; + return alias; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/compose/compose-doc.js +function composeDoc(options, directives, { offset, start, value, end: end2 }, onError) { + const opts = Object.assign({ _directives: directives }, options); + const doc = new Document2(void 0, opts); + const ctx = { + atKey: false, + atRoot: true, + directives: doc.directives, + options: doc.options, + schema: doc.schema + }; + const props = resolveProps(start, { + indicator: "doc-start", + next: value != null ? value : end2 == null ? void 0 : end2[0], + offset, + onError, + parentIndent: 0, + startOnNewline: true + }); + if (props.found) { + doc.directives.docStart = true; + if (value && (value.type === "block-map" || value.type === "block-seq") && !props.hasNewline) + onError(props.end, "MISSING_CHAR", "Block collection cannot start on same line with directives-end marker"); + } + doc.contents = value ? composeNode(ctx, value, props, onError) : composeEmptyNode(ctx, props.end, start, null, props, onError); + const contentEnd = doc.contents.range[2]; + const re = resolveEnd(end2, contentEnd, false, onError); + if (re.comment) + doc.comment = re.comment; + doc.range = [offset, contentEnd, re.offset]; + return doc; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/compose/composer.js +function getErrorPos(src) { + if (typeof src === "number") + return [src, src + 1]; + if (Array.isArray(src)) + return src.length === 2 ? src : [src[0], src[1]]; + const { offset, source } = src; + return [offset, offset + (typeof source === "string" ? source.length : 1)]; +} +function parsePrelude(prelude) { + var _a3; + let comment2 = ""; + let atComment = false; + let afterEmptyLine = false; + for (let i = 0; i < prelude.length; ++i) { + const source = prelude[i]; + switch (source[0]) { + case "#": + comment2 += (comment2 === "" ? "" : afterEmptyLine ? "\n\n" : "\n") + (source.substring(1) || " "); + atComment = true; + afterEmptyLine = false; + break; + case "%": + if (((_a3 = prelude[i + 1]) == null ? void 0 : _a3[0]) !== "#") + i += 1; + atComment = false; + break; + default: + if (!atComment) + afterEmptyLine = true; + atComment = false; + } + } + return { comment: comment2, afterEmptyLine }; +} +var Composer = class { + constructor(options = {}) { + this.doc = null; + this.atDirectives = false; + this.prelude = []; + this.errors = []; + this.warnings = []; + this.onError = (source, code2, message, warning) => { + const pos = getErrorPos(source); + if (warning) + this.warnings.push(new YAMLWarning(pos, code2, message)); + else + this.errors.push(new YAMLParseError(pos, code2, message)); + }; + this.directives = new Directives({ version: options.version || "1.2" }); + this.options = options; + } + decorate(doc, afterDoc) { + const { comment: comment2, afterEmptyLine } = parsePrelude(this.prelude); + if (comment2) { + const dc = doc.contents; + if (afterDoc) { + doc.comment = doc.comment ? `${doc.comment} +${comment2}` : comment2; + } else if (afterEmptyLine || doc.directives.docStart || !dc) { + doc.commentBefore = comment2; + } else if (isCollection(dc) && !dc.flow && dc.items.length > 0) { + let it = dc.items[0]; + if (isPair(it)) + it = it.key; + const cb = it.commentBefore; + it.commentBefore = cb ? `${comment2} +${cb}` : comment2; + } else { + const cb = dc.commentBefore; + dc.commentBefore = cb ? `${comment2} +${cb}` : comment2; + } + } + if (afterDoc) { + Array.prototype.push.apply(doc.errors, this.errors); + Array.prototype.push.apply(doc.warnings, this.warnings); + } else { + doc.errors = this.errors; + doc.warnings = this.warnings; + } + this.prelude = []; + this.errors = []; + this.warnings = []; + } + streamInfo() { + return { + comment: parsePrelude(this.prelude).comment, + directives: this.directives, + errors: this.errors, + warnings: this.warnings + }; + } + *compose(tokens, forceDoc = false, endOffset = -1) { + for (const token of tokens) + yield* this.next(token); + yield* this.end(forceDoc, endOffset); + } + *next(token) { + switch (token.type) { + case "directive": + this.directives.add(token.source, (offset, message, warning) => { + const pos = getErrorPos(token); + pos[0] += offset; + this.onError(pos, "BAD_DIRECTIVE", message, warning); + }); + this.prelude.push(token.source); + this.atDirectives = true; + break; + case "document": { + const doc = composeDoc(this.options, this.directives, token, this.onError); + if (this.atDirectives && !doc.directives.docStart) + this.onError(token, "MISSING_CHAR", "Missing directives-end/doc-start indicator line"); + this.decorate(doc, false); + if (this.doc) + yield this.doc; + this.doc = doc; + this.atDirectives = false; + break; + } + case "byte-order-mark": + case "space": + break; + case "comment": + case "newline": + this.prelude.push(token.source); + break; + case "error": { + const msg = token.source ? `${token.message}: ${JSON.stringify(token.source)}` : token.message; + const error2 = new YAMLParseError(getErrorPos(token), "UNEXPECTED_TOKEN", msg); + if (this.atDirectives || !this.doc) + this.errors.push(error2); + else + this.doc.errors.push(error2); + break; + } + case "doc-end": { + if (!this.doc) { + const msg = "Unexpected doc-end without preceding document"; + this.errors.push(new YAMLParseError(getErrorPos(token), "UNEXPECTED_TOKEN", msg)); + break; + } + this.doc.directives.docEnd = true; + const end2 = resolveEnd(token.end, token.offset + token.source.length, this.doc.options.strict, this.onError); + this.decorate(this.doc, true); + if (end2.comment) { + const dc = this.doc.comment; + this.doc.comment = dc ? `${dc} +${end2.comment}` : end2.comment; + } + this.doc.range[2] = end2.offset; + break; + } + default: + this.errors.push(new YAMLParseError(getErrorPos(token), "UNEXPECTED_TOKEN", `Unsupported token ${token.type}`)); + } + } + *end(forceDoc = false, endOffset = -1) { + if (this.doc) { + this.decorate(this.doc, true); + yield this.doc; + this.doc = null; + } else if (forceDoc) { + const opts = Object.assign({ _directives: this.directives }, this.options); + const doc = new Document2(void 0, opts); + if (this.atDirectives) + this.onError(endOffset, "MISSING_CHAR", "Missing directives-end indicator line"); + doc.range = [0, endOffset, endOffset]; + this.decorate(doc, false); + yield doc; + } + } +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/parse/cst-visit.js +var BREAK2 = Symbol("break visit"); +var SKIP2 = Symbol("skip children"); +var REMOVE2 = Symbol("remove item"); +function visit2(cst, visitor) { + if ("type" in cst && cst.type === "document") + cst = { start: cst.start, value: cst.value }; + _visit(Object.freeze([]), cst, visitor); +} +visit2.BREAK = BREAK2; +visit2.SKIP = SKIP2; +visit2.REMOVE = REMOVE2; +visit2.itemAtPath = (cst, path) => { + let item = cst; + for (const [field, index2] of path) { + const tok = item == null ? void 0 : item[field]; + if (tok && "items" in tok) { + item = tok.items[index2]; + } else + return void 0; + } + return item; +}; +visit2.parentCollection = (cst, path) => { + const parent2 = visit2.itemAtPath(cst, path.slice(0, -1)); + const field = path[path.length - 1][0]; + const coll = parent2 == null ? void 0 : parent2[field]; + if (coll && "items" in coll) + return coll; + throw new Error("Parent collection not found"); +}; +function _visit(path, item, visitor) { + let ctrl = visitor(item, path); + if (typeof ctrl === "symbol") + return ctrl; + for (const field of ["key", "value"]) { + const token = item[field]; + if (token && "items" in token) { + for (let i = 0; i < token.items.length; ++i) { + const ci = _visit(Object.freeze(path.concat([[field, i]])), token.items[i], visitor); + if (typeof ci === "number") + i = ci - 1; + else if (ci === BREAK2) + return BREAK2; + else if (ci === REMOVE2) { + token.items.splice(i, 1); + i -= 1; + } + } + if (typeof ctrl === "function" && field === "key") + ctrl = ctrl(item, path); + } + } + return typeof ctrl === "function" ? ctrl(item, path) : ctrl; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/parse/cst.js +var BOM = "\uFEFF"; +var DOCUMENT = ""; +var FLOW_END = ""; +var SCALAR2 = ""; +function tokenType(source) { + switch (source) { + case BOM: + return "byte-order-mark"; + case DOCUMENT: + return "doc-mode"; + case FLOW_END: + return "flow-error-end"; + case SCALAR2: + return "scalar"; + case "---": + return "doc-start"; + case "...": + return "doc-end"; + case "": + case "\n": + case "\r\n": + return "newline"; + case "-": + return "seq-item-ind"; + case "?": + return "explicit-key-ind"; + case ":": + return "map-value-ind"; + case "{": + return "flow-map-start"; + case "}": + return "flow-map-end"; + case "[": + return "flow-seq-start"; + case "]": + return "flow-seq-end"; + case ",": + return "comma"; + } + switch (source[0]) { + case " ": + case " ": + return "space"; + case "#": + return "comment"; + case "%": + return "directive-line"; + case "*": + return "alias"; + case "&": + return "anchor"; + case "!": + return "tag"; + case "'": + return "single-quoted-scalar"; + case '"': + return "double-quoted-scalar"; + case "|": + case ">": + return "block-scalar-header"; + } + return null; +} + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/parse/lexer.js +function isEmpty2(ch) { + switch (ch) { + case void 0: + case " ": + case "\n": + case "\r": + case " ": + return true; + default: + return false; + } +} +var hexDigits = new Set("0123456789ABCDEFabcdef"); +var tagChars = new Set("0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz-#;/?:@&=+$_.!~*'()"); +var flowIndicatorChars = new Set(",[]{}"); +var invalidAnchorChars = new Set(" ,[]{}\n\r "); +var isNotAnchorChar = (ch) => !ch || invalidAnchorChars.has(ch); +var Lexer = class { + constructor() { + this.atEnd = false; + this.blockScalarIndent = -1; + this.blockScalarKeep = false; + this.buffer = ""; + this.flowKey = false; + this.flowLevel = 0; + this.indentNext = 0; + this.indentValue = 0; + this.lineEndPos = null; + this.next = null; + this.pos = 0; + } + *lex(source, incomplete = false) { + var _a3; + if (source) { + if (typeof source !== "string") + throw TypeError("source is not a string"); + this.buffer = this.buffer ? this.buffer + source : source; + this.lineEndPos = null; + } + this.atEnd = !incomplete; + let next2 = (_a3 = this.next) != null ? _a3 : "stream"; + while (next2 && (incomplete || this.hasChars(1))) + next2 = yield* this.parseNext(next2); + } + atLineEnd() { + let i = this.pos; + let ch = this.buffer[i]; + while (ch === " " || ch === " ") + ch = this.buffer[++i]; + if (!ch || ch === "#" || ch === "\n") + return true; + if (ch === "\r") + return this.buffer[i + 1] === "\n"; + return false; + } + charAt(n) { + return this.buffer[this.pos + n]; + } + continueScalar(offset) { + let ch = this.buffer[offset]; + if (this.indentNext > 0) { + let indent = 0; + while (ch === " ") + ch = this.buffer[++indent + offset]; + if (ch === "\r") { + const next2 = this.buffer[indent + offset + 1]; + if (next2 === "\n" || !next2 && !this.atEnd) + return offset + indent + 1; + } + return ch === "\n" || indent >= this.indentNext || !ch && !this.atEnd ? offset + indent : -1; + } + if (ch === "-" || ch === ".") { + const dt = this.buffer.substr(offset, 3); + if ((dt === "---" || dt === "...") && isEmpty2(this.buffer[offset + 3])) + return -1; + } + return offset; + } + getLine() { + let end2 = this.lineEndPos; + if (typeof end2 !== "number" || end2 !== -1 && end2 < this.pos) { + end2 = this.buffer.indexOf("\n", this.pos); + this.lineEndPos = end2; + } + if (end2 === -1) + return this.atEnd ? this.buffer.substring(this.pos) : null; + if (this.buffer[end2 - 1] === "\r") + end2 -= 1; + return this.buffer.substring(this.pos, end2); + } + hasChars(n) { + return this.pos + n <= this.buffer.length; + } + setNext(state) { + this.buffer = this.buffer.substring(this.pos); + this.pos = 0; + this.lineEndPos = null; + this.next = state; + return null; + } + peek(n) { + return this.buffer.substr(this.pos, n); + } + *parseNext(next2) { + switch (next2) { + case "stream": + return yield* this.parseStream(); + case "line-start": + return yield* this.parseLineStart(); + case "block-start": + return yield* this.parseBlockStart(); + case "doc": + return yield* this.parseDocument(); + case "flow": + return yield* this.parseFlowCollection(); + case "quoted-scalar": + return yield* this.parseQuotedScalar(); + case "block-scalar": + return yield* this.parseBlockScalar(); + case "plain-scalar": + return yield* this.parsePlainScalar(); + } + } + *parseStream() { + let line = this.getLine(); + if (line === null) + return this.setNext("stream"); + if (line[0] === BOM) { + yield* this.pushCount(1); + line = line.substring(1); + } + if (line[0] === "%") { + let dirEnd = line.length; + let cs = line.indexOf("#"); + while (cs !== -1) { + const ch = line[cs - 1]; + if (ch === " " || ch === " ") { + dirEnd = cs - 1; + break; + } else { + cs = line.indexOf("#", cs + 1); + } + } + while (true) { + const ch = line[dirEnd - 1]; + if (ch === " " || ch === " ") + dirEnd -= 1; + else + break; + } + const n = (yield* this.pushCount(dirEnd)) + (yield* this.pushSpaces(true)); + yield* this.pushCount(line.length - n); + this.pushNewline(); + return "stream"; + } + if (this.atLineEnd()) { + const sp = yield* this.pushSpaces(true); + yield* this.pushCount(line.length - sp); + yield* this.pushNewline(); + return "stream"; + } + yield DOCUMENT; + return yield* this.parseLineStart(); + } + *parseLineStart() { + const ch = this.charAt(0); + if (!ch && !this.atEnd) + return this.setNext("line-start"); + if (ch === "-" || ch === ".") { + if (!this.atEnd && !this.hasChars(4)) + return this.setNext("line-start"); + const s = this.peek(3); + if ((s === "---" || s === "...") && isEmpty2(this.charAt(3))) { + yield* this.pushCount(3); + this.indentValue = 0; + this.indentNext = 0; + return s === "---" ? "doc" : "stream"; + } + } + this.indentValue = yield* this.pushSpaces(false); + if (this.indentNext > this.indentValue && !isEmpty2(this.charAt(1))) + this.indentNext = this.indentValue; + return yield* this.parseBlockStart(); + } + *parseBlockStart() { + const [ch0, ch1] = this.peek(2); + if (!ch1 && !this.atEnd) + return this.setNext("block-start"); + if ((ch0 === "-" || ch0 === "?" || ch0 === ":") && isEmpty2(ch1)) { + const n = (yield* this.pushCount(1)) + (yield* this.pushSpaces(true)); + this.indentNext = this.indentValue + 1; + this.indentValue += n; + return yield* this.parseBlockStart(); + } + return "doc"; + } + *parseDocument() { + yield* this.pushSpaces(true); + const line = this.getLine(); + if (line === null) + return this.setNext("doc"); + let n = yield* this.pushIndicators(); + switch (line[n]) { + case "#": + yield* this.pushCount(line.length - n); + case void 0: + yield* this.pushNewline(); + return yield* this.parseLineStart(); + case "{": + case "[": + yield* this.pushCount(1); + this.flowKey = false; + this.flowLevel = 1; + return "flow"; + case "}": + case "]": + yield* this.pushCount(1); + return "doc"; + case "*": + yield* this.pushUntil(isNotAnchorChar); + return "doc"; + case '"': + case "'": + return yield* this.parseQuotedScalar(); + case "|": + case ">": + n += yield* this.parseBlockScalarHeader(); + n += yield* this.pushSpaces(true); + yield* this.pushCount(line.length - n); + yield* this.pushNewline(); + return yield* this.parseBlockScalar(); + default: + return yield* this.parsePlainScalar(); + } + } + *parseFlowCollection() { + let nl, sp; + let indent = -1; + do { + nl = yield* this.pushNewline(); + if (nl > 0) { + sp = yield* this.pushSpaces(false); + this.indentValue = indent = sp; + } else { + sp = 0; + } + sp += yield* this.pushSpaces(true); + } while (nl + sp > 0); + const line = this.getLine(); + if (line === null) + return this.setNext("flow"); + if (indent !== -1 && indent < this.indentNext && line[0] !== "#" || indent === 0 && (line.startsWith("---") || line.startsWith("...")) && isEmpty2(line[3])) { + const atFlowEndMarker = indent === this.indentNext - 1 && this.flowLevel === 1 && (line[0] === "]" || line[0] === "}"); + if (!atFlowEndMarker) { + this.flowLevel = 0; + yield FLOW_END; + return yield* this.parseLineStart(); + } + } + let n = 0; + while (line[n] === ",") { + n += yield* this.pushCount(1); + n += yield* this.pushSpaces(true); + this.flowKey = false; + } + n += yield* this.pushIndicators(); + switch (line[n]) { + case void 0: + return "flow"; + case "#": + yield* this.pushCount(line.length - n); + return "flow"; + case "{": + case "[": + yield* this.pushCount(1); + this.flowKey = false; + this.flowLevel += 1; + return "flow"; + case "}": + case "]": + yield* this.pushCount(1); + this.flowKey = true; + this.flowLevel -= 1; + return this.flowLevel ? "flow" : "doc"; + case "*": + yield* this.pushUntil(isNotAnchorChar); + return "flow"; + case '"': + case "'": + this.flowKey = true; + return yield* this.parseQuotedScalar(); + case ":": { + const next2 = this.charAt(1); + if (this.flowKey || isEmpty2(next2) || next2 === ",") { + this.flowKey = false; + yield* this.pushCount(1); + yield* this.pushSpaces(true); + return "flow"; + } + } + default: + this.flowKey = false; + return yield* this.parsePlainScalar(); + } + } + *parseQuotedScalar() { + const quote = this.charAt(0); + let end2 = this.buffer.indexOf(quote, this.pos + 1); + if (quote === "'") { + while (end2 !== -1 && this.buffer[end2 + 1] === "'") + end2 = this.buffer.indexOf("'", end2 + 2); + } else { + while (end2 !== -1) { + let n = 0; + while (this.buffer[end2 - 1 - n] === "\\") + n += 1; + if (n % 2 === 0) + break; + end2 = this.buffer.indexOf('"', end2 + 1); + } + } + const qb = this.buffer.substring(0, end2); + let nl = qb.indexOf("\n", this.pos); + if (nl !== -1) { + while (nl !== -1) { + const cs = this.continueScalar(nl + 1); + if (cs === -1) + break; + nl = qb.indexOf("\n", cs); + } + if (nl !== -1) { + end2 = nl - (qb[nl - 1] === "\r" ? 2 : 1); + } + } + if (end2 === -1) { + if (!this.atEnd) + return this.setNext("quoted-scalar"); + end2 = this.buffer.length; + } + yield* this.pushToIndex(end2 + 1, false); + return this.flowLevel ? "flow" : "doc"; + } + *parseBlockScalarHeader() { + this.blockScalarIndent = -1; + this.blockScalarKeep = false; + let i = this.pos; + while (true) { + const ch = this.buffer[++i]; + if (ch === "+") + this.blockScalarKeep = true; + else if (ch > "0" && ch <= "9") + this.blockScalarIndent = Number(ch) - 1; + else if (ch !== "-") + break; + } + return yield* this.pushUntil((ch) => isEmpty2(ch) || ch === "#"); + } + *parseBlockScalar() { + let nl = this.pos - 1; + let indent = 0; + let ch; + loop: + for (let i2 = this.pos; ch = this.buffer[i2]; ++i2) { + switch (ch) { + case " ": + indent += 1; + break; + case "\n": + nl = i2; + indent = 0; + break; + case "\r": { + const next2 = this.buffer[i2 + 1]; + if (!next2 && !this.atEnd) + return this.setNext("block-scalar"); + if (next2 === "\n") + break; + } + default: + break loop; + } + } + if (!ch && !this.atEnd) + return this.setNext("block-scalar"); + if (indent >= this.indentNext) { + if (this.blockScalarIndent === -1) + this.indentNext = indent; + else { + this.indentNext = this.blockScalarIndent + (this.indentNext === 0 ? 1 : this.indentNext); + } + do { + const cs = this.continueScalar(nl + 1); + if (cs === -1) + break; + nl = this.buffer.indexOf("\n", cs); + } while (nl !== -1); + if (nl === -1) { + if (!this.atEnd) + return this.setNext("block-scalar"); + nl = this.buffer.length; + } + } + let i = nl + 1; + ch = this.buffer[i]; + while (ch === " ") + ch = this.buffer[++i]; + if (ch === " ") { + while (ch === " " || ch === " " || ch === "\r" || ch === "\n") + ch = this.buffer[++i]; + nl = i - 1; + } else if (!this.blockScalarKeep) { + do { + let i2 = nl - 1; + let ch2 = this.buffer[i2]; + if (ch2 === "\r") + ch2 = this.buffer[--i2]; + const lastChar = i2; + while (ch2 === " ") + ch2 = this.buffer[--i2]; + if (ch2 === "\n" && i2 >= this.pos && i2 + 1 + indent > lastChar) + nl = i2; + else + break; + } while (true); + } + yield SCALAR2; + yield* this.pushToIndex(nl + 1, true); + return yield* this.parseLineStart(); + } + *parsePlainScalar() { + const inFlow = this.flowLevel > 0; + let end2 = this.pos - 1; + let i = this.pos - 1; + let ch; + while (ch = this.buffer[++i]) { + if (ch === ":") { + const next2 = this.buffer[i + 1]; + if (isEmpty2(next2) || inFlow && flowIndicatorChars.has(next2)) + break; + end2 = i; + } else if (isEmpty2(ch)) { + let next2 = this.buffer[i + 1]; + if (ch === "\r") { + if (next2 === "\n") { + i += 1; + ch = "\n"; + next2 = this.buffer[i + 1]; + } else + end2 = i; + } + if (next2 === "#" || inFlow && flowIndicatorChars.has(next2)) + break; + if (ch === "\n") { + const cs = this.continueScalar(i + 1); + if (cs === -1) + break; + i = Math.max(i, cs - 2); + } + } else { + if (inFlow && flowIndicatorChars.has(ch)) + break; + end2 = i; + } + } + if (!ch && !this.atEnd) + return this.setNext("plain-scalar"); + yield SCALAR2; + yield* this.pushToIndex(end2 + 1, true); + return inFlow ? "flow" : "doc"; + } + *pushCount(n) { + if (n > 0) { + yield this.buffer.substr(this.pos, n); + this.pos += n; + return n; + } + return 0; + } + *pushToIndex(i, allowEmpty) { + const s = this.buffer.slice(this.pos, i); + if (s) { + yield s; + this.pos += s.length; + return s.length; + } else if (allowEmpty) + yield ""; + return 0; + } + *pushIndicators() { + switch (this.charAt(0)) { + case "!": + return (yield* this.pushTag()) + (yield* this.pushSpaces(true)) + (yield* this.pushIndicators()); + case "&": + return (yield* this.pushUntil(isNotAnchorChar)) + (yield* this.pushSpaces(true)) + (yield* this.pushIndicators()); + case "-": + case "?": + case ":": { + const inFlow = this.flowLevel > 0; + const ch1 = this.charAt(1); + if (isEmpty2(ch1) || inFlow && flowIndicatorChars.has(ch1)) { + if (!inFlow) + this.indentNext = this.indentValue + 1; + else if (this.flowKey) + this.flowKey = false; + return (yield* this.pushCount(1)) + (yield* this.pushSpaces(true)) + (yield* this.pushIndicators()); + } + } + } + return 0; + } + *pushTag() { + if (this.charAt(1) === "<") { + let i = this.pos + 2; + let ch = this.buffer[i]; + while (!isEmpty2(ch) && ch !== ">") + ch = this.buffer[++i]; + return yield* this.pushToIndex(ch === ">" ? i + 1 : i, false); + } else { + let i = this.pos + 1; + let ch = this.buffer[i]; + while (ch) { + if (tagChars.has(ch)) + ch = this.buffer[++i]; + else if (ch === "%" && hexDigits.has(this.buffer[i + 1]) && hexDigits.has(this.buffer[i + 2])) { + ch = this.buffer[i += 3]; + } else + break; + } + return yield* this.pushToIndex(i, false); + } + } + *pushNewline() { + const ch = this.buffer[this.pos]; + if (ch === "\n") + return yield* this.pushCount(1); + else if (ch === "\r" && this.charAt(1) === "\n") + return yield* this.pushCount(2); + else + return 0; + } + *pushSpaces(allowTabs) { + let i = this.pos - 1; + let ch; + do { + ch = this.buffer[++i]; + } while (ch === " " || allowTabs && ch === " "); + const n = i - this.pos; + if (n > 0) { + yield this.buffer.substr(this.pos, n); + this.pos = i; + } + return n; + } + *pushUntil(test2) { + let i = this.pos; + let ch = this.buffer[i]; + while (!test2(ch)) + ch = this.buffer[++i]; + return yield* this.pushToIndex(i, false); + } +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/parse/line-counter.js +var LineCounter = class { + constructor() { + this.lineStarts = []; + this.addNewLine = (offset) => this.lineStarts.push(offset); + this.linePos = (offset) => { + let low = 0; + let high = this.lineStarts.length; + while (low < high) { + const mid = low + high >> 1; + if (this.lineStarts[mid] < offset) + low = mid + 1; + else + high = mid; + } + if (this.lineStarts[low] === offset) + return { line: low + 1, col: 1 }; + if (low === 0) + return { line: 0, col: offset }; + const start = this.lineStarts[low - 1]; + return { line: low, col: offset - start + 1 }; + }; + } +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/parse/parser.js +function includesToken(list2, type) { + for (let i = 0; i < list2.length; ++i) + if (list2[i].type === type) + return true; + return false; +} +function findNonEmptyIndex(list2) { + for (let i = 0; i < list2.length; ++i) { + switch (list2[i].type) { + case "space": + case "comment": + case "newline": + break; + default: + return i; + } + } + return -1; +} +function isFlowToken(token) { + switch (token == null ? void 0 : token.type) { + case "alias": + case "scalar": + case "single-quoted-scalar": + case "double-quoted-scalar": + case "flow-collection": + return true; + default: + return false; + } +} +function getPrevProps(parent2) { + var _a3; + switch (parent2.type) { + case "document": + return parent2.start; + case "block-map": { + const it = parent2.items[parent2.items.length - 1]; + return (_a3 = it.sep) != null ? _a3 : it.start; + } + case "block-seq": + return parent2.items[parent2.items.length - 1].start; + default: + return []; + } +} +function getFirstKeyStartProps(prev2) { + var _a3; + if (prev2.length === 0) + return []; + let i = prev2.length; + loop: + while (--i >= 0) { + switch (prev2[i].type) { + case "doc-start": + case "explicit-key-ind": + case "map-value-ind": + case "seq-item-ind": + case "newline": + break loop; + } + } + while (((_a3 = prev2[++i]) == null ? void 0 : _a3.type) === "space") { + } + return prev2.splice(i, prev2.length); +} +function fixFlowSeqItems(fc) { + if (fc.start.type === "flow-seq-start") { + for (const it of fc.items) { + if (it.sep && !it.value && !includesToken(it.start, "explicit-key-ind") && !includesToken(it.sep, "map-value-ind")) { + if (it.key) + it.value = it.key; + delete it.key; + if (isFlowToken(it.value)) { + if (it.value.end) + Array.prototype.push.apply(it.value.end, it.sep); + else + it.value.end = it.sep; + } else + Array.prototype.push.apply(it.start, it.sep); + delete it.sep; + } + } + } +} +var Parser3 = class { + constructor(onNewLine) { + this.atNewLine = true; + this.atScalar = false; + this.indent = 0; + this.offset = 0; + this.onKeyLine = false; + this.stack = []; + this.source = ""; + this.type = ""; + this.lexer = new Lexer(); + this.onNewLine = onNewLine; + } + *parse(source, incomplete = false) { + if (this.onNewLine && this.offset === 0) + this.onNewLine(0); + for (const lexeme of this.lexer.lex(source, incomplete)) + yield* this.next(lexeme); + if (!incomplete) + yield* this.end(); + } + *next(source) { + this.source = source; + if (this.atScalar) { + this.atScalar = false; + yield* this.step(); + this.offset += source.length; + return; + } + const type = tokenType(source); + if (!type) { + const message = `Not a YAML token: ${source}`; + yield* this.pop({ type: "error", offset: this.offset, message, source }); + this.offset += source.length; + } else if (type === "scalar") { + this.atNewLine = false; + this.atScalar = true; + this.type = "scalar"; + } else { + this.type = type; + yield* this.step(); + switch (type) { + case "newline": + this.atNewLine = true; + this.indent = 0; + if (this.onNewLine) + this.onNewLine(this.offset + source.length); + break; + case "space": + if (this.atNewLine && source[0] === " ") + this.indent += source.length; + break; + case "explicit-key-ind": + case "map-value-ind": + case "seq-item-ind": + if (this.atNewLine) + this.indent += source.length; + break; + case "doc-mode": + case "flow-error-end": + return; + default: + this.atNewLine = false; + } + this.offset += source.length; + } + } + *end() { + while (this.stack.length > 0) + yield* this.pop(); + } + get sourceToken() { + const st = { + type: this.type, + offset: this.offset, + indent: this.indent, + source: this.source + }; + return st; + } + *step() { + const top = this.peek(1); + if (this.type === "doc-end" && (!top || top.type !== "doc-end")) { + while (this.stack.length > 0) + yield* this.pop(); + this.stack.push({ + type: "doc-end", + offset: this.offset, + source: this.source + }); + return; + } + if (!top) + return yield* this.stream(); + switch (top.type) { + case "document": + return yield* this.document(top); + case "alias": + case "scalar": + case "single-quoted-scalar": + case "double-quoted-scalar": + return yield* this.scalar(top); + case "block-scalar": + return yield* this.blockScalar(top); + case "block-map": + return yield* this.blockMap(top); + case "block-seq": + return yield* this.blockSequence(top); + case "flow-collection": + return yield* this.flowCollection(top); + case "doc-end": + return yield* this.documentEnd(top); + } + yield* this.pop(); + } + peek(n) { + return this.stack[this.stack.length - n]; + } + *pop(error2) { + const token = error2 != null ? error2 : this.stack.pop(); + if (!token) { + const message = "Tried to pop an empty stack"; + yield { type: "error", offset: this.offset, source: "", message }; + } else if (this.stack.length === 0) { + yield token; + } else { + const top = this.peek(1); + if (token.type === "block-scalar") { + token.indent = "indent" in top ? top.indent : 0; + } else if (token.type === "flow-collection" && top.type === "document") { + token.indent = 0; + } + if (token.type === "flow-collection") + fixFlowSeqItems(token); + switch (top.type) { + case "document": + top.value = token; + break; + case "block-scalar": + top.props.push(token); + break; + case "block-map": { + const it = top.items[top.items.length - 1]; + if (it.value) { + top.items.push({ start: [], key: token, sep: [] }); + this.onKeyLine = true; + return; + } else if (it.sep) { + it.value = token; + } else { + Object.assign(it, { key: token, sep: [] }); + this.onKeyLine = !it.explicitKey; + return; + } + break; + } + case "block-seq": { + const it = top.items[top.items.length - 1]; + if (it.value) + top.items.push({ start: [], value: token }); + else + it.value = token; + break; + } + case "flow-collection": { + const it = top.items[top.items.length - 1]; + if (!it || it.value) + top.items.push({ start: [], key: token, sep: [] }); + else if (it.sep) + it.value = token; + else + Object.assign(it, { key: token, sep: [] }); + return; + } + default: + yield* this.pop(); + yield* this.pop(token); + } + if ((top.type === "document" || top.type === "block-map" || top.type === "block-seq") && (token.type === "block-map" || token.type === "block-seq")) { + const last2 = token.items[token.items.length - 1]; + if (last2 && !last2.sep && !last2.value && last2.start.length > 0 && findNonEmptyIndex(last2.start) === -1 && (token.indent === 0 || last2.start.every((st) => st.type !== "comment" || st.indent < token.indent))) { + if (top.type === "document") + top.end = last2.start; + else + top.items.push({ start: last2.start }); + token.items.splice(-1, 1); + } + } + } + } + *stream() { + switch (this.type) { + case "directive-line": + yield { type: "directive", offset: this.offset, source: this.source }; + return; + case "byte-order-mark": + case "space": + case "comment": + case "newline": + yield this.sourceToken; + return; + case "doc-mode": + case "doc-start": { + const doc = { + type: "document", + offset: this.offset, + start: [] + }; + if (this.type === "doc-start") + doc.start.push(this.sourceToken); + this.stack.push(doc); + return; + } + } + yield { + type: "error", + offset: this.offset, + message: `Unexpected ${this.type} token in YAML stream`, + source: this.source + }; + } + *document(doc) { + if (doc.value) + return yield* this.lineEnd(doc); + switch (this.type) { + case "doc-start": { + if (findNonEmptyIndex(doc.start) !== -1) { + yield* this.pop(); + yield* this.step(); + } else + doc.start.push(this.sourceToken); + return; + } + case "anchor": + case "tag": + case "space": + case "comment": + case "newline": + doc.start.push(this.sourceToken); + return; + } + const bv = this.startBlockValue(doc); + if (bv) + this.stack.push(bv); + else { + yield { + type: "error", + offset: this.offset, + message: `Unexpected ${this.type} token in YAML document`, + source: this.source + }; + } + } + *scalar(scalar) { + if (this.type === "map-value-ind") { + const prev2 = getPrevProps(this.peek(2)); + const start = getFirstKeyStartProps(prev2); + let sep; + if (scalar.end) { + sep = scalar.end; + sep.push(this.sourceToken); + delete scalar.end; + } else + sep = [this.sourceToken]; + const map4 = { + type: "block-map", + offset: scalar.offset, + indent: scalar.indent, + items: [{ start, key: scalar, sep }] + }; + this.onKeyLine = true; + this.stack[this.stack.length - 1] = map4; + } else + yield* this.lineEnd(scalar); + } + *blockScalar(scalar) { + switch (this.type) { + case "space": + case "comment": + case "newline": + scalar.props.push(this.sourceToken); + return; + case "scalar": + scalar.source = this.source; + this.atNewLine = true; + this.indent = 0; + if (this.onNewLine) { + let nl = this.source.indexOf("\n") + 1; + while (nl !== 0) { + this.onNewLine(this.offset + nl); + nl = this.source.indexOf("\n", nl) + 1; + } + } + yield* this.pop(); + break; + default: + yield* this.pop(); + yield* this.step(); + } + } + *blockMap(map4) { + var _a3; + const it = map4.items[map4.items.length - 1]; + switch (this.type) { + case "newline": + this.onKeyLine = false; + if (it.value) { + const end2 = "end" in it.value ? it.value.end : void 0; + const last2 = Array.isArray(end2) ? end2[end2.length - 1] : void 0; + if ((last2 == null ? void 0 : last2.type) === "comment") + end2 == null ? void 0 : end2.push(this.sourceToken); + else + map4.items.push({ start: [this.sourceToken] }); + } else if (it.sep) { + it.sep.push(this.sourceToken); + } else { + it.start.push(this.sourceToken); + } + return; + case "space": + case "comment": + if (it.value) { + map4.items.push({ start: [this.sourceToken] }); + } else if (it.sep) { + it.sep.push(this.sourceToken); + } else { + if (this.atIndentedComment(it.start, map4.indent)) { + const prev2 = map4.items[map4.items.length - 2]; + const end2 = (_a3 = prev2 == null ? void 0 : prev2.value) == null ? void 0 : _a3.end; + if (Array.isArray(end2)) { + Array.prototype.push.apply(end2, it.start); + end2.push(this.sourceToken); + map4.items.pop(); + return; + } + } + it.start.push(this.sourceToken); + } + return; + } + if (this.indent >= map4.indent) { + const atMapIndent = !this.onKeyLine && this.indent === map4.indent; + const atNextItem = atMapIndent && (it.sep || it.explicitKey) && this.type !== "seq-item-ind"; + let start = []; + if (atNextItem && it.sep && !it.value) { + const nl = []; + for (let i = 0; i < it.sep.length; ++i) { + const st = it.sep[i]; + switch (st.type) { + case "newline": + nl.push(i); + break; + case "space": + break; + case "comment": + if (st.indent > map4.indent) + nl.length = 0; + break; + default: + nl.length = 0; + } + } + if (nl.length >= 2) + start = it.sep.splice(nl[1]); + } + switch (this.type) { + case "anchor": + case "tag": + if (atNextItem || it.value) { + start.push(this.sourceToken); + map4.items.push({ start }); + this.onKeyLine = true; + } else if (it.sep) { + it.sep.push(this.sourceToken); + } else { + it.start.push(this.sourceToken); + } + return; + case "explicit-key-ind": + if (!it.sep && !it.explicitKey) { + it.start.push(this.sourceToken); + it.explicitKey = true; + } else if (atNextItem || it.value) { + start.push(this.sourceToken); + map4.items.push({ start, explicitKey: true }); + } else { + this.stack.push({ + type: "block-map", + offset: this.offset, + indent: this.indent, + items: [{ start: [this.sourceToken], explicitKey: true }] + }); + } + this.onKeyLine = true; + return; + case "map-value-ind": + if (it.explicitKey) { + if (!it.sep) { + if (includesToken(it.start, "newline")) { + Object.assign(it, { key: null, sep: [this.sourceToken] }); + } else { + const start2 = getFirstKeyStartProps(it.start); + this.stack.push({ + type: "block-map", + offset: this.offset, + indent: this.indent, + items: [{ start: start2, key: null, sep: [this.sourceToken] }] + }); + } + } else if (it.value) { + map4.items.push({ start: [], key: null, sep: [this.sourceToken] }); + } else if (includesToken(it.sep, "map-value-ind")) { + this.stack.push({ + type: "block-map", + offset: this.offset, + indent: this.indent, + items: [{ start, key: null, sep: [this.sourceToken] }] + }); + } else if (isFlowToken(it.key) && !includesToken(it.sep, "newline")) { + const start2 = getFirstKeyStartProps(it.start); + const key = it.key; + const sep = it.sep; + sep.push(this.sourceToken); + delete it.key; + delete it.sep; + this.stack.push({ + type: "block-map", + offset: this.offset, + indent: this.indent, + items: [{ start: start2, key, sep }] + }); + } else if (start.length > 0) { + it.sep = it.sep.concat(start, this.sourceToken); + } else { + it.sep.push(this.sourceToken); + } + } else { + if (!it.sep) { + Object.assign(it, { key: null, sep: [this.sourceToken] }); + } else if (it.value || atNextItem) { + map4.items.push({ start, key: null, sep: [this.sourceToken] }); + } else if (includesToken(it.sep, "map-value-ind")) { + this.stack.push({ + type: "block-map", + offset: this.offset, + indent: this.indent, + items: [{ start: [], key: null, sep: [this.sourceToken] }] + }); + } else { + it.sep.push(this.sourceToken); + } + } + this.onKeyLine = true; + return; + case "alias": + case "scalar": + case "single-quoted-scalar": + case "double-quoted-scalar": { + const fs = this.flowScalar(this.type); + if (atNextItem || it.value) { + map4.items.push({ start, key: fs, sep: [] }); + this.onKeyLine = true; + } else if (it.sep) { + this.stack.push(fs); + } else { + Object.assign(it, { key: fs, sep: [] }); + this.onKeyLine = true; + } + return; + } + default: { + const bv = this.startBlockValue(map4); + if (bv) { + if (bv.type === "block-seq") { + if (!it.explicitKey && it.sep && !includesToken(it.sep, "newline")) { + yield* this.pop({ + type: "error", + offset: this.offset, + message: "Unexpected block-seq-ind on same line with key", + source: this.source + }); + return; + } + } else if (atMapIndent) { + map4.items.push({ start }); + } + this.stack.push(bv); + return; + } + } + } + } + yield* this.pop(); + yield* this.step(); + } + *blockSequence(seq2) { + var _a3; + const it = seq2.items[seq2.items.length - 1]; + switch (this.type) { + case "newline": + if (it.value) { + const end2 = "end" in it.value ? it.value.end : void 0; + const last2 = Array.isArray(end2) ? end2[end2.length - 1] : void 0; + if ((last2 == null ? void 0 : last2.type) === "comment") + end2 == null ? void 0 : end2.push(this.sourceToken); + else + seq2.items.push({ start: [this.sourceToken] }); + } else + it.start.push(this.sourceToken); + return; + case "space": + case "comment": + if (it.value) + seq2.items.push({ start: [this.sourceToken] }); + else { + if (this.atIndentedComment(it.start, seq2.indent)) { + const prev2 = seq2.items[seq2.items.length - 2]; + const end2 = (_a3 = prev2 == null ? void 0 : prev2.value) == null ? void 0 : _a3.end; + if (Array.isArray(end2)) { + Array.prototype.push.apply(end2, it.start); + end2.push(this.sourceToken); + seq2.items.pop(); + return; + } + } + it.start.push(this.sourceToken); + } + return; + case "anchor": + case "tag": + if (it.value || this.indent <= seq2.indent) + break; + it.start.push(this.sourceToken); + return; + case "seq-item-ind": + if (this.indent !== seq2.indent) + break; + if (it.value || includesToken(it.start, "seq-item-ind")) + seq2.items.push({ start: [this.sourceToken] }); + else + it.start.push(this.sourceToken); + return; + } + if (this.indent > seq2.indent) { + const bv = this.startBlockValue(seq2); + if (bv) { + this.stack.push(bv); + return; + } + } + yield* this.pop(); + yield* this.step(); + } + *flowCollection(fc) { + const it = fc.items[fc.items.length - 1]; + if (this.type === "flow-error-end") { + let top; + do { + yield* this.pop(); + top = this.peek(1); + } while (top && top.type === "flow-collection"); + } else if (fc.end.length === 0) { + switch (this.type) { + case "comma": + case "explicit-key-ind": + if (!it || it.sep) + fc.items.push({ start: [this.sourceToken] }); + else + it.start.push(this.sourceToken); + return; + case "map-value-ind": + if (!it || it.value) + fc.items.push({ start: [], key: null, sep: [this.sourceToken] }); + else if (it.sep) + it.sep.push(this.sourceToken); + else + Object.assign(it, { key: null, sep: [this.sourceToken] }); + return; + case "space": + case "comment": + case "newline": + case "anchor": + case "tag": + if (!it || it.value) + fc.items.push({ start: [this.sourceToken] }); + else if (it.sep) + it.sep.push(this.sourceToken); + else + it.start.push(this.sourceToken); + return; + case "alias": + case "scalar": + case "single-quoted-scalar": + case "double-quoted-scalar": { + const fs = this.flowScalar(this.type); + if (!it || it.value) + fc.items.push({ start: [], key: fs, sep: [] }); + else if (it.sep) + this.stack.push(fs); + else + Object.assign(it, { key: fs, sep: [] }); + return; + } + case "flow-map-end": + case "flow-seq-end": + fc.end.push(this.sourceToken); + return; + } + const bv = this.startBlockValue(fc); + if (bv) + this.stack.push(bv); + else { + yield* this.pop(); + yield* this.step(); + } + } else { + const parent2 = this.peek(2); + if (parent2.type === "block-map" && (this.type === "map-value-ind" && parent2.indent === fc.indent || this.type === "newline" && !parent2.items[parent2.items.length - 1].sep)) { + yield* this.pop(); + yield* this.step(); + } else if (this.type === "map-value-ind" && parent2.type !== "flow-collection") { + const prev2 = getPrevProps(parent2); + const start = getFirstKeyStartProps(prev2); + fixFlowSeqItems(fc); + const sep = fc.end.splice(1, fc.end.length); + sep.push(this.sourceToken); + const map4 = { + type: "block-map", + offset: fc.offset, + indent: fc.indent, + items: [{ start, key: fc, sep }] + }; + this.onKeyLine = true; + this.stack[this.stack.length - 1] = map4; + } else { + yield* this.lineEnd(fc); + } + } + } + flowScalar(type) { + if (this.onNewLine) { + let nl = this.source.indexOf("\n") + 1; + while (nl !== 0) { + this.onNewLine(this.offset + nl); + nl = this.source.indexOf("\n", nl) + 1; + } + } + return { + type, + offset: this.offset, + indent: this.indent, + source: this.source + }; + } + startBlockValue(parent2) { + switch (this.type) { + case "alias": + case "scalar": + case "single-quoted-scalar": + case "double-quoted-scalar": + return this.flowScalar(this.type); + case "block-scalar-header": + return { + type: "block-scalar", + offset: this.offset, + indent: this.indent, + props: [this.sourceToken], + source: "" + }; + case "flow-map-start": + case "flow-seq-start": + return { + type: "flow-collection", + offset: this.offset, + indent: this.indent, + start: this.sourceToken, + items: [], + end: [] + }; + case "seq-item-ind": + return { + type: "block-seq", + offset: this.offset, + indent: this.indent, + items: [{ start: [this.sourceToken] }] + }; + case "explicit-key-ind": { + this.onKeyLine = true; + const prev2 = getPrevProps(parent2); + const start = getFirstKeyStartProps(prev2); + start.push(this.sourceToken); + return { + type: "block-map", + offset: this.offset, + indent: this.indent, + items: [{ start, explicitKey: true }] + }; + } + case "map-value-ind": { + this.onKeyLine = true; + const prev2 = getPrevProps(parent2); + const start = getFirstKeyStartProps(prev2); + return { + type: "block-map", + offset: this.offset, + indent: this.indent, + items: [{ start, key: null, sep: [this.sourceToken] }] + }; + } + } + return null; + } + atIndentedComment(start, indent) { + if (this.type !== "comment") + return false; + if (this.indent <= indent) + return false; + return start.every((st) => st.type === "newline" || st.type === "space"); + } + *documentEnd(docEnd) { + if (this.type !== "doc-mode") { + if (docEnd.end) + docEnd.end.push(this.sourceToken); + else + docEnd.end = [this.sourceToken]; + if (this.type === "newline") + yield* this.pop(); + } + } + *lineEnd(token) { + switch (this.type) { + case "comma": + case "doc-start": + case "doc-end": + case "flow-seq-end": + case "flow-map-end": + case "map-value-ind": + yield* this.pop(); + yield* this.step(); + break; + case "newline": + this.onKeyLine = false; + case "space": + case "comment": + default: + if (token.end) + token.end.push(this.sourceToken); + else + token.end = [this.sourceToken]; + if (this.type === "newline") + yield* this.pop(); + } + } +}; + +// ../../node_modules/.pnpm/yaml@2.7.1/node_modules/yaml/browser/dist/public-api.js +function parseOptions(options) { + const prettyErrors = options.prettyErrors !== false; + const lineCounter = options.lineCounter || prettyErrors && new LineCounter() || null; + return { lineCounter, prettyErrors }; +} +function parseDocument2(source, options = {}) { + const { lineCounter, prettyErrors } = parseOptions(options); + const parser = new Parser3(lineCounter == null ? void 0 : lineCounter.addNewLine); + const composer = new Composer(options); + let doc = null; + for (const _doc of composer.compose(parser.parse(source), true, source.length)) { + if (!doc) + doc = _doc; + else if (doc.options.logLevel !== "silent") { + doc.errors.push(new YAMLParseError(_doc.range.slice(0, 2), "MULTIPLE_DOCS", "Source contains multiple documents; please use YAML.parseAllDocuments()")); + break; + } + } + if (prettyErrors && lineCounter) { + doc.errors.forEach(prettifyError(source, lineCounter)); + doc.warnings.forEach(prettifyError(source, lineCounter)); + } + return doc; +} +function parse6(src, reviver, options) { + let _reviver = void 0; + if (typeof reviver === "function") { + _reviver = reviver; + } else if (options === void 0 && reviver && typeof reviver === "object") { + options = reviver; + } + const doc = parseDocument2(src, options); + if (!doc) + return null; + doc.warnings.forEach((warning) => warn(doc.options.logLevel, warning)); + if (doc.errors.length > 0) { + if (doc.options.logLevel !== "silent") + throw doc.errors[0]; + else + doc.errors = []; + } + return doc.toJS(Object.assign({ reviver: _reviver }, options)); +} + +// ../../node_modules/.pnpm/markmap-lib@0.17.2_markmap-common@0.18.9/node_modules/markmap-lib/dist/browser/index.mjs +var import_markdown_it_katex = __toESM(require_markdown_it_katex(), 1); +function initializeMarkdownIt() { + const md = lib_default({ + html: true, + breaks: true + }); + md.use(ins_plugin).use(ins_plugin2).use(sub_plugin).use(sup_plugin); + return md; +} +function createTransformHooks(transformer2) { + return { + transformer: transformer2, + parser: new Hook(), + beforeParse: new Hook(), + afterParse: new Hook(), + retransform: new Hook() + }; +} +function definePlugin(plugin2) { + return plugin2; +} +var svgMarked = '\n'; +var svgUnmarked = '\n'; +var name$5 = "checkbox"; +var images = { + " ": svgUnmarked.trim(), + x: svgMarked.trim() +}; +var plugin$3 = definePlugin({ + name: name$5, + transform(transformHooks) { + transformHooks.parser.tap((md) => { + md.core.ruler.before("inline", "checkbox", (state) => { + for (let i = 2; i < state.tokens.length; i += 1) { + const token = state.tokens[i]; + if (token.type === "inline" && token.content) { + const prevType = state.tokens[i - 1].type; + const prevPrevType = state.tokens[i - 2].type; + if (prevType === "heading_open" || prevType === "paragraph_open" && prevPrevType === "list_item_open") { + token.content = token.content.replace( + /^\[(.)\] /, + (m, g) => images[g] ? `${images[g]} ` : m + ); + } + } + } + return false; + }); + }); + return {}; + } +}); +var pluginCheckbox = plugin$3; +var name$4 = "frontmatter"; +var pluginFrontmatter = definePlugin({ + name: name$4, + transform(transformHooks) { + transformHooks.beforeParse.tap((_md, context) => { + var _a3; + const { content } = context; + if (!/^---\r?\n/.test(content)) + return; + const match2 = /\n---\r?\n/.exec(content); + if (!match2) + return; + const raw = content.slice(4, match2.index).trimEnd(); + let frontmatter; + try { + frontmatter = parse6(raw.replace(/\r?\n|\r/g, "\n")); + if (frontmatter == null ? void 0 : frontmatter.markmap) { + frontmatter.markmap = normalizeMarkmapJsonOptions( + frontmatter.markmap + ); + } + } catch (e) { + return; + } + context.frontmatter = frontmatter; + context.parserOptions = { + ...context.parserOptions, + ...(_a3 = frontmatter == null ? void 0 : frontmatter.markmap) == null ? void 0 : _a3.htmlParser + }; + context.content = content.slice(match2.index + match2[0].length); + context.contentLineOffset = content.slice(0, match2.index).split("\n").length + 1; + }); + return {}; + } +}); +function normalizeMarkmapJsonOptions(options) { + if (!options) + return; + ["color", "extraJs", "extraCss"].forEach((key) => { + if (options[key] != null) + options[key] = normalizeStringArray(options[key]); + }); + ["duration", "maxWidth", "initialExpandLevel"].forEach((key) => { + if (options[key] != null) + options[key] = normalizeNumber(options[key]); + }); + return options; +} +function normalizeStringArray(value) { + let result; + if (typeof value === "string") + result = [value]; + else if (Array.isArray(value)) + result = value.filter((item) => item && typeof item === "string"); + return (result == null ? void 0 : result.length) ? result : void 0; +} +function normalizeNumber(value) { + if (isNaN(+value)) + return; + return +value; +} +function patchJSItem(urlBuilder2, item) { + if (item.type === "script" && item.data.src) { + return { + ...item, + data: { + ...item.data, + src: urlBuilder2.getFullUrl(item.data.src) + } + }; + } + return item; +} +function patchCSSItem(urlBuilder2, item) { + if (item.type === "stylesheet" && item.data.href) { + return { + ...item, + data: { + ...item.data, + href: urlBuilder2.getFullUrl(item.data.href) + } + }; + } + return item; +} +var name$3 = "hljs"; +var preloadScripts$1 = [ + `@highlightjs/cdn-assets@${"11.8.0"}/highlight.min.js` +].map((path) => buildJSItem(path)); +var styles$1 = [ + `@highlightjs/cdn-assets@${"11.8.0"}/styles/default.min.css` +].map((path) => buildCSSItem(path)); +var config$1 = { + versions: { + hljs: "11.8.0" + }, + preloadScripts: preloadScripts$1, + styles: styles$1 +}; +var plugin$2 = definePlugin({ + name: name$3, + config: config$1, + transform(transformHooks) { + var _a3, _b, _c; + let loading; + const preloadScripts2 = ((_b = (_a3 = plugin$2.config) == null ? void 0 : _a3.preloadScripts) == null ? void 0 : _b.map( + (item) => patchJSItem(transformHooks.transformer.urlBuilder, item) + )) || []; + const autoload = () => { + loading || (loading = loadJS(preloadScripts2)); + return loading; + }; + let enableFeature = noop; + transformHooks.parser.tap((md) => { + md.set({ + highlight: (str, language) => { + enableFeature(); + const { hljs } = window; + if (hljs) { + return hljs.highlightAuto(str, language ? [language] : void 0).value; + } + autoload().then(() => { + transformHooks.retransform.call(); + }); + return str; + } + }); + }); + transformHooks.beforeParse.tap((_, context) => { + enableFeature = () => { + context.features[name$3] = true; + }; + }); + return { + styles: (_c = plugin$2.config) == null ? void 0 : _c.styles + }; + } +}); +var pluginHljs = plugin$2; +function addDefaultVersions(paths, name2, version) { + return paths.map((path) => { + if (typeof path === "string" && !path.includes("://")) { + if (!path.startsWith("npm:")) { + path = `npm:${path}`; + } + const prefixLength = 4 + name2.length; + if (path.startsWith(`npm:${name2}/`)) { + path = `${path.slice(0, prefixLength)}@${version}${path.slice( + prefixLength + )}`; + } + } + return path; + }); +} +var name$2 = "katex"; +var preloadScripts = [ + `katex@${"0.16.8"}/dist/katex.min.js` +].map((path) => buildJSItem(path)); +var webfontloader = buildJSItem( + `webfontloader@${"1.6.28"}/webfontloader.js` +); +webfontloader.data.defer = true; +var styles = [`katex@${"0.16.8"}/dist/katex.min.css`].map( + (path) => buildCSSItem(path) +); +var config2 = { + versions: { + katex: "0.16.8", + webfontloader: "1.6.28" + }, + preloadScripts, + scripts: [ + { + type: "iife", + data: { + fn: (getMarkmap) => { + window.WebFontConfig = { + custom: { + families: [ + "KaTeX_AMS", + "KaTeX_Caligraphic:n4,n7", + "KaTeX_Fraktur:n4,n7", + "KaTeX_Main:n4,n7,i4,i7", + "KaTeX_Math:i4,i7", + "KaTeX_Script", + "KaTeX_SansSerif:n4,n7,i4", + "KaTeX_Size1", + "KaTeX_Size2", + "KaTeX_Size3", + "KaTeX_Size4", + "KaTeX_Typewriter" + ] + }, + active: () => { + getMarkmap().refreshHook.call(); + } + }; + }, + getParams({ getMarkmap }) { + return [getMarkmap]; + } + } + }, + webfontloader + ], + styles +}; +var plugin$1 = definePlugin({ + name: name$2, + config: config2, + transform(transformHooks) { + var _a3, _b, _c, _d; + let loading; + const preloadScripts2 = ((_b = (_a3 = plugin$1.config) == null ? void 0 : _a3.preloadScripts) == null ? void 0 : _b.map( + (item) => patchJSItem(transformHooks.transformer.urlBuilder, item) + )) || []; + const autoload = () => { + loading || (loading = loadJS(preloadScripts2)); + return loading; + }; + const renderKatex = (source, displayMode) => { + const { katex } = window; + if (katex) { + return katex.renderToString(source, { + displayMode, + throwOnError: false + }); + } + autoload().then(() => { + transformHooks.retransform.call(); + }); + return source; + }; + let enableFeature = noop; + transformHooks.parser.tap((md) => { + md.use(import_markdown_it_katex.default); + ["math_block", "math_inline"].forEach((key) => { + const fn = (tokens, idx) => { + enableFeature(); + const result = renderKatex(tokens[idx].content, !!tokens[idx].block); + return result; + }; + md.renderer.rules[key] = fn; + }); + }); + transformHooks.beforeParse.tap((_, context) => { + enableFeature = () => { + context.features[name$2] = true; + }; + }); + transformHooks.afterParse.tap((_, context) => { + var _a22; + const markmap = (_a22 = context.frontmatter) == null ? void 0 : _a22.markmap; + if (markmap) { + ["extraJs", "extraCss"].forEach((key) => { + var _a32, _b2; + const value = markmap[key]; + if (value) { + markmap[key] = addDefaultVersions( + value, + name$2, + ((_b2 = (_a32 = plugin$1.config) == null ? void 0 : _a32.versions) == null ? void 0 : _b2.katex) || "" + ); + } + }); + } + }); + return { + styles: (_c = plugin$1.config) == null ? void 0 : _c.styles, + scripts: (_d = plugin$1.config) == null ? void 0 : _d.scripts + }; + } +}); +var pluginKatex = plugin$1; +var name$1 = "npmUrl"; +var pluginNpmUrl = definePlugin({ + name: name$1, + transform(transformHooks) { + transformHooks.afterParse.tap((_, context) => { + const { frontmatter } = context; + const markmap = frontmatter == null ? void 0 : frontmatter.markmap; + if (markmap) { + ["extraJs", "extraCss"].forEach((key) => { + const value = markmap[key]; + if (value) { + markmap[key] = value.map((path) => { + if (path.startsWith("npm:")) { + return transformHooks.transformer.urlBuilder.getFullUrl( + path.slice(4) + ); + } + return path; + }); + } + }); + } + }); + return {}; + } +}); +var name = "sourceLines"; +var plugin = definePlugin({ + name, + transform(transformHooks) { + transformHooks.parser.tap((md) => { + md.renderer.renderAttrs = wrapFunction( + md.renderer.renderAttrs, + (renderAttrs2, token) => { + let attrs = renderAttrs2(token); + if (token.block && token.map) { + attrs += ` data-lines=${token.map.join(",")}`; + } + return attrs; + } + ); + }); + return {}; + } +}); +var pluginSourceLines = plugin; +var plugins = [ + pluginFrontmatter, + pluginKatex, + pluginHljs, + pluginNpmUrl, + pluginCheckbox, + pluginSourceLines +]; +var builtInPlugins = plugins; +function cleanNode(node) { + while (!node.content && node.children.length === 1) { + node = node.children[0]; + } + while (node.children.length === 1 && !node.children[0].content) { + node = { + ...node, + children: node.children[0].children + }; + } + return { + ...node, + children: node.children.map(cleanNode) + }; +} +var Transformer = class { + constructor(plugins2 = builtInPlugins) { + this.assetsMap = {}; + this.urlBuilder = new UrlBuilder(); + this.hooks = createTransformHooks(this); + this.plugins = plugins2.map( + (plugin2) => typeof plugin2 === "function" ? plugin2() : plugin2 + ); + const assetsMap = {}; + for (const { name: name2, transform } of this.plugins) { + assetsMap[name2] = transform(this.hooks); + } + this.assetsMap = assetsMap; + const md = initializeMarkdownIt(); + this.md = md; + this.hooks.parser.call(md); + } + transform(content, fallbackParserOptions) { + var _a3; + const context = { + content, + features: {}, + contentLineOffset: 0, + parserOptions: fallbackParserOptions + }; + this.hooks.beforeParse.call(this.md, context); + const html3 = this.md.render(context.content, {}); + this.hooks.afterParse.call(this.md, context); + const root3 = cleanNode(buildTree(html3, context.parserOptions)); + root3.content || (root3.content = `${((_a3 = context.frontmatter) == null ? void 0 : _a3.title) || ""}`); + return { ...context, root: root3 }; + } + getAssets(keys) { + const styles2 = []; + const scripts = []; + keys != null ? keys : keys = this.plugins.map((plugin2) => plugin2.name); + for (const assets of keys.map((key) => this.assetsMap[key])) { + if (assets) { + if (assets.styles) + styles2.push(...assets.styles); + if (assets.scripts) + scripts.push(...assets.scripts); + } + } + return { + styles: styles2.map((item) => patchCSSItem(this.urlBuilder, item)), + scripts: scripts.map((item) => patchJSItem(this.urlBuilder, item)) + }; + } + getUsedAssets(features) { + const keys = this.plugins.map((plugin2) => plugin2.name).filter((name2) => features[name2]); + return this.getAssets(keys); + } +}; + +// ../ABConverter/converter/abc_markmap.ts +var transformer = new Transformer(); +var abc_list2mindmap2 = ABConvert.factory({ + id: "list2markmap", + name: "\u5217\u8868\u5230\u8111\u56FE (markmap)", + process_param: "string" /* text */, + process_return: "HTMLElement" /* el */, + process: (el, header, content) => { + list2markmap(content, el); + markmap_event(el); + return el; + } +}); +function list2markmap(markdown, div) { + const { root: root3, features } = transformer.transform(markdown.trim()); + const assets = transformer.getUsedAssets(features); + if (ABCSetting.env == "obsidian" || ABCSetting.env == "obsidian-min") { + let height_adapt = 30 + markdown.split("\n").length * 15; + if (height_adapt > 1e3) + height_adapt = 1e3; + const id = Math.random().toString(36).substring(2); + const svg_div = document.createElement("div"); + div.appendChild(svg_div); + svg_div.classList.add("ab-markmap-div"); + svg_div.id = "ab-markmap-div-" + id; + const html_str = ``; + svg_div.innerHTML = html_str; + } else { + div.classList.add("ab-raw"); + div.innerHTML = `
`; + } + { + } + { + } + { + } + return div; +} + +// ../ABConverter/index.ts +ABCSetting.env = "obsidian"; + +// ab_manager/abm_code/ABReplacer_CodeBlock.ts +var import_obsidian2 = require("obsidian"); + +// ab_manager/abm_cm/ABReplacer_Widget.ts +var import_obsidian = require("obsidian"); +var import_view = require("@codemirror/view"); +var _ABReplacer_Widget = class extends import_view.WidgetType { + constructor(rangeSpec, editor) { + super(); + this.rangeSpec = rangeSpec; + this.global_editor = editor; + } + toDOM(view) { + this.div = document.createElement("div"); + this.div.setAttribute("type_header", this.rangeSpec.header); + this.div.addClasses(["ab-replace", "cm-embed-block"]); + let dom_note = document.createElement("div"); + this.div.appendChild(dom_note); + dom_note.classList.add("ab-note", "drop-shadow"); + ABConvertManager.autoABConvert(dom_note, this.rangeSpec.header, this.rangeSpec.content, this.rangeSpec.selector); + if (this.global_editor) { + let dom_edit = this.div.createEl("div", { + cls: ["ab-button", "ab-button-1", "edit-block-button"], + attr: { "aria-label": "Edit the block - " + this.rangeSpec.header } + }); + if (import_obsidian.Platform.isMobileApp || import_obsidian.Platform.isPhone || import_obsidian.Platform.isTablet) { + dom_edit.classList.remove("edit-block-button"); + } + dom_edit.empty(); + dom_edit.appendChild((0, import_obsidian.sanitizeHTMLToDom)(_ABReplacer_Widget.STR_ICON_CODE2)); + dom_edit.onclick = () => { + this.moveCursor(); + }; + } + if (this.global_editor) { + let dom_edit = this.div.createEl("div", { + cls: ["ab-button", "ab-button-2", "edit-block-button"], + attr: { "aria-label": "Refresh the block" } + }); + dom_edit.empty(); + dom_edit.appendChild((0, import_obsidian.sanitizeHTMLToDom)(_ABReplacer_Widget.STR_ICON_REFRESH)); + dom_edit.onclick = () => { + abConvertEvent(this.div); + this.moveCursor(-1); + }; + } + return this.div; + } + moveCursor(line_offset = 0) { + if (this.global_editor) { + const editor = this.global_editor; + let pos = getCursorPos(editor, this.rangeSpec.from_ch); + if (pos) { + pos.line += line_offset; + if (line_offset < 0) { + pos.ch = 0; + editor.setCursor(pos); + } else { + editor.setCursor(pos); + editor.replaceRange("OF", pos); + editor.replaceRange("", pos, { line: pos.line, ch: pos.ch + 2 }); + } + } + } + return; + function getCursorPos(editor, total_ch) { + let count_ch = 0; + let list_text = editor.getValue().split("\n"); + for (let i = 0; i < list_text.length; i++) { + if (count_ch + list_text[i].length >= total_ch) + return { line: i, ch: total_ch - count_ch }; + count_ch = count_ch + list_text[i].length + 1; + } + return null; + } + } +}; +var ABReplacer_Widget = _ABReplacer_Widget; +ABReplacer_Widget.STR_ICON_CODE2 = ` + + + + `; +ABReplacer_Widget.STR_ICON_REFRESH = ` + + + + + + + `; + +// ab_manager/abm_code/ABReplacer_CodeBlock.ts +var ABReplacer_CodeBlock = class { + static processor(src, blockEl, ctx) { + ABCSetting.global_ctx = ctx; + const root_div = document.createElement("div"); + blockEl.appendChild(root_div); + root_div.classList.add("ab-replace"); + const list_src = src.split("\n"); + let header = ""; + let header_indent_prefix = ""; + if (list_src.length) { + const match2 = list_src[0].match(ABReg.reg_header_noprefix); + if (match2 && match2[5]) { + header = match2[5]; + header_indent_prefix = match2[1]; + } + } + const src_without_indent = list_src.slice(1).map( + (line) => line.startsWith(header_indent_prefix) ? line.substring(header_indent_prefix.length) : line + ).join("\n"); + const calc_margin = header_indent_prefix.replace(/\t/g, " ").length; + root_div.setAttribute("style", "margin-left: " + calc_margin * 0.5 + "rem;"); + const dom_note = root_div.createDiv({ + cls: ["ab-note", "drop-shadow"] + }); + let dom_replaceEl = dom_note.createDiv({ + cls: ["ab-replaceEl"] + }); + if (header != "") { + ABConvertManager.autoABConvert(dom_replaceEl, header, src_without_indent); + } else { + ABConvertManager.getInstance().m_renderMarkdownFn(src, dom_replaceEl, ctx); + } + let dom_edit = root_div.createEl("div", { + cls: ["ab-button", "ab-button-2", "edit-block-button"], + attr: { "aria-label": "Refresh the block" } + }); + dom_edit.empty(); + dom_edit.appendChild((0, import_obsidian2.sanitizeHTMLToDom)(ABReplacer_Widget.STR_ICON_REFRESH)); + dom_edit.onclick = () => { + abConvertEvent(root_div); + }; + const button_show = () => { + dom_edit.show(); + }; + const button_hide = () => { + dom_edit.hide(); + }; + button_hide(); + dom_note.onmouseover = button_show; + dom_note.onmouseout = button_hide; + dom_edit.onmouseover = button_show; + dom_edit.onmouseout = button_hide; + } +}; + +// ab_manager/abm_cm/ABStateManager.ts +var import_view2 = require("@codemirror/view"); +var import_state = require("@codemirror/state"); +var import_obsidian5 = require("obsidian"); + +// config/ABSettingTab.ts +var import_obsidian4 = require("obsidian"); + +// ab_manager/abm_cm/ABSelector_Md.ts +function autoMdSelector(mdText = "") { + let list_mdSelectorRangeSpec = []; + let list_text = mdText.split("\n"); + let codeBlockFlag = ""; + let map_line_ch = [0]; + let count_ch = 0; + for (let line of list_text) { + count_ch = count_ch + line.length + 1; + map_line_ch.push(count_ch); + } + for (let i = 0; i < list_text.length; i++) { + const line = list_text[i]; + if (codeBlockFlag == "") { + const match2 = line.match(ABReg.reg_code); + if (match2 && match2[3]) { + codeBlockFlag = match2[1] + match2[3]; + } + } else { + if (line.indexOf(codeBlockFlag) == 0) { + codeBlockFlag = ""; + } + continue; + } + for (let selecotr of list_mdSelector) { + if (selecotr.match.test(line)) { + let sim = selecotr.selector(list_text, i); + if (!sim) + continue; + list_mdSelectorRangeSpec.push({ + from_ch: map_line_ch[sim.from_line], + to_ch: map_line_ch[sim.to_line] - 1, + header: sim.header, + selector: sim.selector, + content: sim.content, + prefix: sim.prefix + }); + i = sim.to_line - 1; + codeBlockFlag = ""; + break; + } + } + } + return list_mdSelectorRangeSpec; +} +function generateSelectorInfoTable(el) { + const table_p = el.createEl("div", { + cls: ["ab-setting", "md-table-fig1"] + }); + const table2 = table_p.createEl("table", { + cls: ["ab-setting", "md-table-fig2"] + }); + { + const thead = table2.createEl("thead"); + const tr = thead.createEl("tr"); + tr.createEl("th", { text: "Selector Name" }); + tr.createEl("th", { text: "First-line Regular" }); + tr.createEl("th", { text: "Enable" }); + } + const tbody = table2.createEl("tbody"); + for (let item of list_mdSelector) { + const tr = tbody.createEl("tr"); + tr.createEl("td", { text: item.name }); + tr.createEl("td", { text: String(item.match) }); + tr.createEl("td", { text: item.is_disable ? "No" : "Yes" }); + } + return table_p; +} +var list_mdSelector = []; +function registerMdSelector(simp) { + var _a3; + list_mdSelector.push({ + id: simp.id, + name: simp.name, + match: simp.match, + detail: (_a3 = simp.detail) != null ? _a3 : "", + selector: simp.selector, + is_disable: false + }); +} + +// ab_manager/abm_cm/ABSelector_MdBase.ts +function easySelector(list_text, from_line, selector, frist_reg) { + let mdRange = { + from_line: from_line - 1, + to_line: from_line + 1, + header: "", + selector, + levelFlag: "", + content: "", + prefix: "" + }; + if (from_line <= 0) + return null; + const first_line_match = list_text[from_line].match(frist_reg); + if (!first_line_match) + return null; + mdRange.prefix = first_line_match[1]; + mdRange.levelFlag = first_line_match[3]; + let header_line_match; + if (list_text[from_line - 1].indexOf(mdRange.prefix) == 0 && ABReg.reg_emptyline_noprefix.test(list_text[from_line - 1]) && from_line > 1) { + mdRange.from_line = from_line - 2; + } + header_line_match = list_text[mdRange.from_line].match(ABReg.reg_header); + if (!header_line_match) + return null; + if (header_line_match[1] != mdRange.prefix) + return null; + mdRange.header = header_line_match[5]; + return mdRange; +} +function easySelector_headtail(list_text, from_line, selector, frist_reg) { + let mdRange = { + from_line, + to_line: from_line + 1, + header: "", + selector, + levelFlag: "", + content: "", + prefix: "" + }; + if (from_line <= 0) + return null; + const first_line_match = list_text[from_line].match(frist_reg); + if (!first_line_match) + return null; + mdRange.prefix = first_line_match[1]; + mdRange.levelFlag = first_line_match[3]; + mdRange.header = first_line_match[4]; + return mdRange; +} +var mdSelector_headtail = { + id: "mdit", + name: "mdit:::\u5934\u5C3E\u9009\u62E9\u5668", + detail: "\u4EE5`:::`\u5F00\u5934\u548C\u7ED3\u5C3E\uFF0C\u5904\u7406\u5668\u540D\u5199\u5728\u7B2C\u4E00\u4E2A`:::`\u7684\u540E\u9762\uFF0C\u4E0D\u9700\u8981\u52A0`[]`\u3002\u5176\u5B9E\u5C31\u548C\u4EE3\u7801\u5757\u5DEE\u4E0D\u591A\uFF0C\u8FD9\u4E5F\u662FVuePress\u7684\u4E00\u4E2Amd\u6269\u5C55\u8BED\u6CD5", + match: ABReg.reg_mdit_head, + selector: (list_text, from_line) => { + let mdRangeTmp = easySelector_headtail(list_text, from_line, "mdit", ABReg.reg_mdit_head); + if (!mdRangeTmp) + return null; + const mdRange = mdRangeTmp; + let last_nonempty = from_line; + let codeBlockFlag = ""; + for (let i = from_line + 1; i < list_text.length; i++) { + const line = list_text[i]; + if (codeBlockFlag == "") { + const match2 = line.match(ABReg.reg_code); + if (match2 && match2[3]) { + codeBlockFlag = match2[1] + match2[3]; + continue; + } + } else { + if (line.indexOf(codeBlockFlag) == 0) + codeBlockFlag = ""; + continue; + } + if (line.indexOf(mdRange.prefix) != 0) + break; + const line2 = line.replace(mdRange.prefix, ""); + if (ABReg.reg_emptyline_noprefix.test(line2)) { + continue; + } + last_nonempty = i; + if (line2.indexOf(mdRange.levelFlag) == 0) { + last_nonempty = i; + break; + } + } + mdRange.to_line = last_nonempty + 1; + mdRange.content = list_text.slice(from_line + 1, mdRange.to_line - 1).map((line) => { + return line.replace(mdRange.prefix, ""); + }).join("\n"); + return mdRange; + } +}; +registerMdSelector(mdSelector_headtail); +var mdSelector_list = { + id: "list", + name: "\u5217\u8868\u9009\u62E9\u5668", + match: ABReg.reg_list, + detail: "\u5728\u5217\u8868\u7684\u4E0A\u4E00/\u4E24\u884C\u52A0\u4E0A`[\u5904\u7406\u5668\u540D]`\u7684header\uFF0C\u6CE8\u610Fheader\u5FC5\u987B\u548C\u5217\u8868\u9996\u884C\u4F4D\u4E8E\u540C\u4E00\u5C42\u6B21", + selector: (list_text, from_line) => { + let mdRangeTmp = easySelector(list_text, from_line, "list", ABReg.reg_list); + if (!mdRangeTmp) + return null; + const mdRange = mdRangeTmp; + let last_nonempty = from_line; + for (let i = from_line + 1; i < list_text.length; i++) { + const line = list_text[i]; + if (line.indexOf(mdRange.prefix) != 0) + break; + const line2 = line.replace(mdRange.prefix, ""); + if (ABReg.reg_list_noprefix.test(line2)) { + last_nonempty = i; + continue; + } + if (ABReg.reg_indentline_noprefix.test(line2)) { + last_nonempty = i; + continue; + } + if (ABReg.reg_emptyline_noprefix.test(line2)) { + continue; + } + break; + } + mdRange.to_line = last_nonempty + 1; + mdRange.content = list_text.slice(from_line, mdRange.to_line).map((line) => { + return line.replace(mdRange.prefix, ""); + }).join("\n"); + return mdRange; + } +}; +registerMdSelector(mdSelector_list); +var mdSelector_code = { + id: "code", + name: "\u4EE3\u7801\u9009\u62E9\u5668", + match: ABReg.reg_code, + detail: "\u5728\u4EE3\u7801\u5757\u7684\u4E0A\u4E00/\u4E24\u884C\u52A0\u4E0A`[\u5904\u7406\u5668\u540D]`\u7684header\uFF0C\u6CE8\u610Fheader\u5FC5\u987B\u548C\u4EE3\u7801\u5757\u9996\u884C\u4F4D\u4E8E\u540C\u4E00\u5C42\u6B21", + selector: (list_text, from_line) => { + let mdRangeTmp = easySelector(list_text, from_line, "code", ABReg.reg_code); + if (!mdRangeTmp) + return null; + const mdRange = mdRangeTmp; + let last_nonempty = from_line; + for (let i = from_line + 1; i < list_text.length; i++) { + const line = list_text[i]; + if (line.indexOf(mdRange.prefix) != 0) + break; + const line2 = line.replace(mdRange.prefix, ""); + if (ABReg.reg_emptyline_noprefix.test(line2)) { + continue; + } + last_nonempty = i; + if (line2.indexOf(mdRange.levelFlag) == 0) { + last_nonempty = i; + break; + } + } + mdRange.to_line = last_nonempty + 1; + mdRange.content = list_text.slice(from_line, mdRange.to_line).map((line) => { + return line.replace(mdRange.prefix, ""); + }).join("\n"); + return mdRange; + } +}; +registerMdSelector(mdSelector_code); +var mdSelector_quote = { + id: "quote", + name: "\u5F15\u7528\u5757\u9009\u62E9\u5668", + match: ABReg.reg_quote, + detail: "\u5728\u5F15\u7528\u5757\u7684\u4E0A\u4E00/\u4E24\u884C\u52A0\u4E0A`[\u5904\u7406\u5668\u540D]`\u7684header\uFF0C\u6CE8\u610Fheader\u5FC5\u987B\u548C\u5F15\u7528\u5757\u9996\u884C\u4F4D\u4E8E\u540C\u4E00\u5C42\u6B21", + selector: (list_text, from_line) => { + let mdRangeTmp = easySelector(list_text, from_line, "quote", ABReg.reg_quote); + if (!mdRangeTmp) + return null; + const mdRange = mdRangeTmp; + let last_nonempty = from_line; + for (let i = from_line + 1; i < list_text.length; i++) { + const line = list_text[i]; + if (line.indexOf(mdRange.prefix) != 0) + break; + const line2 = line.replace(mdRange.prefix, ""); + if (ABReg.reg_quote_noprefix.test(line2)) { + last_nonempty = i; + continue; + } + break; + } + mdRange.to_line = last_nonempty + 1; + mdRange.content = list_text.slice(from_line, mdRange.to_line).map((line) => { + return line.replace(mdRange.prefix, ""); + }).join("\n"); + return mdRange; + } +}; +registerMdSelector(mdSelector_quote); +var mdSelector_table = { + id: "table", + name: "\u8868\u683C\u9009\u62E9\u5668", + match: ABReg.reg_table, + detail: "\u5728\u8868\u683C\u7684\u4E0A\u4E00/\u4E24\u884C\u52A0\u4E0A`[\u5904\u7406\u5668\u540D]`\u7684header\uFF0C\u6CE8\u610Fheader\u5FC5\u987B\u548C\u8868\u683C\u9996\u884C\u4F4D\u4E8E\u540C\u4E00\u5C42\u6B21", + selector: (list_text, from_line) => { + let mdRangeTmp = easySelector(list_text, from_line, "table", ABReg.reg_table); + if (!mdRangeTmp) + return null; + const mdRange = mdRangeTmp; + let last_nonempty = from_line; + for (let i = from_line + 1; i < list_text.length; i++) { + const line = list_text[i]; + if (line.indexOf(mdRange.prefix) != 0) + break; + const line2 = line.replace(mdRange.prefix, ""); + if (ABReg.reg_table_noprefix.test(line2)) { + last_nonempty = i; + continue; + } + break; + } + mdRange.to_line = last_nonempty + 1; + mdRange.content = list_text.slice(from_line, mdRange.to_line).map((line) => { + return line.replace(mdRange.prefix, ""); + }).join("\n"); + return mdRange; + } +}; +registerMdSelector(mdSelector_table); +var mdSelector_heading = { + id: "heading", + name: "\u6807\u9898\u9009\u62E9\u5668", + match: ABReg.reg_heading, + detail: "\u5728\u6807\u9898\u7684\u4E0A\u4E00/\u4E24\u884C\u52A0\u4E0A`[\u5904\u7406\u5668\u540D]`\u7684header\uFF0C\u6CE8\u610Fheader\u5FC5\u987B\u548C\u6807\u9898\u9996\u884C\u4F4D\u4E8E\u540C\u4E00\u5C42\u6B21", + selector: (list_text, from_line) => { + let mdRangeTmp = easySelector(list_text, from_line, "heading", ABReg.reg_heading); + if (!mdRangeTmp) + return null; + const mdRange = mdRangeTmp; + let last_nonempty = from_line; + let codeBlockFlag = ""; + for (let i = from_line + 1; i < list_text.length; i++) { + const line = list_text[i]; + if (codeBlockFlag == "") { + const match3 = line.match(ABReg.reg_code); + if (match3 && match3[3]) { + codeBlockFlag = match3[1] + match3[3]; + continue; + } + } else { + if (line.indexOf(codeBlockFlag) == 0) + codeBlockFlag = ""; + continue; + } + if (line.indexOf(mdRange.prefix) != 0) + break; + const line2 = line.replace(mdRange.prefix, ""); + if (ABReg.reg_emptyline_noprefix.test(line2)) { + continue; + } + const match2 = line2.match(ABReg.reg_heading_noprefix); + if (!match2) { + last_nonempty = i; + continue; + } + if (match2[3].length < mdRange.levelFlag.length) { + break; + } + last_nonempty = i; + } + mdRange.to_line = last_nonempty + 1; + mdRange.content = list_text.slice(from_line, mdRange.to_line).map((line) => { + return line.replace(mdRange.prefix, ""); + }).join("\n"); + return mdRange; + } +}; +registerMdSelector(mdSelector_heading); + +// locales/helper.ts +var import_obsidian3 = require("obsidian"); + +// locales/en.ts +var en_default = { + "see website for detail": `See + website + / + github + for more details`, + "Selector manager": "Selector manager", + "Selector manager2": "This section is for query only and cannot be edited", + "AliasSystem manager": "Alias system manager", + "AliasSystem manager2": "It can be viewed in the main page using the `[info_alias]` processor", + "AliasSystem manager3": "This section can also be modified by opening the `data.json` file in the plugin folder", + "AliasSystem manager4": "Add a new registration instruction", + "AliasSystem manager5": "Add a new registration instructionAdd a new registration instruction (old, will not be used)", + "Convertor manager": "Convertor manager", + "Convertor manager2": "It can be viewed in the main page using the `[info_converter]` processor", + "Convertor manager3": "This section is for query only and cannot be edited", + "Custom alias": "Custom alias", + "Custom alias2": "Alias matching rule", + "Custom alias3": "If `/` is used to enclose it, it indicates a regular expression.", + "Custom alias4": "Alias replacement", + "Custom alias5": "The parameter-based replacement function is currently not available. It will be enabled only when there is a need for multiple users.", + "Custom processor": "Custom processor - deprecated", + "Custom processor2": "Processor id", + "Custom processor3": "Without conflicting with other processors", + "Custom processor4": "Processor name", + "Custom processor5": "You can fill it in freely. It's for your own reference", + "Custom processor6": "Processor matching rule", + "Custom processor7": "Using `/` including it indicates a regular expression", + "Custom processor8": "Processor replacement", + "Custom processor9": "Using `/` including it indicates a regular expression", + "Submit": "Submit", + "Edit": "Edit", + "Refresh": "Refresh", + "Delete": "Delete", + "Save": "Save", + "Cancel": "Cancel", + "Close": "Close" +}; + +// locales/zh-cn.ts +var zh_cn_default = { + "see website for detail": `\u67E5\u770B + website + / + github + \u6587\u6863\u4EE5\u83B7\u53D6\u66F4\u591A\u7EC6\u8282`, + "Selector manager": "\u9009\u62E9\u5668\u7684\u7BA1\u7406", + "Selector manager2": "\u8FD9\u4E00\u90E8\u5206\u4EC5\u4F9B\u67E5\u8BE2\u4E0D\u53EF\u7F16\u8F91", + "AliasSystem manager": "Alias system manager", + "AliasSystem manager2": "\u8FD9\u90E8\u5206\u5185\u5BB9\u53EF\u4EE5\u4F7F\u7528 `[info_alias]` \u5904\u7406\u5668\u5728\u4E3B\u9875\u9762\u4E2D\u67E5\u770B", + "AliasSystem manager3": "\u8FD9\u90E8\u5206\u4E5F\u53EF\u4EE5\u6253\u5F00\u63D2\u4EF6\u6587\u4EF6\u5939\u4E2D\u7684 `data.json` \u6587\u4EF6\u4FEE\u6539", + "AliasSystem manager4": "\u6DFB\u52A0\u65B0\u7684\u6CE8\u518C\u6307\u4EE4", + "AliasSystem manager5": "\u6DFB\u52A0\u65B0\u7684\u6CE8\u518C\u6307\u4EE4 - \u65E7\u7248\uFF0C\u5C06\u5F03\u7528", + "Convertor manager": "\u8F6C\u6362\u5668/\u5904\u7406\u5668\u7684\u7BA1\u7406", + "Convertor manager2": "\u8FD9\u90E8\u5206\u5185\u5BB9\u53EF\u4EE5\u4F7F\u7528 `[info_converter]` \u5904\u7406\u5668\u5728\u4E3B\u9875\u9762\u4E2D\u67E5\u770B", + "Convertor manager3": "\u8FD9\u4E00\u90E8\u5206\u4EC5\u4F9B\u67E5\u8BE2\u4E0D\u53EF\u7F16\u8F91", + "Custom alias": "\u81EA\u5B9A\u4E49\u522B\u540D", + "Custom alias2": "\u522B\u540D\u5339\u914D\u89C4\u5219", + "Custom alias3": "\u82E5\u7528`/`\u5305\u62EC\u8D77\u6765\u5219\u8868\u793A\u6B63\u5219", + "Custom alias4": "\u522B\u540D\u66FF\u6362\u4E3A", + "Custom alias5": "\u6682\u4E0D\u5F00\u653E\u5E26\u53C2\u6570\u7684\u66FF\u6362\u529F\u80FD\uFF0C\u5982\u591A\u4EBA\u9700\u8981\u624D\u5F00\u653E", + "Custom processor": "\u81EA\u5B9A\u4E49\u5904\u7406\u5668 - \u5C06\u5E9F\u5F03", + "Custom processor2": "\u5904\u7406\u5668\u552F\u4E00id", + "Custom processor3": "\u4E0D\u4E0E\u5176\u4ED6\u5904\u7406\u5668\u51B2\u7A81\u5373\u53EF", + "Custom processor4": "\u6CE8\u518C\u5668\u540D", + "Custom processor5": "\u53EF\u4EE5\u968F\u4FBF\u586B\uFF0C\u7ED9\u81EA\u5DF1\u770B\u7684", + "Custom processor6": "\u6CE8\u518C\u5668\u5339\u914D\u540D", + "Custom processor7": "\u7528 `/` \u5305\u62EC\u8D77\u6765\u5219\u8868\u793A\u6B63\u5219", + "Custom processor8": "\u6CE8\u518C\u5668\u66FF\u6362\u4E3A", + "Custom processor9": "\u7528 `/` \u5305\u62EC\u8D77\u6765\u5219\u8868\u793A\u6B63\u5219", + "Submit": "\u63D0\u4EA4", + "Edit": "\u7F16\u8F91", + "Refresh": "\u5237\u65B0", + "Delete": "\u5220\u9664", + "Save": "\u4FDD\u5B58", + "Cancel": "\u53D6\u6D88", + "Close": "\u5173\u95ED" +}; + +// locales/helper.ts +var localeMap = { + en: en_default, + "zh": zh_cn_default, + "zh-TW": zh_cn_default +}; +var locale = localeMap[(0, import_obsidian3.getLanguage)()]; +function t(str) { + return locale && locale[str] || en_default[str]; +} + +// config/ABSettingTab.ts +var AB_SETTINGS = { + select_list: "ifhead" /* ifhead */, + select_quote: "ifhead" /* ifhead */, + select_code: "ifhead" /* ifhead */, + select_heading: "ifhead" /* ifhead */, + select_brace: "yes" /* yes */, + decoration_source: "none" /* none */, + decoration_live: "block" /* block */, + decoration_render: "block" /* block */, + is_neg_level: false, + alias_use_default: true, + alias_user: [ + { + "regex": "|alias_demo|", + "replacement": "|addClass(ab-custom-text-red)|addClass(ab-custom-bg-blue)|" + }, + { + "regex": "/\\|alias_reg_demo\\|/", + "replacement": "|addClass(ab-custom-text-red)|addClass(ab-custom-bg-blue)|" + } + ], + user_processor: [{ + "id": "alias2_demo", + "name": "alias2_demo", + "match": "alias2_demo", + "process_alias": "|addClass(ab-custom-text-blue)|addClass(ab-custom-bg-red)|" + }], + is_debug: false, + enhance_refresh_time: 2e3, + inline_split: "/\\| |, |\uFF0C |\\. |\u3002 |: |\uFF1A /" +}; +var ABSettingTab = class extends import_obsidian4.PluginSettingTab { + constructor(app2, plugin2) { + super(app2, plugin2); + this.plugin = plugin2; + ABCSetting.is_debug = this.plugin.settings.is_debug; + ABReg.inline_split = new RegExp(this.plugin.settings.inline_split.slice(1, -1)); + if (!plugin2.settings.alias_use_default) { + ABAlias_json.length = 0; + } + for (let item of plugin2.settings.alias_user) { + let newReg; + if (/^\/.*\/$/.test(item.regex)) { + newReg = new RegExp(item.regex.slice(1, -1)); + } else { + newReg = item.regex; + } + ABAlias_json.push({ + regex: newReg, + replacement: item.replacement + }); + } + for (let item of plugin2.settings.user_processor) { + ABConvert.factory(item); + } + } + display() { + const { containerEl } = this; + containerEl.empty(); + let settings = this.plugin.settings; + const div_url = containerEl.createEl("div"); + div_url.empty(); + div_url.appendChild((0, import_obsidian4.sanitizeHTMLToDom)(t("see website for detail"))); + containerEl.createEl("hr", { cls: "bright-color" }); + new import_obsidian4.Setting(containerEl).setName(t("Selector manager")).setHeading(); + containerEl.createEl("p", { text: t("Selector manager2") }); + this.selectorPanel = generateSelectorInfoTable(containerEl); + containerEl.createEl("hr", { cls: "bright-color" }); + new import_obsidian4.Setting(containerEl).setName(t("AliasSystem manager")).setHeading(); + containerEl.createEl("p", { text: t("AliasSystem manager2") }); + containerEl.createEl("p", { text: t("AliasSystem manager3") }); + new import_obsidian4.Setting(containerEl).setName(t("AliasSystem manager4")).addButton((component) => { + component.setIcon("plus-circle").onClick((e) => { + new ABModal_alias(this.app, async (result) => { + let newReg; + if (/^\/.*\/$/.test(result.regex)) { + newReg = new RegExp(result.regex.slice(1, -1)); + } else { + newReg = result.regex; + } + ABAlias_json.push({ + regex: newReg, + replacement: result.replacement + }); + await this.plugin.saveSettings(); + }).open(); + }); + }); + new import_obsidian4.Setting(containerEl).setName(t("AliasSystem manager5")).addButton((component) => { + component.setIcon("plus-circle").onClick((e) => { + new ABProcessorModal(this.app, async (result) => { + ABConvert.factory(result); + settings.user_processor.push(result); + await this.plugin.saveSettings(); + this.processorPanel.remove(); + const div2 = containerEl.createEl("div"); + ABConvertManager.autoABConvert(div2, "info_converter", "", "null_content"); + this.processorPanel = div2; + }).open(); + }); + }); + containerEl.createEl("hr", { cls: "bright-color" }); + new import_obsidian4.Setting(containerEl).setName("").setHeading(); + containerEl.createEl("p", { text: t("Convertor manager") }); + containerEl.createEl("p", { text: t("Convertor manager2") }); + containerEl.createEl("p", { text: t("Convertor manager3") }); + const div = containerEl.createEl("div"); + ABConvertManager.autoABConvert(div, "info_converter", "", "null_content"); + this.processorPanel = div; + } +}; +var ABProcessorModal = class extends import_obsidian4.Modal { + constructor(app2, onSubmit) { + super(app2); + this.args = { + id: "", + name: "", + match: "", + process_alias: "" + }; + this.onSubmit = onSubmit; + } + onOpen() { + let { contentEl } = this; + contentEl.setText(t("Custom processor")); + contentEl.createEl("p", { text: "" }); + new import_obsidian4.Setting(contentEl).setName(t("Custom processor2")).setDesc(t("Custom processor3")).addText((text4) => { + text4.onChange((value) => { + this.args.id = value; + }); + }); + new import_obsidian4.Setting(contentEl).setName(t("Custom processor4")).setDesc(t("Custom processor5")).addText((text4) => { + text4.onChange((value) => { + this.args.name = value; + }); + }); + new import_obsidian4.Setting(contentEl).setName(t("Custom processor6")).setDesc(t("Custom processor7")).addText((text4) => { + text4.onChange((value) => { + this.args.match = value; + }); + }); + new import_obsidian4.Setting(contentEl).setName(t("Custom processor8")).setDesc(t("Custom processor9")).addText((text4) => { + text4.onChange((value) => { + this.args.process_alias = value; + }); + }); + new import_obsidian4.Setting(contentEl).addButton((btn) => { + btn.setButtonText(t("Submit")).setCta().onClick(() => { + if (this.args.id && this.args.name && this.args.match && this.args.process_alias) { + this.close(); + this.onSubmit(this.args); + } + }); + }); + } + onClose() { + let { contentEl } = this; + contentEl.empty(); + } +}; +var ABModal_alias = class extends import_obsidian4.Modal { + constructor(app2, onSubmit) { + super(app2); + this.args = { + regex: "", + replacement: "" + }; + this.onSubmit = onSubmit; + } + onOpen() { + let { contentEl } = this; + contentEl.setText(t("Custom alias")); + contentEl.createEl("p", { text: "" }); + new import_obsidian4.Setting(contentEl).setName(t("Custom alias2")).setDesc(t("Custom alias3")).addText((text4) => { + text4.onChange((value) => { + this.args.regex = value; + }); + }); + new import_obsidian4.Setting(contentEl).setName(t("Custom alias4")).setDesc(t("Custom alias5")).addText((text4) => { + text4.onChange((value) => { + this.args.replacement = value; + }); + }); + new import_obsidian4.Setting(contentEl).addButton((btn) => { + btn.setButtonText(t("Submit")).setCta().onClick(() => { + if (this.args.regex && this.args.replacement) { + this.close(); + this.onSubmit(this.args); + } + }); + }); + } + onClose() { + let { contentEl } = this; + contentEl.empty(); + } +}; + +// ab_manager/abm_cm/ABStateManager.ts +var global_timer = null; +var ABStateManager = class { + constructor(plugin_this) { + this.replace_this = this; + this.decorationField = import_state.StateField.define({ + create: (editorState) => { + return import_view2.Decoration.none; + }, + update: (decorationSet, tr) => { + return this.onUpdate(decorationSet, tr); + }, + provide: (f) => import_view2.EditorView.decorations.from(f) + }); + this.plugin_this = plugin_this; + let ret = this.constructor_init(); + if (this.plugin_this.settings.is_debug) + console.log(">>> ABStateManager, initialFileName:", this.initialFileName, "initRet:", ret); + if (ret) + this.setStateEffects(); + { + if (global_timer !== null) { + window.clearInterval(global_timer); + global_timer = null; + } + if (plugin_this.settings.enhance_refresh_time > 0) { + if (plugin_this.settings.enhance_refresh_time < 500) + plugin_this.settings.enhance_refresh_time = 500; + global_timer = window.setInterval(() => { + if (plugin_this.settings.is_debug) + console.log(" auto refresh event:", this.initialFileName); + abConvertEvent(document, true); + }, plugin_this.settings.enhance_refresh_time); + } + } + abConvertEvent(document); + } + constructor_init() { + var _a3; + const view = this.plugin_this.app.workspace.getActiveViewOfType(import_obsidian5.MarkdownView); + if (!view) + return false; + this.view = view; + this.initialFileName = (_a3 = this.view.file) == null ? void 0 : _a3.basename; + this.editor = this.view.editor; + this.editorView = this.editor.cm; + this.editorState = this.editorView.state; + this.is_prev_cursor_in = true; + this.prev_decoration_mode = "none" /* none */; + this.prev_editor_mode = 0 /* NONE */; + return true; + } + destructor() { + if (this.plugin_this.settings.is_debug) + console.log("<<< ABStateManager, initialFileName:", this.initialFileName); + if (global_timer !== null) { + window.clearInterval(global_timer); + global_timer = null; + } + } + setStateEffects() { + let stateEffects = []; + if (!this.editorState.field(this.decorationField, false)) { + stateEffects.push(import_state.StateEffect.appendConfig.of( + [this.decorationField] + )); + } + this.editorView.dispatch({ effects: stateEffects }); + return true; + } + onUpdate(decorationSet, tr) { + let editor_mode = this.getEditorMode(); + let decoration_mode; + if (editor_mode == 1 /* SOURCE */) { + decoration_mode = this.plugin_this.settings.decoration_source; + } else if (editor_mode == 2 /* SOURCE_LIVE */) { + decoration_mode = this.plugin_this.settings.decoration_live; + } else { + decoration_mode = this.plugin_this.settings.decoration_render; + } + return this.onUpdate_refresh(decorationSet, tr, decoration_mode, editor_mode); + } + onUpdate_refresh(decorationSet, tr, decoration_mode, editor_mode) { + if (decoration_mode == "none" /* none */) { + if (decoration_mode != this.prev_decoration_mode) { + decorationSet = decorationSet.update({ + filter: (from, to, value) => { + return false; + } + }); + } else { + } + this.is_prev_cursor_in = true; + this.prev_decoration_mode = decoration_mode; + this.prev_editor_mode = editor_mode; + return decorationSet; + } + try { + decorationSet = decorationSet.map(tr.changes); + } catch (e) { + console.warn("decorationSet map error, maybe paste ab at end", e); + } + const list_rangeSpec = autoMdSelector(this.getMdText(tr)); + let list_decoration_nochange = []; + let list_decoration_change = []; + const cursorSpec = this.getCursorCh(tr); + const cursorSpec_last = this.getCursorCh(); + let is_current_cursor_in = false; + for (let rangeSpec of list_rangeSpec) { + let isCursorIn = false; + let isCursonIn_last = false; + if (cursorSpec.from >= rangeSpec.from_ch && cursorSpec.from <= rangeSpec.to_ch || cursorSpec.to >= rangeSpec.from_ch && cursorSpec.to <= rangeSpec.to_ch) { + isCursorIn = true; + } + if (cursorSpec_last.from >= rangeSpec.from_ch && cursorSpec_last.from <= rangeSpec.to_ch || cursorSpec_last.to >= rangeSpec.from_ch && cursorSpec_last.to <= rangeSpec.to_ch) { + isCursonIn_last = true; + } + if (isCursorIn) { + is_current_cursor_in = true; + const decoration = import_view2.Decoration.mark({ class: "ab-line-yellow" }); + list_decoration_change.push(decoration.range(rangeSpec.from_ch, rangeSpec.to_ch)); + } else if (isCursonIn_last) { + const decoration = import_view2.Decoration.replace({ + widget: new ABReplacer_Widget(rangeSpec, this.editor) + }); + list_decoration_change.push(decoration.range(rangeSpec.from_ch, rangeSpec.to_ch)); + } else { + const decoration = import_view2.Decoration.replace({ + widget: new ABReplacer_Widget(rangeSpec, this.editor) + }); + list_decoration_nochange.push(decoration.range(rangeSpec.from_ch, rangeSpec.to_ch)); + } + } + if (list_decoration_change.length == 0 && is_current_cursor_in == this.is_prev_cursor_in && decoration_mode == this.prev_decoration_mode && editor_mode == this.prev_editor_mode) { + return decorationSet; + } + let debug_count1 = 0, debug_count2 = 0, debug_count3 = 0, debug_count4 = 0; + decorationSet = decorationSet.update({ + filter(from, to, value) { + for (let i = 0; i < list_decoration_nochange.length; i++) { + const item = list_decoration_nochange[i]; + if (item.from == from && item.to == to) { + debug_count1++; + list_decoration_nochange.splice(i, 1); + return true; + } + } + debug_count1++; + debug_count2++; + return false; + } + }); + for (const item of list_decoration_nochange) { + debug_count3++; + decorationSet = decorationSet.update({ + add: [item] + }); + } + for (const item of list_decoration_change) { + debug_count4++; + decorationSet = decorationSet.update({ + add: [item] + }); + } + if (this.plugin_this.settings.is_debug) + console.log(`ab cm \u88C5\u9970\u96C6\u53D8\u5316: ${debug_count1} -${debug_count2}+${debug_count3}+${debug_count4}`); + this.is_prev_cursor_in = is_current_cursor_in; + this.prev_decoration_mode = decoration_mode; + this.prev_editor_mode = editor_mode; + return decorationSet; + } + getEditorMode() { + var _a3; + let editor_dom = (_a3 = this.plugin_this.app.workspace.getActiveViewOfType(import_obsidian5.MarkdownView)) == null ? void 0 : _a3.containerEl; + if (!editor_dom) { + return 0 /* NONE */; + } + let str = editor_dom == null ? void 0 : editor_dom.getAttribute("data-mode"); + if (str == "source") { + editor_dom = editor_dom == null ? void 0 : editor_dom.getElementsByClassName("markdown-source-view")[0]; + if (editor_dom == null ? void 0 : editor_dom.classList.contains("is-live-preview")) + return 2 /* SOURCE_LIVE */; + else + return 1 /* SOURCE */; + } else if (str == "preview") { + return 3 /* PREVIEW */; + } else { + return 0 /* NONE */; + } + } + getCursorCh(tr) { + var _a3, _b; + const ranges = (_b = (_a3 = tr == null ? void 0 : tr.state) == null ? void 0 : _a3.selection) == null ? void 0 : _b.ranges; + if (ranges && ranges.length == 1) { + return { + from: ranges[0].from, + to: ranges[0].to + }; + } + let cursor_from_ch = 0; + let cursor_to_ch = 0; + let list_text = this.editor.getValue().split("\n"); + for (let i = 0; i <= this.editor.getCursor("to").line; i++) { + if (this.editor.getCursor("from").line == i) { + cursor_from_ch = cursor_to_ch + this.editor.getCursor("from").ch; + } + if (this.editor.getCursor("to").line == i) { + cursor_to_ch = cursor_to_ch + this.editor.getCursor("to").ch; + break; + } + cursor_to_ch += list_text[i].length + 1; + } + return { + from: cursor_from_ch, + to: cursor_to_ch + }; + } + getMdText(tr) { + var _a3, _b; + const mdText = (_b = (_a3 = tr == null ? void 0 : tr.state) == null ? void 0 : _a3.doc) == null ? void 0 : _b.toString(); + if (mdText) { + return mdText; + } + return this.editor.getValue(); + } + setPos(cursorSepc) { + window.setTimeout(() => { + const newSelection = import_state.EditorSelection.create([ + import_state.EditorSelection.range(cursorSepc, cursorSepc) + ]); + this.editorView.dispatch({ + selection: newSelection + }); + }, 50); + } +}; + +// ab_manager/abm_html/ABSelector_PostHtml.ts +var import_html_to_md = __toESM(require_dist()); +var import_obsidian7 = require("obsidian"); + +// ab_manager/abm_html/ABReplacer_Render.ts +var import_obsidian6 = require("obsidian"); +var ABReplacer_Render = class extends import_obsidian6.MarkdownRenderChild { + constructor(containerEl, header, content, selectorName = "replacer_default") { + super(containerEl); + this.header = header; + this.content = content; + this.selectorName = selectorName; + } + onload() { + const div = this.containerEl.createDiv({ + cls: ["ab-replace", "cm-embed-block"] + }); + div.setAttribute("type_header", this.header); + const dom_note = div.createDiv({ + cls: ["ab-note", "drop-shadow"] + }); + let dom_replaceEl = dom_note.createDiv({ + cls: ["ab-replaceEl"] + }); + ABConvertManager.autoABConvert(dom_replaceEl, this.header, this.content, this.selectorName); + this.containerEl.replaceWith(div); + let dom_edit2 = div.createEl("div", { + cls: ["ab-button", "ab-button-1", "edit-block-button"], + attr: { "aria-label": "Refresh the block" } + }); + dom_edit2.empty(); + dom_edit2.appendChild((0, import_obsidian6.sanitizeHTMLToDom)(ABReplacer_Widget.STR_ICON_REFRESH)); + dom_edit2.onclick = () => { + abConvertEvent(div); + }; + const dom_edit = div.createEl("div", { + cls: ["ab-button", "ab-button-2", "edit-block-button", "ab-button-select"] + }); + const dom_edit_mask = dom_edit.createEl("button", {}); + dom_edit_mask.empty(); + dom_edit_mask.appendChild((0, import_obsidian6.sanitizeHTMLToDom)(``)); + const dom_edit_select = dom_edit.createEl("select", { + attr: { "aria-label": "Change the block - " + this.header } + }); + const first_dom_option = dom_edit_select.createEl("option", { + text: "\u590D\u5408\u683C\u5F0F:" + this.header, + attr: { "value": this.header, "title": this.header } + }); + first_dom_option.selected = true; + let header_name_flag = ""; + for (let item of ABConvertManager.getInstance().getConvertOptions()) { + const dom_option = dom_edit_select.createEl("option", { + text: item.name, + attr: { "value": item.id } + }); + if (this.header == item.id) { + header_name_flag = item.name; + } + } + if (header_name_flag != "") { + first_dom_option.setText(header_name_flag); + } + dom_edit_select.onchange = () => { + const new_header = dom_edit_select.options[dom_edit_select.selectedIndex].value; + const new_dom_replaceEl = dom_note.createDiv({ + cls: ["ab-replaceEl"] + }); + ABConvertManager.autoABConvert(new_dom_replaceEl, new_header, this.content, this.selectorName); + dom_replaceEl.replaceWith(new_dom_replaceEl); + dom_replaceEl = new_dom_replaceEl; + }; + const button_show = () => { + dom_edit.show(); + dom_edit2.show(); + }; + const button_hide = () => { + dom_edit.hide(); + dom_edit2.hide(); + }; + button_hide(); + dom_note.onmouseover = button_show; + dom_note.onmouseout = button_hide; + dom_edit.onmouseover = button_show; + dom_edit.onmouseout = button_hide; + dom_edit2.onmouseover = button_show; + dom_edit2.onmouseout = button_hide; + } +}; +ABReplacer_Render.str_icon_code2 = ``; + +// ab_manager/abm_html/ABSelector_PostHtml.ts +var ABSelector_PostHtml = class { + static processor(el, ctx) { + var _a3, _b, _c, _d, _e, _f, _g; + ABCSetting.global_ctx = ctx; + if (this.settings.decoration_render == "none" /* none */) + return; + const mdSrc = getSourceMarkdown(el, ctx); + if (!mdSrc) { + if (false) + console.log(" -- ABPosthtmlManager.processor, called by 'ReRender'"); + if (!el.classList.contains("markdown-rendered") && !((_c = (_b = (_a3 = el.parentElement) == null ? void 0 : _a3.parentElement) == null ? void 0 : _b.classList) == null ? void 0 : _c.contains("block-language-dataviewjs")) && !((_f = (_e = (_d = el.parentElement) == null ? void 0 : _d.parentElement) == null ? void 0 : _e.classList) == null ? void 0 : _f.contains("block-language-dataview"))) + return; + const calloutEl = el.querySelector(":scope>div>div.callout-content"); + if (calloutEl) { + el = calloutEl; + el.classList.add("ab-note"); + } + findABBlock_recurve(el); + return; + } else { + const is_start = mdSrc.from_line == 0 || mdSrc.content_all.split("\n").slice(0, mdSrc.from_line).join("\n").trim() == ""; + const is_end = mdSrc.to_line == mdSrc.to_line_all; + let is_newContent = false; + let is_subContent = false; + let cache_item = { + name: ctx.sourcePath, + content: mdSrc.content_all + }; + ; + (() => { + var _a4, _b2, _c2; + const ppEl = (_b2 = (_a4 = el.parentElement) == null ? void 0 : _a4.parentElement) == null ? void 0 : _b2.parentElement; + if (!ppEl) { + is_newContent = false; + is_subContent = true; + return; + } else if (ppEl.classList.contains("markdown-embed-content")) { + is_newContent = false; + is_subContent = true; + return; + } + const view = this.app.workspace.getActiveViewOfType(import_obsidian7.MarkdownView); + const path = (_c2 = view == null ? void 0 : view.file) == null ? void 0 : _c2.path; + if (path && path !== ctx.sourcePath) { + if (this.settings.is_debug) + console.log(` !! Cache check: [${path}] use ![[${ctx.sourcePath}]] `); + is_newContent = false; + is_subContent = true; + return; + } + const containerEl = view == null ? void 0 : view.containerEl; + if (!containerEl || containerEl.getAttribute("data-mode") != "preview" || containerEl.getAttribute("data-type") != "markdown") { + if (this.settings.is_debug) + console.log(` !! Cache check: [${path}] use ![[${ctx.sourcePath}]] in no readmode`, containerEl); + is_newContent = false; + is_subContent = true; + return; + } + for (let item of cache_map) { + if (item.name == ctx.sourcePath) { + cache_item = item; + break; + } + } + if (!cache_item) { + cache_map.push(cache_item); + is_newContent = true; + if (this.settings.is_debug) + console.log(" !! \u65E0\u7F13\u5B58 -> \u6709\u4FEE\u6539, perform a global refresh (rebuildView): ", cache_item, ctx); + } else { + if (cache_item.content != mdSrc.content_all) { + cache_item.content = mdSrc.content_all; + is_newContent = true; + if (this.settings.is_debug) + console.log(" !! \u6709\u7F13\u5B58, \u5185\u5BB9\u53D8 -> \u6709\u4FEE\u6539, perform a global refresh (rebuildView): ", cache_item, ctx); + } else { + is_newContent = false; + } + } + })(); + if (is_newContent || is_start) { + selected_els = []; + selected_mdSrc = null; + } + if (this.settings.is_debug) { + console.log( + ` -- ABPosthtmlManager.processor, called by 'ReadMode'. [current] [${mdSrc.from_line},${mdSrc.to_line})/${mdSrc.to_line_all}. ${is_start ? "is_start " : ""}${is_end ? "is_end " : ""}[last] ${selected_mdSrc && selected_mdSrc.header ? "in ABBlock: " + selected_mdSrc.header + ". " : ""}` + ); + } + if (!is_subContent && is_newContent) { + if (/\n((\s|>\s|-\s|\*\s|\+\s)*)(%%)?(\[((?!toc)(?!TOC)[0-9a-zA-Z\u4e00-\u9fa5].*)\]):?(%%)?\s*\n/.test(cache_item.content) || /\n((\s|>\s|-\s|\*\s|\+\s)*)(:::)\s?(\S*)\n/.test(cache_item.content)) { + const leaf = (_g = this.app.workspace.getActiveViewOfType(import_obsidian7.MarkdownView)) == null ? void 0 : _g.leaf; + if (!leaf) { + return; + } + leaf.rebuildView(); + return; + } + } + for (let i = 0; i < el.children.length; i++) { + const subEl = el.children[i]; + findABBlock_cross(subEl, ctx, is_end, i); + } + if (is_end) { + findABBlock_end(); + } + } + } +}; +function findABBlock_recurve(targetEl) { + var _a3; + for (let i = 0; i < targetEl.children.length; i++) { + const contentEl = targetEl.children[i]; + if (!(contentEl instanceof HTMLUListElement || contentEl instanceof HTMLQuoteElement || contentEl instanceof HTMLPreElement || contentEl instanceof HTMLTableElement)) + continue; + const headerEl = i == 0 ? null : targetEl.children[i - 1]; + if (i == 0 || !(headerEl instanceof HTMLParagraphElement)) { + if (contentEl instanceof HTMLUListElement || contentEl instanceof HTMLQuoteElement) + findABBlock_recurve(contentEl); + continue; + } + const header_match = headerEl.getText().match(ABReg.reg_header); + if (!header_match) { + if (contentEl instanceof HTMLUListElement || contentEl instanceof HTMLQuoteElement) + findABBlock_recurve(contentEl); + continue; + } + const header_str = header_match[5]; + const newEl = document.createElement("div"); + newEl.addClass("ab-re-rendered"); + (_a3 = headerEl.parentNode) == null ? void 0 : _a3.insertBefore(newEl, headerEl.nextSibling); + ABConvertManager.autoABConvert(newEl, header_str, (0, import_html_to_md.default)(contentEl.innerHTML), "postHtml"); + contentEl.hide(); + headerEl.hide(); + } +} +function findABBlock_end() { + abConvertEvent(document); +} +var cache_map = []; +var selected_els = []; +var selected_mdSrc = null; +function findABBlock_cross(targetEl, ctx, is_last = false, sub_index) { + const current_mdSrc = getSourceMarkdown(targetEl, ctx); + if (!current_mdSrc) { + return false; + } + if (selected_mdSrc && selected_mdSrc.header) { + if (!selected_mdSrc.seFlag) { + if (current_mdSrc.type == "list" || current_mdSrc.type == "code" || current_mdSrc.type == "quote" || current_mdSrc.type == "table") { + if (current_mdSrc.type == "list") { + if (current_mdSrc.header.indexOf("2") == 0) + current_mdSrc.header = "list" + current_mdSrc.header; + } + selected_els.push(targetEl); + selected_mdSrc.to_line = current_mdSrc.to_line; + if (sub_index == 0) { + selected_mdSrc.content += "\n\n" + current_mdSrc.content; + } + ; + const replaceEl = selected_els.pop(); + if (replaceEl) { + ctx.addChild(new ABReplacer_Render(replaceEl, selected_mdSrc.header, selected_mdSrc.content.split("\n").slice(2).join("\n"), selected_mdSrc.type)); + for (const el of selected_els) { + el.hide(); + } + ; + selected_mdSrc = null; + selected_els = []; + } + } else if (current_mdSrc.type == "heading" || current_mdSrc.type == "mdit") { + selected_els.push(targetEl); + selected_mdSrc.to_line = current_mdSrc.to_line; + if (sub_index == 0) { + selected_mdSrc.content += "\n\n" + current_mdSrc.content; + } + ; + selected_mdSrc.seFlag = current_mdSrc.seFlag; + } else { + selected_mdSrc = null; + selected_els = []; + } + } else { + if ((current_mdSrc.type == "mdit_tail" || current_mdSrc.type == "mdit") && selected_mdSrc.seFlag.length == current_mdSrc.seFlag.length) { + selected_els.push(targetEl); + selected_mdSrc.to_line = current_mdSrc.to_line; + if (sub_index == 0) { + selected_mdSrc.content += "\n\n" + current_mdSrc.content; + } + ; + const replaceEl = selected_els.pop(); + if (replaceEl) { + ctx.addChild(new ABReplacer_Render(replaceEl, selected_mdSrc.header, selected_mdSrc.content.split("\n").slice(2, -1).join("\n"), selected_mdSrc.type)); + for (const el of selected_els) { + el.hide(); + } + ; + selected_mdSrc = null; + selected_els = []; + } + } else if (current_mdSrc.type == "heading" && selected_mdSrc.seFlag.length > current_mdSrc.seFlag.length) { + const replaceEl = selected_els.pop(); + if (replaceEl) { + ctx.addChild(new ABReplacer_Render(replaceEl, selected_mdSrc.header, selected_mdSrc.content.split("\n").slice(2).join("\n"), selected_mdSrc.type)); + for (const el of selected_els) { + el.hide(); + } + ; + selected_mdSrc = null; + selected_els = []; + } + } else if (is_last) { + selected_els.push(targetEl); + selected_mdSrc.to_line = current_mdSrc.to_line; + if (sub_index == 0) { + selected_mdSrc.content += "\n\n" + current_mdSrc.content; + } + ; + const replaceEl = selected_els.pop(); + if (replaceEl) { + ctx.addChild(new ABReplacer_Render(replaceEl, selected_mdSrc.header, selected_mdSrc.content.split("\n").slice(2).join("\n"), selected_mdSrc.type)); + for (const el of selected_els) { + el.hide(); + } + ; + selected_mdSrc = null; + selected_els = []; + } + } else { + selected_els.push(targetEl); + selected_mdSrc.to_line = current_mdSrc.to_line; + if (sub_index == 0) { + selected_mdSrc.content += "\n\n" + current_mdSrc.content; + } + ; + } + } + } + if (!selected_mdSrc || !selected_mdSrc.header) { + if (current_mdSrc.type == "header" || current_mdSrc.type == "mdit") { + selected_mdSrc = current_mdSrc; + selected_els = [targetEl]; + } else { + selected_mdSrc = null; + selected_els = []; + } + } + if (is_last) { + selected_els = []; + selected_mdSrc = null; + } +} +function getSourceMarkdown(sectionEl, ctx) { + let info = ctx.getSectionInfo(sectionEl); + if (!info) { + return null; + } + const { + text: text4, + lineStart, + lineEnd + } = info; + const list_text = text4.split("\n"); + const list_content = list_text.slice(lineStart, lineEnd + 1); + let range = { + to_line_all: list_text.length, + from_line: lineStart, + to_line: list_text.length - lineEnd < 3 && list_text.slice(lineEnd + 1, list_text.length).join("\n").trim() == "" ? list_text.length : lineEnd + 1, + content: list_content.join("\n").replace(/(\n)+$/, ""), + content_all: text4, + type: "", + header: "", + seFlag: "", + prefix: "" + }; + if (sectionEl instanceof HTMLUListElement) { + range.type = "list"; + const match2 = list_content[0].match(ABReg.reg_list); + if (!match2) + return range; + range.prefix = match2[1]; + } else if (sectionEl instanceof HTMLQuoteElement) { + range.type = "quote"; + const match2 = list_content[0].match(ABReg.reg_quote); + if (!match2) + return range; + range.prefix = match2[1]; + } else if (sectionEl instanceof HTMLPreElement) { + range.type = "code"; + const match2 = list_content[0].match(ABReg.reg_code); + if (!match2) + return range; + range.prefix = match2[1]; + } else if (sectionEl instanceof HTMLTableElement) { + range.type = "table"; + const match2 = list_content[0].match(ABReg.reg_table); + if (!match2) + return range; + range.prefix = match2[1]; + } else if (sectionEl instanceof HTMLHeadingElement) { + range.type = "heading"; + const match2 = list_content[0].match(ABReg.reg_heading); + if (!match2) + return range; + range.seFlag = match2[3]; + } else if (sectionEl instanceof HTMLParagraphElement) { + range.type = "paragraph"; + const match_header = list_content[0].match(ABReg.reg_header); + const match_mdit_head = list_content[0].match(ABReg.reg_mdit_head); + const match_mdit_tail = list_content[0].match(ABReg.reg_mdit_tail); + if (match_header) { + range.type = "header"; + range.prefix = match_header[1]; + range.header = match_header[5]; + } else if (match_mdit_head) { + range.type = "mdit"; + range.prefix = match_mdit_head[1]; + range.seFlag = match_mdit_head[3]; + range.header = match_mdit_head[4]; + } else if (match_mdit_tail) { + range.type = "mdit_tail"; + range.prefix = match_mdit_tail[1]; + range.seFlag = match_mdit_tail[3]; + } + } else { + range.type = "other"; + } + return range; +} + +// main.ts +var AnyBlockPlugin = class extends import_obsidian8.Plugin { + async onload() { + await this.loadSettings(); + this.addSettingTab(new ABSettingTab(this.app, this)); + ABConvertManager.getInstance().redefine_renderMarkdown((markdown, el, ctx) => { + var _a3, _b, _c; + el.classList.add("markdown-rendered"); + const mdrc = new import_obsidian8.MarkdownRenderChild(el); + if (ctx) + ctx.addChild(mdrc); + else if (ABCSetting.global_ctx) + ABCSetting.global_ctx.addChild(mdrc); + import_obsidian8.MarkdownRenderer.render(this.app, markdown, el, (_c = (_b = (_a3 = this.app.workspace.getActiveViewOfType(import_obsidian8.MarkdownView)) == null ? void 0 : _a3.file) == null ? void 0 : _b.path) != null ? _c : "", mdrc); + }); + ABCSetting.mermaid = (0, import_obsidian8.loadMermaid)(); + ABCSetting.mermaid.then((mermaid) => { + const isDarkTheme = document.body.classList.contains("theme-dark"); + const theme = isDarkTheme ? "dark" : "light"; + mermaid.initialize({ theme }); + }); + this.registerMarkdownCodeBlockProcessor("ab", ABReplacer_CodeBlock.processor); + this.registerMarkdownCodeBlockProcessor("anyblock", ABReplacer_CodeBlock.processor); + { + let abm; + this.app.workspace.onLayoutReady(() => { + abm == null ? void 0 : abm.destructor(); + abm = new ABStateManager(this); + }); + this.registerEvent( + this.app.workspace.on("file-open", (fileObj) => { + abm == null ? void 0 : abm.destructor(); + abm = new ABStateManager(this); + }) + ); + this.registerEvent( + this.app.workspace.on("layout-change", () => { + abm == null ? void 0 : abm.destructor(); + abm = new ABStateManager(this); + }) + ); + } + const htmlProcessor = ABSelector_PostHtml.processor.bind(this); + this.registerMarkdownPostProcessor(htmlProcessor); + } + async loadSettings() { + const data2 = await this.loadData(); + this.settings = Object.assign({}, AB_SETTINGS, data2); + if (!data2) { + this.saveData(this.settings); + } + } + async saveSettings() { + await this.saveData(this.settings); + } + onunload() { + } +}; +/*! @gera2ld/jsx-dom v2.2.2 | ISC License */ + +/* nosourcemap */ \ No newline at end of file diff --git a/.obsidian/plugins/any-block/styles.css b/.obsidian/plugins/any-block/styles.css new file mode 100644 index 0000000..6c60f1d --- /dev/null +++ b/.obsidian/plugins/any-block/styles.css @@ -0,0 +1,1169 @@ +@charset "UTF-8"; +/** + * ABC 样式文件 + * + * 修改/使用说明: + * + * vuepress-mdit环境直接用scss,ob这边需要使用css + * 编辑ABC模块的该文件时,需要手动编译/使用vscode `easy sass` 插件 + * + * 换行问题:AnyBlock的块宽度很多都是不满100%的,在窄区域中显示多文本时经常需要使用换行 + * - 不换行时 + * - white-space: pre; // 有换行符要换 + * - 换行时 + * - white-space: break-spaces; // 自动换行 ~normal~~ + * - overflow-wrap: break-word; // 单词中换行 + * - code {white-space: pre;} // 一个用于手动控制不换行的方式 + */ +/** + * 颜色相关 + */ +:root { + --ab-tab-root-bg-color: #0d1117; + --ab-tab-root-bd-color: #34343f; + --ab-tab-root-tx-color: #9e9e9e; + --ab-bright-color: orange; + --pre-background-color: #1b1b1b; + --ab-table-border-width: 1px; + --ab-table-border-color: #363636; + --ab-width-inner: 100%; + --ab-width-outer: 100%; +} + +.theme-dark, +.theme-light { + --ab-tab-root-bg-color: var(--color-base-00); + --ab-tab-root-bd-color: var(--color-base-30); + --ab-tab-root-tx-color: var(--color-base-70); + --ab-bright-color: var(--blockquote-border-color); + --pre-background-color: var(--secondary-background); + --ab-table-border-width: var(--table-border-width); + --ab-table-border-color: var(--table-border-color); +} + +html[data-theme=light] #app, +html[data-theme=dark] #app { + --ab-tab-root-bg-color: var(--vp-c-bg); + --ab-tab-root-bd-color: var(--vp-c-border); + --ab-tab-root-tx-color: var(--vp-c-text); + --ab-bright-color: var(--vp-c-accent); + --pre-background-color: var(--code-bg-color); +} + +html[data-theme=light] #app { + --color-red: #e93147; + --color-orange: #ec7500; + --color-yellow: #e0ac00; + --color-green: #08b94e; + --color-cyan: #00bfbc; + --color-blue: #086ddd; + --color-purple: #7852ee; + --color-pink: #d53984; +} + +html[data-theme=dark] #app { + --color-red: #fb464c; + --color-orange: #e9973f; + --color-yellow: #e0de71; + --color-green: #44cf6e; + --color-cyan: #53dfdd; + --color-blue: #027aff; + --color-purple: #a882ff; + --color-pink: #fa99cd; +} + +/** + * obsidian各模式下的微调 + * + * 替换内容 + * .ab-replace // 整体 (外框、圆角) + * &>.ab-note // 内容 + * &>.ab-replaceEl // 内容 (感觉冗余了) + * &>.ab-button // 操作控件 (刷新/编辑/下拉框) + */ +.app-container .markdown-reading-view .ab-replace { + margin-top: 0; + margin-bottom: 22px; +} +.app-container .markdown-source-view .ab-replace { + margin-top: -0.5em; + margin-bottom: -0.5em; +} +.app-container .markdown-source-view .block-language-anyblock > .ab-replace { + margin-top: 0; + margin-bottom: 0; +} +.app-container .markdown-source-view .markdown-preview-view .ab-replace { + margin-top: 0; + margin-bottom: 22px; +} +.print .ab-replace > .ab-button { + display: none; +} +.print .ab-replaceEl > button { + display: none; +} + +/** + * 替换内容 + * .ab-replace // 整体 (外框、圆角) + * &>.ab-note // 内容 + * &>.ab-replaceEl // 内容 (感觉冗余了) + * &>.ab-button // 操作控件 (刷新/编辑/下拉框) + */ +.ab-replace { + /*background-color: #272e3a;*/ + position: relative; + border-radius: 4px; +} +.ab-replace > .ab-note { + position: relative; + /*padding: 24px 12px 12px 12px;*/ +} +.ab-replace > .ab-button { + box-sizing: border-box; + position: absolute; + top: 4px; +} +.ab-replace > .ab-button.ab-button-1 { + right: 4px; +} +.ab-replace > .ab-button.ab-button-2 { + right: 40px; +} +.ab-replace > .ab-button.ab-button-3 { + right: 76px; +} +.ab-replace > .ab-button.ab-button-select > * { + padding: 0 10px; + width: 24px; + height: 24px; + box-sizing: border-box; +} +.ab-replace > .ab-button.ab-button-select > button { + padding: 0; + position: absolute; + pointer-events: none; + z-index: 2; + text-align: center; + border: none; + box-shadow: none; + background: none; +} +.ab-replace > .ab-button.ab-button-select > select { + z-index: 1; + opacity: 0; +} +.ab-replace > .ab-button.ab-button-select option { + padding: 0 10px; +} +.ab-replace img.cm-widgetBuffer { + height: 2px; +} + +.ab-note .markdown-rendered table { + min-width: 0; +} +.ab-note .markdown-rendered ul li, +.ab-note .markdown-rendered ol li { + margin-bottom: 0; +} +.ab-note table { + display: table; + width: 100%; +} +.ab-note table[modeT=true] tr { + display: block; + float: left; +} +.ab-note table[modeT=true] th, .ab-note table[modeT=true] td { + display: block; +} +.ab-note pre.ab-mermaid-raw { + border: solid 1px; + border-radius: 6px; + margin-top: 0; +} +.ab-note .ab-markmap-svg { + border: solid 1px; + border-radius: 6px; + width: 100%; +} +.ab-note .ab-tab-root .ab-tab-nav { + box-sizing: border-box; + border: 2px solid var(--ab-tab-root-bd-color); + background-color: var(--ab-tab-root-bd-color); + color: var(--ab-tab-root-tx-color); + border-bottom: none; + border-radius: 10px 10px 0 0; + padding-right: 60px; +} +.ab-note .ab-tab-root .ab-tab-nav .ab-tab-nav-item { + height: 38px; + box-shadow: none; + border: none; + border-radius: 10px 10px 0 0; + padding-left: 20px; + padding-right: 20px; + font-size: 0.9em; + font-weight: bold; + cursor: pointer; +} +.ab-note .ab-tab-root .ab-tab-nav .ab-tab-nav-item[is_activate=false] { + background-color: var(--ab-tab-root-bd-color); + color: var(--ab-tab-root-tx-color); +} +.ab-note .ab-tab-root .ab-tab-nav .ab-tab-nav-item[is_activate=true] { + background-color: var(--ab-tab-root-bg-color); + color: var(--ab-tab-root-tx-color); +} +.ab-note .ab-tab-root .ab-tab-content { + border: 2px solid var(--ab-tab-root-bd-color); + background-color: var(--ab-tab-root-bg-color); + color: var(--ab-tab-root-tx-color); + border-top: none; + padding: 10px 20px; +} +.ab-note td > p:first-child, .ab-note th > p:first-child, +.ab-note td > ul:first-child, .ab-note th > ul:first-child, +.ab-note .ab-list-table-witharrow > p:first-child, +.ab-note .ab-nodes-content > p:first-child, +.ab-note .ab-items-item > div > p:first-child, .ab-note .ab-items-item > div > ul:first-child, +.ab-note td > div > p:first-child, .ab-note th > div > p:first-child, +.ab-note td > div > ul:first-child, .ab-note th > div > ul:first-child, +.ab-note .ab-list-table-witharrow > div > p:first-child, +.ab-note .ab-nodes-content > div > p:first-child, +.ab-note .ab-items-item > div > div > p:first-child, .ab-note .ab-items-item > div > div > ul:first-child { + margin-top: 2px; +} +.ab-note td > p:last-child, .ab-note th > p:last-child, +.ab-note td > ul:last-child, .ab-note th > ul:last-child, +.ab-note .ab-list-table-witharrow > p:last-child, +.ab-note .ab-nodes-content > p:last-child, +.ab-note .ab-items-item > div > p:last-child, .ab-note .ab-items-item > div > ul:last-child, +.ab-note td > div > p:last-child, .ab-note th > div > p:last-child, +.ab-note td > div > ul:last-child, .ab-note th > div > ul:last-child, +.ab-note .ab-list-table-witharrow > div > p:last-child, +.ab-note .ab-nodes-content > div > p:last-child, +.ab-note .ab-items-item > div > div > p:last-child, .ab-note .ab-items-item > div > div > ul:last-child { + margin-bottom: 2px; +} +.ab-note table.ab-table { + border-collapse: collapse; +} +.ab-note table.ab-table td, .ab-note table.ab-table th { + white-space: normal; + overflow-wrap: break-word; + padding: 2px 5px; + border: solid var(--ab-table-border-width) var(--ab-table-border-color); +} +.ab-note table.ab-table td code, .ab-note table.ab-table th code { + white-space: pre; +} +.ab-note table.ab-table tr { + background: none; +} +.ab-note .ab-branch-table.ab-table-likelist td { + border: none; + padding-bottom: 10px; + vertical-align: top; + box-sizing: border-box; +} +.ab-note .ab-branch-table.ab-table-likelist td[col_index="0"] { + padding-right: 8px; + padding-left: 20px; + position: relative; +} +.ab-note .ab-branch-table.ab-table-likelist td[col_index="0"]::before { + position: absolute; + top: 14px; + transform: translateY(-50%); + width: 5px; + height: 5px; + border: none; + left: 6px; + content: ""; + border-radius: 50%; + background-color: currentColor; +} +.ab-note .ab-branch-table.ab-table-likelist td[col_index="0"]::after { + content: ""; + position: absolute; + top: 3px; + bottom: 5px; + right: 0; + border-right: 1px solid currentColor; + pointer-events: none; +} +.ab-note table.ab-list-table .ab-foldable-tr > td:first-child > div { + padding-left: 15px; + position: relative; +} +.ab-note table.ab-list-table .ab-foldable-tr[able_fold=true] > td:first-child > div::before { + content: ""; + position: absolute; + width: 0; + height: 0; +} +.ab-note table.ab-list-table .ab-foldable-tr[able_fold=true][is_fold=true] > td:first-child > div:first-child::before { + top: 5px; + left: 2px; + border: 6px solid transparent; + border-left-color: currentColor; + cursor: pointer; +} +.ab-note table.ab-list-table .ab-foldable-tr[able_fold=true][is_fold=false] > td:first-child > div:first-child::before { + top: 9px; + left: -1px; + border: 6px solid transparent; + border-top-color: currentColor; + cursor: pointer; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="0"] > td:first-child { + padding-left: 0px; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="1"] > td:first-child { + padding-left: 24px; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="2"] > td:first-child { + padding-left: 48px; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="3"] > td:first-child { + padding-left: 72px; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="4"] > td:first-child { + padding-left: 96px; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="5"] > td:first-child { + padding-left: 120px; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="6"] > td:first-child { + padding-left: 144px; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="7"] > td:first-child { + padding-left: 168px; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="8"] > td:first-child { + padding-left: 192px; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="9"] > td:first-child { + padding-left: 216px; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="10"] > td:first-child { + padding-left: 240px; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="11"] > td:first-child { + padding-left: 264px; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="12"] > td:first-child { + padding-left: 288px; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="13"] > td:first-child { + padding-left: 312px; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="14"] > td:first-child { + padding-left: 336px; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="15"] > td:first-child { + padding-left: 360px; +} +.ab-note table.ab-list-table .ab-foldable-tr[tr_level="16"] > td:first-child { + padding-left: 384px; +} +.ab-note table.ab-list-table.ab-listtable-likelist { + margin-left: 24px; +} +.ab-note table.ab-list-table.ab-listtable-likelist td { + border: none; + vertical-align: top; +} +.ab-note table.ab-list-table.ab-listtable-likelist .ab-foldable-tr > td:first-child > div.ab-list-table-witharrow { + padding: 0 !important; + padding-right: 8px; + padding-left: 20px; + position: relative; + display: inline-block; +} +.ab-note table.ab-list-table.ab-listtable-likelist .ab-foldable-tr > td:first-child > div.ab-list-table-witharrow::before { + border: solid 1px !important; + background: none !important; + width: 6px !important; + height: 6px !important; + box-sizing: border-box; + position: absolute; + top: 12px !important; + transform: translateY(-50%) !important; + left: -14px !important; + content: ""; + border-radius: 50%; +} +.ab-note table.ab-list-table.ab-listtable-likelist .ab-foldable-tr[tr_level="0"] > td:first-child > div.ab-list-table-witharrow::before { + border: 0 !important; + background-color: currentColor !important; + width: 6px !important; + height: 6px !important; +} +.ab-note table.ab-list-table.ab-table-folder .ab-foldable-tr td:first-child { + white-space: pre; + vertical-align: top; +} +.ab-note table.ab-list-table.ab-table-folder .ab-foldable-tr > td > div { + display: inline-block; + vertical-align: top; +} +.ab-note table.ab-list-table.ab-table-folder .ab-foldable-tr > td > div.ab-list-table-witharrow { + padding-left: 6px; +} +.ab-note table.ab-list-table.ab-table-folder .ab-foldable-tr .ab-list-table-svg { + padding-top: 4px; +} +.ab-note table.ab-list-table.ab-table-folder .ab-foldable-tr .ab-list-table-svg svg { + width: 14px; + height: 14px; + fill: var(--ab-bright-color); +} +.ab-note table.ab-list-table.ab-table-folder .ab-foldable-tr td:first-child { + border: none; +} +.ab-note table.ab-list-table.ab-table-folder .ab-foldable-tr td { + border-left: none; + border-right: none; + border-bottom: none; +} +.ab-note .ab-list-table-parent { + position: relative; +} +.ab-note .ab-list-table-parent .ab-table-fold { + position: absolute; + bottom: 0; + right: 0; + background: none; + border: none; + color: currentColor; + cursor: pointer; + padding: 2px 6px; +} +.ab-note table.ab-table-timeline td { + border-right: none; + padding-left: 20px; +} +.ab-note table.ab-table-timeline td[col_index="0"] { + border: none; + border-left: none; + border-right: solid 2px; + padding-left: 5px; + padding-right: 20px; + color: var(--ab-bright-color); + position: relative; + overflow: visible; +} +.ab-note table.ab-table-timeline td[col_index="0"]::after { + position: absolute; + top: 1em; + transform: translateY(-50%); + width: 10px; + height: 10px; + right: -8px; + content: ""; + background-color: var(--ab-bright-color); + border-radius: 50%; + border: solid 2px; +} +.ab-note table.ab-table-timeline tr:first-child td { + border-top: none; +} +.ab-note table.ab-table-timeline tr:last-child td { + border-bottom: none; +} +.ab-note .markdown-rendered.ab-faq-content p:first-child { + margin-top: 0; +} +.ab-note .markdown-rendered.ab-faq-content p:last-child { + margin-bottom: 0; +} +.ab-note .ab-faq .ab-faq-line { + line-height: 30px; + width: 100%; + padding: 0 15px 0 15px; + clear: both; + overflow-y: auto; +} +.ab-note .ab-faq .ab-faq-line .ab-faq-bubble { + float: left; + width: calc(100% - 75px); +} +.ab-note .ab-faq .ab-faq-line.ab-faq-q, +.ab-note .ab-faq .ab-faq-line.ab-faq-Q { + background-color: #1e53ee; + border-radius: 12px 12px 0 0; +} +.ab-note .ab-faq .ab-faq-line.ab-faq-a, +.ab-note .ab-faq .ab-faq-line.ab-faq-A { + background-color: #f5f8fe; + border-radius: 0 0 12px 12px; + color: #a994a6; + margin-bottom: 20px; +} +.ab-note .ab-faq .ab-faq-line::before { + float: left; + width: 24px; +} +.ab-note .ab-faq .ab-faq-line.ab-faq-q::before, +.ab-note .ab-faq .ab-faq-line.ab-faq-Q::before { + content: "Q"; +} +.ab-note .ab-faq .ab-faq-line.ab-faq-a::before, +.ab-note .ab-faq .ab-faq-line.ab-faq-A::before { + content: "A"; +} +.ab-note .ab-deco-fold .ab-deco-fold-button { + color: var(--ab-bright-color); + border-bottom: 1px solid var(--ab-bright-color); + height: 30px; + line-height: 30px; + padding-left: 6px; + width: 100%; +} +.ab-note .ab-deco-scroll.ab-deco-scroll-y { + overflow-y: auto; +} +.ab-note .ab-deco-scroll.ab-deco-scroll-x { + overflow-x: auto; + white-space: pre !important; +} +.ab-note .ab-deco-scroll.ab-deco-scroll-x th, .ab-note .ab-deco-scroll.ab-deco-scroll-x td { + white-space: pre !important; +} +.ab-note .ab-deco-overfold { + overflow-y: hidden; + position: relative; +} +.ab-note .ab-deco-overfold .ab-deco-overfold-button { + position: absolute; + bottom: 0; + height: 40px; + line-height: 40px; + width: 100%; + text-align: center; + box-sizing: content-box; +} +.ab-note .ab-deco-overfold .ab-deco-overfold-content { + margin-bottom: 40px; +} +.ab-note .ab-deco-overfold[is-fold=true] .ab-deco-overfold-button { + padding-top: 60px; + background-image: linear-gradient(-180deg, rgba(24, 26, 27, 0) 0%, rgb(24, 26, 27) 100%); +} +.ab-note .ab-deco-heimu, .ab-note .ab-deco-heimu a { + background-color: #252525; + color: #252525; + text-shadow: none; +} +.ab-note .ab-deco-heimu::-moz-selection, .ab-note .ab-deco-heimu a::-moz-selection { + background: #9ab0c0; + color: #fff; +} +.ab-note .ab-deco-heimu::selection, .ab-note .ab-deco-heimu a::selection { + background: #9ab0c0; + color: #fff; +} +.ab-note .ab-deco-heimu:hover, .ab-note .ab-deco-heimu:hover a { + transition: color 0.13s linear; + color: #fff; +} +.ab-note .ab-deco-title { + width: 100%; +} +.ab-note .ab-deco-title p { + font-size: 17px; + line-height: 17px; + margin: 0; + margin-bottom: 10px; +} +.ab-note .ab-deco-title pre { + margin: 0; +} +.ab-note .ab-deco-title .ab-deco-title-title { + height: auto; +} +.ab-note .ab-deco-title .ab-deco-title-title[title-type=table] > p { + font-weight: bold; + text-align: center; + margin-top: 10px; + margin-bottom: 16px; +} +.ab-note .ab-deco-title .ab-deco-title-title[title-type=pre] > p { + display: inline; + font-size: 16px; + font-weight: 400; + background-color: var(--pre-background-color); + padding: 8px 16px 11px 16px; + border-radius: 8px 8px 0 0; + margin: 0; +} +.ab-note .ab-deco-title .ab-deco-title-title[title-type=quote] > p { + font-weight: bold; + margin-bottom: 20px; +} +.ab-note .ab-deco-title .ab-deco-title-title[title-type=ul] > p { + font-weight: bold; +} +.ab-note .ab-items { + white-space: normal; + overflow-wrap: break-word; +} +.ab-note .ab-items code { + white-space: pre; +} +.ab-note .ab-items.ab-col { + display: flex; + flex-wrap: wrap; + gap: 0rem; +} +.ab-note .ab-items.ab-col .ab-items-item { + flex: 1 0 calc(33.33% - 1rem); + box-sizing: border-box; + padding: 10px; +} +.ab-note .ab-items.ab-card .ab-items-item { + box-sizing: border-box; + color: var(--ab-tab-root-tx-color); + background-color: var(--ab-tab-root-bg-color); + border: solid 2px var(--ab-tab-root-bd-color); + border-radius: 6px; + box-shadow: #34343f; + margin-bottom: 10px; + padding: 5px 10px; +} +.ab-note .ab-items.ab-card .ab-items-item > div { + padding-top: 2px; + padding-bottom: 2px; +} +.ab-note .ab-items.ab-card .ab-items-item .ab-items-title { + border-bottom: 1px solid var(--ab-bright-color); +} +.ab-note .ab-items.ab-card.ab-lay-vfall:not(.ab-hfall) { + /*display: flex; // Flexbox 布局 + flex-wrap: wrap; // 元素换行显示 + gap: 1rem; // 间隙 + .ab-items-item { + flex: 1 0 calc(25% - 1rem); // 每个项目的宽度大约为容器的 33.33%,减去间隙的一半 + }*/ + -moz-column-count: 4; + column-count: 4; + -moz-column-gap: 10px; + column-gap: 10px; + /*display: grid; + grid-template-columns: repeat(4, 1fr); + grid-gap: 1rem; // 间隙 + grid-template-rows: masonry; // 兼容有问题,只有火狐支持,还tm的要开选项 + .ab-items-item { + width: 100%; + display: block; + }*/ + /*display: flex; // Flexbox 布局 + flex-wrap: wrap; // 元素换行显示 + // gap: 1rem; // 间隙 + flex-direction: column; // 按列填充 + .ab-items-item { + position: relative; + width: calc(100% / 4); + padding: 5px; + box-sizing: border-box; + &:nth-child(4n+1){ order: 1; } + &:nth-child(4n+2){ order: 2; } + &:nth-child(4n+3){ order: 3; } + &:nth-child(4n+0){ order: 4; } + }*/ +} +.ab-note .ab-items.ab-card.ab-lay-vfall:not(.ab-hfall) .ab-items-item { + -moz-column-break-inside: avoid; + break-inside: avoid-column; +} +.ab-note .ab-items.ab-card.ab-lay-hfall { + display: flex; + flex-wrap: wrap; + flex-direction: row; +} +.ab-note .ab-items.ab-card.ab-lay-hfall .ab-items-item .ab-items-title { + color: currentColor; + border-bottom: none; +} +.ab-note .ab-items.ab-card.ab-lay-hfall::after { + content: ""; + flex-grow: 99999; +} +.ab-note .ab-items.ab-card.ab-lay-hfall > .ab-items-item { + flex-grow: 1; + margin: 5px; + padding: 0 10px; + position: relative; + overflow: hidden; +} +.ab-note .ab-items.ab-card.ab-lay-hfall > .ab-items-item img { + max-width: 100%; + min-width: 100%; + height: 200px; + margin: 0; + -o-object-fit: cover; + object-fit: cover; + vertical-align: bottom; +} +.ab-note .ab-items.ab-card.ab-lay-hfall > .ab-items-item p { + max-width: 300px; + margin: 0; +} +.ab-note .ab-items.ab-card.ab-lay-hfall > .ab-items-item > .ab-items-content { + height: 100%; + min-width: 100%; +} +.ab-note .ab-items.ab-card.ab-lay-grid { + display: grid; + grid-template-columns: repeat(auto-fill, minmax(200px, 1fr)); + gap: 0px !important; + margin: 0 auto; +} +.ab-note .ab-items.ab-card.ab-lay-grid::after { + content: ""; + flex-grow: 99999; +} +.ab-note .ab-items.ab-card.ab-lay-grid > .ab-items-item { + position: relative; + margin: 5px; + display: flex; + flex-direction: column; + align-items: center; + text-align: center; /* 确保文字居中 */ +} +.ab-note .ab-items.ab-card.ab-lay-grid > .ab-items-item img { + max-width: 200px; + max-height: 200px; + width: 100%; /* 确保图片宽度为100%,适应网格布局 */ + height: auto; + margin: 0; +} +.ab-note .ab-items.ab-card.ab-lay-grid > .ab-items-item > .ab-items-content { + width: 100%; + padding: 0; +} +.ab-note .ab-items.ab-card.ab-deco-scroll-x { + margin: 0 auto; + display: flex; + flex-wrap: nowrap; + overflow-x: auto; +} +.ab-note .ab-items.ab-card.ab-deco-scroll-x .ab-items-item { + flex: 0 0 auto; + width: 170px; +} +.ab-note .ab-items > .ab-items-item { + overflow-x: auto; +} +.ab-note .ab-items.ab-col1 { + -moz-column-count: 1 !important; + column-count: 1 !important; + grid-template-columns: repeat(1, 1fr) !important; +} +.ab-note .ab-items.ab-col2 { + -moz-column-count: 2 !important; + column-count: 2 !important; + grid-template-columns: repeat(2, 1fr) !important; +} +.ab-note .ab-items.ab-col3 { + -moz-column-count: 3 !important; + column-count: 3 !important; + grid-template-columns: repeat(3, 1fr) !important; +} +.ab-note .ab-items.ab-col4 { + -moz-column-count: 4 !important; + column-count: 4 !important; + grid-template-columns: repeat(4, 1fr) !important; +} +.ab-note .ab-items.ab-col5 { + -moz-column-count: 5 !important; + column-count: 5 !important; + grid-template-columns: repeat(5, 1fr) !important; +} +.ab-note .ab-items.ab-col6 { + -moz-column-count: 6 !important; + column-count: 6 !important; + grid-template-columns: repeat(6, 1fr) !important; +} +.ab-note .ab-items.ab-col7 { + -moz-column-count: 7 !important; + column-count: 7 !important; + grid-template-columns: repeat(7, 1fr) !important; +} +.ab-note .ab-items.ab-col8 { + -moz-column-count: 8 !important; + column-count: 8 !important; + grid-template-columns: repeat(8, 1fr) !important; +} +.ab-note .ab-nodes { + white-space: normal; + overflow-wrap: break-word; +} +.ab-note .ab-nodes code { + white-space: pre; +} +.ab-note .ab-nodes .ab-nodes-content { + display: inline-block; + background-color: rgba(100, 100, 100, 0.25); + padding: 2px 10px; + margin-left: 5px; +} +.ab-note .ab-nodes .ab-nodes-children { + display: flex; + flex-direction: column; + gap: 16px; + padding-left: 0.8em; + position: relative; +} +.ab-note .ab-nodes .ab-nodes-children .ab-nodes-bracket { + content: ""; + box-sizing: border-box; + position: absolute; + width: 8px; + height: 8px; + top: calc(50% - 4px); + left: -6px; + -webkit-clip-path: polygon(100% 0, 100% 100%, 13.4% 50%); + clip-path: polygon(100% 0, 100% 100%, 13.4% 50%); + background-color: currentColor; +} +.ab-note .ab-nodes .ab-nodes-children .ab-nodes-bracket2 { + content: ""; + box-sizing: border-box; + position: absolute; + width: 10px; + height: calc(100% - 8px); + top: 4px; + left: 0; + border-radius: 10px 0 0 10px; + border-left: 2px solid currentColor; + border-top: 2px solid currentColor; + border-bottom: 2px solid currentColor; +} +.ab-note .ab-nodes .ab-nodes-children .ab-nodes-node { + display: flex; + flex-direction: row; + align-items: center; + gap: 1.2em; +} +.ab-note .ab-nodes > .ab-nodes-node > .ab-nodes-bracket { + display: none; +} +.ab-note .ab-nodes > .ab-nodes-node > .ab-nodes-bracket2 { + display: none; +} +.ab-note .ab-nodes .ab-nodes-node[has_children=false] > .ab-nodes-children { + display: none; +} +.ab-note .ab-nodes.min .ab-nodes-content { + padding: 0; + background: none; + border-bottom: solid 1px currentColor; +} +.ab-note .ab-nodes.min .ab-nodes-children { + gap: 2px; +} +.ab-note .ab-nodes.min .ab-nodes-children .ab-nodes-bracket2 { + border-width: 1px; +} +.ab-note .ab-nodes.min .ab-nodes-children .ab-nodes-bracket { + display: none; + width: 6px; + height: 6px; + top: calc(50% - 4px); + left: -6px; +} +.ab-note .ab-nodes.min .ab-nodes-content { + padding-right: 1.2em; +} +.ab-note .ab-nodes.min .ab-nodes-children .ab-nodes-node { + gap: 0; +} +.ab-note .ab-nodes-node[has_children=false] > .ab-nodes-content { + padding-right: 4px; +} +.ab-note .ab-nodes.min > .ab-nodes-children > .ab-nodes-node:nth-child(8n+1) { + --node-color: var(--color-red); +} +.ab-note .ab-nodes.min > .ab-nodes-children > .ab-nodes-node:nth-child(8n+2) { + --node-color: var(--color-orange); +} +.ab-note .ab-nodes.min > .ab-nodes-children > .ab-nodes-node:nth-child(8n+3) { + --node-color: var(--color-yellow); +} +.ab-note .ab-nodes.min > .ab-nodes-children > .ab-nodes-node:nth-child(8n+4) { + --node-color: var(--color-green); +} +.ab-note .ab-nodes.min > .ab-nodes-children > .ab-nodes-node:nth-child(8n+5) { + --node-color: var(--color-cyan); +} +.ab-note .ab-nodes.min > .ab-nodes-children > .ab-nodes-node:nth-child(8n+6) { + --node-color: var(--color-blue); +} +.ab-note .ab-nodes.min > .ab-nodes-children > .ab-nodes-node:nth-child(8n+7) { + --node-color: var(--color-purple); +} +.ab-note .ab-nodes.min > .ab-nodes-children > .ab-nodes-node:nth-child(8n+0) { + --node-color: var(--color-pink); +} +.ab-note .ab-nodes.min > .ab-nodes-children > .ab-nodes-node .ab-nodes-content, .ab-note .ab-nodes.min > .ab-nodes-children > .ab-nodes-node .ab-nodes-bracket, .ab-note .ab-nodes.min > .ab-nodes-children > .ab-nodes-node .ab-nodes-bracket2 { + border-color: var(--node-color); +} +.ab-note .ab-nodes.min > .ab-nodes-children > .ab-nodes-node .ab-nodes-bracket { + background-color: var(--node-color); +} +.ab-note .ab-nodes.scroll { + overflow-x: auto; +} +.ab-note .ab-nodes.scroll .ab-nodes-content { + white-space: nowrap; + max-width: 300px; + overflow-x: auto; +} +.ab-note table.scroll { + overflow-x: auto; +} +.ab-note table.scroll td { + white-space: nowrap; + max-width: 300px; + overflow-x: auto; +} + +div.md-table-fig1 { + overflow-x: scroll; + transform: scaleY(-1); +} +div.md-table-fig1 table.ab-setting.md-table-fig2 { + overflow-x: scroll; + text-overflow: clip !important; + transform: scaleY(-1); + white-space: pre-wrap; +} + +.ab-custom-text-red { + color: red !important; +} + +.ab-custom-text-orange { + color: orange !important; +} + +.ab-custom-text-yellow { + color: yellow !important; +} + +.ab-custom-text-green { + color: green !important; +} + +.ab-custom-text-cyan { + color: cyan !important; +} + +.ab-custom-text-blue { + color: blue !important; +} + +.ab-custom-text-purple { + color: purple !important; +} + +.ab-custom-text-white { + color: white !important; +} + +.ab-custom-text-black { + color: black !important; +} + +.ab-custom-bg-red { + background-color: red !important; +} + +.ab-custom-bg-orange { + background-color: orange !important; +} + +.ab-custom-bg-yellow { + background-color: yellow !important; +} + +.ab-custom-bg-green { + background-color: green !important; +} + +.ab-custom-bg-cyan { + background-color: cyan !important; +} + +.ab-custom-bg-blue { + background-color: blue !important; +} + +.ab-custom-bg-purple { + background-color: purple !important; +} + +.ab-custom-bg-white { + background-color: white !important; +} + +.ab-custom-bg-black { + background-color: black !important; +} + +.ab-custom-dire-top * { + vertical-align: top !important; +} + +.ab-custom-dire-down * { + vertical-align: bottom !important; +} + +.ab-custom-dire-left * { + text-align: left !important; +} + +.ab-custom-dire-right * { + text-align: right !important; +} + +.ab-custom-dire-center * { + vertical-align: middle !important; + text-align: center !important; +} + +.ab-custom-dire-hcenter * { + text-align: center !important; +} + +.ab-custom-dire-vcenter * { + vertical-align: middle !important; +} + +.ab-custom-dire-justify * { + text-align: justify !important; +} + +.ab-custom-font-large { + font-size: large !important; +} + +.ab-custom-font-largex { + font-size: x-large !important; +} + +.ab-custom-font-largexx { + font-size: xx-large !important; +} + +.ab-custom-font-small { + font-size: small !important; +} + +.ab-custom-font-smallx { + font-size: x-small !important; +} + +.ab-custom-font-smallxx { + font-size: xx-small !important; +} + +.ab-custom-font-bold { + font-weight: bold !important; +} + +table.ab-table-fc th[col_index="0"], table.ab-table-fc td[col_index="0"] { + white-space: pre; + font-weight: 500; + vertical-align: top; + width: 0px; +} + +.ab-table-fc > table th:first-child, .ab-table-fc > table td:first-child { + white-space: pre; + font-weight: 500; + vertical-align: top; + width: 0px; +} + +.ab-custom-td-nowrap td, .ab-custom-td1-nowrap tr > td:first-child { + white-space: pre !important; +} + +.ab-custom-td-wrap td, .ab-custom-td1-wrap tr > td:first-child { + white-space: normal !important; + overflow-wrap: break-word; +} + +.ab-custom-td-0 td, .ab-custom-td1-0 tr > td:first-child { + width: 0px !important; +} + +.ab-custom-td-100 td, .ab-custom-td1-100 tr > td:first-child { + width: 100px !important; +} + +.ab-custom-td-150 td, .ab-custom-td1-150 tr > td:first-child { + width: 150px !important; +} + +.ab-custom-td-200 td, .ab-custom-td1-200 tr > td:first-child { + width: 200px !important; +} + +.ab-custom-td-250 td, .ab-custom-td1-250 tr > td:first-child { + width: 250px !important; +} + +.ab-custom-td-300 td, .ab-custom-td1-300 tr > td:first-child { + width: 300px !important; +} + +.ab-custom-td-half td, .ab-custom-td1-half tr > td:first-child { + width: 50% !important; +} + +.ab-super-width-p { + width: var(--ab-width-outer); + margin-left: calc((100% - var(--ab-width-outer)) / 2); +} + +/**************** CM Style *******************/ +.ab-line-brace { + -webkit-text-decoration: underline 1px red; + text-decoration: underline 1px red; +} + +.ab-line-list { + -webkit-text-decoration: underline 1px cyan; + text-decoration: underline 1px cyan; +} + +.ab-line-yellow { + -webkit-text-decoration: solid underline 1px rgba(0, 255, 0, 0.2); + text-decoration: solid underline 1px rgba(0, 255, 0, 0.2); +} + +.ab-line-blue { + -webkit-text-decoration: underline 1px blue; + text-decoration: underline 1px blue; +} + +.bright-color { + color: var(--ab-bright-color); + border-color: var(--ab-bright-color); +} + +/**************** 兼容性补充 ******************/ +.markmap-foreign [aria-hidden=true] { + display: none; +} + +:is(.markdown-preview-view, .markdown-rendered).is-readable-line-width:not(.matrix) .ab-note :is(.markdown-rendered) { + width: auto !important; +} \ No newline at end of file diff --git a/.obsidian/plugins/mcp-tools/main.js b/.obsidian/plugins/mcp-tools/main.js deleted file mode 100644 index 2ba52e8..0000000 --- a/.obsidian/plugins/mcp-tools/main.js +++ /dev/null @@ -1,523 +0,0 @@ -/* -THIS IS A GENERATED/BUNDLED FILE BY BUN -if you want to view the source, please visit https://github.com/jacksteamdev/obsidian-mcp-tools -*/ - -var Jw=Object.create;var{getPrototypeOf:Gw,defineProperty:A7,getOwnPropertyNames:HU,getOwnPropertyDescriptor:Yw}=Object,zU=Object.prototype.hasOwnProperty;var Z8=(Q,X,Z)=>{Z=Q!=null?Jw(Gw(Q)):{};let J=X||!Q||!Q.__esModule?A7(Z,"default",{value:Q,enumerable:!0}):Z;for(let G of HU(Q))if(!zU.call(J,G))A7(J,G,{get:()=>Q[G],enumerable:!0});return J},qU=new WeakMap,Ww=(Q)=>{var X=qU.get(Q),Z;if(X)return X;if(X=A7({},"__esModule",{value:!0}),Q&&typeof Q==="object"||typeof Q==="function")HU(Q).map((J)=>!zU.call(X,J)&&A7(X,J,{get:()=>Q[J],enumerable:!(Z=Yw(Q,J))||Z.enumerable}));return qU.set(Q,X),X},r=(Q,X)=>()=>(X||Q((X={exports:{}}).exports,X),X.exports);var LJ=(Q,X)=>{for(var Z in X)A7(Q,Z,{get:X[Z],enumerable:!0,configurable:!0,set:(J)=>X[Z]=()=>J})};var t0=r((QG)=>{Object.defineProperty(QG,"__esModule",{value:!0});QG.isFunction=void 0;function Sj(Q){return typeof Q==="function"}QG.isFunction=Sj});var iQ=r((ZG)=>{Object.defineProperty(ZG,"__esModule",{value:!0});ZG.createErrorClass=void 0;function kj(Q){var X=function(J){Error.call(J),J.stack=new Error().stack},Z=Q(X);return Z.prototype=Object.create(Error.prototype),Z.prototype.constructor=Z,Z}ZG.createErrorClass=kj});var Yz=r((XG)=>{Object.defineProperty(XG,"__esModule",{value:!0});XG.UnsubscriptionError=void 0;var yj=iQ();XG.UnsubscriptionError=yj.createErrorClass(function(Q){return function X(Z){Q(this),this.message=Z?Z.length+` errors occurred during unsubscription: -`+Z.map(function(J,G){return G+1+") "+J.toString()}).join(` - `):"",this.name="UnsubscriptionError",this.errors=Z}})});var MQ=r((JG)=>{Object.defineProperty(JG,"__esModule",{value:!0});JG.arrRemove=void 0;function xj(Q,X){if(Q){var Z=Q.indexOf(X);0<=Z&&Q.splice(Z,1)}}JG.arrRemove=xj});var o8=r((O8)=>{var JF=O8&&O8.__values||function(Q){var X=typeof Symbol==="function"&&Symbol.iterator,Z=X&&Q[X],J=0;if(Z)return Z.call(Q);if(Q&&typeof Q.length==="number")return{next:function(){if(Q&&J>=Q.length)Q=void 0;return{value:Q&&Q[J++],done:!Q}}};throw new TypeError(X?"Object is not iterable.":"Symbol.iterator is not defined.")},GF=O8&&O8.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},YF=O8&&O8.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{Object.defineProperty(GG,"__esModule",{value:!0});GG.config=void 0;GG.config={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1}});var Hz=r((a9)=>{var HF=a9&&a9.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},zF=a9&&a9.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{Object.defineProperty(YG,"__esModule",{value:!0});YG.reportUnhandledError=void 0;var gj=Q5(),hj=Hz();function fj(Q){hj.timeoutProvider.setTimeout(function(){var X=gj.config.onUnhandledError;if(X)X(Q);else throw Q})}YG.reportUnhandledError=fj});var s6=r((WG)=>{Object.defineProperty(WG,"__esModule",{value:!0});WG.noop=void 0;function bj(){}WG.noop=bj});var KF=r((s9)=>{Object.defineProperty(s9,"__esModule",{value:!0});s9.createNotification=s9.nextNotification=s9.errorNotification=s9.COMPLETE_NOTIFICATION=void 0;s9.COMPLETE_NOTIFICATION=function(){return qG("C",void 0,void 0)}();function mj(Q){return qG("E",void 0,Q)}s9.errorNotification=mj;function _j(Q){return qG("N",Q,void 0)}s9.nextNotification=_j;function qG(Q,X,Z){return{kind:Q,value:X,error:Z}}s9.createNotification=qG});var HG=r((Z5)=>{Object.defineProperty(Z5,"__esModule",{value:!0});Z5.captureError=Z5.errorContext=void 0;var $F=Q5(),n4=null;function dj(Q){if($F.config.useDeprecatedSynchronousErrorHandling){var X=!n4;if(X)n4={errorThrown:!1,error:null};if(Q(),X){var Z=n4,J=Z.errorThrown,G=Z.error;if(n4=null,J)throw G}}else Q()}Z5.errorContext=dj;function uj(Q){if($F.config.useDeprecatedSynchronousErrorHandling&&n4)n4.errorThrown=!0,n4.error=Q}Z5.captureError=uj});var X5=r((E9)=>{var VF=E9&&E9.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}();Object.defineProperty(E9,"__esModule",{value:!0});E9.EMPTY_OBSERVER=E9.SafeSubscriber=E9.Subscriber=void 0;var pj=t0(),BF=o8(),Uz=Q5(),lj=zz(),UF=s6(),Kz=KF(),cj=Hz(),ij=HG(),PF=function(Q){VF(X,Q);function X(Z){var J=Q.call(this)||this;if(J.isStopped=!1,Z){if(J.destination=Z,BF.isSubscription(Z))Z.add(J)}else J.destination=E9.EMPTY_OBSERVER;return J}return X.create=function(Z,J,G){return new FF(Z,J,G)},X.prototype.next=function(Z){if(this.isStopped)Bz(Kz.nextNotification(Z),this);else this._next(Z)},X.prototype.error=function(Z){if(this.isStopped)Bz(Kz.errorNotification(Z),this);else this.isStopped=!0,this._error(Z)},X.prototype.complete=function(){if(this.isStopped)Bz(Kz.COMPLETE_NOTIFICATION,this);else this.isStopped=!0,this._complete()},X.prototype.unsubscribe=function(){if(!this.closed)this.isStopped=!0,Q.prototype.unsubscribe.call(this),this.destination=null},X.prototype._next=function(Z){this.destination.next(Z)},X.prototype._error=function(Z){try{this.destination.error(Z)}finally{this.unsubscribe()}},X.prototype._complete=function(){try{this.destination.complete()}finally{this.unsubscribe()}},X}(BF.Subscription);E9.Subscriber=PF;var nj=Function.prototype.bind;function $z(Q,X){return nj.call(Q,X)}var oj=function(){function Q(X){this.partialObserver=X}return Q.prototype.next=function(X){var Z=this.partialObserver;if(Z.next)try{Z.next(X)}catch(J){zG(J)}},Q.prototype.error=function(X){var Z=this.partialObserver;if(Z.error)try{Z.error(X)}catch(J){zG(J)}else zG(X)},Q.prototype.complete=function(){var X=this.partialObserver;if(X.complete)try{X.complete()}catch(Z){zG(Z)}},Q}(),FF=function(Q){VF(X,Q);function X(Z,J,G){var Y=Q.call(this)||this,H;if(pj.isFunction(Z)||!Z)H={next:Z!==null&&Z!==void 0?Z:void 0,error:J!==null&&J!==void 0?J:void 0,complete:G!==null&&G!==void 0?G:void 0};else{var K;if(Y&&Uz.config.useDeprecatedNextContext)K=Object.create(Z),K.unsubscribe=function(){return Y.unsubscribe()},H={next:Z.next&&$z(Z.next,K),error:Z.error&&$z(Z.error,K),complete:Z.complete&&$z(Z.complete,K)};else H=Z}return Y.destination=new oj(H),Y}return X}(PF);E9.SafeSubscriber=FF;function zG(Q){if(Uz.config.useDeprecatedSynchronousErrorHandling)ij.captureError(Q);else lj.reportUnhandledError(Q)}function aj(Q){throw Q}function Bz(Q,X){var Z=Uz.config.onStoppedNotification;Z&&cj.timeoutProvider.setTimeout(function(){return Z(Q,X)})}E9.EMPTY_OBSERVER={closed:!0,next:UF.noop,error:aj,complete:UF.noop}});var a7=r((KG)=>{Object.defineProperty(KG,"__esModule",{value:!0});KG.observable=void 0;KG.observable=function(){return typeof Symbol==="function"&&Symbol.observable||"@@observable"}()});var t6=r(($G)=>{Object.defineProperty($G,"__esModule",{value:!0});$G.identity=void 0;function sj(Q){return Q}$G.identity=sj});var s7=r((J5)=>{Object.defineProperty(J5,"__esModule",{value:!0});J5.pipeFromArray=J5.pipe=void 0;var tj=t6();function rj(){var Q=[];for(var X=0;X{Object.defineProperty(BG,"__esModule",{value:!0});BG.Observable=void 0;var Pz=X5(),ej=o8(),QS=a7(),ZS=s7(),XS=Q5(),Vz=t0(),JS=HG(),GS=function(){function Q(X){if(X)this._subscribe=X}return Q.prototype.lift=function(X){var Z=new Q;return Z.source=this,Z.operator=X,Z},Q.prototype.subscribe=function(X,Z,J){var G=this,Y=WS(X)?X:new Pz.SafeSubscriber(X,Z,J);return JS.errorContext(function(){var H=G,K=H.operator,z=H.source;Y.add(K?K.call(Y,z):z?G._subscribe(Y):G._trySubscribe(Y))}),Y},Q.prototype._trySubscribe=function(X){try{return this._subscribe(X)}catch(Z){X.error(Z)}},Q.prototype.forEach=function(X,Z){var J=this;return Z=LF(Z),new Z(function(G,Y){var H=new Pz.SafeSubscriber({next:function(K){try{X(K)}catch(z){Y(z),H.unsubscribe()}},error:Y,complete:G});J.subscribe(H)})},Q.prototype._subscribe=function(X){var Z;return(Z=this.source)===null||Z===void 0?void 0:Z.subscribe(X)},Q.prototype[QS.observable]=function(){return this},Q.prototype.pipe=function(){var X=[];for(var Z=0;Z{Object.defineProperty(G5,"__esModule",{value:!0});G5.operate=G5.hasLift=void 0;var qS=t0();function CF(Q){return qS.isFunction(Q===null||Q===void 0?void 0:Q.lift)}G5.hasLift=CF;function HS(Q){return function(X){if(CF(X))return X.lift(function(Z){try{return Q(Z,this)}catch(J){this.error(J)}});throw new TypeError("Unable to lift unknown Observable type")}}G5.operate=HS});var Q0=r((nQ)=>{var zS=nQ&&nQ.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}();Object.defineProperty(nQ,"__esModule",{value:!0});nQ.OperatorSubscriber=nQ.createOperatorSubscriber=void 0;var KS=X5();function $S(Q,X,Z,J,G){return new NF(Q,X,Z,J,G)}nQ.createOperatorSubscriber=$S;var NF=function(Q){zS(X,Q);function X(Z,J,G,Y,H,K){var z=Q.call(this,Z)||this;return z.onFinalize=H,z.shouldUnsubscribe=K,z._next=J?function(W){try{J(W)}catch($){Z.error($)}}:Q.prototype._next,z._error=Y?function(W){try{Y(W)}catch($){Z.error($)}finally{this.unsubscribe()}}:Q.prototype._error,z._complete=G?function(){try{G()}catch(W){Z.error(W)}finally{this.unsubscribe()}}:Q.prototype._complete,z}return X.prototype.unsubscribe=function(){var Z;if(!this.shouldUnsubscribe||this.shouldUnsubscribe()){var J=this.closed;Q.prototype.unsubscribe.call(this),!J&&((Z=this.onFinalize)===null||Z===void 0||Z.call(this))}},X}(KS.Subscriber);nQ.OperatorSubscriber=NF});var Fz=r((UG)=>{Object.defineProperty(UG,"__esModule",{value:!0});UG.refCount=void 0;var BS=l1(),US=Q0();function VS(){return BS.operate(function(Q,X){var Z=null;Q._refCount++;var J=US.createOperatorSubscriber(X,void 0,void 0,void 0,function(){if(!Q||Q._refCount<=0||0<--Q._refCount){Z=null;return}var G=Q._connection,Y=Z;if(Z=null,G&&(!Y||G===Y))G.unsubscribe();X.unsubscribe()});if(Q.subscribe(J),!J.closed)Z=Q.connect()})}UG.refCount=VS});var t7=r((Y5)=>{var PS=Y5&&Y5.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}();Object.defineProperty(Y5,"__esModule",{value:!0});Y5.ConnectableObservable=void 0;var FS=Q6(),TF=o8(),DS=Fz(),LS=Q0(),CS=l1(),NS=function(Q){PS(X,Q);function X(Z,J){var G=Q.call(this)||this;if(G.source=Z,G.subjectFactory=J,G._subject=null,G._refCount=0,G._connection=null,CS.hasLift(Z))G.lift=Z.lift;return G}return X.prototype._subscribe=function(Z){return this.getSubject().subscribe(Z)},X.prototype.getSubject=function(){var Z=this._subject;if(!Z||Z.isStopped)this._subject=this.subjectFactory();return this._subject},X.prototype._teardown=function(){this._refCount=0;var Z=this._connection;this._subject=this._connection=null,Z===null||Z===void 0||Z.unsubscribe()},X.prototype.connect=function(){var Z=this,J=this._connection;if(!J){J=this._connection=new TF.Subscription;var G=this.getSubject();if(J.add(this.source.subscribe(LS.createOperatorSubscriber(G,void 0,function(){Z._teardown(),G.complete()},function(Y){Z._teardown(),G.error(Y)},function(){return Z._teardown()}))),J.closed)this._connection=null,J=TF.Subscription.EMPTY}return J},X.prototype.refCount=function(){return DS.refCount()(this)},X}(FS.Observable);Y5.ConnectableObservable=NS});var MF=r((r7)=>{Object.defineProperty(r7,"__esModule",{value:!0});r7.performanceTimestampProvider=void 0;r7.performanceTimestampProvider={now:function(){return(r7.performanceTimestampProvider.delegate||performance).now()},delegate:void 0}});var Dz=r((j9)=>{var IF=j9&&j9.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},RF=j9&&j9.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{Object.defineProperty(VG,"__esModule",{value:!0});VG.animationFrames=void 0;var MS=Q6(),IS=MF(),AF=Dz();function RS(Q){return Q?OF(Q):AS}VG.animationFrames=RS;function OF(Q){return new MS.Observable(function(X){var Z=Q||IS.performanceTimestampProvider,J=Z.now(),G=0,Y=function(){if(!X.closed)G=AF.animationFrameProvider.requestAnimationFrame(function(H){G=0;var K=Z.now();X.next({timestamp:Q?K:H,elapsed:K-J}),Y()})};return Y(),function(){if(G)AF.animationFrameProvider.cancelAnimationFrame(G)}})}var AS=OF()});var Lz=r((PG)=>{Object.defineProperty(PG,"__esModule",{value:!0});PG.ObjectUnsubscribedError=void 0;var OS=iQ();PG.ObjectUnsubscribedError=OS.createErrorClass(function(Q){return function X(){Q(this),this.name="ObjectUnsubscribedError",this.message="object unsubscribed"}})});var r6=r((t9)=>{var jF=t9&&t9.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}(),wS=t9&&t9.__values||function(Q){var X=typeof Symbol==="function"&&Symbol.iterator,Z=X&&Q[X],J=0;if(Z)return Z.call(Q);if(Q&&typeof Q.length==="number")return{next:function(){if(Q&&J>=Q.length)Q=void 0;return{value:Q&&Q[J++],done:!Q}}};throw new TypeError(X?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(t9,"__esModule",{value:!0});t9.AnonymousSubject=t9.Subject=void 0;var EF=Q6(),Nz=o8(),ES=Lz(),jS=MQ(),Cz=HG(),SF=function(Q){jF(X,Q);function X(){var Z=Q.call(this)||this;return Z.closed=!1,Z.currentObservers=null,Z.observers=[],Z.isStopped=!1,Z.hasError=!1,Z.thrownError=null,Z}return X.prototype.lift=function(Z){var J=new Tz(this,this);return J.operator=Z,J},X.prototype._throwIfClosed=function(){if(this.closed)throw new ES.ObjectUnsubscribedError},X.prototype.next=function(Z){var J=this;Cz.errorContext(function(){var G,Y;if(J._throwIfClosed(),!J.isStopped){if(!J.currentObservers)J.currentObservers=Array.from(J.observers);try{for(var H=wS(J.currentObservers),K=H.next();!K.done;K=H.next()){var z=K.value;z.next(Z)}}catch(W){G={error:W}}finally{try{if(K&&!K.done&&(Y=H.return))Y.call(H)}finally{if(G)throw G.error}}}})},X.prototype.error=function(Z){var J=this;Cz.errorContext(function(){if(J._throwIfClosed(),!J.isStopped){J.hasError=J.isStopped=!0,J.thrownError=Z;var G=J.observers;while(G.length)G.shift().error(Z)}})},X.prototype.complete=function(){var Z=this;Cz.errorContext(function(){if(Z._throwIfClosed(),!Z.isStopped){Z.isStopped=!0;var J=Z.observers;while(J.length)J.shift().complete()}})},X.prototype.unsubscribe=function(){this.isStopped=this.closed=!0,this.observers=this.currentObservers=null},Object.defineProperty(X.prototype,"observed",{get:function(){var Z;return((Z=this.observers)===null||Z===void 0?void 0:Z.length)>0},enumerable:!1,configurable:!0}),X.prototype._trySubscribe=function(Z){return this._throwIfClosed(),Q.prototype._trySubscribe.call(this,Z)},X.prototype._subscribe=function(Z){return this._throwIfClosed(),this._checkFinalizedStatuses(Z),this._innerSubscribe(Z)},X.prototype._innerSubscribe=function(Z){var J=this,G=this,Y=G.hasError,H=G.isStopped,K=G.observers;if(Y||H)return Nz.EMPTY_SUBSCRIPTION;return this.currentObservers=null,K.push(Z),new Nz.Subscription(function(){J.currentObservers=null,jS.arrRemove(K,Z)})},X.prototype._checkFinalizedStatuses=function(Z){var J=this,G=J.hasError,Y=J.thrownError,H=J.isStopped;if(G)Z.error(Y);else if(H)Z.complete()},X.prototype.asObservable=function(){var Z=new EF.Observable;return Z.source=this,Z},X.create=function(Z,J){return new Tz(Z,J)},X}(EF.Observable);t9.Subject=SF;var Tz=function(Q){jF(X,Q);function X(Z,J){var G=Q.call(this)||this;return G.destination=Z,G.source=J,G}return X.prototype.next=function(Z){var J,G;(G=(J=this.destination)===null||J===void 0?void 0:J.next)===null||G===void 0||G.call(J,Z)},X.prototype.error=function(Z){var J,G;(G=(J=this.destination)===null||J===void 0?void 0:J.error)===null||G===void 0||G.call(J,Z)},X.prototype.complete=function(){var Z,J;(J=(Z=this.destination)===null||Z===void 0?void 0:Z.complete)===null||J===void 0||J.call(Z)},X.prototype._subscribe=function(Z){var J,G;return(G=(J=this.source)===null||J===void 0?void 0:J.subscribe(Z))!==null&&G!==void 0?G:Nz.EMPTY_SUBSCRIPTION},X}(SF);t9.AnonymousSubject=Tz});var Mz=r((W5)=>{var SS=W5&&W5.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}();Object.defineProperty(W5,"__esModule",{value:!0});W5.BehaviorSubject=void 0;var kS=r6(),yS=function(Q){SS(X,Q);function X(Z){var J=Q.call(this)||this;return J._value=Z,J}return Object.defineProperty(X.prototype,"value",{get:function(){return this.getValue()},enumerable:!1,configurable:!0}),X.prototype._subscribe=function(Z){var J=Q.prototype._subscribe.call(this,Z);return!J.closed&&Z.next(this._value),J},X.prototype.getValue=function(){var Z=this,J=Z.hasError,G=Z.thrownError,Y=Z._value;if(J)throw G;return this._throwIfClosed(),Y},X.prototype.next=function(Z){Q.prototype.next.call(this,this._value=Z)},X}(kS.Subject);W5.BehaviorSubject=yS});var FG=r((e7)=>{Object.defineProperty(e7,"__esModule",{value:!0});e7.dateTimestampProvider=void 0;e7.dateTimestampProvider={now:function(){return(e7.dateTimestampProvider.delegate||Date).now()},delegate:void 0}});var DG=r((q5)=>{var xS=q5&&q5.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}();Object.defineProperty(q5,"__esModule",{value:!0});q5.ReplaySubject=void 0;var vS=r6(),gS=FG(),hS=function(Q){xS(X,Q);function X(Z,J,G){if(Z===void 0)Z=1/0;if(J===void 0)J=1/0;if(G===void 0)G=gS.dateTimestampProvider;var Y=Q.call(this)||this;return Y._bufferSize=Z,Y._windowTime=J,Y._timestampProvider=G,Y._buffer=[],Y._infiniteTimeWindow=!0,Y._infiniteTimeWindow=J===1/0,Y._bufferSize=Math.max(1,Z),Y._windowTime=Math.max(1,J),Y}return X.prototype.next=function(Z){var J=this,G=J.isStopped,Y=J._buffer,H=J._infiniteTimeWindow,K=J._timestampProvider,z=J._windowTime;if(!G)Y.push(Z),!H&&Y.push(K.now()+z);this._trimBuffer(),Q.prototype.next.call(this,Z)},X.prototype._subscribe=function(Z){this._throwIfClosed(),this._trimBuffer();var J=this._innerSubscribe(Z),G=this,Y=G._infiniteTimeWindow,H=G._buffer,K=H.slice();for(var z=0;z{var fS=H5&&H5.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}();Object.defineProperty(H5,"__esModule",{value:!0});H5.AsyncSubject=void 0;var bS=r6(),mS=function(Q){fS(X,Q);function X(){var Z=Q!==null&&Q.apply(this,arguments)||this;return Z._value=null,Z._hasValue=!1,Z._isComplete=!1,Z}return X.prototype._checkFinalizedStatuses=function(Z){var J=this,G=J.hasError,Y=J._hasValue,H=J._value,K=J.thrownError,z=J.isStopped,W=J._isComplete;if(G)Z.error(K);else if(z||W)Y&&Z.next(H),Z.complete()},X.prototype.next=function(Z){if(!this.isStopped)this._value=Z,this._hasValue=!0},X.prototype.complete=function(){var Z=this,J=Z._hasValue,G=Z._value,Y=Z._isComplete;if(!Y)this._isComplete=!0,J&&Q.prototype.next.call(this,G),Q.prototype.complete.call(this)},X}(bS.Subject);H5.AsyncSubject=mS});var kF=r((z5)=>{var _S=z5&&z5.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}();Object.defineProperty(z5,"__esModule",{value:!0});z5.Action=void 0;var dS=o8(),uS=function(Q){_S(X,Q);function X(Z,J){return Q.call(this)||this}return X.prototype.schedule=function(Z,J){if(J===void 0)J=0;return this},X}(dS.Subscription);z5.Action=uS});var vF=r((r9)=>{var yF=r9&&r9.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},xF=r9&&r9.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{var pS=K5&&K5.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}();Object.defineProperty(K5,"__esModule",{value:!0});K5.AsyncAction=void 0;var lS=kF(),gF=vF(),cS=MQ(),iS=function(Q){pS(X,Q);function X(Z,J){var G=Q.call(this,Z,J)||this;return G.scheduler=Z,G.work=J,G.pending=!1,G}return X.prototype.schedule=function(Z,J){var G;if(J===void 0)J=0;if(this.closed)return this;this.state=Z;var Y=this.id,H=this.scheduler;if(Y!=null)this.id=this.recycleAsyncId(H,Y,J);return this.pending=!0,this.delay=J,this.id=(G=this.id)!==null&&G!==void 0?G:this.requestAsyncId(H,this.id,J),this},X.prototype.requestAsyncId=function(Z,J,G){if(G===void 0)G=0;return gF.intervalProvider.setInterval(Z.flush.bind(Z,this),G)},X.prototype.recycleAsyncId=function(Z,J,G){if(G===void 0)G=0;if(G!=null&&this.delay===G&&this.pending===!1)return J;if(J!=null)gF.intervalProvider.clearInterval(J);return},X.prototype.execute=function(Z,J){if(this.closed)return new Error("executing a cancelled action");this.pending=!1;var G=this._execute(Z,J);if(G)return G;else if(this.pending===!1&&this.id!=null)this.id=this.recycleAsyncId(this.scheduler,this.id,null)},X.prototype._execute=function(Z,J){var G=!1,Y;try{this.work(Z)}catch(H){G=!0,Y=H?H:new Error("Scheduled action threw falsy error")}if(G)return this.unsubscribe(),Y},X.prototype.unsubscribe=function(){if(!this.closed){var Z=this,J=Z.id,G=Z.scheduler,Y=G.actions;if(this.work=this.state=this.scheduler=null,this.pending=!1,cS.arrRemove(Y,this),J!=null)this.id=this.recycleAsyncId(G,J,null);this.delay=null,Q.prototype.unsubscribe.call(this)}},X}(lS.Action);K5.AsyncAction=iS});var fF=r((B5)=>{Object.defineProperty(B5,"__esModule",{value:!0});B5.TestTools=B5.Immediate=void 0;var nS=1,Iz,CG={};function hF(Q){if(Q in CG)return delete CG[Q],!0;return!1}B5.Immediate={setImmediate:function(Q){var X=nS++;if(CG[X]=!0,!Iz)Iz=Promise.resolve();return Iz.then(function(){return hF(X)&&Q()}),X},clearImmediate:function(Q){hF(Q)}};B5.TestTools={pending:function(){return Object.keys(CG).length}}});var mF=r((e9)=>{var oS=e9&&e9.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},aS=e9&&e9.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{var rS=U5&&U5.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}();Object.defineProperty(U5,"__esModule",{value:!0});U5.AsapAction=void 0;var eS=$5(),_F=mF(),Qk=function(Q){rS(X,Q);function X(Z,J){var G=Q.call(this,Z,J)||this;return G.scheduler=Z,G.work=J,G}return X.prototype.requestAsyncId=function(Z,J,G){if(G===void 0)G=0;if(G!==null&&G>0)return Q.prototype.requestAsyncId.call(this,Z,J,G);return Z.actions.push(this),Z._scheduled||(Z._scheduled=_F.immediateProvider.setImmediate(Z.flush.bind(Z,void 0)))},X.prototype.recycleAsyncId=function(Z,J,G){var Y;if(G===void 0)G=0;if(G!=null?G>0:this.delay>0)return Q.prototype.recycleAsyncId.call(this,Z,J,G);var H=Z.actions;if(J!=null&&((Y=H[H.length-1])===null||Y===void 0?void 0:Y.id)!==J){if(_F.immediateProvider.clearImmediate(J),Z._scheduled===J)Z._scheduled=void 0}return},X}(eS.AsyncAction);U5.AsapAction=Qk});var Rz=r((NG)=>{Object.defineProperty(NG,"__esModule",{value:!0});NG.Scheduler=void 0;var Zk=FG(),Xk=function(){function Q(X,Z){if(Z===void 0)Z=Q.now;this.schedulerActionCtor=X,this.now=Z}return Q.prototype.schedule=function(X,Z,J){if(Z===void 0)Z=0;return new this.schedulerActionCtor(this,X).schedule(J,Z)},Q.now=Zk.dateTimestampProvider.now,Q}();NG.Scheduler=Xk});var P5=r((V5)=>{var Jk=V5&&V5.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}();Object.defineProperty(V5,"__esModule",{value:!0});V5.AsyncScheduler=void 0;var uF=Rz(),Gk=function(Q){Jk(X,Q);function X(Z,J){if(J===void 0)J=uF.Scheduler.now;var G=Q.call(this,Z,J)||this;return G.actions=[],G._active=!1,G}return X.prototype.flush=function(Z){var J=this.actions;if(this._active){J.push(Z);return}var G;this._active=!0;do if(G=Z.execute(Z.state,Z.delay))break;while(Z=J.shift());if(this._active=!1,G){while(Z=J.shift())Z.unsubscribe();throw G}},X}(uF.Scheduler);V5.AsyncScheduler=Gk});var pF=r((F5)=>{var Yk=F5&&F5.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}();Object.defineProperty(F5,"__esModule",{value:!0});F5.AsapScheduler=void 0;var Wk=P5(),qk=function(Q){Yk(X,Q);function X(){return Q!==null&&Q.apply(this,arguments)||this}return X.prototype.flush=function(Z){this._active=!0;var J=this._scheduled;this._scheduled=void 0;var G=this.actions,Y;Z=Z||G.shift();do if(Y=Z.execute(Z.state,Z.delay))break;while((Z=G[0])&&Z.id===J&&G.shift());if(this._active=!1,Y){while((Z=G[0])&&Z.id===J&&G.shift())Z.unsubscribe();throw Y}},X}(Wk.AsyncScheduler);F5.AsapScheduler=qk});var lF=r((o4)=>{Object.defineProperty(o4,"__esModule",{value:!0});o4.asap=o4.asapScheduler=void 0;var Hk=dF(),zk=pF();o4.asapScheduler=new zk.AsapScheduler(Hk.AsapAction);o4.asap=o4.asapScheduler});var w8=r((a4)=>{Object.defineProperty(a4,"__esModule",{value:!0});a4.async=a4.asyncScheduler=void 0;var Kk=$5(),$k=P5();a4.asyncScheduler=new $k.AsyncScheduler(Kk.AsyncAction);a4.async=a4.asyncScheduler});var cF=r((D5)=>{var Bk=D5&&D5.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}();Object.defineProperty(D5,"__esModule",{value:!0});D5.QueueAction=void 0;var Uk=$5(),Vk=function(Q){Bk(X,Q);function X(Z,J){var G=Q.call(this,Z,J)||this;return G.scheduler=Z,G.work=J,G}return X.prototype.schedule=function(Z,J){if(J===void 0)J=0;if(J>0)return Q.prototype.schedule.call(this,Z,J);return this.delay=J,this.state=Z,this.scheduler.flush(this),this},X.prototype.execute=function(Z,J){return J>0||this.closed?Q.prototype.execute.call(this,Z,J):this._execute(Z,J)},X.prototype.requestAsyncId=function(Z,J,G){if(G===void 0)G=0;if(G!=null&&G>0||G==null&&this.delay>0)return Q.prototype.requestAsyncId.call(this,Z,J,G);return Z.flush(this),0},X}(Uk.AsyncAction);D5.QueueAction=Vk});var iF=r((L5)=>{var Pk=L5&&L5.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}();Object.defineProperty(L5,"__esModule",{value:!0});L5.QueueScheduler=void 0;var Fk=P5(),Dk=function(Q){Pk(X,Q);function X(){return Q!==null&&Q.apply(this,arguments)||this}return X}(Fk.AsyncScheduler);L5.QueueScheduler=Dk});var nF=r((s4)=>{Object.defineProperty(s4,"__esModule",{value:!0});s4.queue=s4.queueScheduler=void 0;var Lk=cF(),Ck=iF();s4.queueScheduler=new Ck.QueueScheduler(Lk.QueueAction);s4.queue=s4.queueScheduler});var aF=r((C5)=>{var Nk=C5&&C5.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}();Object.defineProperty(C5,"__esModule",{value:!0});C5.AnimationFrameAction=void 0;var Tk=$5(),oF=Dz(),Mk=function(Q){Nk(X,Q);function X(Z,J){var G=Q.call(this,Z,J)||this;return G.scheduler=Z,G.work=J,G}return X.prototype.requestAsyncId=function(Z,J,G){if(G===void 0)G=0;if(G!==null&&G>0)return Q.prototype.requestAsyncId.call(this,Z,J,G);return Z.actions.push(this),Z._scheduled||(Z._scheduled=oF.animationFrameProvider.requestAnimationFrame(function(){return Z.flush(void 0)}))},X.prototype.recycleAsyncId=function(Z,J,G){var Y;if(G===void 0)G=0;if(G!=null?G>0:this.delay>0)return Q.prototype.recycleAsyncId.call(this,Z,J,G);var H=Z.actions;if(J!=null&&((Y=H[H.length-1])===null||Y===void 0?void 0:Y.id)!==J)oF.animationFrameProvider.cancelAnimationFrame(J),Z._scheduled=void 0;return},X}(Tk.AsyncAction);C5.AnimationFrameAction=Mk});var sF=r((N5)=>{var Ik=N5&&N5.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}();Object.defineProperty(N5,"__esModule",{value:!0});N5.AnimationFrameScheduler=void 0;var Rk=P5(),Ak=function(Q){Ik(X,Q);function X(){return Q!==null&&Q.apply(this,arguments)||this}return X.prototype.flush=function(Z){this._active=!0;var J=this._scheduled;this._scheduled=void 0;var G=this.actions,Y;Z=Z||G.shift();do if(Y=Z.execute(Z.state,Z.delay))break;while((Z=G[0])&&Z.id===J&&G.shift());if(this._active=!1,Y){while((Z=G[0])&&Z.id===J&&G.shift())Z.unsubscribe();throw Y}},X}(Rk.AsyncScheduler);N5.AnimationFrameScheduler=Ak});var tF=r((t4)=>{Object.defineProperty(t4,"__esModule",{value:!0});t4.animationFrame=t4.animationFrameScheduler=void 0;var Ok=aF(),wk=sF();t4.animationFrameScheduler=new wk.AnimationFrameScheduler(Ok.AnimationFrameAction);t4.animationFrame=t4.animationFrameScheduler});var QD=r((oQ)=>{var rF=oQ&&oQ.__extends||function(){var Q=function(X,Z){return Q=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(J,G){J.__proto__=G}||function(J,G){for(var Y in G)if(Object.prototype.hasOwnProperty.call(G,Y))J[Y]=G[Y]},Q(X,Z)};return function(X,Z){if(typeof Z!=="function"&&Z!==null)throw new TypeError("Class extends value "+String(Z)+" is not a constructor or null");Q(X,Z);function J(){this.constructor=X}X.prototype=Z===null?Object.create(Z):(J.prototype=Z.prototype,new J)}}();Object.defineProperty(oQ,"__esModule",{value:!0});oQ.VirtualAction=oQ.VirtualTimeScheduler=void 0;var Ek=$5(),jk=o8(),Sk=P5(),kk=function(Q){rF(X,Q);function X(Z,J){if(Z===void 0)Z=eF;if(J===void 0)J=1/0;var G=Q.call(this,Z,function(){return G.frame})||this;return G.maxFrames=J,G.frame=0,G.index=-1,G}return X.prototype.flush=function(){var Z=this,J=Z.actions,G=Z.maxFrames,Y,H;while((H=J[0])&&H.delay<=G)if(J.shift(),this.frame=H.delay,Y=H.execute(H.state,H.delay))break;if(Y){while(H=J.shift())H.unsubscribe();throw Y}},X.frameTimeFactor=10,X}(Sk.AsyncScheduler);oQ.VirtualTimeScheduler=kk;var eF=function(Q){rF(X,Q);function X(Z,J,G){if(G===void 0)G=Z.index+=1;var Y=Q.call(this,Z,J)||this;return Y.scheduler=Z,Y.work=J,Y.index=G,Y.active=!0,Y.index=Z.index=G,Y}return X.prototype.schedule=function(Z,J){if(J===void 0)J=0;if(Number.isFinite(J)){if(!this.id)return Q.prototype.schedule.call(this,Z,J);this.active=!1;var G=new X(this.scheduler,this.work);return this.add(G),G.schedule(Z,J)}else return jk.Subscription.EMPTY},X.prototype.requestAsyncId=function(Z,J,G){if(G===void 0)G=0;this.delay=Z.frame+G;var Y=Z.actions;return Y.push(this),Y.sort(X.sortActions),1},X.prototype.recycleAsyncId=function(Z,J,G){if(G===void 0)G=0;return},X.prototype._execute=function(Z,J){if(this.active===!0)return Q.prototype._execute.call(this,Z,J)},X.sortActions=function(Z,J){if(Z.delay===J.delay)if(Z.index===J.index)return 0;else if(Z.index>J.index)return 1;else return-1;else if(Z.delay>J.delay)return 1;else return-1},X}(Ek.AsyncAction);oQ.VirtualAction=eF});var S9=r((r4)=>{Object.defineProperty(r4,"__esModule",{value:!0});r4.empty=r4.EMPTY=void 0;var ZD=Q6();r4.EMPTY=new ZD.Observable(function(Q){return Q.complete()});function yk(Q){return Q?xk(Q):r4.EMPTY}r4.empty=yk;function xk(Q){return new ZD.Observable(function(X){return Q.schedule(function(){return X.complete()})})}});var QX=r((TG)=>{Object.defineProperty(TG,"__esModule",{value:!0});TG.isScheduler=void 0;var vk=t0();function gk(Q){return Q&&vk.isFunction(Q.schedule)}TG.isScheduler=gk});var E8=r((aQ)=>{Object.defineProperty(aQ,"__esModule",{value:!0});aQ.popNumber=aQ.popScheduler=aQ.popResultSelector=void 0;var hk=t0(),fk=QX();function Az(Q){return Q[Q.length-1]}function bk(Q){return hk.isFunction(Az(Q))?Q.pop():void 0}aQ.popResultSelector=bk;function mk(Q){return fk.isScheduler(Az(Q))?Q.pop():void 0}aQ.popScheduler=mk;function _k(Q,X){return typeof Az(Q)==="number"?Q.pop():X}aQ.popNumber=_k});var IG=r((MG)=>{Object.defineProperty(MG,"__esModule",{value:!0});MG.isArrayLike=void 0;MG.isArrayLike=function(Q){return Q&&typeof Q.length==="number"&&typeof Q!=="function"}});var Oz=r((RG)=>{Object.defineProperty(RG,"__esModule",{value:!0});RG.isPromise=void 0;var dk=t0();function uk(Q){return dk.isFunction(Q===null||Q===void 0?void 0:Q.then)}RG.isPromise=uk});var wz=r((AG)=>{Object.defineProperty(AG,"__esModule",{value:!0});AG.isInteropObservable=void 0;var pk=a7(),lk=t0();function ck(Q){return lk.isFunction(Q[pk.observable])}AG.isInteropObservable=ck});var Ez=r((OG)=>{Object.defineProperty(OG,"__esModule",{value:!0});OG.isAsyncIterable=void 0;var ik=t0();function nk(Q){return Symbol.asyncIterator&&ik.isFunction(Q===null||Q===void 0?void 0:Q[Symbol.asyncIterator])}OG.isAsyncIterable=nk});var jz=r((wG)=>{Object.defineProperty(wG,"__esModule",{value:!0});wG.createInvalidObservableTypeError=void 0;function ok(Q){return new TypeError("You provided "+(Q!==null&&typeof Q==="object"?"an invalid object":"'"+Q+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}wG.createInvalidObservableTypeError=ok});var Sz=r((T5)=>{Object.defineProperty(T5,"__esModule",{value:!0});T5.iterator=T5.getSymbolIterator=void 0;function XD(){if(typeof Symbol!=="function"||!Symbol.iterator)return"@@iterator";return Symbol.iterator}T5.getSymbolIterator=XD;T5.iterator=XD()});var kz=r((EG)=>{Object.defineProperty(EG,"__esModule",{value:!0});EG.isIterable=void 0;var ak=Sz(),sk=t0();function tk(Q){return sk.isFunction(Q===null||Q===void 0?void 0:Q[ak.iterator])}EG.isIterable=tk});var jG=r((z9)=>{var rk=z9&&z9.__generator||function(Q,X){var Z={label:0,sent:function(){if(Y[0]&1)throw Y[1];return Y[1]},trys:[],ops:[]},J,G,Y,H;return H={next:K(0),throw:K(1),return:K(2)},typeof Symbol==="function"&&(H[Symbol.iterator]=function(){return this}),H;function K(W){return function($){return z([W,$])}}function z(W){if(J)throw new TypeError("Generator is already executing.");while(Z)try{if(J=1,G&&(Y=W[0]&2?G.return:W[0]?G.throw||((Y=G.return)&&Y.call(G),0):G.next)&&!(Y=Y.call(G,W[1])).done)return Y;if(G=0,Y)W=[W[0]&2,Y.value];switch(W[0]){case 0:case 1:Y=W;break;case 4:return Z.label++,{value:W[1],done:!1};case 5:Z.label++,G=W[1],W=[0];continue;case 7:W=Z.ops.pop(),Z.trys.pop();continue;default:if((Y=Z.trys,!(Y=Y.length>0&&Y[Y.length-1]))&&(W[0]===6||W[0]===2)){Z=0;continue}if(W[0]===3&&(!Y||W[1]>Y[0]&&W[1]1||K(B,D)})}}function K(B,D){try{z(J[B](D))}catch(F){q(Y[0][3],F)}}function z(B){B.value instanceof M5?Promise.resolve(B.value.v).then(W,$):q(Y[0][2],B)}function W(B){K("next",B)}function $(B){K("throw",B)}function q(B,D){if(B(D),Y.shift(),Y.length)K(Y[0][0],Y[0][1])}};Object.defineProperty(z9,"__esModule",{value:!0});z9.isReadableStreamLike=z9.readableStreamLikeToAsyncGenerator=void 0;var Qy=t0();function Zy(Q){return ek(this,arguments,function X(){var Z,J,G,Y;return rk(this,function(H){switch(H.label){case 0:Z=Q.getReader(),H.label=1;case 1:H.trys.push([1,,9,10]),H.label=2;case 2:return[4,M5(Z.read())];case 3:if(J=H.sent(),G=J.value,Y=J.done,!Y)return[3,5];return[4,M5(void 0)];case 4:return[2,H.sent()];case 5:return[4,M5(G)];case 6:return[4,H.sent()];case 7:return H.sent(),[3,2];case 8:return[3,10];case 9:return Z.releaseLock(),[7];case 10:return[2]}})})}z9.readableStreamLikeToAsyncGenerator=Zy;function Xy(Q){return Qy.isFunction(Q===null||Q===void 0?void 0:Q.getReader)}z9.isReadableStreamLike=Xy});var A0=r((M6)=>{var Jy=M6&&M6.__awaiter||function(Q,X,Z,J){function G(Y){return Y instanceof Z?Y:new Z(function(H){H(Y)})}return new(Z||(Z=Promise))(function(Y,H){function K($){try{W(J.next($))}catch(q){H(q)}}function z($){try{W(J.throw($))}catch(q){H(q)}}function W($){$.done?Y($.value):G($.value).then(K,z)}W((J=J.apply(Q,X||[])).next())})},Gy=M6&&M6.__generator||function(Q,X){var Z={label:0,sent:function(){if(Y[0]&1)throw Y[1];return Y[1]},trys:[],ops:[]},J,G,Y,H;return H={next:K(0),throw:K(1),return:K(2)},typeof Symbol==="function"&&(H[Symbol.iterator]=function(){return this}),H;function K(W){return function($){return z([W,$])}}function z(W){if(J)throw new TypeError("Generator is already executing.");while(Z)try{if(J=1,G&&(Y=W[0]&2?G.return:W[0]?G.throw||((Y=G.return)&&Y.call(G),0):G.next)&&!(Y=Y.call(G,W[1])).done)return Y;if(G=0,Y)W=[W[0]&2,Y.value];switch(W[0]){case 0:case 1:Y=W;break;case 4:return Z.label++,{value:W[1],done:!1};case 5:Z.label++,G=W[1],W=[0];continue;case 7:W=Z.ops.pop(),Z.trys.pop();continue;default:if((Y=Z.trys,!(Y=Y.length>0&&Y[Y.length-1]))&&(W[0]===6||W[0]===2)){Z=0;continue}if(W[0]===3&&(!Y||W[1]>Y[0]&&W[1]=Q.length)Q=void 0;return{value:Q&&Q[J++],done:!Q}}};throw new TypeError(X?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(M6,"__esModule",{value:!0});M6.fromReadableStreamLike=M6.fromAsyncIterable=M6.fromIterable=M6.fromPromise=M6.fromArrayLike=M6.fromInteropObservable=M6.innerFrom=void 0;var Wy=IG(),qy=Oz(),I5=Q6(),Hy=wz(),zy=Ez(),Ky=jz(),$y=kz(),JD=jG(),By=t0(),Uy=zz(),Vy=a7();function Py(Q){if(Q instanceof I5.Observable)return Q;if(Q!=null){if(Hy.isInteropObservable(Q))return GD(Q);if(Wy.isArrayLike(Q))return YD(Q);if(qy.isPromise(Q))return WD(Q);if(zy.isAsyncIterable(Q))return xz(Q);if($y.isIterable(Q))return qD(Q);if(JD.isReadableStreamLike(Q))return HD(Q)}throw Ky.createInvalidObservableTypeError(Q)}M6.innerFrom=Py;function GD(Q){return new I5.Observable(function(X){var Z=Q[Vy.observable]();if(By.isFunction(Z.subscribe))return Z.subscribe(X);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}M6.fromInteropObservable=GD;function YD(Q){return new I5.Observable(function(X){for(var Z=0;Z{Object.defineProperty(SG,"__esModule",{value:!0});SG.executeSchedule=void 0;function Dy(Q,X,Z,J,G){if(J===void 0)J=0;if(G===void 0)G=!1;var Y=X.schedule(function(){if(Z(),G)Q.add(this.schedule(null,J));else this.unsubscribe()},J);if(Q.add(Y),!G)return Y}SG.executeSchedule=Dy});var ZX=r((kG)=>{Object.defineProperty(kG,"__esModule",{value:!0});kG.observeOn=void 0;var vz=IQ(),Ly=l1(),Cy=Q0();function Ny(Q,X){if(X===void 0)X=0;return Ly.operate(function(Z,J){Z.subscribe(Cy.createOperatorSubscriber(J,function(G){return vz.executeSchedule(J,Q,function(){return J.next(G)},X)},function(){return vz.executeSchedule(J,Q,function(){return J.complete()},X)},function(G){return vz.executeSchedule(J,Q,function(){return J.error(G)},X)}))})}kG.observeOn=Ny});var XX=r((yG)=>{Object.defineProperty(yG,"__esModule",{value:!0});yG.subscribeOn=void 0;var Ty=l1();function My(Q,X){if(X===void 0)X=0;return Ty.operate(function(Z,J){J.add(Q.schedule(function(){return Z.subscribe(J)},X))})}yG.subscribeOn=My});var zD=r((xG)=>{Object.defineProperty(xG,"__esModule",{value:!0});xG.scheduleObservable=void 0;var Iy=A0(),Ry=ZX(),Ay=XX();function Oy(Q,X){return Iy.innerFrom(Q).pipe(Ay.subscribeOn(X),Ry.observeOn(X))}xG.scheduleObservable=Oy});var KD=r((vG)=>{Object.defineProperty(vG,"__esModule",{value:!0});vG.schedulePromise=void 0;var wy=A0(),Ey=ZX(),jy=XX();function Sy(Q,X){return wy.innerFrom(Q).pipe(jy.subscribeOn(X),Ey.observeOn(X))}vG.schedulePromise=Sy});var $D=r((gG)=>{Object.defineProperty(gG,"__esModule",{value:!0});gG.scheduleArray=void 0;var ky=Q6();function yy(Q,X){return new ky.Observable(function(Z){var J=0;return X.schedule(function(){if(J===Q.length)Z.complete();else if(Z.next(Q[J++]),!Z.closed)this.schedule()})})}gG.scheduleArray=yy});var gz=r((hG)=>{Object.defineProperty(hG,"__esModule",{value:!0});hG.scheduleIterable=void 0;var xy=Q6(),vy=Sz(),gy=t0(),BD=IQ();function hy(Q,X){return new xy.Observable(function(Z){var J;return BD.executeSchedule(Z,X,function(){J=Q[vy.iterator](),BD.executeSchedule(Z,X,function(){var G,Y,H;try{G=J.next(),Y=G.value,H=G.done}catch(K){Z.error(K);return}if(H)Z.complete();else Z.next(Y)},0,!0)}),function(){return gy.isFunction(J===null||J===void 0?void 0:J.return)&&J.return()}})}hG.scheduleIterable=hy});var hz=r((fG)=>{Object.defineProperty(fG,"__esModule",{value:!0});fG.scheduleAsyncIterable=void 0;var fy=Q6(),UD=IQ();function by(Q,X){if(!Q)throw new Error("Iterable cannot be null");return new fy.Observable(function(Z){UD.executeSchedule(Z,X,function(){var J=Q[Symbol.asyncIterator]();UD.executeSchedule(Z,X,function(){J.next().then(function(G){if(G.done)Z.complete();else Z.next(G.value)})},0,!0)})})}fG.scheduleAsyncIterable=by});var VD=r((bG)=>{Object.defineProperty(bG,"__esModule",{value:!0});bG.scheduleReadableStreamLike=void 0;var my=hz(),_y=jG();function dy(Q,X){return my.scheduleAsyncIterable(_y.readableStreamLikeToAsyncGenerator(Q),X)}bG.scheduleReadableStreamLike=dy});var fz=r((mG)=>{Object.defineProperty(mG,"__esModule",{value:!0});mG.scheduled=void 0;var uy=zD(),py=KD(),ly=$D(),cy=gz(),iy=hz(),ny=wz(),oy=Oz(),ay=IG(),sy=kz(),ty=Ez(),ry=jz(),ey=jG(),Qx=VD();function Zx(Q,X){if(Q!=null){if(ny.isInteropObservable(Q))return uy.scheduleObservable(Q,X);if(ay.isArrayLike(Q))return ly.scheduleArray(Q,X);if(oy.isPromise(Q))return py.schedulePromise(Q,X);if(ty.isAsyncIterable(Q))return iy.scheduleAsyncIterable(Q,X);if(sy.isIterable(Q))return cy.scheduleIterable(Q,X);if(ey.isReadableStreamLike(Q))return Qx.scheduleReadableStreamLike(Q,X)}throw ry.createInvalidObservableTypeError(Q)}mG.scheduled=Zx});var RQ=r((_G)=>{Object.defineProperty(_G,"__esModule",{value:!0});_G.from=void 0;var Xx=fz(),Jx=A0();function Gx(Q,X){return X?Xx.scheduled(Q,X):Jx.innerFrom(Q)}_G.from=Gx});var uG=r((dG)=>{Object.defineProperty(dG,"__esModule",{value:!0});dG.of=void 0;var Yx=E8(),Wx=RQ();function qx(){var Q=[];for(var X=0;X{Object.defineProperty(pG,"__esModule",{value:!0});pG.throwError=void 0;var Hx=Q6(),zx=t0();function Kx(Q,X){var Z=zx.isFunction(Q)?Q:function(){return Q},J=function(G){return G.error(Z())};return new Hx.Observable(X?function(G){return X.schedule(J,0,G)}:J)}pG.throwError=Kx});var lG=r((AQ)=>{Object.defineProperty(AQ,"__esModule",{value:!0});AQ.observeNotification=AQ.Notification=AQ.NotificationKind=void 0;var $x=S9(),Bx=uG(),Ux=bz(),Vx=t0(),Px;(function(Q){Q.NEXT="N",Q.ERROR="E",Q.COMPLETE="C"})(Px=AQ.NotificationKind||(AQ.NotificationKind={}));var Fx=function(){function Q(X,Z,J){this.kind=X,this.value=Z,this.error=J,this.hasValue=X==="N"}return Q.prototype.observe=function(X){return PD(this,X)},Q.prototype.do=function(X,Z,J){var G=this,Y=G.kind,H=G.value,K=G.error;return Y==="N"?X===null||X===void 0?void 0:X(H):Y==="E"?Z===null||Z===void 0?void 0:Z(K):J===null||J===void 0?void 0:J()},Q.prototype.accept=function(X,Z,J){var G;return Vx.isFunction((G=X)===null||G===void 0?void 0:G.next)?this.observe(X):this.do(X,Z,J)},Q.prototype.toObservable=function(){var X=this,Z=X.kind,J=X.value,G=X.error,Y=Z==="N"?Bx.of(J):Z==="E"?Ux.throwError(function(){return G}):Z==="C"?$x.EMPTY:0;if(!Y)throw new TypeError("Unexpected notification kind "+Z);return Y},Q.createNext=function(X){return new Q("N",X)},Q.createError=function(X){return new Q("E",void 0,X)},Q.createComplete=function(){return Q.completeNotification},Q.completeNotification=new Q("C"),Q}();AQ.Notification=Fx;function PD(Q,X){var Z,J,G,Y=Q,H=Y.kind,K=Y.value,z=Y.error;if(typeof H!=="string")throw new TypeError('Invalid notification, missing "kind"');H==="N"?(Z=X.next)===null||Z===void 0||Z.call(X,K):H==="E"?(J=X.error)===null||J===void 0||J.call(X,z):(G=X.complete)===null||G===void 0||G.call(X)}AQ.observeNotification=PD});var DD=r((cG)=>{Object.defineProperty(cG,"__esModule",{value:!0});cG.isObservable=void 0;var Dx=Q6(),FD=t0();function Lx(Q){return!!Q&&(Q instanceof Dx.Observable||FD.isFunction(Q.lift)&&FD.isFunction(Q.subscribe))}cG.isObservable=Lx});var sQ=r((iG)=>{Object.defineProperty(iG,"__esModule",{value:!0});iG.EmptyError=void 0;var Cx=iQ();iG.EmptyError=Cx.createErrorClass(function(Q){return function X(){Q(this),this.name="EmptyError",this.message="no elements in sequence"}})});var LD=r((nG)=>{Object.defineProperty(nG,"__esModule",{value:!0});nG.lastValueFrom=void 0;var Nx=sQ();function Tx(Q,X){var Z=typeof X==="object";return new Promise(function(J,G){var Y=!1,H;Q.subscribe({next:function(K){H=K,Y=!0},error:G,complete:function(){if(Y)J(H);else if(Z)J(X.defaultValue);else G(new Nx.EmptyError)}})})}nG.lastValueFrom=Tx});var CD=r((oG)=>{Object.defineProperty(oG,"__esModule",{value:!0});oG.firstValueFrom=void 0;var Mx=sQ(),Ix=X5();function Rx(Q,X){var Z=typeof X==="object";return new Promise(function(J,G){var Y=new Ix.SafeSubscriber({next:function(H){J(H),Y.unsubscribe()},error:G,complete:function(){if(Z)J(X.defaultValue);else G(new Mx.EmptyError)}});Q.subscribe(Y)})}oG.firstValueFrom=Rx});var mz=r((aG)=>{Object.defineProperty(aG,"__esModule",{value:!0});aG.ArgumentOutOfRangeError=void 0;var Ax=iQ();aG.ArgumentOutOfRangeError=Ax.createErrorClass(function(Q){return function X(){Q(this),this.name="ArgumentOutOfRangeError",this.message="argument out of range"}})});var _z=r((sG)=>{Object.defineProperty(sG,"__esModule",{value:!0});sG.NotFoundError=void 0;var Ox=iQ();sG.NotFoundError=Ox.createErrorClass(function(Q){return function X(Z){Q(this),this.name="NotFoundError",this.message=Z}})});var dz=r((tG)=>{Object.defineProperty(tG,"__esModule",{value:!0});tG.SequenceError=void 0;var wx=iQ();tG.SequenceError=wx.createErrorClass(function(Q){return function X(Z){Q(this),this.name="SequenceError",this.message=Z}})});var eG=r((rG)=>{Object.defineProperty(rG,"__esModule",{value:!0});rG.isValidDate=void 0;function Ex(Q){return Q instanceof Date&&!isNaN(Q)}rG.isValidDate=Ex});var QY=r((e4)=>{Object.defineProperty(e4,"__esModule",{value:!0});e4.timeout=e4.TimeoutError=void 0;var jx=w8(),Sx=eG(),kx=l1(),yx=A0(),xx=iQ(),vx=Q0(),gx=IQ();e4.TimeoutError=xx.createErrorClass(function(Q){return function X(Z){if(Z===void 0)Z=null;Q(this),this.message="Timeout has occurred",this.name="TimeoutError",this.info=Z}});function hx(Q,X){var Z=Sx.isValidDate(Q)?{first:Q}:typeof Q==="number"?{each:Q}:Q,J=Z.first,G=Z.each,Y=Z.with,H=Y===void 0?fx:Y,K=Z.scheduler,z=K===void 0?X!==null&&X!==void 0?X:jx.asyncScheduler:K,W=Z.meta,$=W===void 0?null:W;if(J==null&&G==null)throw new TypeError("No timeout provided.");return kx.operate(function(q,B){var D,F,P=null,N=0,C=function(L){F=gx.executeSchedule(B,z,function(){try{D.unsubscribe(),yx.innerFrom(H({meta:$,lastValue:P,seen:N})).subscribe(B)}catch(V){B.error(V)}},L)};D=q.subscribe(vx.createOperatorSubscriber(B,function(L){F===null||F===void 0||F.unsubscribe(),N++,B.next(P=L),G>0&&C(G)},void 0,void 0,function(){if(!(F===null||F===void 0?void 0:F.closed))F===null||F===void 0||F.unsubscribe();P=null})),!N&&C(J!=null?typeof J==="number"?J:+J-z.now():G)})}e4.timeout=hx;function fx(Q){throw new e4.TimeoutError(Q)}});var tQ=r((ZY)=>{Object.defineProperty(ZY,"__esModule",{value:!0});ZY.map=void 0;var bx=l1(),mx=Q0();function _x(Q,X){return bx.operate(function(Z,J){var G=0;Z.subscribe(mx.createOperatorSubscriber(J,function(Y){J.next(Q.call(X,Y,G++))}))})}ZY.map=_x});var eQ=r((rQ)=>{var dx=rQ&&rQ.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},ux=rQ&&rQ.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{var nx=Q4&&Q4.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},ND=Q4&&Q4.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{Object.defineProperty(XY,"__esModule",{value:!0});XY.bindCallback=void 0;var Qv=pz();function Zv(Q,X,Z){return Qv.bindCallbackInternals(!1,Q,X,Z)}XY.bindCallback=Zv});var MD=r((JY)=>{Object.defineProperty(JY,"__esModule",{value:!0});JY.bindNodeCallback=void 0;var Xv=pz();function Jv(Q,X,Z){return Xv.bindCallbackInternals(!0,Q,X,Z)}JY.bindNodeCallback=Jv});var lz=r((GY)=>{Object.defineProperty(GY,"__esModule",{value:!0});GY.argsArgArrayOrObject=void 0;var Gv=Array.isArray,Yv=Object.getPrototypeOf,Wv=Object.prototype,qv=Object.keys;function Hv(Q){if(Q.length===1){var X=Q[0];if(Gv(X))return{args:X,keys:null};if(zv(X)){var Z=qv(X);return{args:Z.map(function(J){return X[J]}),keys:Z}}}return{args:Q,keys:null}}GY.argsArgArrayOrObject=Hv;function zv(Q){return Q&&typeof Q==="object"&&Yv(Q)===Wv}});var cz=r((YY)=>{Object.defineProperty(YY,"__esModule",{value:!0});YY.createObject=void 0;function Kv(Q,X){return Q.reduce(function(Z,J,G){return Z[J]=X[G],Z},{})}YY.createObject=Kv});var WY=r((R5)=>{Object.defineProperty(R5,"__esModule",{value:!0});R5.combineLatestInit=R5.combineLatest=void 0;var $v=Q6(),Bv=lz(),AD=RQ(),OD=t6(),Uv=eQ(),ID=E8(),Vv=cz(),Pv=Q0(),Fv=IQ();function Dv(){var Q=[];for(var X=0;X{Object.defineProperty(qY,"__esModule",{value:!0});qY.mergeInternals=void 0;var Lv=A0(),Cv=IQ(),ED=Q0();function Nv(Q,X,Z,J,G,Y,H,K){var z=[],W=0,$=0,q=!1,B=function(){if(q&&!z.length&&!W)X.complete()},D=function(P){return W{Object.defineProperty(zY,"__esModule",{value:!0});zY.mergeMap=void 0;var Tv=tQ(),Mv=A0(),Iv=l1(),Rv=HY(),Av=t0();function jD(Q,X,Z){if(Z===void 0)Z=1/0;if(Av.isFunction(X))return jD(function(J,G){return Tv.map(function(Y,H){return X(J,Y,G,H)})(Mv.innerFrom(Q(J,G)))},Z);else if(typeof X==="number")Z=X;return Iv.operate(function(J,G){return Rv.mergeInternals(J,G,Q,Z)})}zY.mergeMap=jD});var JX=r((KY)=>{Object.defineProperty(KY,"__esModule",{value:!0});KY.mergeAll=void 0;var Ov=OQ(),wv=t6();function Ev(Q){if(Q===void 0)Q=1/0;return Ov.mergeMap(wv.identity,Q)}KY.mergeAll=Ev});var BY=r(($Y)=>{Object.defineProperty($Y,"__esModule",{value:!0});$Y.concatAll=void 0;var jv=JX();function Sv(){return jv.mergeAll(1)}$Y.concatAll=Sv});var GX=r((UY)=>{Object.defineProperty(UY,"__esModule",{value:!0});UY.concat=void 0;var kv=BY(),yv=E8(),xv=RQ();function vv(){var Q=[];for(var X=0;X{Object.defineProperty(VY,"__esModule",{value:!0});VY.defer=void 0;var gv=Q6(),hv=A0();function fv(Q){return new gv.Observable(function(X){hv.innerFrom(Q()).subscribe(X)})}VY.defer=fv});var SD=r((PY)=>{Object.defineProperty(PY,"__esModule",{value:!0});PY.connectable=void 0;var bv=r6(),mv=Q6(),_v=YX(),dv={connector:function(){return new bv.Subject},resetOnDisconnect:!0};function uv(Q,X){if(X===void 0)X=dv;var Z=null,J=X.connector,G=X.resetOnDisconnect,Y=G===void 0?!0:G,H=J(),K=new mv.Observable(function(z){return H.subscribe(z)});return K.connect=function(){if(!Z||Z.closed){if(Z=_v.defer(function(){return Q}).subscribe(H),Y)Z.add(function(){return H=J()})}return Z},K}PY.connectable=uv});var kD=r((FY)=>{Object.defineProperty(FY,"__esModule",{value:!0});FY.forkJoin=void 0;var pv=Q6(),lv=lz(),cv=A0(),iv=E8(),nv=Q0(),ov=eQ(),av=cz();function sv(){var Q=[];for(var X=0;X{var tv=A5&&A5.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y};Object.defineProperty(A5,"__esModule",{value:!0});A5.fromEvent=void 0;var rv=A0(),ev=Q6(),Qg=OQ(),Zg=IG(),QZ=t0(),Xg=eQ(),Jg=["addListener","removeListener"],Gg=["addEventListener","removeEventListener"],Yg=["on","off"];function iz(Q,X,Z,J){if(QZ.isFunction(Z))J=Z,Z=void 0;if(J)return iz(Q,X,Z).pipe(Xg.mapOneOrManyArgs(J));var G=tv(Hg(Q)?Gg.map(function(K){return function(z){return Q[K](X,z,Z)}}):Wg(Q)?Jg.map(yD(Q,X)):qg(Q)?Yg.map(yD(Q,X)):[],2),Y=G[0],H=G[1];if(!Y){if(Zg.isArrayLike(Q))return Qg.mergeMap(function(K){return iz(K,X,Z)})(rv.innerFrom(Q))}if(!Y)throw new TypeError("Invalid event target");return new ev.Observable(function(K){var z=function(){var W=[];for(var $=0;${Object.defineProperty(DY,"__esModule",{value:!0});DY.fromEventPattern=void 0;var zg=Q6(),Kg=t0(),$g=eQ();function vD(Q,X,Z){if(Z)return vD(Q,X).pipe($g.mapOneOrManyArgs(Z));return new zg.Observable(function(J){var G=function(){var H=[];for(var K=0;K{var Bg=O5&&O5.__generator||function(Q,X){var Z={label:0,sent:function(){if(Y[0]&1)throw Y[1];return Y[1]},trys:[],ops:[]},J,G,Y,H;return H={next:K(0),throw:K(1),return:K(2)},typeof Symbol==="function"&&(H[Symbol.iterator]=function(){return this}),H;function K(W){return function($){return z([W,$])}}function z(W){if(J)throw new TypeError("Generator is already executing.");while(Z)try{if(J=1,G&&(Y=W[0]&2?G.return:W[0]?G.throw||((Y=G.return)&&Y.call(G),0):G.next)&&!(Y=Y.call(G,W[1])).done)return Y;if(G=0,Y)W=[W[0]&2,Y.value];switch(W[0]){case 0:case 1:Y=W;break;case 4:return Z.label++,{value:W[1],done:!1};case 5:Z.label++,G=W[1],W=[0];continue;case 7:W=Z.ops.pop(),Z.trys.pop();continue;default:if((Y=Z.trys,!(Y=Y.length>0&&Y[Y.length-1]))&&(W[0]===6||W[0]===2)){Z=0;continue}if(W[0]===3&&(!Y||W[1]>Y[0]&&W[1]{Object.defineProperty(LY,"__esModule",{value:!0});LY.iif=void 0;var Dg=YX();function Lg(Q,X,Z){return Dg.defer(function(){return Q()?X:Z})}LY.iif=Lg});var Z4=r((CY)=>{Object.defineProperty(CY,"__esModule",{value:!0});CY.timer=void 0;var Cg=Q6(),Ng=w8(),Tg=QX(),Mg=eG();function Ig(Q,X,Z){if(Q===void 0)Q=0;if(Z===void 0)Z=Ng.async;var J=-1;if(X!=null)if(Tg.isScheduler(X))Z=X;else J=X;return new Cg.Observable(function(G){var Y=Mg.isValidDate(Q)?+Q-Z.now():Q;if(Y<0)Y=0;var H=0;return Z.schedule(function(){if(!G.closed)if(G.next(H++),0<=J)this.schedule(void 0,J);else G.complete()},Y)})}CY.timer=Ig});var nz=r((NY)=>{Object.defineProperty(NY,"__esModule",{value:!0});NY.interval=void 0;var Rg=w8(),Ag=Z4();function Og(Q,X){if(Q===void 0)Q=0;if(X===void 0)X=Rg.asyncScheduler;if(Q<0)Q=0;return Ag.timer(Q,Q,X)}NY.interval=Og});var _D=r((TY)=>{Object.defineProperty(TY,"__esModule",{value:!0});TY.merge=void 0;var wg=JX(),Eg=A0(),jg=S9(),mD=E8(),Sg=RQ();function kg(){var Q=[];for(var X=0;X{Object.defineProperty(ZZ,"__esModule",{value:!0});ZZ.never=ZZ.NEVER=void 0;var yg=Q6(),xg=s6();ZZ.NEVER=new yg.Observable(xg.noop);function vg(){return ZZ.NEVER}ZZ.never=vg});var XZ=r((MY)=>{Object.defineProperty(MY,"__esModule",{value:!0});MY.argsOrArgArray=void 0;var gg=Array.isArray;function hg(Q){return Q.length===1&&gg(Q[0])?Q[0]:Q}MY.argsOrArgArray=hg});var az=r((IY)=>{Object.defineProperty(IY,"__esModule",{value:!0});IY.onErrorResumeNext=void 0;var fg=Q6(),bg=XZ(),mg=Q0(),dD=s6(),_g=A0();function dg(){var Q=[];for(var X=0;X{Object.defineProperty(RY,"__esModule",{value:!0});RY.pairs=void 0;var ug=RQ();function pg(Q,X){return ug.from(Object.entries(Q),X)}RY.pairs=pg});var pD=r((AY)=>{Object.defineProperty(AY,"__esModule",{value:!0});AY.not=void 0;function lg(Q,X){return function(Z,J){return!Q.call(X,Z,J)}}AY.not=lg});var JZ=r((OY)=>{Object.defineProperty(OY,"__esModule",{value:!0});OY.filter=void 0;var cg=l1(),ig=Q0();function ng(Q,X){return cg.operate(function(Z,J){var G=0;Z.subscribe(ig.createOperatorSubscriber(J,function(Y){return Q.call(X,Y,G++)&&J.next(Y)}))})}OY.filter=ng});var iD=r((wY)=>{Object.defineProperty(wY,"__esModule",{value:!0});wY.partition=void 0;var og=pD(),lD=JZ(),cD=A0();function ag(Q,X,Z){return[lD.filter(X,Z)(cD.innerFrom(Q)),lD.filter(og.not(X,Z))(cD.innerFrom(Q))]}wY.partition=ag});var sz=r((w5)=>{Object.defineProperty(w5,"__esModule",{value:!0});w5.raceInit=w5.race=void 0;var sg=Q6(),nD=A0(),tg=XZ(),rg=Q0();function eg(){var Q=[];for(var X=0;X{Object.defineProperty(EY,"__esModule",{value:!0});EY.range=void 0;var Qh=Q6(),Zh=S9();function Xh(Q,X,Z){if(X==null)X=Q,Q=0;if(X<=0)return Zh.EMPTY;var J=X+Q;return new Qh.Observable(Z?function(G){var Y=Q;return Z.schedule(function(){if(Y{Object.defineProperty(jY,"__esModule",{value:!0});jY.using=void 0;var Jh=Q6(),Gh=A0(),Yh=S9();function Wh(Q,X){return new Jh.Observable(function(Z){var J=Q(),G=X(J),Y=G?Gh.innerFrom(G):Yh.EMPTY;return Y.subscribe(Z),function(){if(J)J.unsubscribe()}})}jY.using=Wh});var SY=r((X4)=>{var qh=X4&&X4.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},Hh=X4&&X4.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{Object.defineProperty(tD,"__esModule",{value:!0})});var tz=r((kY)=>{Object.defineProperty(kY,"__esModule",{value:!0});kY.audit=void 0;var Fh=l1(),Dh=A0(),eD=Q0();function Lh(Q){return Fh.operate(function(X,Z){var J=!1,G=null,Y=null,H=!1,K=function(){if(Y===null||Y===void 0||Y.unsubscribe(),Y=null,J){J=!1;var W=G;G=null,Z.next(W)}H&&Z.complete()},z=function(){Y=null,H&&Z.complete()};X.subscribe(eD.createOperatorSubscriber(Z,function(W){if(J=!0,G=W,!Y)Dh.innerFrom(Q(W)).subscribe(Y=eD.createOperatorSubscriber(Z,K,z))},function(){H=!0,(!J||!Y||Y.closed)&&Z.complete()}))})}kY.audit=Lh});var QL=r((yY)=>{Object.defineProperty(yY,"__esModule",{value:!0});yY.auditTime=void 0;var Ch=w8(),Nh=tz(),Th=Z4();function Mh(Q,X){if(X===void 0)X=Ch.asyncScheduler;return Nh.audit(function(){return Th.timer(Q,X)})}yY.auditTime=Mh});var XL=r((xY)=>{Object.defineProperty(xY,"__esModule",{value:!0});xY.buffer=void 0;var Ih=l1(),Rh=s6(),ZL=Q0(),Ah=A0();function Oh(Q){return Ih.operate(function(X,Z){var J=[];return X.subscribe(ZL.createOperatorSubscriber(Z,function(G){return J.push(G)},function(){Z.next(J),Z.complete()})),Ah.innerFrom(Q).subscribe(ZL.createOperatorSubscriber(Z,function(){var G=J;J=[],Z.next(G)},Rh.noop)),function(){J=null}})}xY.buffer=Oh});var JL=r((E5)=>{var rz=E5&&E5.__values||function(Q){var X=typeof Symbol==="function"&&Symbol.iterator,Z=X&&Q[X],J=0;if(Z)return Z.call(Q);if(Q&&typeof Q.length==="number")return{next:function(){if(Q&&J>=Q.length)Q=void 0;return{value:Q&&Q[J++],done:!Q}}};throw new TypeError(X?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(E5,"__esModule",{value:!0});E5.bufferCount=void 0;var wh=l1(),Eh=Q0(),jh=MQ();function Sh(Q,X){if(X===void 0)X=null;return X=X!==null&&X!==void 0?X:Q,wh.operate(function(Z,J){var G=[],Y=0;Z.subscribe(Eh.createOperatorSubscriber(J,function(H){var K,z,W,$,q=null;if(Y++%X===0)G.push([]);try{for(var B=rz(G),D=B.next();!D.done;D=B.next()){var F=D.value;if(F.push(H),Q<=F.length)q=q!==null&&q!==void 0?q:[],q.push(F)}}catch(C){K={error:C}}finally{try{if(D&&!D.done&&(z=B.return))z.call(B)}finally{if(K)throw K.error}}if(q)try{for(var P=rz(q),N=P.next();!N.done;N=P.next()){var F=N.value;jh.arrRemove(G,F),J.next(F)}}catch(C){W={error:C}}finally{try{if(N&&!N.done&&($=P.return))$.call(P)}finally{if(W)throw W.error}}},function(){var H,K;try{for(var z=rz(G),W=z.next();!W.done;W=z.next()){var $=W.value;J.next($)}}catch(q){H={error:q}}finally{try{if(W&&!W.done&&(K=z.return))K.call(z)}finally{if(H)throw H.error}}J.complete()},void 0,function(){G=null}))})}E5.bufferCount=Sh});var YL=r((j5)=>{var kh=j5&&j5.__values||function(Q){var X=typeof Symbol==="function"&&Symbol.iterator,Z=X&&Q[X],J=0;if(Z)return Z.call(Q);if(Q&&typeof Q.length==="number")return{next:function(){if(Q&&J>=Q.length)Q=void 0;return{value:Q&&Q[J++],done:!Q}}};throw new TypeError(X?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(j5,"__esModule",{value:!0});j5.bufferTime=void 0;var yh=o8(),xh=l1(),vh=Q0(),gh=MQ(),hh=w8(),fh=E8(),GL=IQ();function bh(Q){var X,Z,J=[];for(var G=1;G=0)GL.executeSchedule(W,Y,D,H,!0);else q=!0;D();var F=vh.createOperatorSubscriber(W,function(P){var N,C,L=$.slice();try{for(var V=kh(L),M=V.next();!M.done;M=V.next()){var I=M.value,E=I.buffer;E.push(P),K<=E.length&&B(I)}}catch(w){N={error:w}}finally{try{if(M&&!M.done&&(C=V.return))C.call(V)}finally{if(N)throw N.error}}},function(){while($===null||$===void 0?void 0:$.length)W.next($.shift().buffer);F===null||F===void 0||F.unsubscribe(),W.complete(),W.unsubscribe()},void 0,function(){return $=null});z.subscribe(F)})}j5.bufferTime=bh});var HL=r((S5)=>{var mh=S5&&S5.__values||function(Q){var X=typeof Symbol==="function"&&Symbol.iterator,Z=X&&Q[X],J=0;if(Z)return Z.call(Q);if(Q&&typeof Q.length==="number")return{next:function(){if(Q&&J>=Q.length)Q=void 0;return{value:Q&&Q[J++],done:!Q}}};throw new TypeError(X?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(S5,"__esModule",{value:!0});S5.bufferToggle=void 0;var _h=o8(),dh=l1(),WL=A0(),ez=Q0(),qL=s6(),uh=MQ();function ph(Q,X){return dh.operate(function(Z,J){var G=[];WL.innerFrom(Q).subscribe(ez.createOperatorSubscriber(J,function(Y){var H=[];G.push(H);var K=new _h.Subscription,z=function(){uh.arrRemove(G,H),J.next(H),K.unsubscribe()};K.add(WL.innerFrom(X(Y)).subscribe(ez.createOperatorSubscriber(J,z,qL.noop)))},qL.noop)),Z.subscribe(ez.createOperatorSubscriber(J,function(Y){var H,K;try{for(var z=mh(G),W=z.next();!W.done;W=z.next()){var $=W.value;$.push(Y)}}catch(q){H={error:q}}finally{try{if(W&&!W.done&&(K=z.return))K.call(z)}finally{if(H)throw H.error}}},function(){while(G.length>0)J.next(G.shift());J.complete()}))})}S5.bufferToggle=ph});var KL=r((vY)=>{Object.defineProperty(vY,"__esModule",{value:!0});vY.bufferWhen=void 0;var lh=l1(),ch=s6(),zL=Q0(),ih=A0();function nh(Q){return lh.operate(function(X,Z){var J=null,G=null,Y=function(){G===null||G===void 0||G.unsubscribe();var H=J;J=[],H&&Z.next(H),ih.innerFrom(Q()).subscribe(G=zL.createOperatorSubscriber(Z,Y,ch.noop))};Y(),X.subscribe(zL.createOperatorSubscriber(Z,function(H){return J===null||J===void 0?void 0:J.push(H)},function(){J&&Z.next(J),Z.complete()},void 0,function(){return J=G=null}))})}vY.bufferWhen=nh});var BL=r((gY)=>{Object.defineProperty(gY,"__esModule",{value:!0});gY.catchError=void 0;var oh=A0(),ah=Q0(),sh=l1();function $L(Q){return sh.operate(function(X,Z){var J=null,G=!1,Y;if(J=X.subscribe(ah.createOperatorSubscriber(Z,void 0,void 0,function(H){if(Y=oh.innerFrom(Q(H,$L(Q)(X))),J)J.unsubscribe(),J=null,Y.subscribe(Z);else G=!0})),G)J.unsubscribe(),J=null,Y.subscribe(Z)})}gY.catchError=$L});var QK=r((hY)=>{Object.defineProperty(hY,"__esModule",{value:!0});hY.scanInternals=void 0;var th=Q0();function rh(Q,X,Z,J,G){return function(Y,H){var K=Z,z=X,W=0;Y.subscribe(th.createOperatorSubscriber(H,function($){var q=W++;z=K?Q(z,$,q):(K=!0,$),J&&H.next(z)},G&&function(){K&&H.next(z),H.complete()}))}}hY.scanInternals=rh});var k5=r((fY)=>{Object.defineProperty(fY,"__esModule",{value:!0});fY.reduce=void 0;var eh=QK(),Qf=l1();function Zf(Q,X){return Qf.operate(eh.scanInternals(Q,X,arguments.length>=2,!1,!0))}fY.reduce=Zf});var ZK=r((bY)=>{Object.defineProperty(bY,"__esModule",{value:!0});bY.toArray=void 0;var Xf=k5(),Jf=l1(),Gf=function(Q,X){return Q.push(X),Q};function Yf(){return Jf.operate(function(Q,X){Xf.reduce(Gf,[])(Q).subscribe(X)})}bY.toArray=Yf});var XK=r((mY)=>{Object.defineProperty(mY,"__esModule",{value:!0});mY.joinAllInternals=void 0;var Wf=t6(),qf=eQ(),Hf=s7(),zf=OQ(),Kf=ZK();function $f(Q,X){return Hf.pipe(Kf.toArray(),zf.mergeMap(function(Z){return Q(Z)}),X?qf.mapOneOrManyArgs(X):Wf.identity)}mY.joinAllInternals=$f});var JK=r((_Y)=>{Object.defineProperty(_Y,"__esModule",{value:!0});_Y.combineLatestAll=void 0;var Bf=WY(),Uf=XK();function Vf(Q){return Uf.joinAllInternals(Bf.combineLatest,Q)}_Y.combineLatestAll=Vf});var UL=r((dY)=>{Object.defineProperty(dY,"__esModule",{value:!0});dY.combineAll=void 0;var Pf=JK();dY.combineAll=Pf.combineLatestAll});var DL=r((J4)=>{var VL=J4&&J4.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},PL=J4&&J4.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{var Mf=G4&&G4.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},If=G4&&G4.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{Object.defineProperty(uY,"__esModule",{value:!0});uY.concatMap=void 0;var CL=OQ(),Of=t0();function wf(Q,X){return Of.isFunction(X)?CL.mergeMap(Q,X,1):CL.mergeMap(Q,1)}uY.concatMap=wf});var TL=r((pY)=>{Object.defineProperty(pY,"__esModule",{value:!0});pY.concatMapTo=void 0;var NL=GK(),Ef=t0();function jf(Q,X){return Ef.isFunction(X)?NL.concatMap(function(){return Q},X):NL.concatMap(function(){return Q})}pY.concatMapTo=jf});var ML=r((Y4)=>{var Sf=Y4&&Y4.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},kf=Y4&&Y4.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{var ff=W4&&W4.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},bf=W4&&W4.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{Object.defineProperty(lY,"__esModule",{value:!0});lY.fromSubscribable=void 0;var df=Q6();function uf(Q){return new df.Observable(function(X){return Q.subscribe(X)})}lY.fromSubscribable=uf});var iY=r((cY)=>{Object.defineProperty(cY,"__esModule",{value:!0});cY.connect=void 0;var pf=r6(),lf=A0(),cf=l1(),nf=RL(),of={connector:function(){return new pf.Subject}};function af(Q,X){if(X===void 0)X=of;var Z=X.connector;return cf.operate(function(J,G){var Y=Z();lf.innerFrom(Q(nf.fromSubscribable(Y))).subscribe(G),G.add(J.subscribe(Y))})}cY.connect=af});var AL=r((nY)=>{Object.defineProperty(nY,"__esModule",{value:!0});nY.count=void 0;var sf=k5();function tf(Q){return sf.reduce(function(X,Z,J){return!Q||Q(Z,J)?X+1:X},0)}nY.count=tf});var wL=r((oY)=>{Object.defineProperty(oY,"__esModule",{value:!0});oY.debounce=void 0;var rf=l1(),ef=s6(),OL=Q0(),Qb=A0();function Zb(Q){return rf.operate(function(X,Z){var J=!1,G=null,Y=null,H=function(){if(Y===null||Y===void 0||Y.unsubscribe(),Y=null,J){J=!1;var K=G;G=null,Z.next(K)}};X.subscribe(OL.createOperatorSubscriber(Z,function(K){Y===null||Y===void 0||Y.unsubscribe(),J=!0,G=K,Y=OL.createOperatorSubscriber(Z,H,ef.noop),Qb.innerFrom(Q(K)).subscribe(Y)},function(){H(),Z.complete()},void 0,function(){G=Y=null}))})}oY.debounce=Zb});var EL=r((aY)=>{Object.defineProperty(aY,"__esModule",{value:!0});aY.debounceTime=void 0;var Xb=w8(),Jb=l1(),Gb=Q0();function Yb(Q,X){if(X===void 0)X=Xb.asyncScheduler;return Jb.operate(function(Z,J){var G=null,Y=null,H=null,K=function(){if(G){G.unsubscribe(),G=null;var W=Y;Y=null,J.next(W)}};function z(){var W=H+Q,$=X.now();if(${Object.defineProperty(sY,"__esModule",{value:!0});sY.defaultIfEmpty=void 0;var Wb=l1(),qb=Q0();function Hb(Q){return Wb.operate(function(X,Z){var J=!1;X.subscribe(qb.createOperatorSubscriber(Z,function(G){J=!0,Z.next(G)},function(){if(!J)Z.next(Q);Z.complete()}))})}sY.defaultIfEmpty=Hb});var qX=r((tY)=>{Object.defineProperty(tY,"__esModule",{value:!0});tY.take=void 0;var zb=S9(),Kb=l1(),$b=Q0();function Bb(Q){return Q<=0?function(){return zb.EMPTY}:Kb.operate(function(X,Z){var J=0;X.subscribe($b.createOperatorSubscriber(Z,function(G){if(++J<=Q){if(Z.next(G),Q<=J)Z.complete()}}))})}tY.take=Bb});var YK=r((rY)=>{Object.defineProperty(rY,"__esModule",{value:!0});rY.ignoreElements=void 0;var Ub=l1(),Vb=Q0(),Pb=s6();function Fb(){return Ub.operate(function(Q,X){Q.subscribe(Vb.createOperatorSubscriber(X,Pb.noop))})}rY.ignoreElements=Fb});var WK=r((eY)=>{Object.defineProperty(eY,"__esModule",{value:!0});eY.mapTo=void 0;var Db=tQ();function Lb(Q){return Db.map(function(){return Q})}eY.mapTo=Lb});var qK=r((QW)=>{Object.defineProperty(QW,"__esModule",{value:!0});QW.delayWhen=void 0;var Cb=GX(),jL=qX(),Nb=YK(),Tb=WK(),Mb=OQ(),Ib=A0();function SL(Q,X){if(X)return function(Z){return Cb.concat(X.pipe(jL.take(1),Nb.ignoreElements()),Z.pipe(SL(Q)))};return Mb.mergeMap(function(Z,J){return Ib.innerFrom(Q(Z,J)).pipe(jL.take(1),Tb.mapTo(Z))})}QW.delayWhen=SL});var kL=r((ZW)=>{Object.defineProperty(ZW,"__esModule",{value:!0});ZW.delay=void 0;var Rb=w8(),Ab=qK(),Ob=Z4();function wb(Q,X){if(X===void 0)X=Rb.asyncScheduler;var Z=Ob.timer(Q,X);return Ab.delayWhen(function(){return Z})}ZW.delay=wb});var yL=r((XW)=>{Object.defineProperty(XW,"__esModule",{value:!0});XW.dematerialize=void 0;var Eb=lG(),jb=l1(),Sb=Q0();function kb(){return jb.operate(function(Q,X){Q.subscribe(Sb.createOperatorSubscriber(X,function(Z){return Eb.observeNotification(Z,X)}))})}XW.dematerialize=kb});var vL=r((JW)=>{Object.defineProperty(JW,"__esModule",{value:!0});JW.distinct=void 0;var yb=l1(),xL=Q0(),xb=s6(),vb=A0();function gb(Q,X){return yb.operate(function(Z,J){var G=new Set;Z.subscribe(xL.createOperatorSubscriber(J,function(Y){var H=Q?Q(Y):Y;if(!G.has(H))G.add(H),J.next(Y)})),X&&vb.innerFrom(X).subscribe(xL.createOperatorSubscriber(J,function(){return G.clear()},xb.noop))})}JW.distinct=gb});var HK=r((GW)=>{Object.defineProperty(GW,"__esModule",{value:!0});GW.distinctUntilChanged=void 0;var hb=t6(),fb=l1(),bb=Q0();function mb(Q,X){if(X===void 0)X=hb.identity;return Q=Q!==null&&Q!==void 0?Q:_b,fb.operate(function(Z,J){var G,Y=!0;Z.subscribe(bb.createOperatorSubscriber(J,function(H){var K=X(H);if(Y||!Q(G,K))Y=!1,G=K,J.next(H)}))})}GW.distinctUntilChanged=mb;function _b(Q,X){return Q===X}});var gL=r((YW)=>{Object.defineProperty(YW,"__esModule",{value:!0});YW.distinctUntilKeyChanged=void 0;var db=HK();function ub(Q,X){return db.distinctUntilChanged(function(Z,J){return X?X(Z[Q],J[Q]):Z[Q]===J[Q]})}YW.distinctUntilKeyChanged=ub});var HX=r((WW)=>{Object.defineProperty(WW,"__esModule",{value:!0});WW.throwIfEmpty=void 0;var pb=sQ(),lb=l1(),cb=Q0();function ib(Q){if(Q===void 0)Q=nb;return lb.operate(function(X,Z){var J=!1;X.subscribe(cb.createOperatorSubscriber(Z,function(G){J=!0,Z.next(G)},function(){return J?Z.complete():Z.error(Q())}))})}WW.throwIfEmpty=ib;function nb(){return new pb.EmptyError}});var fL=r((qW)=>{Object.defineProperty(qW,"__esModule",{value:!0});qW.elementAt=void 0;var hL=mz(),ob=JZ(),ab=HX(),sb=WX(),tb=qX();function rb(Q,X){if(Q<0)throw new hL.ArgumentOutOfRangeError;var Z=arguments.length>=2;return function(J){return J.pipe(ob.filter(function(G,Y){return Y===Q}),tb.take(1),Z?sb.defaultIfEmpty(X):ab.throwIfEmpty(function(){return new hL.ArgumentOutOfRangeError}))}}qW.elementAt=rb});var bL=r((q4)=>{var eb=q4&&q4.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},Qm=q4&&q4.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{Object.defineProperty(HW,"__esModule",{value:!0});HW.every=void 0;var Gm=l1(),Ym=Q0();function Wm(Q,X){return Gm.operate(function(Z,J){var G=0;Z.subscribe(Ym.createOperatorSubscriber(J,function(Y){if(!Q.call(X,Y,G++,Z))J.next(!1),J.complete()},function(){J.next(!0),J.complete()}))})}HW.every=Wm});var zK=r((zW)=>{Object.defineProperty(zW,"__esModule",{value:!0});zW.exhaustMap=void 0;var qm=tQ(),_L=A0(),Hm=l1(),dL=Q0();function uL(Q,X){if(X)return function(Z){return Z.pipe(uL(function(J,G){return _L.innerFrom(Q(J,G)).pipe(qm.map(function(Y,H){return X(J,Y,G,H)}))}))};return Hm.operate(function(Z,J){var G=0,Y=null,H=!1;Z.subscribe(dL.createOperatorSubscriber(J,function(K){if(!Y)Y=dL.createOperatorSubscriber(J,void 0,function(){Y=null,H&&J.complete()}),_L.innerFrom(Q(K,G++)).subscribe(Y)},function(){H=!0,!Y&&J.complete()}))})}zW.exhaustMap=uL});var KK=r((KW)=>{Object.defineProperty(KW,"__esModule",{value:!0});KW.exhaustAll=void 0;var zm=zK(),Km=t6();function $m(){return zm.exhaustMap(Km.identity)}KW.exhaustAll=$m});var pL=r(($W)=>{Object.defineProperty($W,"__esModule",{value:!0});$W.exhaust=void 0;var Bm=KK();$W.exhaust=Bm.exhaustAll});var lL=r((BW)=>{Object.defineProperty(BW,"__esModule",{value:!0});BW.expand=void 0;var Um=l1(),Vm=HY();function Pm(Q,X,Z){if(X===void 0)X=1/0;return X=(X||0)<1?1/0:X,Um.operate(function(J,G){return Vm.mergeInternals(J,G,Q,X,void 0,!0,Z)})}BW.expand=Pm});var cL=r((UW)=>{Object.defineProperty(UW,"__esModule",{value:!0});UW.finalize=void 0;var Fm=l1();function Dm(Q){return Fm.operate(function(X,Z){try{X.subscribe(Z)}finally{Z.add(Q)}})}UW.finalize=Dm});var $K=r((y5)=>{Object.defineProperty(y5,"__esModule",{value:!0});y5.createFind=y5.find=void 0;var Lm=l1(),Cm=Q0();function Nm(Q,X){return Lm.operate(iL(Q,X,"value"))}y5.find=Nm;function iL(Q,X,Z){var J=Z==="index";return function(G,Y){var H=0;G.subscribe(Cm.createOperatorSubscriber(Y,function(K){var z=H++;if(Q.call(X,K,z,G))Y.next(J?z:K),Y.complete()},function(){Y.next(J?-1:void 0),Y.complete()}))}}y5.createFind=iL});var nL=r((VW)=>{Object.defineProperty(VW,"__esModule",{value:!0});VW.findIndex=void 0;var Tm=l1(),Mm=$K();function Im(Q,X){return Tm.operate(Mm.createFind(Q,X,"index"))}VW.findIndex=Im});var oL=r((PW)=>{Object.defineProperty(PW,"__esModule",{value:!0});PW.first=void 0;var Rm=sQ(),Am=JZ(),Om=qX(),wm=WX(),Em=HX(),jm=t6();function Sm(Q,X){var Z=arguments.length>=2;return function(J){return J.pipe(Q?Am.filter(function(G,Y){return Q(G,Y,J)}):jm.identity,Om.take(1),Z?wm.defaultIfEmpty(X):Em.throwIfEmpty(function(){return new Rm.EmptyError}))}}PW.first=Sm});var sL=r((FW)=>{Object.defineProperty(FW,"__esModule",{value:!0});FW.groupBy=void 0;var km=Q6(),ym=A0(),xm=r6(),vm=l1(),aL=Q0();function gm(Q,X,Z,J){return vm.operate(function(G,Y){var H;if(!X||typeof X==="function")H=X;else Z=X.duration,H=X.element,J=X.connector;var K=new Map,z=function(F){K.forEach(F),F(Y)},W=function(F){return z(function(P){return P.error(F)})},$=0,q=!1,B=new aL.OperatorSubscriber(Y,function(F){try{var P=Q(F),N=K.get(P);if(!N){K.set(P,N=J?J():new xm.Subject);var C=D(P,N);if(Y.next(C),Z){var L=aL.createOperatorSubscriber(N,function(){N.complete(),L===null||L===void 0||L.unsubscribe()},void 0,void 0,function(){return K.delete(P)});B.add(ym.innerFrom(Z(C)).subscribe(L))}}N.next(H?H(F):F)}catch(V){W(V)}},function(){return z(function(F){return F.complete()})},W,function(){return K.clear()},function(){return q=!0,$===0});G.subscribe(B);function D(F,P){var N=new km.Observable(function(C){$++;var L=P.subscribe(C);return function(){L.unsubscribe(),--$===0&&q&&B.unsubscribe()}});return N.key=F,N}})}FW.groupBy=gm});var tL=r((DW)=>{Object.defineProperty(DW,"__esModule",{value:!0});DW.isEmpty=void 0;var hm=l1(),fm=Q0();function bm(){return hm.operate(function(Q,X){Q.subscribe(fm.createOperatorSubscriber(X,function(){X.next(!1),X.complete()},function(){X.next(!0),X.complete()}))})}DW.isEmpty=bm});var BK=r((x5)=>{var mm=x5&&x5.__values||function(Q){var X=typeof Symbol==="function"&&Symbol.iterator,Z=X&&Q[X],J=0;if(Z)return Z.call(Q);if(Q&&typeof Q.length==="number")return{next:function(){if(Q&&J>=Q.length)Q=void 0;return{value:Q&&Q[J++],done:!Q}}};throw new TypeError(X?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(x5,"__esModule",{value:!0});x5.takeLast=void 0;var _m=S9(),dm=l1(),um=Q0();function pm(Q){return Q<=0?function(){return _m.EMPTY}:dm.operate(function(X,Z){var J=[];X.subscribe(um.createOperatorSubscriber(Z,function(G){J.push(G),Q{Object.defineProperty(LW,"__esModule",{value:!0});LW.last=void 0;var lm=sQ(),cm=JZ(),im=BK(),nm=HX(),om=WX(),am=t6();function sm(Q,X){var Z=arguments.length>=2;return function(J){return J.pipe(Q?cm.filter(function(G,Y){return Q(G,Y,J)}):am.identity,im.takeLast(1),Z?om.defaultIfEmpty(X):nm.throwIfEmpty(function(){return new lm.EmptyError}))}}LW.last=sm});var eL=r((CW)=>{Object.defineProperty(CW,"__esModule",{value:!0});CW.materialize=void 0;var UK=lG(),tm=l1(),rm=Q0();function em(){return tm.operate(function(Q,X){Q.subscribe(rm.createOperatorSubscriber(X,function(Z){X.next(UK.Notification.createNext(Z))},function(){X.next(UK.Notification.createComplete()),X.complete()},function(Z){X.next(UK.Notification.createError(Z)),X.complete()}))})}CW.materialize=em});var QC=r((NW)=>{Object.defineProperty(NW,"__esModule",{value:!0});NW.max=void 0;var Q_=k5(),Z_=t0();function X_(Q){return Q_.reduce(Z_.isFunction(Q)?function(X,Z){return Q(X,Z)>0?X:Z}:function(X,Z){return X>Z?X:Z})}NW.max=X_});var ZC=r((TW)=>{Object.defineProperty(TW,"__esModule",{value:!0});TW.flatMap=void 0;var J_=OQ();TW.flatMap=J_.mergeMap});var JC=r((MW)=>{Object.defineProperty(MW,"__esModule",{value:!0});MW.mergeMapTo=void 0;var XC=OQ(),G_=t0();function Y_(Q,X,Z){if(Z===void 0)Z=1/0;if(G_.isFunction(X))return XC.mergeMap(function(){return Q},X,Z);if(typeof X==="number")Z=X;return XC.mergeMap(function(){return Q},Z)}MW.mergeMapTo=Y_});var GC=r((IW)=>{Object.defineProperty(IW,"__esModule",{value:!0});IW.mergeScan=void 0;var W_=l1(),q_=HY();function H_(Q,X,Z){if(Z===void 0)Z=1/0;return W_.operate(function(J,G){var Y=X;return q_.mergeInternals(J,G,function(H,K){return Q(Y,H,K)},Z,function(H){Y=H},!1,void 0,function(){return Y=null})})}IW.mergeScan=H_});var WC=r((H4)=>{var z_=H4&&H4.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},K_=H4&&H4.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{var F_=z4&&z4.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},D_=z4&&z4.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{Object.defineProperty(RW,"__esModule",{value:!0});RW.min=void 0;var N_=k5(),T_=t0();function M_(Q){return N_.reduce(T_.isFunction(Q)?function(X,Z){return Q(X,Z)<0?X:Z}:function(X,Z){return X{Object.defineProperty(AW,"__esModule",{value:!0});AW.multicast=void 0;var I_=t7(),zC=t0(),R_=iY();function A_(Q,X){var Z=zC.isFunction(Q)?Q:function(){return Q};if(zC.isFunction(X))return R_.connect(X,{connector:Z});return function(J){return new I_.ConnectableObservable(J,Z)}}AW.multicast=A_});var $C=r((QQ)=>{var O_=QQ&&QQ.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},w_=QQ&&QQ.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{Object.defineProperty(wW,"__esModule",{value:!0});wW.pairwise=void 0;var S_=l1(),k_=Q0();function y_(){return S_.operate(function(Q,X){var Z,J=!1;Q.subscribe(k_.createOperatorSubscriber(X,function(G){var Y=Z;Z=G,J&&X.next([Y,G]),J=!0}))})}wW.pairwise=y_});var UC=r((EW)=>{Object.defineProperty(EW,"__esModule",{value:!0});EW.pluck=void 0;var x_=tQ();function v_(){var Q=[];for(var X=0;X{Object.defineProperty(jW,"__esModule",{value:!0});jW.publish=void 0;var g_=r6(),h_=OW(),f_=iY();function b_(Q){return Q?function(X){return f_.connect(Q)(X)}:function(X){return h_.multicast(new g_.Subject)(X)}}jW.publish=b_});var PC=r((SW)=>{Object.defineProperty(SW,"__esModule",{value:!0});SW.publishBehavior=void 0;var m_=Mz(),__=t7();function d_(Q){return function(X){var Z=new m_.BehaviorSubject(Q);return new __.ConnectableObservable(X,function(){return Z})}}SW.publishBehavior=d_});var FC=r((kW)=>{Object.defineProperty(kW,"__esModule",{value:!0});kW.publishLast=void 0;var u_=LG(),p_=t7();function l_(){return function(Q){var X=new u_.AsyncSubject;return new p_.ConnectableObservable(Q,function(){return X})}}kW.publishLast=l_});var LC=r((yW)=>{Object.defineProperty(yW,"__esModule",{value:!0});yW.publishReplay=void 0;var c_=DG(),i_=OW(),DC=t0();function n_(Q,X,Z,J){if(Z&&!DC.isFunction(Z))J=Z;var G=DC.isFunction(Z)?Z:void 0;return function(Y){return i_.multicast(new c_.ReplaySubject(Q,X,J),G)(Y)}}yW.publishReplay=n_});var CC=r((K4)=>{var o_=K4&&K4.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},a_=K4&&K4.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{Object.defineProperty(xW,"__esModule",{value:!0});xW.repeat=void 0;var Qd=S9(),Zd=l1(),NC=Q0(),Xd=A0(),Jd=Z4();function Gd(Q){var X,Z=1/0,J;if(Q!=null)if(typeof Q==="object")X=Q.count,Z=X===void 0?1/0:X,J=Q.delay;else Z=Q;return Z<=0?function(){return Qd.EMPTY}:Zd.operate(function(G,Y){var H=0,K,z=function(){if(K===null||K===void 0||K.unsubscribe(),K=null,J!=null){var $=typeof J==="number"?Jd.timer(J):Xd.innerFrom(J(H)),q=NC.createOperatorSubscriber(Y,function(){q.unsubscribe(),W()});$.subscribe(q)}else W()},W=function(){var $=!1;if(K=G.subscribe(NC.createOperatorSubscriber(Y,void 0,function(){if(++H{Object.defineProperty(vW,"__esModule",{value:!0});vW.repeatWhen=void 0;var Yd=A0(),Wd=r6(),qd=l1(),MC=Q0();function Hd(Q){return qd.operate(function(X,Z){var J,G=!1,Y,H=!1,K=!1,z=function(){return K&&H&&(Z.complete(),!0)},W=function(){if(!Y)Y=new Wd.Subject,Yd.innerFrom(Q(Y)).subscribe(MC.createOperatorSubscriber(Z,function(){if(J)$();else G=!0},function(){H=!0,z()}));return Y},$=function(){if(K=!1,J=X.subscribe(MC.createOperatorSubscriber(Z,void 0,function(){K=!0,!z()&&W().next()})),G)J.unsubscribe(),J=null,G=!1,$()};$()})}vW.repeatWhen=Hd});var AC=r((gW)=>{Object.defineProperty(gW,"__esModule",{value:!0});gW.retry=void 0;var zd=l1(),RC=Q0(),Kd=t6(),$d=Z4(),Bd=A0();function Ud(Q){if(Q===void 0)Q=1/0;var X;if(Q&&typeof Q==="object")X=Q;else X={count:Q};var Z=X.count,J=Z===void 0?1/0:Z,G=X.delay,Y=X.resetOnSuccess,H=Y===void 0?!1:Y;return J<=0?Kd.identity:zd.operate(function(K,z){var W=0,$,q=function(){var B=!1;if($=K.subscribe(RC.createOperatorSubscriber(z,function(D){if(H)W=0;z.next(D)},void 0,function(D){if(W++{Object.defineProperty(hW,"__esModule",{value:!0});hW.retryWhen=void 0;var Vd=A0(),Pd=r6(),Fd=l1(),OC=Q0();function Dd(Q){return Fd.operate(function(X,Z){var J,G=!1,Y,H=function(){if(J=X.subscribe(OC.createOperatorSubscriber(Z,void 0,void 0,function(K){if(!Y)Y=new Pd.Subject,Vd.innerFrom(Q(Y)).subscribe(OC.createOperatorSubscriber(Z,function(){return J?H():G=!0}));if(Y)Y.next(K)})),G)J.unsubscribe(),J=null,G=!1,H()};H()})}hW.retryWhen=Dd});var VK=r((fW)=>{Object.defineProperty(fW,"__esModule",{value:!0});fW.sample=void 0;var Ld=A0(),Cd=l1(),Nd=s6(),EC=Q0();function Td(Q){return Cd.operate(function(X,Z){var J=!1,G=null;X.subscribe(EC.createOperatorSubscriber(Z,function(Y){J=!0,G=Y})),Ld.innerFrom(Q).subscribe(EC.createOperatorSubscriber(Z,function(){if(J){J=!1;var Y=G;G=null,Z.next(Y)}},Nd.noop))})}fW.sample=Td});var jC=r((bW)=>{Object.defineProperty(bW,"__esModule",{value:!0});bW.sampleTime=void 0;var Md=w8(),Id=VK(),Rd=nz();function Ad(Q,X){if(X===void 0)X=Md.asyncScheduler;return Id.sample(Rd.interval(Q,X))}bW.sampleTime=Ad});var SC=r((mW)=>{Object.defineProperty(mW,"__esModule",{value:!0});mW.scan=void 0;var Od=l1(),wd=QK();function Ed(Q,X){return Od.operate(wd.scanInternals(Q,X,arguments.length>=2,!0))}mW.scan=Ed});var yC=r((_W)=>{Object.defineProperty(_W,"__esModule",{value:!0});_W.sequenceEqual=void 0;var jd=l1(),Sd=Q0(),kd=A0();function yd(Q,X){if(X===void 0)X=function(Z,J){return Z===J};return jd.operate(function(Z,J){var G=kC(),Y=kC(),H=function(z){J.next(z),J.complete()},K=function(z,W){var $=Sd.createOperatorSubscriber(J,function(q){var{buffer:B,complete:D}=W;if(B.length===0)D?H(!1):z.buffer.push(q);else!X(q,B.shift())&&H(!1)},function(){z.complete=!0;var{complete:q,buffer:B}=W;q&&H(B.length===0),$===null||$===void 0||$.unsubscribe()});return $};Z.subscribe(K(G,Y)),kd.innerFrom(Q).subscribe(K(Y,G))})}_W.sequenceEqual=yd;function kC(){return{buffer:[],complete:!1}}});var FK=r(($4)=>{var xd=$4&&$4.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},vd=$4&&$4.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z0)$=new vC.SafeSubscriber({next:function(E){return I.next(E)},error:function(E){P=!0,N(),q=PK(C,G,E),I.error(E)},complete:function(){F=!0,N(),q=PK(C,H),I.complete()}}),xC.innerFrom(V).subscribe($)})(W)}}$4.share=fd;function PK(Q,X){var Z=[];for(var J=2;J{Object.defineProperty(dW,"__esModule",{value:!0});dW.shareReplay=void 0;var bd=DG(),md=FK();function _d(Q,X,Z){var J,G,Y,H,K=!1;if(Q&&typeof Q==="object")J=Q.bufferSize,H=J===void 0?1/0:J,G=Q.windowTime,X=G===void 0?1/0:G,Y=Q.refCount,K=Y===void 0?!1:Y,Z=Q.scheduler;else H=Q!==null&&Q!==void 0?Q:1/0;return md.share({connector:function(){return new bd.ReplaySubject(H,X,Z)},resetOnError:!0,resetOnComplete:!1,resetOnRefCountZero:K})}dW.shareReplay=_d});var hC=r((uW)=>{Object.defineProperty(uW,"__esModule",{value:!0});uW.single=void 0;var dd=sQ(),ud=dz(),pd=_z(),ld=l1(),cd=Q0();function id(Q){return ld.operate(function(X,Z){var J=!1,G,Y=!1,H=0;X.subscribe(cd.createOperatorSubscriber(Z,function(K){if(Y=!0,!Q||Q(K,H++,X))J&&Z.error(new ud.SequenceError("Too many matching values")),J=!0,G=K},function(){if(J)Z.next(G),Z.complete();else Z.error(Y?new pd.NotFoundError("No matching values"):new dd.EmptyError)}))})}uW.single=id});var fC=r((pW)=>{Object.defineProperty(pW,"__esModule",{value:!0});pW.skip=void 0;var nd=JZ();function od(Q){return nd.filter(function(X,Z){return Q<=Z})}pW.skip=od});var bC=r((lW)=>{Object.defineProperty(lW,"__esModule",{value:!0});lW.skipLast=void 0;var ad=t6(),sd=l1(),td=Q0();function rd(Q){return Q<=0?ad.identity:sd.operate(function(X,Z){var J=new Array(Q),G=0;return X.subscribe(td.createOperatorSubscriber(Z,function(Y){var H=G++;if(H{Object.defineProperty(cW,"__esModule",{value:!0});cW.skipUntil=void 0;var ed=l1(),mC=Q0(),Qu=A0(),Zu=s6();function Xu(Q){return ed.operate(function(X,Z){var J=!1,G=mC.createOperatorSubscriber(Z,function(){G===null||G===void 0||G.unsubscribe(),J=!0},Zu.noop);Qu.innerFrom(Q).subscribe(G),X.subscribe(mC.createOperatorSubscriber(Z,function(Y){return J&&Z.next(Y)}))})}cW.skipUntil=Xu});var dC=r((iW)=>{Object.defineProperty(iW,"__esModule",{value:!0});iW.skipWhile=void 0;var Ju=l1(),Gu=Q0();function Yu(Q){return Ju.operate(function(X,Z){var J=!1,G=0;X.subscribe(Gu.createOperatorSubscriber(Z,function(Y){return(J||(J=!Q(Y,G++)))&&Z.next(Y)}))})}iW.skipWhile=Yu});var pC=r((nW)=>{Object.defineProperty(nW,"__esModule",{value:!0});nW.startWith=void 0;var uC=GX(),Wu=E8(),qu=l1();function Hu(){var Q=[];for(var X=0;X{Object.defineProperty(oW,"__esModule",{value:!0});oW.switchMap=void 0;var zu=A0(),Ku=l1(),lC=Q0();function $u(Q,X){return Ku.operate(function(Z,J){var G=null,Y=0,H=!1,K=function(){return H&&!G&&J.complete()};Z.subscribe(lC.createOperatorSubscriber(J,function(z){G===null||G===void 0||G.unsubscribe();var W=0,$=Y++;zu.innerFrom(Q(z,$)).subscribe(G=lC.createOperatorSubscriber(J,function(q){return J.next(X?X(z,q,$,W++):q)},function(){G=null,K()}))},function(){H=!0,K()}))})}oW.switchMap=$u});var cC=r((aW)=>{Object.defineProperty(aW,"__esModule",{value:!0});aW.switchAll=void 0;var Bu=zX(),Uu=t6();function Vu(){return Bu.switchMap(Uu.identity)}aW.switchAll=Vu});var nC=r((sW)=>{Object.defineProperty(sW,"__esModule",{value:!0});sW.switchMapTo=void 0;var iC=zX(),Pu=t0();function Fu(Q,X){return Pu.isFunction(X)?iC.switchMap(function(){return Q},X):iC.switchMap(function(){return Q})}sW.switchMapTo=Fu});var oC=r((tW)=>{Object.defineProperty(tW,"__esModule",{value:!0});tW.switchScan=void 0;var Du=zX(),Lu=l1();function Cu(Q,X){return Lu.operate(function(Z,J){var G=X;return Du.switchMap(function(Y,H){return Q(G,Y,H)},function(Y,H){return G=H,H})(Z).subscribe(J),function(){G=null}})}tW.switchScan=Cu});var aC=r((rW)=>{Object.defineProperty(rW,"__esModule",{value:!0});rW.takeUntil=void 0;var Nu=l1(),Tu=Q0(),Mu=A0(),Iu=s6();function Ru(Q){return Nu.operate(function(X,Z){Mu.innerFrom(Q).subscribe(Tu.createOperatorSubscriber(Z,function(){return Z.complete()},Iu.noop)),!Z.closed&&X.subscribe(Z)})}rW.takeUntil=Ru});var sC=r((eW)=>{Object.defineProperty(eW,"__esModule",{value:!0});eW.takeWhile=void 0;var Au=l1(),Ou=Q0();function wu(Q,X){if(X===void 0)X=!1;return Au.operate(function(Z,J){var G=0;Z.subscribe(Ou.createOperatorSubscriber(J,function(Y){var H=Q(Y,G++);(H||X)&&J.next(Y),!H&&J.complete()}))})}eW.takeWhile=wu});var tC=r((Qq)=>{Object.defineProperty(Qq,"__esModule",{value:!0});Qq.tap=void 0;var Eu=t0(),ju=l1(),Su=Q0(),ku=t6();function yu(Q,X,Z){var J=Eu.isFunction(Q)||X||Z?{next:Q,error:X,complete:Z}:Q;return J?ju.operate(function(G,Y){var H;(H=J.subscribe)===null||H===void 0||H.call(J);var K=!0;G.subscribe(Su.createOperatorSubscriber(Y,function(z){var W;(W=J.next)===null||W===void 0||W.call(J,z),Y.next(z)},function(){var z;K=!1,(z=J.complete)===null||z===void 0||z.call(J),Y.complete()},function(z){var W;K=!1,(W=J.error)===null||W===void 0||W.call(J,z),Y.error(z)},function(){var z,W;if(K)(z=J.unsubscribe)===null||z===void 0||z.call(J);(W=J.finalize)===null||W===void 0||W.call(J)}))}):ku.identity}Qq.tap=yu});var DK=r((Zq)=>{Object.defineProperty(Zq,"__esModule",{value:!0});Zq.throttle=void 0;var xu=l1(),rC=Q0(),vu=A0();function gu(Q,X){return xu.operate(function(Z,J){var G=X!==null&&X!==void 0?X:{},Y=G.leading,H=Y===void 0?!0:Y,K=G.trailing,z=K===void 0?!1:K,W=!1,$=null,q=null,B=!1,D=function(){if(q===null||q===void 0||q.unsubscribe(),q=null,z)N(),B&&J.complete()},F=function(){q=null,B&&J.complete()},P=function(C){return q=vu.innerFrom(Q(C)).subscribe(rC.createOperatorSubscriber(J,D,F))},N=function(){if(W){W=!1;var C=$;$=null,J.next(C),!B&&P(C)}};Z.subscribe(rC.createOperatorSubscriber(J,function(C){W=!0,$=C,!(q&&!q.closed)&&(H?N():P(C))},function(){B=!0,!(z&&W&&q&&!q.closed)&&J.complete()}))})}Zq.throttle=gu});var eC=r((Xq)=>{Object.defineProperty(Xq,"__esModule",{value:!0});Xq.throttleTime=void 0;var hu=w8(),fu=DK(),bu=Z4();function mu(Q,X,Z){if(X===void 0)X=hu.asyncScheduler;var J=bu.timer(Q,X);return fu.throttle(function(){return J},Z)}Xq.throttleTime=mu});var ZN=r((v5)=>{Object.defineProperty(v5,"__esModule",{value:!0});v5.TimeInterval=v5.timeInterval=void 0;var _u=w8(),du=l1(),uu=Q0();function pu(Q){if(Q===void 0)Q=_u.asyncScheduler;return du.operate(function(X,Z){var J=Q.now();X.subscribe(uu.createOperatorSubscriber(Z,function(G){var Y=Q.now(),H=Y-J;J=Y,Z.next(new QN(G,H))}))})}v5.timeInterval=pu;var QN=function(){function Q(X,Z){this.value=X,this.interval=Z}return Q}();v5.TimeInterval=QN});var XN=r((Jq)=>{Object.defineProperty(Jq,"__esModule",{value:!0});Jq.timeoutWith=void 0;var lu=w8(),cu=eG(),iu=QY();function nu(Q,X,Z){var J,G,Y;if(Z=Z!==null&&Z!==void 0?Z:lu.async,cu.isValidDate(Q))J=Q;else if(typeof Q==="number")G=Q;if(X)Y=function(){return X};else throw new TypeError("No observable provided to switch to");if(J==null&&G==null)throw new TypeError("No timeout provided.");return iu.timeout({first:J,each:G,scheduler:Z,with:Y})}Jq.timeoutWith=nu});var JN=r((Gq)=>{Object.defineProperty(Gq,"__esModule",{value:!0});Gq.timestamp=void 0;var ou=FG(),au=tQ();function su(Q){if(Q===void 0)Q=ou.dateTimestampProvider;return au.map(function(X){return{value:X,timestamp:Q.now()}})}Gq.timestamp=su});var WN=r((Yq)=>{Object.defineProperty(Yq,"__esModule",{value:!0});Yq.window=void 0;var GN=r6(),tu=l1(),YN=Q0(),ru=s6(),eu=A0();function Qp(Q){return tu.operate(function(X,Z){var J=new GN.Subject;Z.next(J.asObservable());var G=function(Y){J.error(Y),Z.error(Y)};return X.subscribe(YN.createOperatorSubscriber(Z,function(Y){return J===null||J===void 0?void 0:J.next(Y)},function(){J.complete(),Z.complete()},G)),eu.innerFrom(Q).subscribe(YN.createOperatorSubscriber(Z,function(){J.complete(),Z.next(J=new GN.Subject)},ru.noop,G)),function(){J===null||J===void 0||J.unsubscribe(),J=null}})}Yq.window=Qp});var HN=r((g5)=>{var Zp=g5&&g5.__values||function(Q){var X=typeof Symbol==="function"&&Symbol.iterator,Z=X&&Q[X],J=0;if(Z)return Z.call(Q);if(Q&&typeof Q.length==="number")return{next:function(){if(Q&&J>=Q.length)Q=void 0;return{value:Q&&Q[J++],done:!Q}}};throw new TypeError(X?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(g5,"__esModule",{value:!0});g5.windowCount=void 0;var qN=r6(),Xp=l1(),Jp=Q0();function Gp(Q,X){if(X===void 0)X=0;var Z=X>0?X:Q;return Xp.operate(function(J,G){var Y=[new qN.Subject],H=[],K=0;G.next(Y[0].asObservable()),J.subscribe(Jp.createOperatorSubscriber(G,function(z){var W,$;try{for(var q=Zp(Y),B=q.next();!B.done;B=q.next()){var D=B.value;D.next(z)}}catch(N){W={error:N}}finally{try{if(B&&!B.done&&($=q.return))$.call(q)}finally{if(W)throw W.error}}var F=K-Q+1;if(F>=0&&F%Z===0)Y.shift().complete();if(++K%Z===0){var P=new qN.Subject;Y.push(P),G.next(P.asObservable())}},function(){while(Y.length>0)Y.shift().complete();G.complete()},function(z){while(Y.length>0)Y.shift().error(z);G.error(z)},function(){H=null,Y=null}))})}g5.windowCount=Gp});var KN=r((Wq)=>{Object.defineProperty(Wq,"__esModule",{value:!0});Wq.windowTime=void 0;var Yp=r6(),Wp=w8(),qp=o8(),Hp=l1(),zp=Q0(),Kp=MQ(),$p=E8(),zN=IQ();function Bp(Q){var X,Z,J=[];for(var G=1;G=0)zN.executeSchedule(W,Y,D,H,!0);else q=!0;D();var F=function(N){return $.slice().forEach(N)},P=function(N){F(function(C){var L=C.window;return N(L)}),N(W),W.unsubscribe()};return z.subscribe(zp.createOperatorSubscriber(W,function(N){F(function(C){C.window.next(N),K<=++C.seen&&B(C)})},function(){return P(function(N){return N.complete()})},function(N){return P(function(C){return C.error(N)})})),function(){$=null}})}Wq.windowTime=Bp});var UN=r((h5)=>{var Up=h5&&h5.__values||function(Q){var X=typeof Symbol==="function"&&Symbol.iterator,Z=X&&Q[X],J=0;if(Z)return Z.call(Q);if(Q&&typeof Q.length==="number")return{next:function(){if(Q&&J>=Q.length)Q=void 0;return{value:Q&&Q[J++],done:!Q}}};throw new TypeError(X?"Object is not iterable.":"Symbol.iterator is not defined.")};Object.defineProperty(h5,"__esModule",{value:!0});h5.windowToggle=void 0;var Vp=r6(),Pp=o8(),Fp=l1(),$N=A0(),LK=Q0(),BN=s6(),Dp=MQ();function Lp(Q,X){return Fp.operate(function(Z,J){var G=[],Y=function(H){while(0{Object.defineProperty(qq,"__esModule",{value:!0});qq.windowWhen=void 0;var Cp=r6(),Np=l1(),VN=Q0(),Tp=A0();function Mp(Q){return Np.operate(function(X,Z){var J,G,Y=function(K){J.error(K),Z.error(K)},H=function(){G===null||G===void 0||G.unsubscribe(),J===null||J===void 0||J.complete(),J=new Cp.Subject,Z.next(J.asObservable());var K;try{K=Tp.innerFrom(Q())}catch(z){Y(z);return}K.subscribe(G=VN.createOperatorSubscriber(Z,H,H,Y))};H(),X.subscribe(VN.createOperatorSubscriber(Z,function(K){return J.next(K)},function(){J.complete(),Z.complete()},Y,function(){G===null||G===void 0||G.unsubscribe(),J=null}))})}qq.windowWhen=Mp});var CN=r((B4)=>{var FN=B4&&B4.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},DN=B4&&B4.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{Object.defineProperty(Hq,"__esModule",{value:!0});Hq.zipAll=void 0;var jp=SY(),Sp=XK();function kp(Q){return Sp.joinAllInternals(jp.zip,Q)}Hq.zipAll=kp});var TN=r((U4)=>{var yp=U4&&U4.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},xp=U4&&U4.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{var fp=V4&&V4.__read||function(Q,X){var Z=typeof Symbol==="function"&&Q[Symbol.iterator];if(!Z)return Q;var J=Z.call(Q),G,Y=[],H;try{while((X===void 0||X-- >0)&&!(G=J.next()).done)Y.push(G.value)}catch(K){H={error:K}}finally{try{if(G&&!G.done&&(Z=J.return))Z.call(J)}finally{if(H)throw H.error}}return Y},bp=V4&&V4.__spreadArray||function(Q,X){for(var Z=0,J=X.length,G=Q.length;Z{var dp=l&&l.__createBinding||(Object.create?function(Q,X,Z,J){if(J===void 0)J=Z;Object.defineProperty(Q,J,{enumerable:!0,get:function(){return X[Z]}})}:function(Q,X,Z,J){if(J===void 0)J=Z;Q[J]=X[Z]}),up=l&&l.__exportStar||function(Q,X){for(var Z in Q)if(Z!=="default"&&!Object.prototype.hasOwnProperty.call(X,Z))dp(X,Q,Z)};Object.defineProperty(l,"__esModule",{value:!0});l.interval=l.iif=l.generate=l.fromEventPattern=l.fromEvent=l.from=l.forkJoin=l.empty=l.defer=l.connectable=l.concat=l.combineLatest=l.bindNodeCallback=l.bindCallback=l.UnsubscriptionError=l.TimeoutError=l.SequenceError=l.ObjectUnsubscribedError=l.NotFoundError=l.EmptyError=l.ArgumentOutOfRangeError=l.firstValueFrom=l.lastValueFrom=l.isObservable=l.identity=l.noop=l.pipe=l.NotificationKind=l.Notification=l.Subscriber=l.Subscription=l.Scheduler=l.VirtualAction=l.VirtualTimeScheduler=l.animationFrameScheduler=l.animationFrame=l.queueScheduler=l.queue=l.asyncScheduler=l.async=l.asapScheduler=l.asap=l.AsyncSubject=l.ReplaySubject=l.BehaviorSubject=l.Subject=l.animationFrames=l.observable=l.ConnectableObservable=l.Observable=void 0;l.filter=l.expand=l.exhaustMap=l.exhaustAll=l.exhaust=l.every=l.endWith=l.elementAt=l.distinctUntilKeyChanged=l.distinctUntilChanged=l.distinct=l.dematerialize=l.delayWhen=l.delay=l.defaultIfEmpty=l.debounceTime=l.debounce=l.count=l.connect=l.concatWith=l.concatMapTo=l.concatMap=l.concatAll=l.combineLatestWith=l.combineLatestAll=l.combineAll=l.catchError=l.bufferWhen=l.bufferToggle=l.bufferTime=l.bufferCount=l.buffer=l.auditTime=l.audit=l.config=l.NEVER=l.EMPTY=l.scheduled=l.zip=l.using=l.timer=l.throwError=l.range=l.race=l.partition=l.pairs=l.onErrorResumeNext=l.of=l.never=l.merge=void 0;l.switchMap=l.switchAll=l.subscribeOn=l.startWith=l.skipWhile=l.skipUntil=l.skipLast=l.skip=l.single=l.shareReplay=l.share=l.sequenceEqual=l.scan=l.sampleTime=l.sample=l.refCount=l.retryWhen=l.retry=l.repeatWhen=l.repeat=l.reduce=l.raceWith=l.publishReplay=l.publishLast=l.publishBehavior=l.publish=l.pluck=l.pairwise=l.onErrorResumeNextWith=l.observeOn=l.multicast=l.min=l.mergeWith=l.mergeScan=l.mergeMapTo=l.mergeMap=l.flatMap=l.mergeAll=l.max=l.materialize=l.mapTo=l.map=l.last=l.isEmpty=l.ignoreElements=l.groupBy=l.first=l.findIndex=l.find=l.finalize=void 0;l.zipWith=l.zipAll=l.withLatestFrom=l.windowWhen=l.windowToggle=l.windowTime=l.windowCount=l.window=l.toArray=l.timestamp=l.timeoutWith=l.timeout=l.timeInterval=l.throwIfEmpty=l.throttleTime=l.throttle=l.tap=l.takeWhile=l.takeUntil=l.takeLast=l.take=l.switchScan=l.switchMapTo=void 0;var pp=Q6();Object.defineProperty(l,"Observable",{enumerable:!0,get:function(){return pp.Observable}});var lp=t7();Object.defineProperty(l,"ConnectableObservable",{enumerable:!0,get:function(){return lp.ConnectableObservable}});var cp=a7();Object.defineProperty(l,"observable",{enumerable:!0,get:function(){return cp.observable}});var ip=wF();Object.defineProperty(l,"animationFrames",{enumerable:!0,get:function(){return ip.animationFrames}});var np=r6();Object.defineProperty(l,"Subject",{enumerable:!0,get:function(){return np.Subject}});var op=Mz();Object.defineProperty(l,"BehaviorSubject",{enumerable:!0,get:function(){return op.BehaviorSubject}});var ap=DG();Object.defineProperty(l,"ReplaySubject",{enumerable:!0,get:function(){return ap.ReplaySubject}});var sp=LG();Object.defineProperty(l,"AsyncSubject",{enumerable:!0,get:function(){return sp.AsyncSubject}});var IN=lF();Object.defineProperty(l,"asap",{enumerable:!0,get:function(){return IN.asap}});Object.defineProperty(l,"asapScheduler",{enumerable:!0,get:function(){return IN.asapScheduler}});var RN=w8();Object.defineProperty(l,"async",{enumerable:!0,get:function(){return RN.async}});Object.defineProperty(l,"asyncScheduler",{enumerable:!0,get:function(){return RN.asyncScheduler}});var AN=nF();Object.defineProperty(l,"queue",{enumerable:!0,get:function(){return AN.queue}});Object.defineProperty(l,"queueScheduler",{enumerable:!0,get:function(){return AN.queueScheduler}});var ON=tF();Object.defineProperty(l,"animationFrame",{enumerable:!0,get:function(){return ON.animationFrame}});Object.defineProperty(l,"animationFrameScheduler",{enumerable:!0,get:function(){return ON.animationFrameScheduler}});var wN=QD();Object.defineProperty(l,"VirtualTimeScheduler",{enumerable:!0,get:function(){return wN.VirtualTimeScheduler}});Object.defineProperty(l,"VirtualAction",{enumerable:!0,get:function(){return wN.VirtualAction}});var tp=Rz();Object.defineProperty(l,"Scheduler",{enumerable:!0,get:function(){return tp.Scheduler}});var rp=o8();Object.defineProperty(l,"Subscription",{enumerable:!0,get:function(){return rp.Subscription}});var ep=X5();Object.defineProperty(l,"Subscriber",{enumerable:!0,get:function(){return ep.Subscriber}});var EN=lG();Object.defineProperty(l,"Notification",{enumerable:!0,get:function(){return EN.Notification}});Object.defineProperty(l,"NotificationKind",{enumerable:!0,get:function(){return EN.NotificationKind}});var Ql=s7();Object.defineProperty(l,"pipe",{enumerable:!0,get:function(){return Ql.pipe}});var Zl=s6();Object.defineProperty(l,"noop",{enumerable:!0,get:function(){return Zl.noop}});var Xl=t6();Object.defineProperty(l,"identity",{enumerable:!0,get:function(){return Xl.identity}});var Jl=DD();Object.defineProperty(l,"isObservable",{enumerable:!0,get:function(){return Jl.isObservable}});var Gl=LD();Object.defineProperty(l,"lastValueFrom",{enumerable:!0,get:function(){return Gl.lastValueFrom}});var Yl=CD();Object.defineProperty(l,"firstValueFrom",{enumerable:!0,get:function(){return Yl.firstValueFrom}});var Wl=mz();Object.defineProperty(l,"ArgumentOutOfRangeError",{enumerable:!0,get:function(){return Wl.ArgumentOutOfRangeError}});var ql=sQ();Object.defineProperty(l,"EmptyError",{enumerable:!0,get:function(){return ql.EmptyError}});var Hl=_z();Object.defineProperty(l,"NotFoundError",{enumerable:!0,get:function(){return Hl.NotFoundError}});var zl=Lz();Object.defineProperty(l,"ObjectUnsubscribedError",{enumerable:!0,get:function(){return zl.ObjectUnsubscribedError}});var Kl=dz();Object.defineProperty(l,"SequenceError",{enumerable:!0,get:function(){return Kl.SequenceError}});var $l=QY();Object.defineProperty(l,"TimeoutError",{enumerable:!0,get:function(){return $l.TimeoutError}});var Bl=Yz();Object.defineProperty(l,"UnsubscriptionError",{enumerable:!0,get:function(){return Bl.UnsubscriptionError}});var Ul=TD();Object.defineProperty(l,"bindCallback",{enumerable:!0,get:function(){return Ul.bindCallback}});var Vl=MD();Object.defineProperty(l,"bindNodeCallback",{enumerable:!0,get:function(){return Vl.bindNodeCallback}});var Pl=WY();Object.defineProperty(l,"combineLatest",{enumerable:!0,get:function(){return Pl.combineLatest}});var Fl=GX();Object.defineProperty(l,"concat",{enumerable:!0,get:function(){return Fl.concat}});var Dl=SD();Object.defineProperty(l,"connectable",{enumerable:!0,get:function(){return Dl.connectable}});var Ll=YX();Object.defineProperty(l,"defer",{enumerable:!0,get:function(){return Ll.defer}});var Cl=S9();Object.defineProperty(l,"empty",{enumerable:!0,get:function(){return Cl.empty}});var Nl=kD();Object.defineProperty(l,"forkJoin",{enumerable:!0,get:function(){return Nl.forkJoin}});var Tl=RQ();Object.defineProperty(l,"from",{enumerable:!0,get:function(){return Tl.from}});var Ml=xD();Object.defineProperty(l,"fromEvent",{enumerable:!0,get:function(){return Ml.fromEvent}});var Il=gD();Object.defineProperty(l,"fromEventPattern",{enumerable:!0,get:function(){return Il.fromEventPattern}});var Rl=fD();Object.defineProperty(l,"generate",{enumerable:!0,get:function(){return Rl.generate}});var Al=bD();Object.defineProperty(l,"iif",{enumerable:!0,get:function(){return Al.iif}});var Ol=nz();Object.defineProperty(l,"interval",{enumerable:!0,get:function(){return Ol.interval}});var wl=_D();Object.defineProperty(l,"merge",{enumerable:!0,get:function(){return wl.merge}});var El=oz();Object.defineProperty(l,"never",{enumerable:!0,get:function(){return El.never}});var jl=uG();Object.defineProperty(l,"of",{enumerable:!0,get:function(){return jl.of}});var Sl=az();Object.defineProperty(l,"onErrorResumeNext",{enumerable:!0,get:function(){return Sl.onErrorResumeNext}});var kl=uD();Object.defineProperty(l,"pairs",{enumerable:!0,get:function(){return kl.pairs}});var yl=iD();Object.defineProperty(l,"partition",{enumerable:!0,get:function(){return yl.partition}});var xl=sz();Object.defineProperty(l,"race",{enumerable:!0,get:function(){return xl.race}});var vl=aD();Object.defineProperty(l,"range",{enumerable:!0,get:function(){return vl.range}});var gl=bz();Object.defineProperty(l,"throwError",{enumerable:!0,get:function(){return gl.throwError}});var hl=Z4();Object.defineProperty(l,"timer",{enumerable:!0,get:function(){return hl.timer}});var fl=sD();Object.defineProperty(l,"using",{enumerable:!0,get:function(){return fl.using}});var bl=SY();Object.defineProperty(l,"zip",{enumerable:!0,get:function(){return bl.zip}});var ml=fz();Object.defineProperty(l,"scheduled",{enumerable:!0,get:function(){return ml.scheduled}});var _l=S9();Object.defineProperty(l,"EMPTY",{enumerable:!0,get:function(){return _l.EMPTY}});var dl=oz();Object.defineProperty(l,"NEVER",{enumerable:!0,get:function(){return dl.NEVER}});up(rD(),l);var ul=Q5();Object.defineProperty(l,"config",{enumerable:!0,get:function(){return ul.config}});var pl=tz();Object.defineProperty(l,"audit",{enumerable:!0,get:function(){return pl.audit}});var ll=QL();Object.defineProperty(l,"auditTime",{enumerable:!0,get:function(){return ll.auditTime}});var cl=XL();Object.defineProperty(l,"buffer",{enumerable:!0,get:function(){return cl.buffer}});var il=JL();Object.defineProperty(l,"bufferCount",{enumerable:!0,get:function(){return il.bufferCount}});var nl=YL();Object.defineProperty(l,"bufferTime",{enumerable:!0,get:function(){return nl.bufferTime}});var ol=HL();Object.defineProperty(l,"bufferToggle",{enumerable:!0,get:function(){return ol.bufferToggle}});var al=KL();Object.defineProperty(l,"bufferWhen",{enumerable:!0,get:function(){return al.bufferWhen}});var sl=BL();Object.defineProperty(l,"catchError",{enumerable:!0,get:function(){return sl.catchError}});var tl=UL();Object.defineProperty(l,"combineAll",{enumerable:!0,get:function(){return tl.combineAll}});var rl=JK();Object.defineProperty(l,"combineLatestAll",{enumerable:!0,get:function(){return rl.combineLatestAll}});var el=LL();Object.defineProperty(l,"combineLatestWith",{enumerable:!0,get:function(){return el.combineLatestWith}});var Qc=BY();Object.defineProperty(l,"concatAll",{enumerable:!0,get:function(){return Qc.concatAll}});var Zc=GK();Object.defineProperty(l,"concatMap",{enumerable:!0,get:function(){return Zc.concatMap}});var Xc=TL();Object.defineProperty(l,"concatMapTo",{enumerable:!0,get:function(){return Xc.concatMapTo}});var Jc=IL();Object.defineProperty(l,"concatWith",{enumerable:!0,get:function(){return Jc.concatWith}});var Gc=iY();Object.defineProperty(l,"connect",{enumerable:!0,get:function(){return Gc.connect}});var Yc=AL();Object.defineProperty(l,"count",{enumerable:!0,get:function(){return Yc.count}});var Wc=wL();Object.defineProperty(l,"debounce",{enumerable:!0,get:function(){return Wc.debounce}});var qc=EL();Object.defineProperty(l,"debounceTime",{enumerable:!0,get:function(){return qc.debounceTime}});var Hc=WX();Object.defineProperty(l,"defaultIfEmpty",{enumerable:!0,get:function(){return Hc.defaultIfEmpty}});var zc=kL();Object.defineProperty(l,"delay",{enumerable:!0,get:function(){return zc.delay}});var Kc=qK();Object.defineProperty(l,"delayWhen",{enumerable:!0,get:function(){return Kc.delayWhen}});var $c=yL();Object.defineProperty(l,"dematerialize",{enumerable:!0,get:function(){return $c.dematerialize}});var Bc=vL();Object.defineProperty(l,"distinct",{enumerable:!0,get:function(){return Bc.distinct}});var Uc=HK();Object.defineProperty(l,"distinctUntilChanged",{enumerable:!0,get:function(){return Uc.distinctUntilChanged}});var Vc=gL();Object.defineProperty(l,"distinctUntilKeyChanged",{enumerable:!0,get:function(){return Vc.distinctUntilKeyChanged}});var Pc=fL();Object.defineProperty(l,"elementAt",{enumerable:!0,get:function(){return Pc.elementAt}});var Fc=bL();Object.defineProperty(l,"endWith",{enumerable:!0,get:function(){return Fc.endWith}});var Dc=mL();Object.defineProperty(l,"every",{enumerable:!0,get:function(){return Dc.every}});var Lc=pL();Object.defineProperty(l,"exhaust",{enumerable:!0,get:function(){return Lc.exhaust}});var Cc=KK();Object.defineProperty(l,"exhaustAll",{enumerable:!0,get:function(){return Cc.exhaustAll}});var Nc=zK();Object.defineProperty(l,"exhaustMap",{enumerable:!0,get:function(){return Nc.exhaustMap}});var Tc=lL();Object.defineProperty(l,"expand",{enumerable:!0,get:function(){return Tc.expand}});var Mc=JZ();Object.defineProperty(l,"filter",{enumerable:!0,get:function(){return Mc.filter}});var Ic=cL();Object.defineProperty(l,"finalize",{enumerable:!0,get:function(){return Ic.finalize}});var Rc=$K();Object.defineProperty(l,"find",{enumerable:!0,get:function(){return Rc.find}});var Ac=nL();Object.defineProperty(l,"findIndex",{enumerable:!0,get:function(){return Ac.findIndex}});var Oc=oL();Object.defineProperty(l,"first",{enumerable:!0,get:function(){return Oc.first}});var wc=sL();Object.defineProperty(l,"groupBy",{enumerable:!0,get:function(){return wc.groupBy}});var Ec=YK();Object.defineProperty(l,"ignoreElements",{enumerable:!0,get:function(){return Ec.ignoreElements}});var jc=tL();Object.defineProperty(l,"isEmpty",{enumerable:!0,get:function(){return jc.isEmpty}});var Sc=rL();Object.defineProperty(l,"last",{enumerable:!0,get:function(){return Sc.last}});var kc=tQ();Object.defineProperty(l,"map",{enumerable:!0,get:function(){return kc.map}});var yc=WK();Object.defineProperty(l,"mapTo",{enumerable:!0,get:function(){return yc.mapTo}});var xc=eL();Object.defineProperty(l,"materialize",{enumerable:!0,get:function(){return xc.materialize}});var vc=QC();Object.defineProperty(l,"max",{enumerable:!0,get:function(){return vc.max}});var gc=JX();Object.defineProperty(l,"mergeAll",{enumerable:!0,get:function(){return gc.mergeAll}});var hc=ZC();Object.defineProperty(l,"flatMap",{enumerable:!0,get:function(){return hc.flatMap}});var fc=OQ();Object.defineProperty(l,"mergeMap",{enumerable:!0,get:function(){return fc.mergeMap}});var bc=JC();Object.defineProperty(l,"mergeMapTo",{enumerable:!0,get:function(){return bc.mergeMapTo}});var mc=GC();Object.defineProperty(l,"mergeScan",{enumerable:!0,get:function(){return mc.mergeScan}});var _c=qC();Object.defineProperty(l,"mergeWith",{enumerable:!0,get:function(){return _c.mergeWith}});var dc=HC();Object.defineProperty(l,"min",{enumerable:!0,get:function(){return dc.min}});var uc=OW();Object.defineProperty(l,"multicast",{enumerable:!0,get:function(){return uc.multicast}});var pc=ZX();Object.defineProperty(l,"observeOn",{enumerable:!0,get:function(){return pc.observeOn}});var lc=$C();Object.defineProperty(l,"onErrorResumeNextWith",{enumerable:!0,get:function(){return lc.onErrorResumeNextWith}});var cc=BC();Object.defineProperty(l,"pairwise",{enumerable:!0,get:function(){return cc.pairwise}});var ic=UC();Object.defineProperty(l,"pluck",{enumerable:!0,get:function(){return ic.pluck}});var nc=VC();Object.defineProperty(l,"publish",{enumerable:!0,get:function(){return nc.publish}});var oc=PC();Object.defineProperty(l,"publishBehavior",{enumerable:!0,get:function(){return oc.publishBehavior}});var ac=FC();Object.defineProperty(l,"publishLast",{enumerable:!0,get:function(){return ac.publishLast}});var sc=LC();Object.defineProperty(l,"publishReplay",{enumerable:!0,get:function(){return sc.publishReplay}});var tc=CC();Object.defineProperty(l,"raceWith",{enumerable:!0,get:function(){return tc.raceWith}});var rc=k5();Object.defineProperty(l,"reduce",{enumerable:!0,get:function(){return rc.reduce}});var ec=TC();Object.defineProperty(l,"repeat",{enumerable:!0,get:function(){return ec.repeat}});var Qi=IC();Object.defineProperty(l,"repeatWhen",{enumerable:!0,get:function(){return Qi.repeatWhen}});var Zi=AC();Object.defineProperty(l,"retry",{enumerable:!0,get:function(){return Zi.retry}});var Xi=wC();Object.defineProperty(l,"retryWhen",{enumerable:!0,get:function(){return Xi.retryWhen}});var Ji=Fz();Object.defineProperty(l,"refCount",{enumerable:!0,get:function(){return Ji.refCount}});var Gi=VK();Object.defineProperty(l,"sample",{enumerable:!0,get:function(){return Gi.sample}});var Yi=jC();Object.defineProperty(l,"sampleTime",{enumerable:!0,get:function(){return Yi.sampleTime}});var Wi=SC();Object.defineProperty(l,"scan",{enumerable:!0,get:function(){return Wi.scan}});var qi=yC();Object.defineProperty(l,"sequenceEqual",{enumerable:!0,get:function(){return qi.sequenceEqual}});var Hi=FK();Object.defineProperty(l,"share",{enumerable:!0,get:function(){return Hi.share}});var zi=gC();Object.defineProperty(l,"shareReplay",{enumerable:!0,get:function(){return zi.shareReplay}});var Ki=hC();Object.defineProperty(l,"single",{enumerable:!0,get:function(){return Ki.single}});var $i=fC();Object.defineProperty(l,"skip",{enumerable:!0,get:function(){return $i.skip}});var Bi=bC();Object.defineProperty(l,"skipLast",{enumerable:!0,get:function(){return Bi.skipLast}});var Ui=_C();Object.defineProperty(l,"skipUntil",{enumerable:!0,get:function(){return Ui.skipUntil}});var Vi=dC();Object.defineProperty(l,"skipWhile",{enumerable:!0,get:function(){return Vi.skipWhile}});var Pi=pC();Object.defineProperty(l,"startWith",{enumerable:!0,get:function(){return Pi.startWith}});var Fi=XX();Object.defineProperty(l,"subscribeOn",{enumerable:!0,get:function(){return Fi.subscribeOn}});var Di=cC();Object.defineProperty(l,"switchAll",{enumerable:!0,get:function(){return Di.switchAll}});var Li=zX();Object.defineProperty(l,"switchMap",{enumerable:!0,get:function(){return Li.switchMap}});var Ci=nC();Object.defineProperty(l,"switchMapTo",{enumerable:!0,get:function(){return Ci.switchMapTo}});var Ni=oC();Object.defineProperty(l,"switchScan",{enumerable:!0,get:function(){return Ni.switchScan}});var Ti=qX();Object.defineProperty(l,"take",{enumerable:!0,get:function(){return Ti.take}});var Mi=BK();Object.defineProperty(l,"takeLast",{enumerable:!0,get:function(){return Mi.takeLast}});var Ii=aC();Object.defineProperty(l,"takeUntil",{enumerable:!0,get:function(){return Ii.takeUntil}});var Ri=sC();Object.defineProperty(l,"takeWhile",{enumerable:!0,get:function(){return Ri.takeWhile}});var Ai=tC();Object.defineProperty(l,"tap",{enumerable:!0,get:function(){return Ai.tap}});var Oi=DK();Object.defineProperty(l,"throttle",{enumerable:!0,get:function(){return Oi.throttle}});var wi=eC();Object.defineProperty(l,"throttleTime",{enumerable:!0,get:function(){return wi.throttleTime}});var Ei=HX();Object.defineProperty(l,"throwIfEmpty",{enumerable:!0,get:function(){return Ei.throwIfEmpty}});var ji=ZN();Object.defineProperty(l,"timeInterval",{enumerable:!0,get:function(){return ji.timeInterval}});var Si=QY();Object.defineProperty(l,"timeout",{enumerable:!0,get:function(){return Si.timeout}});var ki=XN();Object.defineProperty(l,"timeoutWith",{enumerable:!0,get:function(){return ki.timeoutWith}});var yi=JN();Object.defineProperty(l,"timestamp",{enumerable:!0,get:function(){return yi.timestamp}});var xi=ZK();Object.defineProperty(l,"toArray",{enumerable:!0,get:function(){return xi.toArray}});var vi=WN();Object.defineProperty(l,"window",{enumerable:!0,get:function(){return vi.window}});var gi=HN();Object.defineProperty(l,"windowCount",{enumerable:!0,get:function(){return gi.windowCount}});var hi=KN();Object.defineProperty(l,"windowTime",{enumerable:!0,get:function(){return hi.windowTime}});var fi=UN();Object.defineProperty(l,"windowToggle",{enumerable:!0,get:function(){return fi.windowToggle}});var bi=PN();Object.defineProperty(l,"windowWhen",{enumerable:!0,get:function(){return bi.windowWhen}});var mi=CN();Object.defineProperty(l,"withLatestFrom",{enumerable:!0,get:function(){return mi.withLatestFrom}});var _i=NN();Object.defineProperty(l,"zipAll",{enumerable:!0,get:function(){return _i.zipAll}});var di=MN();Object.defineProperty(l,"zipWith",{enumerable:!0,get:function(){return di.zipWith}})});var $I=r((y$,KI)=>{var{create:Fo,defineProperty:SX,defineProperties:Do,getOwnPropertyDescriptor:Lo,getOwnPropertyDescriptors:Co,getOwnPropertyNames:No,getOwnPropertySymbols:uq,getPrototypeOf:To}=Object,F$=Object.prototype.hasOwnProperty,IM=Object.prototype.propertyIsEnumerable,Mo=Math.pow,P$=(Q,X,Z)=>(X in Q)?SX(Q,X,{enumerable:!0,configurable:!0,writable:!0,value:Z}):Q[X]=Z,K0=(Q,X)=>{for(var Z in X||(X={}))if(F$.call(X,Z))P$(Q,Z,X[Z]);if(uq){for(var Z of uq(X))if(IM.call(X,Z))P$(Q,Z,X[Z])}return Q},m9=(Q,X)=>Do(Q,Co(X)),RM=(Q)=>SX(Q,"__esModule",{value:!0}),FM=(Q,X)=>{var Z={};for(var J in Q)if(F$.call(Q,J)&&X.indexOf(J)<0)Z[J]=Q[J];if(Q!=null&&uq){for(var J of uq(Q))if(X.indexOf(J)<0&&IM.call(Q,J))Z[J]=Q[J]}return Z},W1=(Q,X)=>function Z(){return X||Q[Object.keys(Q)[0]]((X={exports:{}}).exports,X),X.exports},Io=(Q,X)=>{RM(Q);for(var Z in X)SX(Q,Z,{get:X[Z],enumerable:!0})},Ro=(Q,X,Z)=>{if(X&&typeof X==="object"||typeof X==="function"){for(let J of No(X))if(!F$.call(Q,J)&&J!=="default")SX(Q,J,{get:()=>X[J],enumerable:!(Z=Lo(X,J))||Z.enumerable})}return Q},c6=(Q)=>{return Ro(RM(SX(Q!=null?Fo(To(Q)):{},"default",Q&&Q.__esModule&&"default"in Q?{get:()=>Q.default,enumerable:!0}:{value:Q,enumerable:!0})),Q)},b8=(Q,X,Z)=>{return P$(Q,typeof X!=="symbol"?X+"":X,Z),Z},T0=(Q,X,Z)=>{return new Promise((J,G)=>{var Y=(z)=>{try{K(Z.next(z))}catch(W){G(W)}},H=(z)=>{try{K(Z.throw(z))}catch(W){G(W)}},K=(z)=>z.done?J(z.value):Promise.resolve(z.value).then(Y,H);K((Z=Z.apply(Q,X)).next())})},y0=W1({"node_modules/node-forge/lib/forge.js"(Q,X){X.exports={options:{usePureJavaScript:!1}}}}),Ao=W1({"node_modules/node-forge/lib/baseN.js"(Q,X){var Z={};X.exports=Z;var J={};Z.encode=function(Y,H,K){if(typeof H!=="string")throw new TypeError('"alphabet" must be a string.');if(K!==void 0&&typeof K!=="number")throw new TypeError('"maxline" must be a number.');var z="";if(!(Y instanceof Uint8Array))z=G(Y,H);else{var W=0,$=H.length,q=H.charAt(0),B=[0];for(W=0;W0)B.push(F%$),F=F/$|0}for(W=0;Y[W]===0&&W=0;--W)z+=H[B[W]]}if(K){var P=new RegExp(".{1,"+K+"}","g");z=z.match(P).join(`\r -`)}return z},Z.decode=function(Y,H){if(typeof Y!=="string")throw new TypeError('"input" must be a string.');if(typeof H!=="string")throw new TypeError('"alphabet" must be a string.');var K=J[H];if(!K){K=J[H]=[];for(var z=0;z>=8;while(F>0)q.push(F&255),F>>=8}for(var P=0;Y[P]===$&&P0)$.push(B%z),B=B/z|0}var D="";for(K=0;Y.at(K)===0&&K=0;--K)D+=H[$[K]];return D}}}),d0=W1({"node_modules/node-forge/lib/util.js"(Q,X){var Z=y0(),J=Ao(),G=X.exports=Z.util=Z.util||{};(function(){if(typeof process!=="undefined"&&process.nextTick){if(G.nextTick=process.nextTick,typeof setImmediate==="function")G.setImmediate=setImmediate;else G.setImmediate=G.nextTick;return}if(typeof setImmediate==="function"){G.setImmediate=function(){return setImmediate.apply(void 0,arguments)},G.nextTick=function(T){return setImmediate(T)};return}if(G.setImmediate=function(T){setTimeout(T,0)},typeof window!=="undefined"&&typeof window.postMessage==="function"){let T=function(S){if(S.source===window&&S.data===M){S.stopPropagation();var v=I.slice();I.length=0,v.forEach(function(h){h()})}};var V=T,M="forge.setImmediate",I=[];G.setImmediate=function(S){if(I.push(S),I.length===1)window.postMessage(M,"*")},window.addEventListener("message",T,!0)}if(typeof MutationObserver!=="undefined"){var E=Date.now(),w=!0,A=document.createElement("div"),I=[];new MutationObserver(function(){var S=I.slice();I.length=0,S.forEach(function(v){v()})}).observe(A,{attributes:!0});var R=G.setImmediate;G.setImmediate=function(S){if(Date.now()-E>15)E=Date.now(),R(S);else if(I.push(S),I.length===1)A.setAttribute("a",w=!w)}}G.nextTick=G.setImmediate})(),G.isNodejs=typeof process!=="undefined"&&process.versions&&process.versions.node,G.globalScope=function(){if(G.isNodejs)return global;return typeof self==="undefined"?window:self}(),G.isArray=Array.isArray||function(V){return Object.prototype.toString.call(V)==="[object Array]"},G.isArrayBuffer=function(V){return typeof ArrayBuffer!=="undefined"&&V instanceof ArrayBuffer},G.isArrayBufferView=function(V){return V&&G.isArrayBuffer(V.buffer)&&V.byteLength!==void 0};function Y(V){if(!(V===8||V===16||V===24||V===32))throw new Error("Only 8, 16, 24, or 32 bits supported: "+V)}G.ByteBuffer=H;function H(V){if(this.data="",this.read=0,typeof V==="string")this.data=V;else if(G.isArrayBuffer(V)||G.isArrayBufferView(V))if(typeof Buffer!=="undefined"&&V instanceof Buffer)this.data=V.toString("binary");else{var M=new Uint8Array(V);try{this.data=String.fromCharCode.apply(null,M)}catch(E){for(var I=0;IK)this.data.substr(0,1),this._constructedStringLength=0},G.ByteStringBuffer.prototype.length=function(){return this.data.length-this.read},G.ByteStringBuffer.prototype.isEmpty=function(){return this.length()<=0},G.ByteStringBuffer.prototype.putByte=function(V){return this.putBytes(String.fromCharCode(V))},G.ByteStringBuffer.prototype.fillWithByte=function(V,M){V=String.fromCharCode(V);var I=this.data;while(M>0){if(M&1)I+=V;if(M>>>=1,M>0)V+=V}return this.data=I,this._optimizeConstructedString(M),this},G.ByteStringBuffer.prototype.putBytes=function(V){return this.data+=V,this._optimizeConstructedString(V.length),this},G.ByteStringBuffer.prototype.putString=function(V){return this.putBytes(G.encodeUtf8(V))},G.ByteStringBuffer.prototype.putInt16=function(V){return this.putBytes(String.fromCharCode(V>>8&255)+String.fromCharCode(V&255))},G.ByteStringBuffer.prototype.putInt24=function(V){return this.putBytes(String.fromCharCode(V>>16&255)+String.fromCharCode(V>>8&255)+String.fromCharCode(V&255))},G.ByteStringBuffer.prototype.putInt32=function(V){return this.putBytes(String.fromCharCode(V>>24&255)+String.fromCharCode(V>>16&255)+String.fromCharCode(V>>8&255)+String.fromCharCode(V&255))},G.ByteStringBuffer.prototype.putInt16Le=function(V){return this.putBytes(String.fromCharCode(V&255)+String.fromCharCode(V>>8&255))},G.ByteStringBuffer.prototype.putInt24Le=function(V){return this.putBytes(String.fromCharCode(V&255)+String.fromCharCode(V>>8&255)+String.fromCharCode(V>>16&255))},G.ByteStringBuffer.prototype.putInt32Le=function(V){return this.putBytes(String.fromCharCode(V&255)+String.fromCharCode(V>>8&255)+String.fromCharCode(V>>16&255)+String.fromCharCode(V>>24&255))},G.ByteStringBuffer.prototype.putInt=function(V,M){Y(M);var I="";do M-=8,I+=String.fromCharCode(V>>M&255);while(M>0);return this.putBytes(I)},G.ByteStringBuffer.prototype.putSignedInt=function(V,M){if(V<0)V+=2<0);return M},G.ByteStringBuffer.prototype.getSignedInt=function(V){var M=this.getInt(V),I=2<=I)M-=I<<1;return M},G.ByteStringBuffer.prototype.getBytes=function(V){var M;if(V)V=Math.min(this.length(),V),M=this.data.slice(this.read,this.read+V),this.read+=V;else if(V===0)M="";else M=this.read===0?this.data:this.data.slice(this.read),this.clear();return M},G.ByteStringBuffer.prototype.bytes=function(V){return typeof V==="undefined"?this.data.slice(this.read):this.data.slice(this.read,this.read+V)},G.ByteStringBuffer.prototype.at=function(V){return this.data.charCodeAt(this.read+V)},G.ByteStringBuffer.prototype.setAt=function(V,M){return this.data=this.data.substr(0,this.read+V)+String.fromCharCode(M)+this.data.substr(this.read+V+1),this},G.ByteStringBuffer.prototype.last=function(){return this.data.charCodeAt(this.data.length-1)},G.ByteStringBuffer.prototype.copy=function(){var V=G.createBuffer(this.data);return V.read=this.read,V},G.ByteStringBuffer.prototype.compact=function(){if(this.read>0)this.data=this.data.slice(this.read),this.read=0;return this},G.ByteStringBuffer.prototype.clear=function(){return this.data="",this.read=0,this},G.ByteStringBuffer.prototype.truncate=function(V){var M=Math.max(0,this.length()-V);return this.data=this.data.substr(this.read,M),this.read=0,this},G.ByteStringBuffer.prototype.toHex=function(){var V="";for(var M=this.read;M=V)return this;M=Math.max(M||this.growSize,V);var I=new Uint8Array(this.data.buffer,this.data.byteOffset,this.data.byteLength),E=new Uint8Array(this.length()+M);return E.set(I),this.data=new DataView(E.buffer),this},G.DataBuffer.prototype.putByte=function(V){return this.accommodate(1),this.data.setUint8(this.write++,V),this},G.DataBuffer.prototype.fillWithByte=function(V,M){this.accommodate(M);for(var I=0;I>8&65535),this.data.setInt8(this.write,V>>16&255),this.write+=3,this},G.DataBuffer.prototype.putInt32=function(V){return this.accommodate(4),this.data.setInt32(this.write,V),this.write+=4,this},G.DataBuffer.prototype.putInt16Le=function(V){return this.accommodate(2),this.data.setInt16(this.write,V,!0),this.write+=2,this},G.DataBuffer.prototype.putInt24Le=function(V){return this.accommodate(3),this.data.setInt8(this.write,V>>16&255),this.data.setInt16(this.write,V>>8&65535,!0),this.write+=3,this},G.DataBuffer.prototype.putInt32Le=function(V){return this.accommodate(4),this.data.setInt32(this.write,V,!0),this.write+=4,this},G.DataBuffer.prototype.putInt=function(V,M){Y(M),this.accommodate(M/8);do M-=8,this.data.setInt8(this.write++,V>>M&255);while(M>0);return this},G.DataBuffer.prototype.putSignedInt=function(V,M){if(Y(M),this.accommodate(M/8),V<0)V+=2<0);return M},G.DataBuffer.prototype.getSignedInt=function(V){var M=this.getInt(V),I=2<=I)M-=I<<1;return M},G.DataBuffer.prototype.getBytes=function(V){var M;if(V)V=Math.min(this.length(),V),M=this.data.slice(this.read,this.read+V),this.read+=V;else if(V===0)M="";else M=this.read===0?this.data:this.data.slice(this.read),this.clear();return M},G.DataBuffer.prototype.bytes=function(V){return typeof V==="undefined"?this.data.slice(this.read):this.data.slice(this.read,this.read+V)},G.DataBuffer.prototype.at=function(V){return this.data.getUint8(this.read+V)},G.DataBuffer.prototype.setAt=function(V,M){return this.data.setUint8(V,M),this},G.DataBuffer.prototype.last=function(){return this.data.getUint8(this.write-1)},G.DataBuffer.prototype.copy=function(){return new G.DataBuffer(this)},G.DataBuffer.prototype.compact=function(){if(this.read>0){var V=new Uint8Array(this.data.buffer,this.read),M=new Uint8Array(V.byteLength);M.set(V),this.data=new DataView(M),this.write-=this.read,this.read=0}return this},G.DataBuffer.prototype.clear=function(){return this.data=new DataView(new ArrayBuffer(0)),this.read=this.write=0,this},G.DataBuffer.prototype.truncate=function(V){return this.write=Math.max(0,this.length()-V),this.read=Math.min(this.read,this.write),this},G.DataBuffer.prototype.toHex=function(){var V="";for(var M=this.read;M0){if(M&1)I+=V;if(M>>>=1,M>0)V+=V}return I},G.xorBytes=function(V,M,I){var E="",w="",A="",R=0,T=0;for(;I>0;--I,++R){if(w=V.charCodeAt(R)^M.charCodeAt(R),T>=10)E+=A,A="",T=0;A+=String.fromCharCode(w),++T}return E+=A,E},G.hexToBytes=function(V){var M="",I=0;if(V.length&!0)I=1,M+=String.fromCharCode(parseInt(V[0],16));for(;I>24&255)+String.fromCharCode(V>>16&255)+String.fromCharCode(V>>8&255)+String.fromCharCode(V&255)};var W="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",$=[62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,64,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51],q="123456789ABCDEFGHJKLMNPQRSTUVWXYZabcdefghijkmnopqrstuvwxyz";G.encode64=function(V,M){var I="",E="",w,A,R,T=0;while(T>2),I+=W.charAt((w&3)<<4|A>>4),isNaN(A))I+="==";else I+=W.charAt((A&15)<<2|R>>6),I+=isNaN(R)?"=":W.charAt(R&63);if(M&&I.length>M)E+=I.substr(0,M)+`\r -`,I=I.substr(M)}return E+=I,E},G.decode64=function(V){V=V.replace(/[^A-Za-z0-9\+\/\=]/g,"");var M="",I,E,w,A,R=0;while(R>4),w!==64){if(M+=String.fromCharCode((E&15)<<4|w>>2),A!==64)M+=String.fromCharCode((w&3)<<6|A)}return M},G.encodeUtf8=function(V){return unescape(encodeURIComponent(V))},G.decodeUtf8=function(V){return decodeURIComponent(escape(V))},G.binary={raw:{},hex:{},base64:{},base58:{},baseN:{encode:J.encode,decode:J.decode}},G.binary.raw.encode=function(V){return String.fromCharCode.apply(null,V)},G.binary.raw.decode=function(V,M,I){var E=M;if(!E)E=new Uint8Array(V.length);I=I||0;var w=I;for(var A=0;A>2),I+=W.charAt((w&3)<<4|A>>4),isNaN(A))I+="==";else I+=W.charAt((A&15)<<2|R>>6),I+=isNaN(R)?"=":W.charAt(R&63);if(M&&I.length>M)E+=I.substr(0,M)+`\r -`,I=I.substr(M)}return E+=I,E},G.binary.base64.decode=function(V,M,I){var E=M;if(!E)E=new Uint8Array(Math.ceil(V.length/4)*3);V=V.replace(/[^A-Za-z0-9\+\/\=]/g,""),I=I||0;var w,A,R,T,S=0,v=I;while(S>4,R!==64){if(E[v++]=(A&15)<<4|R>>2,T!==64)E[v++]=(R&3)<<6|T}return M?v-I:E.subarray(0,v)},G.binary.base58.encode=function(V,M){return G.binary.baseN.encode(V,q,M)},G.binary.base58.decode=function(V,M){return G.binary.baseN.decode(V,q,M)},G.text={utf8:{},utf16:{}},G.text.utf8.encode=function(V,M,I){V=G.encodeUtf8(V);var E=M;if(!E)E=new Uint8Array(V.length);I=I||0;var w=I;for(var A=0;A0)A.push(E);R=M.lastIndex;var T=I[0][1];switch(T){case"s":case"o":if(w");break;case"%":A.push("%");break;default:A.push("<%"+T+"?>")}}return A.push(V.substring(R)),A.join("")},G.formatNumber=function(V,M,I,E){var w=V,A=isNaN(M=Math.abs(M))?2:M,R=I===void 0?",":I,T=E===void 0?".":E,S=w<0?"-":"",v=parseInt(w=Math.abs(+w||0).toFixed(A),10)+"",h=v.length>3?v.length%3:0;return S+(h?v.substr(0,h)+T:"")+v.substr(h).replace(/(\d{3})(?=\d)/g,"$1"+T)+(A?R+Math.abs(w-v).toFixed(A).slice(2):"")},G.formatSize=function(V){if(V>=1073741824)V=G.formatNumber(V/1073741824,2,".","")+" GiB";else if(V>=1048576)V=G.formatNumber(V/1048576,2,".","")+" MiB";else if(V>=1024)V=G.formatNumber(V/1024,0)+" KiB";else V=G.formatNumber(V,0)+" bytes";return V},G.bytesFromIP=function(V){if(V.indexOf(".")!==-1)return G.bytesFromIPv4(V);if(V.indexOf(":")!==-1)return G.bytesFromIPv6(V);return null},G.bytesFromIPv4=function(V){if(V=V.split("."),V.length!==4)return null;var M=G.createBuffer();for(var I=0;II[E].end-I[E].start)E=I.length-1}M.push(A)}if(I.length>0){var S=I[E];if(S.end-S.start>0){if(M.splice(S.start,S.end-S.start+1,""),S.start===0)M.unshift("");if(S.end===7)M.push("")}}return M.join(":")},G.estimateCores=function(V,M){if(typeof V==="function")M=V,V={};if(V=V||{},"cores"in G&&!V.update)return M(null,G.cores);if(typeof navigator!=="undefined"&&"hardwareConcurrency"in navigator&&navigator.hardwareConcurrency>0)return G.cores=navigator.hardwareConcurrency,M(null,G.cores);if(typeof Worker==="undefined")return G.cores=1,M(null,G.cores);if(typeof Blob==="undefined")return G.cores=2,M(null,G.cores);var I=URL.createObjectURL(new Blob(["(",function(){self.addEventListener("message",function(R){var T=Date.now(),S=T+4;while(Date.now()n.st&&h.sth.st&&n.st0))return!0;for(var $=0;$0))return!0;for(var $=0;$0)return!1;var W=K.length(),$=K.at(W-1);if($>this.blockSize<<2)return!1;return K.truncate($),!0},J.cbc=function(K){K=K||{},this.name="CBC",this.cipher=K.cipher,this.blockSize=K.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints)},J.cbc.prototype.start=function(K){if(K.iv===null){if(!this._prev)throw new Error("Invalid IV parameter.");this._iv=this._prev.slice(0)}else if(!("iv"in K))throw new Error("Invalid IV parameter.");else this._iv=G(K.iv,this.blockSize),this._prev=this._iv.slice(0)},J.cbc.prototype.encrypt=function(K,z,W){if(K.length()0))return!0;for(var $=0;$0))return!0;for(var $=0;$0)return!1;var W=K.length(),$=K.at(W-1);if($>this.blockSize<<2)return!1;return K.truncate($),!0},J.cfb=function(K){K=K||{},this.name="CFB",this.cipher=K.cipher,this.blockSize=K.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialBlock=new Array(this._ints),this._partialOutput=Z.util.createBuffer(),this._partialBytes=0},J.cfb.prototype.start=function(K){if(!("iv"in K))throw new Error("Invalid IV parameter.");this._iv=G(K.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0},J.cfb.prototype.encrypt=function(K,z,W){var $=K.length();if($===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&$>=this.blockSize){for(var q=0;q0)B=this.blockSize-B;this._partialOutput.clear();for(var q=0;q0)K.read-=this.blockSize;else for(var q=0;q0)this._partialOutput.getBytes(this._partialBytes);if(B>0&&!W)return z.putBytes(this._partialOutput.getBytes(B-this._partialBytes)),this._partialBytes=B,!0;z.putBytes(this._partialOutput.getBytes($-this._partialBytes)),this._partialBytes=0},J.cfb.prototype.decrypt=function(K,z,W){var $=K.length();if($===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&$>=this.blockSize){for(var q=0;q0)B=this.blockSize-B;this._partialOutput.clear();for(var q=0;q0)K.read-=this.blockSize;else for(var q=0;q0)this._partialOutput.getBytes(this._partialBytes);if(B>0&&!W)return z.putBytes(this._partialOutput.getBytes(B-this._partialBytes)),this._partialBytes=B,!0;z.putBytes(this._partialOutput.getBytes($-this._partialBytes)),this._partialBytes=0},J.ofb=function(K){K=K||{},this.name="OFB",this.cipher=K.cipher,this.blockSize=K.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Z.util.createBuffer(),this._partialBytes=0},J.ofb.prototype.start=function(K){if(!("iv"in K))throw new Error("Invalid IV parameter.");this._iv=G(K.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0},J.ofb.prototype.encrypt=function(K,z,W){var $=K.length();if(K.length()===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&$>=this.blockSize){for(var q=0;q0)B=this.blockSize-B;this._partialOutput.clear();for(var q=0;q0)K.read-=this.blockSize;else for(var q=0;q0)this._partialOutput.getBytes(this._partialBytes);if(B>0&&!W)return z.putBytes(this._partialOutput.getBytes(B-this._partialBytes)),this._partialBytes=B,!0;z.putBytes(this._partialOutput.getBytes($-this._partialBytes)),this._partialBytes=0},J.ofb.prototype.decrypt=J.ofb.prototype.encrypt,J.ctr=function(K){K=K||{},this.name="CTR",this.cipher=K.cipher,this.blockSize=K.blockSize||16,this._ints=this.blockSize/4,this._inBlock=null,this._outBlock=new Array(this._ints),this._partialOutput=Z.util.createBuffer(),this._partialBytes=0},J.ctr.prototype.start=function(K){if(!("iv"in K))throw new Error("Invalid IV parameter.");this._iv=G(K.iv,this.blockSize),this._inBlock=this._iv.slice(0),this._partialBytes=0},J.ctr.prototype.encrypt=function(K,z,W){var $=K.length();if($===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&$>=this.blockSize)for(var q=0;q0)B=this.blockSize-B;this._partialOutput.clear();for(var q=0;q0)K.read-=this.blockSize;if(this._partialBytes>0)this._partialOutput.getBytes(this._partialBytes);if(B>0&&!W)return z.putBytes(this._partialOutput.getBytes(B-this._partialBytes)),this._partialBytes=B,!0;z.putBytes(this._partialOutput.getBytes($-this._partialBytes)),this._partialBytes=0}Y(this._inBlock)},J.ctr.prototype.decrypt=J.ctr.prototype.encrypt,J.gcm=function(K){K=K||{},this.name="GCM",this.cipher=K.cipher,this.blockSize=K.blockSize||16,this._ints=this.blockSize/4,this._inBlock=new Array(this._ints),this._outBlock=new Array(this._ints),this._partialOutput=Z.util.createBuffer(),this._partialBytes=0,this._R=3774873600},J.gcm.prototype.start=function(K){if(!("iv"in K))throw new Error("Invalid IV parameter.");var z=Z.util.createBuffer(K.iv);this._cipherLength=0;var W;if("additionalData"in K)W=Z.util.createBuffer(K.additionalData);else W=Z.util.createBuffer();if("tagLength"in K)this._tagLength=K.tagLength;else this._tagLength=128;if(this._tag=null,K.decrypt){if(this._tag=Z.util.createBuffer(K.tag).getBytes(),this._tag.length!==this._tagLength/8)throw new Error("Authentication tag does not match tag length.")}this._hashBlock=new Array(this._ints),this.tag=null,this._hashSubkey=new Array(this._ints),this.cipher.encrypt([0,0,0,0],this._hashSubkey),this.componentBits=4,this._m=this.generateHashTable(this._hashSubkey,this.componentBits);var $=z.length();if($===12)this._j0=[z.getInt32(),z.getInt32(),z.getInt32(),1];else{this._j0=[0,0,0,0];while(z.length()>0)this._j0=this.ghash(this._hashSubkey,this._j0,[z.getInt32(),z.getInt32(),z.getInt32(),z.getInt32()]);this._j0=this.ghash(this._hashSubkey,this._j0,[0,0].concat(H($*8)))}this._inBlock=this._j0.slice(0),Y(this._inBlock),this._partialBytes=0,W=Z.util.createBuffer(W),this._aDataLength=H(W.length()*8);var q=W.length()%this.blockSize;if(q)W.fillWithByte(0,this.blockSize-q);this._s=[0,0,0,0];while(W.length()>0)this._s=this.ghash(this._hashSubkey,this._s,[W.getInt32(),W.getInt32(),W.getInt32(),W.getInt32()])},J.gcm.prototype.encrypt=function(K,z,W){var $=K.length();if($===0)return!0;if(this.cipher.encrypt(this._inBlock,this._outBlock),this._partialBytes===0&&$>=this.blockSize){for(var q=0;q0)B=this.blockSize-B;this._partialOutput.clear();for(var q=0;q0)this._partialOutput.getBytes(this._partialBytes);if(B>0&&!W)return K.read-=this.blockSize,z.putBytes(this._partialOutput.getBytes(B-this._partialBytes)),this._partialBytes=B,!0;z.putBytes(this._partialOutput.getBytes($-this._partialBytes)),this._partialBytes=0}this._s=this.ghash(this._hashSubkey,this._s,this._outBlock),Y(this._inBlock)},J.gcm.prototype.decrypt=function(K,z,W){var $=K.length();if($0))return!0;this.cipher.encrypt(this._inBlock,this._outBlock),Y(this._inBlock),this._hashBlock[0]=K.getInt32(),this._hashBlock[1]=K.getInt32(),this._hashBlock[2]=K.getInt32(),this._hashBlock[3]=K.getInt32(),this._s=this.ghash(this._hashSubkey,this._s,this._hashBlock);for(var q=0;q0;--$)z[$]=K[$]>>>1|(K[$-1]&1)<<31;if(z[0]=K[0]>>>1,W)z[0]^=this._R},J.gcm.prototype.tableMultiply=function(K){var z=[0,0,0,0];for(var W=0;W<32;++W){var $=W/8|0,q=K[$]>>>(7-W%8)*4&15,B=this._m[W][q];z[0]^=B[0],z[1]^=B[1],z[2]^=B[2],z[3]^=B[3]}return z},J.gcm.prototype.ghash=function(K,z,W){return z[0]^=W[0],z[1]^=W[1],z[2]^=W[2],z[3]^=W[3],this.tableMultiply(z)},J.gcm.prototype.generateHashTable=function(K,z){var W=8/z,$=4*W,q=16*W,B=new Array(q);for(var D=0;D>>1,q=new Array(W);q[$]=K.slice(0);var B=$>>>1;while(B>0)this.pow(q[2*B],q[B]=[]),B>>=1;B=2;while(B<$){for(var D=1;D4){var W=K;K=Z.util.createBuffer();for(var $=0;$>>2;for(var L=0;L>8^E&255^99,H[C]=E,K[E]=C,w=P[E],V=P[C],M=P[V],I=P[M],A=w<<24^E<<16^E<<8^(E^w),R=(V^M^I)<<24^(C^I)<<16^(C^M^I)<<8^(C^V^I);for(var T=0;T<4;++T)W[T][C]=A,$[T][E]=R,A=A<<24|A>>>8,R=R<<24|R>>>8;if(C===0)C=L=1;else C=V^P[P[P[V^I]]],L^=P[P[L]]}}function B(P,N){var C=P.slice(0),L,V=1,M=C.length,I=M+6+1,E=Y*I;for(var w=M;w>>16&255]<<24^H[L>>>8&255]<<16^H[L&255]<<8^H[L>>>24]^z[V]<<24,V++;else if(M>6&&w%M===4)L=H[L>>>24]<<24^H[L>>>16&255]<<16^H[L>>>8&255]<<8^H[L&255];C[w]=C[w-M]^L}if(N){var A,R=$[0],T=$[1],S=$[2],v=$[3],h=C.slice(0);E=C.length;for(var w=0,x=E-Y;w>>24]]^T[H[A>>>16&255]]^S[H[A>>>8&255]]^v[H[A&255]];C=h}return C}function D(P,N,C,L){var V=P.length/4-1,M,I,E,w,A;if(L)M=$[0],I=$[1],E=$[2],w=$[3],A=K;else M=W[0],I=W[1],E=W[2],w=W[3],A=H;var R,T,S,v,h,x,p;R=N[0]^P[0],T=N[L?3:1]^P[1],S=N[2]^P[2],v=N[L?1:3]^P[3];var n=3;for(var t=1;t>>24]^I[T>>>16&255]^E[S>>>8&255]^w[v&255]^P[++n],x=M[T>>>24]^I[S>>>16&255]^E[v>>>8&255]^w[R&255]^P[++n],p=M[S>>>24]^I[v>>>16&255]^E[R>>>8&255]^w[T&255]^P[++n],v=M[v>>>24]^I[R>>>16&255]^E[T>>>8&255]^w[S&255]^P[++n],R=h,T=x,S=p;C[0]=A[R>>>24]<<24^A[T>>>16&255]<<16^A[S>>>8&255]<<8^A[v&255]^P[++n],C[L?3:1]=A[T>>>24]<<24^A[S>>>16&255]<<16^A[v>>>8&255]<<8^A[R&255]^P[++n],C[2]=A[S>>>24]<<24^A[v>>>16&255]<<16^A[R>>>8&255]<<8^A[T&255]^P[++n],C[L?1:3]=A[v>>>24]<<24^A[R>>>16&255]<<16^A[T>>>8&255]<<8^A[S&255]^P[++n]}function F(P){P=P||{};var N=(P.mode||"CBC").toUpperCase(),C="AES-"+N,L;if(P.decrypt)L=Z.cipher.createDecipher(C,P.key);else L=Z.cipher.createCipher(C,P.key);var V=L.start;return L.start=function(M,I){var E=null;if(I instanceof Z.util.ByteBuffer)E=I,I={};I=I||{},I.output=E,I.iv=M,V.call(L,I)},L}}}),TZ=W1({"node_modules/node-forge/lib/oids.js"(Q,X){var Z=y0();Z.pki=Z.pki||{};var J=X.exports=Z.pki.oids=Z.oids=Z.oids||{};function G(H,K){J[H]=K,J[K]=H}function Y(H,K){J[H]=K}G("1.2.840.113549.1.1.1","rsaEncryption"),G("1.2.840.113549.1.1.4","md5WithRSAEncryption"),G("1.2.840.113549.1.1.5","sha1WithRSAEncryption"),G("1.2.840.113549.1.1.7","RSAES-OAEP"),G("1.2.840.113549.1.1.8","mgf1"),G("1.2.840.113549.1.1.9","pSpecified"),G("1.2.840.113549.1.1.10","RSASSA-PSS"),G("1.2.840.113549.1.1.11","sha256WithRSAEncryption"),G("1.2.840.113549.1.1.12","sha384WithRSAEncryption"),G("1.2.840.113549.1.1.13","sha512WithRSAEncryption"),G("1.3.101.112","EdDSA25519"),G("1.2.840.10040.4.3","dsa-with-sha1"),G("1.3.14.3.2.7","desCBC"),G("1.3.14.3.2.26","sha1"),G("1.3.14.3.2.29","sha1WithRSASignature"),G("2.16.840.1.101.3.4.2.1","sha256"),G("2.16.840.1.101.3.4.2.2","sha384"),G("2.16.840.1.101.3.4.2.3","sha512"),G("2.16.840.1.101.3.4.2.4","sha224"),G("2.16.840.1.101.3.4.2.5","sha512-224"),G("2.16.840.1.101.3.4.2.6","sha512-256"),G("1.2.840.113549.2.2","md2"),G("1.2.840.113549.2.5","md5"),G("1.2.840.113549.1.7.1","data"),G("1.2.840.113549.1.7.2","signedData"),G("1.2.840.113549.1.7.3","envelopedData"),G("1.2.840.113549.1.7.4","signedAndEnvelopedData"),G("1.2.840.113549.1.7.5","digestedData"),G("1.2.840.113549.1.7.6","encryptedData"),G("1.2.840.113549.1.9.1","emailAddress"),G("1.2.840.113549.1.9.2","unstructuredName"),G("1.2.840.113549.1.9.3","contentType"),G("1.2.840.113549.1.9.4","messageDigest"),G("1.2.840.113549.1.9.5","signingTime"),G("1.2.840.113549.1.9.6","counterSignature"),G("1.2.840.113549.1.9.7","challengePassword"),G("1.2.840.113549.1.9.8","unstructuredAddress"),G("1.2.840.113549.1.9.14","extensionRequest"),G("1.2.840.113549.1.9.20","friendlyName"),G("1.2.840.113549.1.9.21","localKeyId"),G("1.2.840.113549.1.9.22.1","x509Certificate"),G("1.2.840.113549.1.12.10.1.1","keyBag"),G("1.2.840.113549.1.12.10.1.2","pkcs8ShroudedKeyBag"),G("1.2.840.113549.1.12.10.1.3","certBag"),G("1.2.840.113549.1.12.10.1.4","crlBag"),G("1.2.840.113549.1.12.10.1.5","secretBag"),G("1.2.840.113549.1.12.10.1.6","safeContentsBag"),G("1.2.840.113549.1.5.13","pkcs5PBES2"),G("1.2.840.113549.1.5.12","pkcs5PBKDF2"),G("1.2.840.113549.1.12.1.1","pbeWithSHAAnd128BitRC4"),G("1.2.840.113549.1.12.1.2","pbeWithSHAAnd40BitRC4"),G("1.2.840.113549.1.12.1.3","pbeWithSHAAnd3-KeyTripleDES-CBC"),G("1.2.840.113549.1.12.1.4","pbeWithSHAAnd2-KeyTripleDES-CBC"),G("1.2.840.113549.1.12.1.5","pbeWithSHAAnd128BitRC2-CBC"),G("1.2.840.113549.1.12.1.6","pbewithSHAAnd40BitRC2-CBC"),G("1.2.840.113549.2.7","hmacWithSHA1"),G("1.2.840.113549.2.8","hmacWithSHA224"),G("1.2.840.113549.2.9","hmacWithSHA256"),G("1.2.840.113549.2.10","hmacWithSHA384"),G("1.2.840.113549.2.11","hmacWithSHA512"),G("1.2.840.113549.3.7","des-EDE3-CBC"),G("2.16.840.1.101.3.4.1.2","aes128-CBC"),G("2.16.840.1.101.3.4.1.22","aes192-CBC"),G("2.16.840.1.101.3.4.1.42","aes256-CBC"),G("2.5.4.3","commonName"),G("2.5.4.4","surname"),G("2.5.4.5","serialNumber"),G("2.5.4.6","countryName"),G("2.5.4.7","localityName"),G("2.5.4.8","stateOrProvinceName"),G("2.5.4.9","streetAddress"),G("2.5.4.10","organizationName"),G("2.5.4.11","organizationalUnitName"),G("2.5.4.12","title"),G("2.5.4.13","description"),G("2.5.4.15","businessCategory"),G("2.5.4.17","postalCode"),G("2.5.4.42","givenName"),G("1.3.6.1.4.1.311.60.2.1.2","jurisdictionOfIncorporationStateOrProvinceName"),G("1.3.6.1.4.1.311.60.2.1.3","jurisdictionOfIncorporationCountryName"),G("2.16.840.1.113730.1.1","nsCertType"),G("2.16.840.1.113730.1.13","nsComment"),Y("2.5.29.1","authorityKeyIdentifier"),Y("2.5.29.2","keyAttributes"),Y("2.5.29.3","certificatePolicies"),Y("2.5.29.4","keyUsageRestriction"),Y("2.5.29.5","policyMapping"),Y("2.5.29.6","subtreesConstraint"),Y("2.5.29.7","subjectAltName"),Y("2.5.29.8","issuerAltName"),Y("2.5.29.9","subjectDirectoryAttributes"),Y("2.5.29.10","basicConstraints"),Y("2.5.29.11","nameConstraints"),Y("2.5.29.12","policyConstraints"),Y("2.5.29.13","basicConstraints"),G("2.5.29.14","subjectKeyIdentifier"),G("2.5.29.15","keyUsage"),Y("2.5.29.16","privateKeyUsagePeriod"),G("2.5.29.17","subjectAltName"),G("2.5.29.18","issuerAltName"),G("2.5.29.19","basicConstraints"),Y("2.5.29.20","cRLNumber"),Y("2.5.29.21","cRLReason"),Y("2.5.29.22","expirationDate"),Y("2.5.29.23","instructionCode"),Y("2.5.29.24","invalidityDate"),Y("2.5.29.25","cRLDistributionPoints"),Y("2.5.29.26","issuingDistributionPoint"),Y("2.5.29.27","deltaCRLIndicator"),Y("2.5.29.28","issuingDistributionPoint"),Y("2.5.29.29","certificateIssuer"),Y("2.5.29.30","nameConstraints"),G("2.5.29.31","cRLDistributionPoints"),G("2.5.29.32","certificatePolicies"),Y("2.5.29.33","policyMappings"),Y("2.5.29.34","policyConstraints"),G("2.5.29.35","authorityKeyIdentifier"),Y("2.5.29.36","policyConstraints"),G("2.5.29.37","extKeyUsage"),Y("2.5.29.46","freshestCRL"),Y("2.5.29.54","inhibitAnyPolicy"),G("1.3.6.1.4.1.11129.2.4.2","timestampList"),G("1.3.6.1.5.5.7.1.1","authorityInfoAccess"),G("1.3.6.1.5.5.7.3.1","serverAuth"),G("1.3.6.1.5.5.7.3.2","clientAuth"),G("1.3.6.1.5.5.7.3.3","codeSigning"),G("1.3.6.1.5.5.7.3.4","emailProtection"),G("1.3.6.1.5.5.7.3.8","timeStamping")}}),WQ=W1({"node_modules/node-forge/lib/asn1.js"(Q,X){var Z=y0();d0(),TZ();var J=X.exports=Z.asn1=Z.asn1||{};J.Class={UNIVERSAL:0,APPLICATION:64,CONTEXT_SPECIFIC:128,PRIVATE:192},J.Type={NONE:0,BOOLEAN:1,INTEGER:2,BITSTRING:3,OCTETSTRING:4,NULL:5,OID:6,ODESC:7,EXTERNAL:8,REAL:9,ENUMERATED:10,EMBEDDED:11,UTF8:12,ROID:13,SEQUENCE:16,SET:17,PRINTABLESTRING:19,IA5STRING:22,UTCTIME:23,GENERALIZEDTIME:24,BMPSTRING:30},J.create=function(z,W,$,q,B){if(Z.util.isArray(q)){var D=[];for(var F=0;FW){var q=new Error("Too few bytes to parse DER.");throw q.available=z.length(),q.remaining=W,q.requested=$,q}}var Y=function(z,W){var $=z.getByte();if(W--,$===128)return;var q,B=$&128;if(!B)q=$;else{var D=$&127;G(z,W,D),q=z.getInt(D<<3)}if(q<0)throw new Error("Negative length: "+q);return q};J.fromDer=function(z,W){if(W===void 0)W={strict:!0,parseAllBytes:!0,decodeBitStrings:!0};if(typeof W==="boolean")W={strict:W,parseAllBytes:!0,decodeBitStrings:!0};if(!("strict"in W))W.strict=!0;if(!("parseAllBytes"in W))W.parseAllBytes=!0;if(!("decodeBitStrings"in W))W.decodeBitStrings=!0;if(typeof z==="string")z=Z.util.createBuffer(z);var $=z.length(),q=H(z,z.length(),0,W);if(W.parseAllBytes&&z.length()!==0){var B=new Error("Unparsed DER bytes remain after ASN.1 parsing.");throw B.byteCount=$,B.remaining=z.length(),B}return q};function H(z,W,$,q){var B;G(z,W,2);var D=z.getByte();W--;var F=D&192,P=D&31;B=z.length();var N=Y(z,W);if(W-=B-z.length(),N!==void 0&&N>W){if(q.strict){var C=new Error("Too few bytes to read ASN.1 value.");throw C.available=z.length(),C.remaining=W,C.requested=N,C}N=W}var L,V,M=(D&32)===32;if(M)if(L=[],N===void 0)for(;;){if(G(z,W,2),z.bytes(2)===String.fromCharCode(0,0)){z.getBytes(2),W-=2;break}B=z.length(),L.push(H(z,W,$+1,q)),W-=B-z.length()}else while(N>0)B=z.length(),L.push(H(z,N,$+1,q)),W-=B-z.length(),N-=B-z.length();if(L===void 0&&F===J.Class.UNIVERSAL&&P===J.Type.BITSTRING)V=z.bytes(N);if(L===void 0&&q.decodeBitStrings&&F===J.Class.UNIVERSAL&&P===J.Type.BITSTRING&&N>1){var I=z.read,E=W,w=0;if(P===J.Type.BITSTRING)G(z,W,1),w=z.getByte(),W--;if(w===0)try{B=z.length();var A={strict:!0,decodeBitStrings:!0},R=H(z,W,$+1,A),T=B-z.length();if(W-=T,P==J.Type.BITSTRING)T++;var S=R.tagClass;if(T===N&&(S===J.Class.UNIVERSAL||S===J.Class.CONTEXT_SPECIFIC))L=[R]}catch(h){}if(L===void 0)z.read=I,W=E}if(L===void 0){if(N===void 0){if(q.strict)throw new Error("Non-constructed ASN.1 object of indefinite length.");N=W}if(P===J.Type.BMPSTRING){L="";for(;N>0;N-=2)G(z,W,2),L+=String.fromCharCode(z.getInt16()),W-=2}else L=z.getBytes(N),W-=N}var v=V===void 0?null:{bitStringContents:V};return J.create(F,P,M,L,v)}J.toDer=function(z){var W=Z.util.createBuffer(),$=z.tagClass|z.type,q=Z.util.createBuffer(),B=!1;if("bitStringContents"in z){if(B=!0,z.original)B=J.equals(z,z.original)}if(B)q.putBytes(z.bitStringContents);else if(z.composed){if(z.constructed)$|=32;else q.putByte(0);for(var D=0;D1&&(z.value.charCodeAt(0)===0&&(z.value.charCodeAt(1)&128)===0||z.value.charCodeAt(0)===255&&(z.value.charCodeAt(1)&128)===128))q.putBytes(z.value.substr(1));else q.putBytes(z.value);if(W.putByte($),q.length()<=127)W.putByte(q.length()&127);else{var F=q.length(),P="";do P+=String.fromCharCode(F&255),F=F>>>8;while(F>0);W.putByte(P.length|128);for(var D=P.length-1;D>=0;--D)W.putByte(P.charCodeAt(D))}return W.putBuffer(q),W},J.oidToDer=function(z){var W=z.split("."),$=Z.util.createBuffer();$.putByte(40*parseInt(W[0],10)+parseInt(W[1],10));var q,B,D,F;for(var P=2;P>>7,!q)F|=128;B.push(F),q=!1}while(D>0);for(var N=B.length-1;N>=0;--N)$.putByte(B[N])}return $},J.derToOid=function(z){var W;if(typeof z==="string")z=Z.util.createBuffer(z);var $=z.getByte();W=Math.floor($/40)+"."+$%40;var q=0;while(z.length()>0)if($=z.getByte(),q=q<<7,$&128)q+=$&127;else W+="."+(q+$),q=0;return W},J.utcTimeToDate=function(z){var W=new Date,$=parseInt(z.substr(0,2),10);$=$>=50?1900+$:2000+$;var q=parseInt(z.substr(2,2),10)-1,B=parseInt(z.substr(4,2),10),D=parseInt(z.substr(6,2),10),F=parseInt(z.substr(8,2),10),P=0;if(z.length>11){var N=z.charAt(10),C=10;if(N!=="+"&&N!=="-")P=parseInt(z.substr(10,2),10),C+=2}if(W.setUTCFullYear($,q,B),W.setUTCHours(D,F,P,0),C){if(N=z.charAt(C),N==="+"||N==="-"){var L=parseInt(z.substr(C+1,2),10),V=parseInt(z.substr(C+4,2),10),M=L*60+V;if(M*=60000,N==="+")W.setTime(+W-M);else W.setTime(+W+M)}}return W},J.generalizedTimeToDate=function(z){var W=new Date,$=parseInt(z.substr(0,4),10),q=parseInt(z.substr(4,2),10)-1,B=parseInt(z.substr(6,2),10),D=parseInt(z.substr(8,2),10),F=parseInt(z.substr(10,2),10),P=parseInt(z.substr(12,2),10),N=0,C=0,L=!1;if(z.charAt(z.length-1)==="Z")L=!0;var V=z.length-5,M=z.charAt(V);if(M==="+"||M==="-"){var I=parseInt(z.substr(V+1,2),10),E=parseInt(z.substr(V+4,2),10);if(C=I*60+E,C*=60000,M==="+")C*=-1;L=!0}if(z.charAt(14)===".")N=parseFloat(z.substr(14),10)*1000;if(L)W.setUTCFullYear($,q,B),W.setUTCHours(D,F,P,N),W.setTime(+W+C);else W.setFullYear($,q,B),W.setHours(D,F,P,N);return W},J.dateToUtcTime=function(z){if(typeof z==="string")return z;var W="",$=[];$.push((""+z.getUTCFullYear()).substr(2)),$.push(""+(z.getUTCMonth()+1)),$.push(""+z.getUTCDate()),$.push(""+z.getUTCHours()),$.push(""+z.getUTCMinutes()),$.push(""+z.getUTCSeconds());for(var q=0;q<$.length;++q){if($[q].length<2)W+="0";W+=$[q]}return W+="Z",W},J.dateToGeneralizedTime=function(z){if(typeof z==="string")return z;var W="",$=[];$.push(""+z.getUTCFullYear()),$.push(""+(z.getUTCMonth()+1)),$.push(""+z.getUTCDate()),$.push(""+z.getUTCHours()),$.push(""+z.getUTCMinutes()),$.push(""+z.getUTCSeconds());for(var q=0;q<$.length;++q){if($[q].length<2)W+="0";W+=$[q]}return W+="Z",W},J.integerToDer=function(z){var W=Z.util.createBuffer();if(z>=-128&&z<128)return W.putSignedInt(z,8);if(z>=-32768&&z<32768)return W.putSignedInt(z,16);if(z>=-8388608&&z<8388608)return W.putSignedInt(z,24);if(z>=-2147483648&&z<2147483648)return W.putSignedInt(z,32);var $=new Error("Integer too large; max is 32-bits.");throw $.integer=z,$},J.derToInteger=function(z){if(typeof z==="string")z=Z.util.createBuffer(z);var W=z.length()*8;if(W>32)throw new Error("Integer too large; max is 32-bits.");return z.getSignedInt(W)},J.validate=function(z,W,$,q){var B=!1;if((z.tagClass===W.tagClass||typeof W.tagClass==="undefined")&&(z.type===W.type||typeof W.type==="undefined")){if(z.constructed===W.constructed||typeof W.constructed==="undefined"){if(B=!0,W.value&&Z.util.isArray(W.value)){var D=0;for(var F=0;B&&F0)q+=` -`;var B="";for(var D=0;D1)q+="0x"+Z.util.bytesToHex(z.value.slice(1));else q+="(none)";if(z.value.length>0){var C=z.value.charCodeAt(0);if(C==1)q+=" (1 unused bit shown)";else if(C>1)q+=" ("+C+" unused bits shown)"}}else if(z.type===J.Type.OCTETSTRING){if(!K.test(z.value))q+="("+z.value+") ";q+="0x"+Z.util.bytesToHex(z.value)}else if(z.type===J.Type.UTF8)try{q+=Z.util.decodeUtf8(z.value)}catch(L){if(L.message==="URI malformed")q+="0x"+Z.util.bytesToHex(z.value)+" (malformed UTF8)";else throw L}else if(z.type===J.Type.PRINTABLESTRING||z.type===J.Type.IA5String)q+=z.value;else if(K.test(z.value))q+="0x"+Z.util.bytesToHex(z.value);else if(z.value.length===0)q+="[null]";else q+=z.value}return q}}}),xQ=W1({"node_modules/node-forge/lib/md.js"(Q,X){var Z=y0();X.exports=Z.md=Z.md||{},Z.md.algorithms=Z.md.algorithms||{}}}),kX=W1({"node_modules/node-forge/lib/hmac.js"(Q,X){var Z=y0();xQ(),d0();var J=X.exports=Z.hmac=Z.hmac||{};J.create=function(){var G=null,Y=null,H=null,K=null,z={};return z.start=function(W,$){if(W!==null)if(typeof W==="string")if(W=W.toLowerCase(),W in Z.md.algorithms)Y=Z.md.algorithms[W].create();else throw new Error('Unknown hash algorithm "'+W+'"');else Y=W;if($===null)$=G;else{if(typeof $==="string")$=Z.util.createBuffer($);else if(Z.util.isArray($)){var q=$;$=Z.util.createBuffer();for(var B=0;BY.blockLength)Y.start(),Y.update($.bytes()),$=Y.digest();H=Z.util.createBuffer(),K=Z.util.createBuffer(),D=$.length();for(var B=0;B>>0,C>>>0];for(var L=F.fullMessageLength.length-1;L>=0;--L)F.fullMessageLength[L]+=C[1],C[1]=C[0]+(F.fullMessageLength[L]/4294967296>>>0),F.fullMessageLength[L]=F.fullMessageLength[L]>>>0,C[0]=C[1]/4294967296>>>0;if(B.putBytes(P),$(q,D,B),B.read>2048||B.length()===0)B.compact();return F},F.digest=function(){var P=Z.util.createBuffer();P.putBytes(B.bytes());var N=F.fullMessageLength[F.fullMessageLength.length-1]+F.messageLengthSize,C=N&F.blockLength-1;P.putBytes(G.substr(0,F.blockLength-C));var L,V=0;for(var M=F.fullMessageLength.length-1;M>=0;--M)L=F.fullMessageLength[M]*8+V,V=L/4294967296>>>0,P.putInt32Le(L>>>0);var I={h0:q.h0,h1:q.h1,h2:q.h2,h3:q.h3};$(I,D,P);var E=Z.util.createBuffer();return E.putInt32Le(I.h0),E.putInt32Le(I.h1),E.putInt32Le(I.h2),E.putInt32Le(I.h3),E},F};var G=null,Y=null,H=null,K=null,z=!1;function W(){G=String.fromCharCode(128),G+=Z.util.fillString(String.fromCharCode(0),64),Y=[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,1,6,11,0,5,10,15,4,9,14,3,8,13,2,7,12,5,8,11,14,1,4,7,10,13,0,3,6,9,12,15,2,0,7,14,5,12,3,10,1,8,15,6,13,4,11,2,9],H=[7,12,17,22,7,12,17,22,7,12,17,22,7,12,17,22,5,9,14,20,5,9,14,20,5,9,14,20,5,9,14,20,4,11,16,23,4,11,16,23,4,11,16,23,4,11,16,23,6,10,15,21,6,10,15,21,6,10,15,21,6,10,15,21],K=new Array(64);for(var q=0;q<64;++q)K[q]=Math.floor(Math.abs(Math.sin(q+1))*4294967296);z=!0}function $(q,B,D){var F,P,N,C,L,V,M,I,E=D.length();while(E>=64){P=q.h0,N=q.h1,C=q.h2,L=q.h3;for(I=0;I<16;++I)B[I]=D.getInt32Le(),V=L^N&(C^L),F=P+V+K[I]+B[I],M=H[I],P=L,L=C,C=N,N+=F<>>32-M;for(;I<32;++I)V=C^L&(N^C),F=P+V+K[I]+B[Y[I]],M=H[I],P=L,L=C,C=N,N+=F<>>32-M;for(;I<48;++I)V=N^C^L,F=P+V+K[I]+B[Y[I]],M=H[I],P=L,L=C,C=N,N+=F<>>32-M;for(;I<64;++I)V=C^(N|~L),F=P+V+K[I]+B[Y[I]],M=H[I],P=L,L=C,C=N,N+=F<>>32-M;q.h0=q.h0+P|0,q.h1=q.h1+N|0,q.h2=q.h2+C|0,q.h3=q.h3+L|0,E-=64}}}}),Y7=W1({"node_modules/node-forge/lib/pem.js"(Q,X){var Z=y0();d0();var J=X.exports=Z.pem=Z.pem||{};J.encode=function(H,K){K=K||{};var z="-----BEGIN "+H.type+`-----\r -`,W;if(H.procType)W={name:"Proc-Type",values:[String(H.procType.version),H.procType.type]},z+=G(W);if(H.contentDomain)W={name:"Content-Domain",values:[H.contentDomain]},z+=G(W);if(H.dekInfo){if(W={name:"DEK-Info",values:[H.dekInfo.algorithm]},H.dekInfo.parameters)W.values.push(H.dekInfo.parameters);z+=G(W)}if(H.headers)for(var $=0;$65&&B!==-1){var D=K[B];if(D===",")++B,K=K.substr(0,B)+`\r - `+K.substr(B);else K=K.substr(0,B)+`\r -`+D+K.substr(B+1);q=$-B-1,B=-1,++$}else if(K[$]===" "||K[$]==="\t"||K[$]===",")B=$;return K}function Y(H){return H.replace(/^\s+/,"")}}}),pq=W1({"node_modules/node-forge/lib/des.js"(Q,X){var Z=y0();D$(),AM(),d0(),X.exports=Z.des=Z.des||{},Z.des.startEncrypting=function(P,N,C,L){var V=F({key:P,output:C,decrypt:!1,mode:L||(N===null?"ECB":"CBC")});return V.start(N),V},Z.des.createEncryptionCipher=function(P,N){return F({key:P,output:null,decrypt:!1,mode:N})},Z.des.startDecrypting=function(P,N,C,L){var V=F({key:P,output:C,decrypt:!0,mode:L||(N===null?"ECB":"CBC")});return V.start(N),V},Z.des.createDecryptionCipher=function(P,N){return F({key:P,output:null,decrypt:!0,mode:N})},Z.des.Algorithm=function(P,N){var C=this;C.name=P,C.mode=new N({blockSize:8,cipher:{encrypt:function(L,V){return D(C._keys,L,V,!1)},decrypt:function(L,V){return D(C._keys,L,V,!0)}}}),C._init=!1},Z.des.Algorithm.prototype.initialize=function(P){if(this._init)return;var N=Z.util.createBuffer(P.key);if(this.name.indexOf("3DES")===0){if(N.length()!==24)throw new Error("Invalid Triple-DES key size: "+N.length()*8)}this._keys=B(N),this._init=!0},J("DES-ECB",Z.cipher.modes.ecb),J("DES-CBC",Z.cipher.modes.cbc),J("DES-CFB",Z.cipher.modes.cfb),J("DES-OFB",Z.cipher.modes.ofb),J("DES-CTR",Z.cipher.modes.ctr),J("3DES-ECB",Z.cipher.modes.ecb),J("3DES-CBC",Z.cipher.modes.cbc),J("3DES-CFB",Z.cipher.modes.cfb),J("3DES-OFB",Z.cipher.modes.ofb),J("3DES-CTR",Z.cipher.modes.ctr);function J(P,N){var C=function(){return new Z.des.Algorithm(P,N)};Z.cipher.registerAlgorithm(P,C)}var G=[16843776,0,65536,16843780,16842756,66564,4,65536,1024,16843776,16843780,1024,16778244,16842756,16777216,4,1028,16778240,16778240,66560,66560,16842752,16842752,16778244,65540,16777220,16777220,65540,0,1028,66564,16777216,65536,16843780,4,16842752,16843776,16777216,16777216,1024,16842756,65536,66560,16777220,1024,4,16778244,66564,16843780,65540,16842752,16778244,16777220,1028,66564,16843776,1028,16778240,16778240,0,65540,66560,0,16842756],Y=[-2146402272,-2147450880,32768,1081376,1048576,32,-2146435040,-2147450848,-2147483616,-2146402272,-2146402304,-2147483648,-2147450880,1048576,32,-2146435040,1081344,1048608,-2147450848,0,-2147483648,32768,1081376,-2146435072,1048608,-2147483616,0,1081344,32800,-2146402304,-2146435072,32800,0,1081376,-2146435040,1048576,-2147450848,-2146435072,-2146402304,32768,-2146435072,-2147450880,32,-2146402272,1081376,32,32768,-2147483648,32800,-2146402304,1048576,-2147483616,1048608,-2147450848,-2147483616,1048608,1081344,0,-2147450880,32800,-2147483648,-2146435040,-2146402272,1081344],H=[520,134349312,0,134348808,134218240,0,131592,134218240,131080,134217736,134217736,131072,134349320,131080,134348800,520,134217728,8,134349312,512,131584,134348800,134348808,131592,134218248,131584,131072,134218248,8,134349320,512,134217728,134349312,134217728,131080,520,131072,134349312,134218240,0,512,131080,134349320,134218240,134217736,512,0,134348808,134218248,131072,134217728,134349320,8,131592,131584,134217736,134348800,134218248,520,134348800,131592,8,134348808,131584],K=[8396801,8321,8321,128,8396928,8388737,8388609,8193,0,8396800,8396800,8396929,129,0,8388736,8388609,1,8192,8388608,8396801,128,8388608,8193,8320,8388737,1,8320,8388736,8192,8396928,8396929,129,8388736,8388609,8396800,8396929,129,0,0,8396800,8320,8388736,8388737,1,8396801,8321,8321,128,8396929,129,1,8192,8388609,8193,8396928,8388737,8193,8320,8388608,8396801,128,8388608,8192,8396928],z=[256,34078976,34078720,1107296512,524288,256,1073741824,34078720,1074266368,524288,33554688,1074266368,1107296512,1107820544,524544,1073741824,33554432,1074266112,1074266112,0,1073742080,1107820800,1107820800,33554688,1107820544,1073742080,0,1107296256,34078976,33554432,1107296256,524544,524288,1107296512,256,33554432,1073741824,34078720,1107296512,1074266368,33554688,1073741824,1107820544,34078976,1074266368,256,33554432,1107820544,1107820800,524544,1107296256,1107820800,34078720,0,1074266112,1107296256,524544,33554688,1073742080,524288,0,1074266112,34078976,1073742080],W=[536870928,541065216,16384,541081616,541065216,16,541081616,4194304,536887296,4210704,4194304,536870928,4194320,536887296,536870912,16400,0,4194320,536887312,16384,4210688,536887312,16,541065232,541065232,0,4210704,541081600,16400,4210688,541081600,536870912,536887296,16,541065232,4210688,541081616,4194304,16400,536870928,4194304,536887296,536870912,16400,536870928,541081616,4210688,541065216,4210704,541081600,0,541065232,16,16384,541065216,4210704,16384,4194320,536887312,0,541081600,536870912,4194320,536887312],$=[2097152,69206018,67110914,0,2048,67110914,2099202,69208064,69208066,2097152,0,67108866,2,67108864,69206018,2050,67110912,2099202,2097154,67110912,67108866,69206016,69208064,2097154,69206016,2048,2050,69208066,2099200,2,67108864,2099200,67108864,2099200,2097152,67110914,67110914,69206018,69206018,2,2097154,67108864,67110912,2097152,69208064,2050,2099202,69208064,2050,67108866,69208066,69206016,2099200,0,2,69208066,0,2099202,69206016,2048,67108866,67110912,2048,2097154],q=[268439616,4096,262144,268701760,268435456,268439616,64,268435456,262208,268697600,268701760,266240,268701696,266304,4096,64,268697600,268435520,268439552,4160,266240,262208,268697664,268701696,4160,0,0,268697664,268435520,268439552,266304,262144,266304,262144,268701696,4096,64,268697664,4096,266304,268439552,64,268435520,268697600,268697664,268435456,262144,268439616,0,268701760,262208,268435520,268697600,268439552,268439616,0,268701760,266240,266240,4160,4160,262208,268435456,268701696];function B(P){var N=[0,4,536870912,536870916,65536,65540,536936448,536936452,512,516,536871424,536871428,66048,66052,536936960,536936964],C=[0,1,1048576,1048577,67108864,67108865,68157440,68157441,256,257,1048832,1048833,67109120,67109121,68157696,68157697],L=[0,8,2048,2056,16777216,16777224,16779264,16779272,0,8,2048,2056,16777216,16777224,16779264,16779272],V=[0,2097152,134217728,136314880,8192,2105344,134225920,136323072,131072,2228224,134348800,136445952,139264,2236416,134356992,136454144],M=[0,262144,16,262160,0,262144,16,262160,4096,266240,4112,266256,4096,266240,4112,266256],I=[0,1024,32,1056,0,1024,32,1056,33554432,33555456,33554464,33555488,33554432,33555456,33554464,33555488],E=[0,268435456,524288,268959744,2,268435458,524290,268959746,0,268435456,524288,268959744,2,268435458,524290,268959746],w=[0,65536,2048,67584,536870912,536936448,536872960,536938496,131072,196608,133120,198656,537001984,537067520,537004032,537069568],A=[0,262144,0,262144,2,262146,2,262146,33554432,33816576,33554432,33816576,33554434,33816578,33554434,33816578],R=[0,268435456,8,268435464,0,268435456,8,268435464,1024,268436480,1032,268436488,1024,268436480,1032,268436488],T=[0,32,0,32,1048576,1048608,1048576,1048608,8192,8224,8192,8224,1056768,1056800,1056768,1056800],S=[0,16777216,512,16777728,2097152,18874368,2097664,18874880,67108864,83886080,67109376,83886592,69206016,85983232,69206528,85983744],v=[0,4096,134217728,134221824,524288,528384,134742016,134746112,16,4112,134217744,134221840,524304,528400,134742032,134746128],h=[0,4,256,260,0,4,256,260,1,5,257,261,1,5,257,261],x=P.length()>8?3:1,p=[],n=[0,0,1,1,1,1,1,1,0,1,1,1,1,1,1,0],t=0,Y1;for(var G1=0;G1>>4^C1)&252645135,C1^=Y1,V1^=Y1<<4,Y1=(C1>>>-16^V1)&65535,V1^=Y1,C1^=Y1<<-16,Y1=(V1>>>2^C1)&858993459,C1^=Y1,V1^=Y1<<2,Y1=(C1>>>-16^V1)&65535,V1^=Y1,C1^=Y1<<-16,Y1=(V1>>>1^C1)&1431655765,C1^=Y1,V1^=Y1<<1,Y1=(C1>>>8^V1)&16711935,V1^=Y1,C1^=Y1<<8,Y1=(V1>>>1^C1)&1431655765,C1^=Y1,V1^=Y1<<1,Y1=V1<<8|C1>>>20&240,V1=C1<<24|C1<<8&16711680|C1>>>8&65280|C1>>>24&240,C1=Y1;for(var N1=0;N1>>26,C1=C1<<2|C1>>>26;else V1=V1<<1|V1>>>27,C1=C1<<1|C1>>>27;V1&=-15,C1&=-15;var j1=N[V1>>>28]|C[V1>>>24&15]|L[V1>>>20&15]|V[V1>>>16&15]|M[V1>>>12&15]|I[V1>>>8&15]|E[V1>>>4&15],d1=w[C1>>>28]|A[C1>>>24&15]|R[C1>>>20&15]|T[C1>>>16&15]|S[C1>>>12&15]|v[C1>>>8&15]|h[C1>>>4&15];Y1=(d1>>>16^j1)&65535,p[t++]=j1^Y1,p[t++]=d1^Y1<<16}}return p}function D(P,N,C,L){var V=P.length===32?3:9,M;if(V===3)M=L?[30,-2,-2]:[0,32,2];else M=L?[94,62,-2,32,64,2,30,-2,-2]:[0,32,2,62,30,-2,64,96,2];var I,E=N[0],w=N[1];I=(E>>>4^w)&252645135,w^=I,E^=I<<4,I=(E>>>16^w)&65535,w^=I,E^=I<<16,I=(w>>>2^E)&858993459,E^=I,w^=I<<2,I=(w>>>8^E)&16711935,E^=I,w^=I<<8,I=(E>>>1^w)&1431655765,w^=I,E^=I<<1,E=E<<1|E>>>31,w=w<<1|w>>>31;for(var A=0;A>>4|w<<28)^P[S+1];I=E,E=w,w=I^(Y[v>>>24&63]|K[v>>>16&63]|W[v>>>8&63]|q[v&63]|G[h>>>24&63]|H[h>>>16&63]|z[h>>>8&63]|$[h&63])}I=E,E=w,w=I}E=E>>>1|E<<31,w=w>>>1|w<<31,I=(E>>>1^w)&1431655765,w^=I,E^=I<<1,I=(w>>>8^E)&16711935,E^=I,w^=I<<8,I=(w>>>2^E)&858993459,E^=I,w^=I<<2,I=(E>>>16^w)&65535,w^=I,E^=I<<16,I=(E>>>4^w)&252645135,w^=I,E^=I<<4,C[0]=E,C[1]=w}function F(P){P=P||{};var N=(P.mode||"CBC").toUpperCase(),C="DES-"+N,L;if(P.decrypt)L=Z.cipher.createDecipher(C,P.key);else L=Z.cipher.createCipher(C,P.key);var V=L.start;return L.start=function(M,I){var E=null;if(I instanceof Z.util.ByteBuffer)E=I,I={};I=I||{},I.output=E,I.iv=M,V.call(L,I)},L}}}),C$=W1({"node_modules/node-forge/lib/pbkdf2.js"(Q,X){var Z=y0();kX(),xQ(),d0();var J=Z.pkcs5=Z.pkcs5||{},G;if(Z.util.isNodejs&&!Z.options.usePureJavaScript)G=require("crypto");X.exports=Z.pbkdf2=J.pbkdf2=function(Y,H,K,z,W,$){if(typeof W==="function")$=W,W=null;if(Z.util.isNodejs&&!Z.options.usePureJavaScript&&G.pbkdf2&&(W===null||typeof W!=="object")&&(G.pbkdf2Sync.length>4||(!W||W==="sha1"))){if(typeof W!=="string")W="sha1";if(Y=Buffer.from(Y,"binary"),H=Buffer.from(H,"binary"),!$){if(G.pbkdf2Sync.length===4)return G.pbkdf2Sync(Y,H,K,z).toString("binary");return G.pbkdf2Sync(Y,H,K,z,W).toString("binary")}if(G.pbkdf2Sync.length===4)return G.pbkdf2(Y,H,K,z,function(A,R){if(A)return $(A);$(null,R.toString("binary"))});return G.pbkdf2(Y,H,K,z,W,function(A,R){if(A)return $(A);$(null,R.toString("binary"))})}if(typeof W==="undefined"||W===null)W="sha1";if(typeof W==="string"){if(!(W in Z.md.algorithms))throw new Error("Unknown hash algorithm: "+W);W=Z.md[W].create()}var q=W.digestLength;if(z>4294967295*q){var B=new Error("Derived key is too long.");if($)return $(B);throw B}var D=Math.ceil(z/q),F=z-(D-1)*q,P=Z.hmac.create();P.start(W,Y);var N="",C,L,V;if(!$){for(var M=1;M<=D;++M){P.start(null,null),P.update(H),P.update(Z.util.int32ToBytes(M)),C=V=P.digest().getBytes();for(var I=2;I<=K;++I)P.start(null,null),P.update(V),L=P.digest().getBytes(),C=Z.util.xorBytes(C,L,q),V=L;N+=MD)return $(null,N);P.start(null,null),P.update(H),P.update(Z.util.int32ToBytes(M)),C=V=P.digest().getBytes(),I=2,w()}function w(){if(I<=K)return P.start(null,null),P.update(V),L=P.digest().getBytes(),C=Z.util.xorBytes(C,L,q),V=L,++I,Z.util.setImmediate(w);N+=M>>0,P>>>0];for(var N=B.fullMessageLength.length-1;N>=0;--N)B.fullMessageLength[N]+=P[1],P[1]=P[0]+(B.fullMessageLength[N]/4294967296>>>0),B.fullMessageLength[N]=B.fullMessageLength[N]>>>0,P[0]=P[1]/4294967296>>>0;if($.putBytes(D),z(W,q,$),$.read>2048||$.length()===0)$.compact();return B},B.digest=function(){var D=Z.util.createBuffer();D.putBytes($.bytes());var F=B.fullMessageLength[B.fullMessageLength.length-1]+B.messageLengthSize,P=F&B.blockLength-1;D.putBytes(G.substr(0,B.blockLength-P));var N,C,L=B.fullMessageLength[0]*8;for(var V=0;V>>0,L+=C,D.putInt32(L>>>0),L=N>>>0;D.putInt32(L);var M={h0:W.h0,h1:W.h1,h2:W.h2,h3:W.h3,h4:W.h4,h5:W.h5,h6:W.h6,h7:W.h7};z(M,q,D);var I=Z.util.createBuffer();return I.putInt32(M.h0),I.putInt32(M.h1),I.putInt32(M.h2),I.putInt32(M.h3),I.putInt32(M.h4),I.putInt32(M.h5),I.putInt32(M.h6),I.putInt32(M.h7),I},B};var G=null,Y=!1,H=null;function K(){G=String.fromCharCode(128),G+=Z.util.fillString(String.fromCharCode(0),64),H=[1116352408,1899447441,3049323471,3921009573,961987163,1508970993,2453635748,2870763221,3624381080,310598401,607225278,1426881987,1925078388,2162078206,2614888103,3248222580,3835390401,4022224774,264347078,604807628,770255983,1249150122,1555081692,1996064986,2554220882,2821834349,2952996808,3210313671,3336571891,3584528711,113926993,338241895,666307205,773529912,1294757372,1396182291,1695183700,1986661051,2177026350,2456956037,2730485921,2820302411,3259730800,3345764771,3516065817,3600352804,4094571909,275423344,430227734,506948616,659060556,883997877,958139571,1322822218,1537002063,1747873779,1955562222,2024104815,2227730452,2361852424,2428436474,2756734187,3204031479,3329325298],Y=!0}function z(W,$,q){var B,D,F,P,N,C,L,V,M,I,E,w,A,R,T,S=q.length();while(S>=64){for(L=0;L<16;++L)$[L]=q.getInt32();for(;L<64;++L)B=$[L-2],B=(B>>>17|B<<15)^(B>>>19|B<<13)^B>>>10,D=$[L-15],D=(D>>>7|D<<25)^(D>>>18|D<<14)^D>>>3,$[L]=B+$[L-7]+D+$[L-16]|0;V=W.h0,M=W.h1,I=W.h2,E=W.h3,w=W.h4,A=W.h5,R=W.h6,T=W.h7;for(L=0;L<64;++L)P=(w>>>6|w<<26)^(w>>>11|w<<21)^(w>>>25|w<<7),N=R^w&(A^R),F=(V>>>2|V<<30)^(V>>>13|V<<19)^(V>>>22|V<<10),C=V&M|I&(V^M),B=T+P+N+H[L]+$[L],D=F+C,T=R,R=A,A=w,w=E+B>>>0,E=I,I=M,M=V,V=B+D>>>0;W.h0=W.h0+V|0,W.h1=W.h1+M|0,W.h2=W.h2+I|0,W.h3=W.h3+E|0,W.h4=W.h4+w|0,W.h5=W.h5+A|0,W.h6=W.h6+R|0,W.h7=W.h7+T|0,S-=64}}}}),wM=W1({"node_modules/node-forge/lib/prng.js"(Q,X){var Z=y0();d0();var J=null;if(Z.util.isNodejs&&!Z.options.usePureJavaScript&&!process.versions["node-webkit"])J=require("crypto");var G=X.exports=Z.prng=Z.prng||{};G.create=function(Y){var H={plugin:Y,key:null,seed:null,time:null,reseeds:0,generated:0,keyBytes:""},K=Y.md,z=new Array(32);for(var W=0;W<32;++W)z[W]=K.create();H.pools=z,H.pool=0,H.generate=function(F,P){if(!P)return H.generateSync(F);var N=H.plugin.cipher,C=H.plugin.increment,L=H.plugin.formatKey,V=H.plugin.formatSeed,M=Z.util.createBuffer();H.key=null,I();function I(E){if(E)return P(E);if(M.length()>=F)return P(null,M.getBytes(F));if(H.generated>1048575)H.key=null;if(H.key===null)return Z.util.nextTick(function(){$(I)});var w=N(H.key,H.seed);H.generated+=w.length,M.putBytes(w),H.key=L(N(H.key,C(H.seed))),H.seed=V(N(H.key,H.seed)),Z.util.setImmediate(I)}},H.generateSync=function(F){var P=H.plugin.cipher,N=H.plugin.increment,C=H.plugin.formatKey,L=H.plugin.formatSeed;H.key=null;var V=Z.util.createBuffer();while(V.length()1048575)H.key=null;if(H.key===null)q();var M=P(H.key,H.seed);H.generated+=M.length,V.putBytes(M),H.key=C(P(H.key,N(H.seed))),H.seed=L(P(H.key,H.seed))}return V.getBytes(F)};function $(F){if(H.pools[0].messageLength>=32)return B(),F();var P=32-H.pools[0].messageLength<<5;H.seedFile(P,function(N,C){if(N)return F(N);H.collect(C),B(),F()})}function q(){if(H.pools[0].messageLength>=32)return B();var F=32-H.pools[0].messageLength<<5;H.collect(H.seedFileSync(F)),B()}function B(){H.reseeds=H.reseeds===4294967295?0:H.reseeds+1;var F=H.plugin.md.create();F.update(H.keyBytes);var P=1;for(var N=0;N<32;++N){if(H.reseeds%P===0)F.update(H.pools[N].digest().getBytes()),H.pools[N].start();P=P<<1}H.keyBytes=F.digest().getBytes(),F.start(),F.update(H.keyBytes);var C=F.digest().getBytes();H.key=H.plugin.formatKey(H.keyBytes),H.seed=H.plugin.formatSeed(C),H.generated=0}function D(F){var P=null,N=Z.util.globalScope,C=N.crypto||N.msCrypto;if(C&&C.getRandomValues)P=function(T){return C.getRandomValues(T)};var L=Z.util.createBuffer();if(P)while(L.length()>16),w+=(E&32767)<<16,w+=E>>15,w=(w&2147483647)+(w>>31),R=w&4294967295;for(var I=0;I<3;++I)A=R>>>(I<<3),A^=Math.floor(Math.random()*256),L.putByte(A&255)}}return L.getBytes(F)}if(J)H.seedFile=function(F,P){J.randomBytes(F,function(N,C){if(N)return P(N);P(null,C.toString())})},H.seedFileSync=function(F){return J.randomBytes(F).toString()};else H.seedFile=function(F,P){try{P(null,D(F))}catch(N){P(N)}},H.seedFileSync=D;return H.collect=function(F){var P=F.length;for(var N=0;N>C&255);H.collect(N)},H.registerWorker=function(F){if(F===self)H.seedFile=function(N,C){function L(V){var M=V.data;if(M.forge&&M.forge.prng)self.removeEventListener("message",L),C(M.forge.prng.err,M.forge.prng.bytes)}self.addEventListener("message",L),self.postMessage({forge:{prng:{needed:N}}})};else{var P=function(N){var C=N.data;if(C.forge&&C.forge.prng)H.seedFile(C.forge.prng.needed,function(L,V){F.postMessage({forge:{prng:{err:L,bytes:V}}})})};F.addEventListener("message",P)}},H}}}),d9=W1({"node_modules/node-forge/lib/random.js"(Q,X){var Z=y0();NZ(),OM(),wM(),d0(),function(){if(Z.random&&Z.random.getBytes){X.exports=Z.random;return}(function(J){var G={},Y=new Array(4),H=Z.util.createBuffer();G.formatKey=function(F){var P=Z.util.createBuffer(F);return F=new Array(4),F[0]=P.getInt32(),F[1]=P.getInt32(),F[2]=P.getInt32(),F[3]=P.getInt32(),Z.aes._expandKey(F,!1)},G.formatSeed=function(F){var P=Z.util.createBuffer(F);return F=new Array(4),F[0]=P.getInt32(),F[1]=P.getInt32(),F[2]=P.getInt32(),F[3]=P.getInt32(),F},G.cipher=function(F,P){return Z.aes._updateBlock(F,P,Y,!1),H.putInt32(Y[0]),H.putInt32(Y[1]),H.putInt32(Y[2]),H.putInt32(Y[3]),H.getBytes()},G.increment=function(F){return++F[3],F},G.md=Z.md.sha256;function K(){var F=Z.prng.create(G);return F.getBytes=function(P,N){return F.generate(P,N)},F.getBytesSync=function(P){return F.generate(P)},F}var z=K(),W=null,$=Z.util.globalScope,q=$.crypto||$.msCrypto;if(q&&q.getRandomValues)W=function(F){return q.getRandomValues(F)};if(Z.options.usePureJavaScript||!Z.util.isNodejs&&!W){if(typeof window==="undefined"||window.document===void 0);if(z.collectInt(+new Date,32),typeof navigator!=="undefined"){var B="";for(var D in navigator)try{if(typeof navigator[D]=="string")B+=navigator[D]}catch(F){}z.collect(B),B=null}if(J)J().mousemove(function(F){z.collectInt(F.clientX,16),z.collectInt(F.clientY,16)}),J().keypress(function(F){z.collectInt(F.charCode,8)})}if(!Z.random)Z.random=z;else for(var D in z)Z.random[D]=z[D];Z.random.createInstance=K,X.exports=Z.random})(typeof jQuery!=="undefined"?jQuery:null)}()}}),EM=W1({"node_modules/node-forge/lib/rc2.js"(Q,X){var Z=y0();d0();var J=[217,120,249,196,25,221,181,237,40,233,253,121,74,160,216,157,198,126,55,131,43,118,83,142,98,76,100,136,68,139,251,162,23,154,89,245,135,179,79,19,97,69,109,141,9,129,125,50,189,143,64,235,134,183,123,11,240,149,33,34,92,107,78,130,84,214,101,147,206,96,178,28,115,86,192,20,167,140,241,220,18,117,202,31,59,190,228,209,66,61,212,48,163,60,182,38,111,191,14,218,70,105,7,87,39,242,29,155,188,148,67,3,248,17,199,246,144,239,62,231,6,195,213,47,200,102,30,215,8,232,234,222,128,82,238,247,132,170,114,172,53,77,106,42,150,26,210,113,90,21,73,116,75,159,208,94,4,24,164,236,194,224,65,110,15,81,203,204,36,145,175,80,161,244,112,57,153,124,58,133,35,184,180,122,252,2,54,91,37,85,151,49,45,93,250,152,227,138,146,174,5,223,41,16,103,108,186,201,211,0,230,207,225,158,168,44,99,22,1,63,88,226,137,169,13,56,52,27,171,51,255,176,187,72,12,95,185,177,205,46,197,243,219,71,229,165,156,119,10,166,32,104,254,127,193,173],G=[1,2,3,5],Y=function(z,W){return z<>16-W},H=function(z,W){return(z&65535)>>W|z<<16-W&65535};X.exports=Z.rc2=Z.rc2||{},Z.rc2.expandKey=function(z,W){if(typeof z==="string")z=Z.util.createBuffer(z);W=W||128;var $=z,q=z.length(),B=W,D=Math.ceil(B/8),F=255>>(B&7),P;for(P=q;P<128;P++)$.putByte(J[$.at(P-1)+$.at(P-q)&255]);$.setAt(128-D,J[$.at(128-D)&F]);for(P=127-D;P>=0;P--)$.setAt(P,J[$.at(P+1)^$.at(P+D)]);return $};var K=function(z,W,$){var q=!1,B=null,D=null,F=null,P,N,C,L,V=[];z=Z.rc2.expandKey(z,W);for(C=0;C<64;C++)V.push(z.getInt16Le());if($)P=function(E){for(C=0;C<4;C++)E[C]+=V[L]+(E[(C+3)%4]&E[(C+2)%4])+(~E[(C+3)%4]&E[(C+1)%4]),E[C]=Y(E[C],G[C]),L++},N=function(E){for(C=0;C<4;C++)E[C]+=V[E[(C+3)%4]&63]};else P=function(E){for(C=3;C>=0;C--)E[C]=H(E[C],G[C]),E[C]-=V[L]+(E[(C+3)%4]&E[(C+2)%4])+(~E[(C+3)%4]&E[(C+1)%4]),L--},N=function(E){for(C=3;C>=0;C--)E[C]-=V[E[(C+3)%4]&63]};var M=function(E){var w=[];for(C=0;C<4;C++){var A=B.getInt16Le();if(F!==null)if($)A^=F.getInt16Le();else F.putInt16Le(A);w.push(A&65535)}L=$?0:63;for(var R=0;R=8)M([[5,P],[1,N],[6,P],[1,N],[5,P]])},finish:function(E){var w=!0;if($)if(E)w=E(8,B,!$);else{var A=B.length()===8?8:8-B.length();B.fillWithByte(A,A)}if(w)q=!0,I.update();if(!$){if(w=B.length()===0,w)if(E)w=E(8,D,!$);else{var R=D.length(),T=D.at(R-1);if(T>R)w=!1;else D.truncate(T)}}return w}},I};Z.rc2.startEncrypting=function(z,W,$){var q=Z.rc2.createEncryptionCipher(z,128);return q.start(W,$),q},Z.rc2.createEncryptionCipher=function(z,W){return K(z,W,!0)},Z.rc2.startDecrypting=function(z,W,$){var q=Z.rc2.createDecryptionCipher(z,128);return q.start(W,$),q},Z.rc2.createDecryptionCipher=function(z,W){return K(z,W,!1)}}}),lq=W1({"node_modules/node-forge/lib/jsbn.js"(Q,X){var Z=y0();X.exports=Z.jsbn=Z.jsbn||{};var J,G=244837814094590,Y=(G&16777215)==15715070;function H(b,u,o){if(this.data=[],b!=null)if(typeof b=="number")this.fromNumber(b,u,o);else if(u==null&&typeof b!="string")this.fromString(b,256);else this.fromString(b,u)}Z.jsbn.BigInteger=H;function K(){return new H(null)}function z(b,u,o,z1,A1,w1){while(--w1>=0){var g1=u*this.data[b++]+o.data[z1]+A1;A1=Math.floor(g1/67108864),o.data[z1++]=g1&67108863}return A1}function W(b,u,o,z1,A1,w1){var g1=u&32767,x1=u>>15;while(--w1>=0){var o0=this.data[b]&32767,V6=this.data[b++]>>15,b6=x1*o0+V6*g1;o0=g1*o0+((b6&32767)<<15)+o.data[z1]+(A1&1073741823),A1=(o0>>>30)+(b6>>>15)+x1*V6+(A1>>>30),o.data[z1++]=o0&1073741823}return A1}function $(b,u,o,z1,A1,w1){var g1=u&16383,x1=u>>14;while(--w1>=0){var o0=this.data[b]&16383,V6=this.data[b++]>>14,b6=x1*o0+V6*g1;o0=g1*o0+((b6&16383)<<14)+o.data[z1]+A1,A1=(o0>>28)+(b6>>14)+x1*V6,o.data[z1++]=o0&268435455}return A1}if(typeof navigator==="undefined")H.prototype.am=$,J=28;else if(Y&&navigator.appName=="Microsoft Internet Explorer")H.prototype.am=W,J=30;else if(Y&&navigator.appName!="Netscape")H.prototype.am=z,J=26;else H.prototype.am=$,J=28;H.prototype.DB=J,H.prototype.DM=(1<=0;--u)b.data[u]=this.data[u];b.t=this.t,b.s=this.s}function V(b){if(this.t=1,this.s=b<0?-1:0,b>0)this.data[0]=b;else if(b<-1)this.data[0]=b+this.DV;else this.t=0}function M(b){var u=K();return u.fromInt(b),u}function I(b,u){var o;if(u==16)o=4;else if(u==8)o=3;else if(u==256)o=8;else if(u==2)o=1;else if(u==32)o=5;else if(u==4)o=2;else{this.fromRadix(b,u);return}this.t=0,this.s=0;var z1=b.length,A1=!1,w1=0;while(--z1>=0){var g1=o==8?b[z1]&255:C(b,z1);if(g1<0){if(b.charAt(z1)=="-")A1=!0;continue}if(A1=!1,w1==0)this.data[this.t++]=g1;else if(w1+o>this.DB)this.data[this.t-1]|=(g1&(1<>this.DB-w1;else this.data[this.t-1]|=g1<=this.DB)w1-=this.DB}if(o==8&&(b[0]&128)!=0){if(this.s=-1,w1>0)this.data[this.t-1]|=(1<0&&this.data[this.t-1]==b)--this.t}function w(b){if(this.s<0)return"-"+this.negate().toString(b);var u;if(b==16)u=4;else if(b==8)u=3;else if(b==2)u=1;else if(b==32)u=5;else if(b==4)u=2;else return this.toRadix(b);var o=(1<0){if(x1>x1)>0)A1=!0,w1=N(z1);while(g1>=0){if(x1>(x1+=this.DB-u);else if(z1=this.data[g1]>>(x1-=u)&o,x1<=0)x1+=this.DB,--g1;if(z1>0)A1=!0;if(A1)w1+=N(z1)}}return A1?w1:"0"}function A(){var b=K();return H.ZERO.subTo(this,b),b}function R(){return this.s<0?this.negate():this}function T(b){var u=this.s-b.s;if(u!=0)return u;var o=this.t;if(u=o-b.t,u!=0)return this.s<0?-u:u;while(--o>=0)if((u=this.data[o]-b.data[o])!=0)return u;return 0}function S(b){var u=1,o;if((o=b>>>16)!=0)b=o,u+=16;if((o=b>>8)!=0)b=o,u+=8;if((o=b>>4)!=0)b=o,u+=4;if((o=b>>2)!=0)b=o,u+=2;if((o=b>>1)!=0)b=o,u+=1;return u}function v(){if(this.t<=0)return 0;return this.DB*(this.t-1)+S(this.data[this.t-1]^this.s&this.DM)}function h(b,u){var o;for(o=this.t-1;o>=0;--o)u.data[o+b]=this.data[o];for(o=b-1;o>=0;--o)u.data[o]=0;u.t=this.t+b,u.s=this.s}function x(b,u){for(var o=b;o=0;--x1)u.data[x1+w1+1]=this.data[x1]>>z1|g1,g1=(this.data[x1]&A1)<=0;--x1)u.data[x1]=0;u.data[w1]=g1,u.t=this.t+w1+1,u.s=this.s,u.clamp()}function n(b,u){u.s=this.s;var o=Math.floor(b/this.DB);if(o>=this.t){u.t=0;return}var z1=b%this.DB,A1=this.DB-z1,w1=(1<>z1;for(var g1=o+1;g1>z1;if(z1>0)u.data[this.t-o-1]|=(this.s&w1)<>=this.DB;if(b.t>=this.DB;z1+=this.s}else{z1+=this.s;while(o>=this.DB;z1-=b.s}if(u.s=z1<0?-1:0,z1<-1)u.data[o++]=this.DV+z1;else if(z1>0)u.data[o++]=z1;u.t=o,u.clamp()}function Y1(b,u){var o=this.abs(),z1=b.abs(),A1=o.t;u.t=A1+z1.t;while(--A1>=0)u.data[A1]=0;for(A1=0;A1=0)b.data[o]=0;for(o=0;o=u.DV)b.data[o+u.t]-=u.DV,b.data[o+u.t+1]=1}if(b.t>0)b.data[b.t-1]+=u.am(o,u.data[o],b,2*o,0,1);b.s=0,b.clamp()}function V1(b,u,o){var z1=b.abs();if(z1.t<=0)return;var A1=this.abs();if(A1.t0)z1.lShiftTo(o0,w1),A1.lShiftTo(o0,o);else z1.copyTo(w1),A1.copyTo(o);var V6=w1.t,b6=w1.data[V6-1];if(b6==0)return;var v6=b6*(1<1?w1.data[V6-2]>>this.F2:0),Q9=this.FV/v6,E4=(1<=0)o.data[o.t++]=1,o.subTo(Z9,o);H.ONE.dlShiftTo(V6,Z9),Z9.subTo(w1,w1);while(w1.t=0){var U7=o.data[--B8]==b6?this.DM:Math.floor(o.data[B8]*Q9+(o.data[B8-1]+p8)*E4);if((o.data[B8]+=w1.am(0,U7,o,j4,0,V6))0)o.rShiftTo(o0,o);if(g1<0)H.ZERO.subTo(o,o)}function C1(b){var u=K();if(this.abs().divRemTo(b,null,u),this.s<0&&u.compareTo(H.ZERO)>0)b.subTo(u,u);return u}function N1(b){this.m=b}function j1(b){if(b.s<0||b.compareTo(this.m)>=0)return b.mod(this.m);else return b}function d1(b){return b}function D1(b){b.divRemTo(this.m,null,b)}function e(b,u,o){b.multiplyTo(u,o),this.reduce(o)}function P1(b,u){b.squareTo(u),this.reduce(u)}N1.prototype.convert=j1,N1.prototype.revert=d1,N1.prototype.reduce=D1,N1.prototype.mulTo=e,N1.prototype.sqrTo=P1;function Q1(){if(this.t<1)return 0;var b=this.data[0];if((b&1)==0)return 0;var u=b&3;return u=u*(2-(b&15)*u)&15,u=u*(2-(b&255)*u)&255,u=u*(2-((b&65535)*u&65535))&65535,u=u*(2-b*u%this.DV)%this.DV,u>0?this.DV-u:-u}function O1(b){this.m=b,this.mp=b.invDigit(),this.mpl=this.mp&32767,this.mph=this.mp>>15,this.um=(1<0)this.m.subTo(u,u);return u}function k(b){var u=K();return b.copyTo(u),this.reduce(u),u}function d(b){while(b.t<=this.mt2)b.data[b.t++]=0;for(var u=0;u>15)*this.mpl&this.um)<<15)&b.DM;o=u+this.m.t,b.data[o]+=this.m.am(0,z1,b,u,0,this.m.t);while(b.data[o]>=b.DV)b.data[o]-=b.DV,b.data[++o]++}if(b.clamp(),b.drShiftTo(this.m.t,b),b.compareTo(this.m)>=0)b.subTo(this.m,b)}function f(b,u){b.squareTo(u),this.reduce(u)}function j(b,u,o){b.multiplyTo(u,o),this.reduce(o)}O1.prototype.convert=S1,O1.prototype.revert=k,O1.prototype.reduce=d,O1.prototype.mulTo=j,O1.prototype.sqrTo=f;function m(){return(this.t>0?this.data[0]&1:this.s)==0}function Z1(b,u){if(b>4294967295||b<1)return H.ONE;var o=K(),z1=K(),A1=u.convert(this),w1=S(b)-1;A1.copyTo(o);while(--w1>=0)if(u.sqrTo(o,z1),(b&1<0)u.mulTo(z1,A1,o);else{var g1=o;o=z1,z1=g1}return u.revert(o)}function _(b,u){var o;if(b<256||u.isEven())o=new N1(u);else o=new O1(u);return this.exp(b,o)}H.prototype.copyTo=L,H.prototype.fromInt=V,H.prototype.fromString=I,H.prototype.clamp=E,H.prototype.dlShiftTo=h,H.prototype.drShiftTo=x,H.prototype.lShiftTo=p,H.prototype.rShiftTo=n,H.prototype.subTo=t,H.prototype.multiplyTo=Y1,H.prototype.squareTo=G1,H.prototype.divRemTo=V1,H.prototype.invDigit=Q1,H.prototype.isEven=m,H.prototype.exp=Z1,H.prototype.toString=w,H.prototype.negate=A,H.prototype.abs=R,H.prototype.compareTo=T,H.prototype.bitLength=v,H.prototype.mod=C1,H.prototype.modPowInt=_,H.ZERO=M(0),H.ONE=M(1);function J1(){var b=K();return this.copyTo(b),b}function B1(){if(this.s<0){if(this.t==1)return this.data[0]-this.DV;else if(this.t==0)return-1}else if(this.t==1)return this.data[0];else if(this.t==0)return 0;return(this.data[1]&(1<<32-this.DB)-1)<>24}function H1(){return this.t==0?this.s:this.data[0]<<16>>16}function M1(b){return Math.floor(Math.LN2*this.DB/Math.log(b))}function u1(){if(this.s<0)return-1;else if(this.t<=0||this.t==1&&this.data[0]<=0)return 0;else return 1}function s1(b){if(b==null)b=10;if(this.signum()==0||b<2||b>36)return"0";var u=this.chunkSize(b),o=Math.pow(b,u),z1=M(o),A1=K(),w1=K(),g1="";this.divRemTo(z1,A1,w1);while(A1.signum()>0)g1=(o+w1.intValue()).toString(b).substr(1)+g1,A1.divRemTo(z1,A1,w1);return w1.intValue().toString(b)+g1}function a1(b,u){if(this.fromInt(0),u==null)u=10;var o=this.chunkSize(u),z1=Math.pow(u,o),A1=!1,w1=0,g1=0;for(var x1=0;x1=o)this.dMultiply(z1),this.dAddOffset(g1,0),w1=0,g1=0}if(w1>0)this.dMultiply(Math.pow(u,w1)),this.dAddOffset(g1,0);if(A1)H.ZERO.subTo(this,this)}function X0(b,u,o){if(typeof u=="number")if(b<2)this.fromInt(1);else{if(this.fromNumber(b,o),!this.testBit(b-1))this.bitwiseTo(H.ONE.shiftLeft(b-1),U0,this);if(this.isEven())this.dAddOffset(1,0);while(!this.isProbablePrime(u))if(this.dAddOffset(2,0),this.bitLength()>b)this.subTo(H.ONE.shiftLeft(b-1),this)}else{var z1=new Array,A1=b&7;if(z1.length=(b>>3)+1,u.nextBytes(z1),A1>0)z1[0]&=(1<0){if(o>o)!=(this.s&this.DM)>>o)u[A1++]=z1|this.s<=0){if(o<8)z1=(this.data[b]&(1<>(o+=this.DB-8);else if(z1=this.data[b]>>(o-=8)&255,o<=0)o+=this.DB,--b;if((z1&128)!=0)z1|=-256;if(A1==0&&(this.s&128)!=(z1&128))++A1;if(A1>0||z1!=this.s)u[A1++]=z1}}return u}function B0(b){return this.compareTo(b)==0}function Y0(b){return this.compareTo(b)<0?this:b}function S0(b){return this.compareTo(b)>0?this:b}function D0(b,u,o){var z1,A1,w1=Math.min(b.t,this.t);for(z1=0;z1>=16,u+=16;if((b&255)==0)b>>=8,u+=8;if((b&15)==0)b>>=4,u+=4;if((b&3)==0)b>>=2,u+=2;if((b&1)==0)++u;return u}function i6(){for(var b=0;b=this.t)return this.s!=0;return(this.data[u]&1<>=this.DB;if(b.t>=this.DB;z1+=this.s}else{z1+=this.s;while(o>=this.DB;z1+=b.s}if(u.s=z1<0?-1:0,z1>0)u.data[o++]=z1;else if(z1<-1)u.data[o++]=this.DV+z1;u.t=o,u.clamp()}function _0(b){var u=K();return this.addTo(b,u),u}function i0(b){var u=K();return this.subTo(b,u),u}function H6(b){var u=K();return this.multiplyTo(b,u),u}function B6(b){var u=K();return this.divRemTo(b,u,null),u}function Z6(b){var u=K();return this.divRemTo(b,null,u),u}function e0(b){var u=K(),o=K();return this.divRemTo(b,u,o),new Array(u,o)}function z6(b){this.data[this.t]=this.am(0,b-1,this,0,0,this.t),++this.t,this.clamp()}function X6(b,u){if(b==0)return;while(this.t<=u)this.data[this.t++]=0;this.data[u]+=b;while(this.data[u]>=this.DV){if(this.data[u]-=this.DV,++u>=this.t)this.data[this.t++]=0;++this.data[u]}}function n0(){}function U6(b){return b}function gQ(b,u,o){b.multiplyTo(u,o)}function d8(b,u){b.squareTo(u)}n0.prototype.convert=U6,n0.prototype.revert=U6,n0.prototype.mulTo=gQ,n0.prototype.sqrTo=d8;function qQ(b){return this.exp(b,new n0)}function hQ(b,u,o){var z1=Math.min(this.t+b.t,u);o.s=0,o.t=z1;while(z1>0)o.data[--z1]=0;var A1;for(A1=o.t-this.t;z1=0)o.data[z1]=0;for(z1=Math.max(u-this.t,0);z12*this.m.t)return b.mod(this.m);else if(b.compareTo(this.m)<0)return b;else{var u=K();return b.copyTo(u),this.reduce(u),u}}function aX(b){return b}function L3(b){if(b.drShiftTo(this.m.t-1,this.r2),b.t>this.m.t+1)b.t=this.m.t+1,b.clamp();this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);while(b.compareTo(this.r2)<0)b.dAddOffset(1,this.m.t+1);b.subTo(this.r2,b);while(b.compareTo(this.m)>=0)b.subTo(this.m,b)}function sX(b,u){b.squareTo(u),this.reduce(u)}function tX(b,u,o){b.multiplyTo(u,o),this.reduce(o)}N9.prototype.convert=D3,N9.prototype.revert=aX,N9.prototype.reduce=L3,N9.prototype.mulTo=tX,N9.prototype.sqrTo=sX;function rX(b,u){var o=b.bitLength(),z1,A1=M(1),w1;if(o<=0)return A1;else if(o<18)z1=1;else if(o<48)z1=3;else if(o<144)z1=4;else if(o<768)z1=5;else z1=6;if(o<8)w1=new N1(u);else if(u.isEven())w1=new N9(u);else w1=new O1(u);var g1=new Array,x1=3,o0=z1-1,V6=(1<1){var b6=K();w1.sqrTo(g1[1],b6);while(x1<=V6)g1[x1]=K(),w1.mulTo(b6,g1[x1-2],g1[x1]),x1+=2}var v6=b.t-1,Q9,E4=!0,p8=K(),B8;o=S(b.data[v6])-1;while(v6>=0){if(o>=o0)Q9=b.data[v6]>>o-o0&V6;else if(Q9=(b.data[v6]&(1<0)Q9|=b.data[v6-1]>>this.DB+o-o0;x1=z1;while((Q9&1)==0)Q9>>=1,--x1;if((o-=x1)<0)o+=this.DB,--v6;if(E4)g1[Q9].copyTo(A1),E4=!1;else{while(x1>1)w1.sqrTo(A1,p8),w1.sqrTo(p8,A1),x1-=2;if(x1>0)w1.sqrTo(A1,p8);else B8=A1,A1=p8,p8=B8;w1.mulTo(p8,g1[Q9],A1)}while(v6>=0&&(b.data[v6]&1<0)u.rShiftTo(w1,u),o.rShiftTo(w1,o);while(u.signum()>0){if((A1=u.getLowestSetBit())>0)u.rShiftTo(A1,u);if((A1=o.getLowestSetBit())>0)o.rShiftTo(A1,o);if(u.compareTo(o)>=0)u.subTo(o,u),u.rShiftTo(1,u);else o.subTo(u,o),o.rShiftTo(1,o)}if(w1>0)o.lShiftTo(w1,o);return o}function eX(b){if(b<=0)return 0;var u=this.DV%b,o=this.s<0?b-1:0;if(this.t>0)if(u==0)o=this.data[0]%b;else for(var z1=this.t-1;z1>=0;--z1)o=(u*o+this.data[z1])%b;return o}function QJ(b){var u=b.isEven();if(this.isEven()&&u||b.signum()==0)return H.ZERO;var o=b.clone(),z1=this.clone(),A1=M(1),w1=M(0),g1=M(0),x1=M(1);while(o.signum()!=0){while(o.isEven()){if(o.rShiftTo(1,o),u){if(!A1.isEven()||!w1.isEven())A1.addTo(this,A1),w1.subTo(b,w1);A1.rShiftTo(1,A1)}else if(!w1.isEven())w1.subTo(b,w1);w1.rShiftTo(1,w1)}while(z1.isEven()){if(z1.rShiftTo(1,z1),u){if(!g1.isEven()||!x1.isEven())g1.addTo(this,g1),x1.subTo(b,x1);g1.rShiftTo(1,g1)}else if(!x1.isEven())x1.subTo(b,x1);x1.rShiftTo(1,x1)}if(o.compareTo(z1)>=0){if(o.subTo(z1,o),u)A1.subTo(g1,A1);w1.subTo(x1,w1)}else{if(z1.subTo(o,z1),u)g1.subTo(A1,g1);x1.subTo(w1,x1)}}if(z1.compareTo(H.ONE)!=0)return H.ZERO;if(x1.compareTo(b)>=0)return x1.subtract(b);if(x1.signum()<0)x1.addTo(b,x1);else return x1;if(x1.signum()<0)return x1.add(b);else return x1}var u8=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509],N3=67108864/u8[u8.length-1];function T3(b){var u,o=this.abs();if(o.t==1&&o.data[0]<=u8[u8.length-1]){for(u=0;u=0);var x1=w1.modPow(z1,this);if(x1.compareTo(H.ONE)!=0&&x1.compareTo(u)!=0){var o0=1;while(o0++>>0,F>>>0];for(var P=q.fullMessageLength.length-1;P>=0;--P)q.fullMessageLength[P]+=F[1],F[1]=F[0]+(q.fullMessageLength[P]/4294967296>>>0),q.fullMessageLength[P]=q.fullMessageLength[P]>>>0,F[0]=F[1]/4294967296>>>0;if(W.putBytes(B),K(z,$,W),W.read>2048||W.length()===0)W.compact();return q},q.digest=function(){var B=Z.util.createBuffer();B.putBytes(W.bytes());var D=q.fullMessageLength[q.fullMessageLength.length-1]+q.messageLengthSize,F=D&q.blockLength-1;B.putBytes(G.substr(0,q.blockLength-F));var P,N,C=q.fullMessageLength[0]*8;for(var L=0;L>>0,C+=N,B.putInt32(C>>>0),C=P>>>0;B.putInt32(C);var V={h0:z.h0,h1:z.h1,h2:z.h2,h3:z.h3,h4:z.h4};K(V,$,B);var M=Z.util.createBuffer();return M.putInt32(V.h0),M.putInt32(V.h1),M.putInt32(V.h2),M.putInt32(V.h3),M.putInt32(V.h4),M},q};var G=null,Y=!1;function H(){G=String.fromCharCode(128),G+=Z.util.fillString(String.fromCharCode(0),64),Y=!0}function K(z,W,$){var q,B,D,F,P,N,C,L,V=$.length();while(V>=64){B=z.h0,D=z.h1,F=z.h2,P=z.h3,N=z.h4;for(L=0;L<16;++L)q=$.getInt32(),W[L]=q,C=P^D&(F^P),q=(B<<5|B>>>27)+C+N+1518500249+q,N=P,P=F,F=(D<<30|D>>>2)>>>0,D=B,B=q;for(;L<20;++L)q=W[L-3]^W[L-8]^W[L-14]^W[L-16],q=q<<1|q>>>31,W[L]=q,C=P^D&(F^P),q=(B<<5|B>>>27)+C+N+1518500249+q,N=P,P=F,F=(D<<30|D>>>2)>>>0,D=B,B=q;for(;L<32;++L)q=W[L-3]^W[L-8]^W[L-14]^W[L-16],q=q<<1|q>>>31,W[L]=q,C=D^F^P,q=(B<<5|B>>>27)+C+N+1859775393+q,N=P,P=F,F=(D<<30|D>>>2)>>>0,D=B,B=q;for(;L<40;++L)q=W[L-6]^W[L-16]^W[L-28]^W[L-32],q=q<<2|q>>>30,W[L]=q,C=D^F^P,q=(B<<5|B>>>27)+C+N+1859775393+q,N=P,P=F,F=(D<<30|D>>>2)>>>0,D=B,B=q;for(;L<60;++L)q=W[L-6]^W[L-16]^W[L-28]^W[L-32],q=q<<2|q>>>30,W[L]=q,C=D&F|P&(D^F),q=(B<<5|B>>>27)+C+N+2400959708+q,N=P,P=F,F=(D<<30|D>>>2)>>>0,D=B,B=q;for(;L<80;++L)q=W[L-6]^W[L-16]^W[L-28]^W[L-32],q=q<<2|q>>>30,W[L]=q,C=D^F^P,q=(B<<5|B>>>27)+C+N+3395469782+q,N=P,P=F,F=(D<<30|D>>>2)>>>0,D=B,B=q;z.h0=z.h0+B|0,z.h1=z.h1+D|0,z.h2=z.h2+F|0,z.h3=z.h3+P|0,z.h4=z.h4+N|0,V-=64}}}}),jM=W1({"node_modules/node-forge/lib/pkcs1.js"(Q,X){var Z=y0();d0(),d9(),yX();var J=X.exports=Z.pkcs1=Z.pkcs1||{};J.encode_rsa_oaep=function(Y,H,K){var z,W,$,q;if(typeof K==="string")z=K,W=arguments[3]||void 0,$=arguments[4]||void 0;else if(K){if(z=K.label||void 0,W=K.seed||void 0,$=K.md||void 0,K.mgf1&&K.mgf1.md)q=K.mgf1.md}if(!$)$=Z.md.sha1.create();else $.start();if(!q)q=$;var B=Math.ceil(Y.n.bitLength()/8),D=B-2*$.digestLength-2;if(H.length>D){var F=new Error("RSAES-OAEP input message length is too long.");throw F.length=H.length,F.maxLength=D,F}if(!z)z="";$.update(z,"raw");var P=$.digest(),N="",C=D-H.length;for(var L=0;L>24&255,$>>16&255,$>>8&255,$&255);K.start(),K.update(Y+q),z+=K.digest().getBytes()}return z.substring(0,H)}}}),SM=W1({"node_modules/node-forge/lib/prime.js"(Q,X){var Z=y0();d0(),lq(),d9(),function(){if(Z.prime){X.exports=Z.prime;return}var J=X.exports=Z.prime=Z.prime||{},G=Z.jsbn.BigInteger,Y=[6,4,2,4,2,4,6,2],H=new G(null);H.fromInt(30);var K=function(F,P){return F|P};J.generateProbablePrime=function(F,P,N){if(typeof P==="function")N=P,P={};P=P||{};var C=P.algorithm||"PRIMEINC";if(typeof C==="string")C={name:C};C.options=C.options||{};var L=P.prng||Z.random,V={nextBytes:function(M){var I=L.getBytesSync(M.length);for(var E=0;EP)F=B(P,N);if(F.isProbablePrime(L))return M(null,F);F.dAddOffset(Y[C++%8],0)}while(V<0||+new Date-IF)L=B(F,P);var n=L.toString(16);h.target.postMessage({hex:n,workLoad:M}),L.dAddOffset(I,0)}}}function B(F,P){var N=new G(F,P),C=F-1;if(!N.testBit(C))N.bitwiseTo(G.ONE.shiftLeft(C),K,N);return N.dAddOffset(31-N.mod(H).byteValue(),0),N}function D(F){if(F<=100)return 27;if(F<=150)return 18;if(F<=200)return 15;if(F<=250)return 12;if(F<=300)return 9;if(F<=350)return 8;if(F<=400)return 7;if(F<=500)return 6;if(F<=600)return 5;if(F<=800)return 4;if(F<=1250)return 3;return 2}}()}}),cq=W1({"node_modules/node-forge/lib/rsa.js"(Q,X){var Z=y0();if(WQ(),lq(),TZ(),jM(),SM(),d9(),d0(),typeof J==="undefined")J=Z.jsbn.BigInteger;var J,G=Z.util.isNodejs?require("crypto"):null,Y=Z.asn1,H=Z.util;Z.pki=Z.pki||{},X.exports=Z.pki.rsa=Z.rsa=Z.rsa||{};var K=Z.pki,z=[6,4,2,4,2,4,6,2],W={name:"PrivateKeyInfo",tagClass:Y.Class.UNIVERSAL,type:Y.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:Y.Class.UNIVERSAL,type:Y.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:Y.Class.UNIVERSAL,type:Y.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:Y.Class.UNIVERSAL,type:Y.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:Y.Class.UNIVERSAL,type:Y.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},$={name:"RSAPrivateKey",tagClass:Y.Class.UNIVERSAL,type:Y.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPrivateKey.version",tagClass:Y.Class.UNIVERSAL,type:Y.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"RSAPrivateKey.modulus",tagClass:Y.Class.UNIVERSAL,type:Y.Type.INTEGER,constructed:!1,capture:"privateKeyModulus"},{name:"RSAPrivateKey.publicExponent",tagClass:Y.Class.UNIVERSAL,type:Y.Type.INTEGER,constructed:!1,capture:"privateKeyPublicExponent"},{name:"RSAPrivateKey.privateExponent",tagClass:Y.Class.UNIVERSAL,type:Y.Type.INTEGER,constructed:!1,capture:"privateKeyPrivateExponent"},{name:"RSAPrivateKey.prime1",tagClass:Y.Class.UNIVERSAL,type:Y.Type.INTEGER,constructed:!1,capture:"privateKeyPrime1"},{name:"RSAPrivateKey.prime2",tagClass:Y.Class.UNIVERSAL,type:Y.Type.INTEGER,constructed:!1,capture:"privateKeyPrime2"},{name:"RSAPrivateKey.exponent1",tagClass:Y.Class.UNIVERSAL,type:Y.Type.INTEGER,constructed:!1,capture:"privateKeyExponent1"},{name:"RSAPrivateKey.exponent2",tagClass:Y.Class.UNIVERSAL,type:Y.Type.INTEGER,constructed:!1,capture:"privateKeyExponent2"},{name:"RSAPrivateKey.coefficient",tagClass:Y.Class.UNIVERSAL,type:Y.Type.INTEGER,constructed:!1,capture:"privateKeyCoefficient"}]},q={name:"RSAPublicKey",tagClass:Y.Class.UNIVERSAL,type:Y.Type.SEQUENCE,constructed:!0,value:[{name:"RSAPublicKey.modulus",tagClass:Y.Class.UNIVERSAL,type:Y.Type.INTEGER,constructed:!1,capture:"publicKeyModulus"},{name:"RSAPublicKey.exponent",tagClass:Y.Class.UNIVERSAL,type:Y.Type.INTEGER,constructed:!1,capture:"publicKeyExponent"}]},B=Z.pki.rsa.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:Y.Class.UNIVERSAL,type:Y.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:Y.Class.UNIVERSAL,type:Y.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:Y.Class.UNIVERSAL,type:Y.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{name:"SubjectPublicKeyInfo.subjectPublicKey",tagClass:Y.Class.UNIVERSAL,type:Y.Type.BITSTRING,constructed:!1,value:[{name:"SubjectPublicKeyInfo.subjectPublicKey.RSAPublicKey",tagClass:Y.Class.UNIVERSAL,type:Y.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"rsaPublicKey"}]}]},D={name:"DigestInfo",tagClass:Y.Class.UNIVERSAL,type:Y.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm",tagClass:Y.Class.UNIVERSAL,type:Y.Type.SEQUENCE,constructed:!0,value:[{name:"DigestInfo.DigestAlgorithm.algorithmIdentifier",tagClass:Y.Class.UNIVERSAL,type:Y.Type.OID,constructed:!1,capture:"algorithmIdentifier"},{name:"DigestInfo.DigestAlgorithm.parameters",tagClass:Y.Class.UNIVERSAL,type:Y.Type.NULL,capture:"parameters",optional:!0,constructed:!1}]},{name:"DigestInfo.digest",tagClass:Y.Class.UNIVERSAL,type:Y.Type.OCTETSTRING,constructed:!1,capture:"digest"}]},F=function(R){var T;if(R.algorithm in K.oids)T=K.oids[R.algorithm];else{var S=new Error("Unknown message digest algorithm.");throw S.algorithm=R.algorithm,S}var v=Y.oidToDer(T).getBytes(),h=Y.create(Y.Class.UNIVERSAL,Y.Type.SEQUENCE,!0,[]),x=Y.create(Y.Class.UNIVERSAL,Y.Type.SEQUENCE,!0,[]);x.value.push(Y.create(Y.Class.UNIVERSAL,Y.Type.OID,!1,v)),x.value.push(Y.create(Y.Class.UNIVERSAL,Y.Type.NULL,!1,""));var p=Y.create(Y.Class.UNIVERSAL,Y.Type.OCTETSTRING,!1,R.digest().getBytes());return h.value.push(x),h.value.push(p),Y.toDer(h).getBytes()},P=function(R,T,S){if(S)return R.modPow(T.e,T.n);if(!T.p||!T.q)return R.modPow(T.d,T.n);if(!T.dP)T.dP=T.d.mod(T.p.subtract(J.ONE));if(!T.dQ)T.dQ=T.d.mod(T.q.subtract(J.ONE));if(!T.qInv)T.qInv=T.q.modInverse(T.p);var v;do v=new J(Z.util.bytesToHex(Z.random.getBytes(T.n.bitLength()/8)),16);while(v.compareTo(T.n)>=0||!v.gcd(T.n).equals(J.ONE));R=R.multiply(v.modPow(T.e,T.n)).mod(T.n);var h=R.mod(T.p).modPow(T.dP,T.p),x=R.mod(T.q).modPow(T.dQ,T.q);while(h.compareTo(x)<0)h=h.add(T.p);var p=h.subtract(x).multiply(T.qInv).mod(T.p).multiply(T.q).add(x);return p=p.multiply(v.modInverse(T.n)).mod(T.n),p};K.rsa.encrypt=function(R,T,S){var v=S,h,x=Math.ceil(T.n.bitLength()/8);if(S!==!1&&S!==!0)v=S===2,h=N(R,T,S);else h=Z.util.createBuffer(),h.putBytes(R);var p=new J(h.toHex(),16),n=P(p,T,v),t=n.toString(16),Y1=Z.util.createBuffer(),G1=x-Math.ceil(t.length/2);while(G1>0)Y1.putByte(0),--G1;return Y1.putBytes(Z.util.hexToBytes(t)),Y1.getBytes()},K.rsa.decrypt=function(R,T,S,v){var h=Math.ceil(T.n.bitLength()/8);if(R.length!==h){var x=new Error("Encrypted message length is invalid.");throw x.length=R.length,x.expected=h,x}var p=new J(Z.util.createBuffer(R).toHex(),16);if(p.compareTo(T.n)>=0)throw new Error("Encrypted message is invalid.");var n=P(p,T,S),t=n.toString(16),Y1=Z.util.createBuffer(),G1=h-Math.ceil(t.length/2);while(G1>0)Y1.putByte(0),--G1;if(Y1.putBytes(Z.util.hexToBytes(t)),v!==!1)return C(Y1.getBytes(),T,S);return Y1.getBytes()},K.rsa.createKeyPairGenerationState=function(R,T,S){if(typeof R==="string")R=parseInt(R,10);R=R||2048,S=S||{};var v=S.prng||Z.random,h={nextBytes:function(n){var t=v.getBytesSync(n.length);for(var Y1=0;Y1>1,pBits:R-(R>>1),pqState:0,num:null,keys:null},p.e.fromInt(p.eInt);else throw new Error("Invalid key generation algorithm: "+x);return p},K.rsa.stepKeyPairGenerationState=function(R,T){if(!("algorithm"in R))R.algorithm="PRIMEINC";var S=new J(null);S.fromInt(30);var v=0,h=function(V1,C1){return V1|C1},x=+new Date,p,n=0;while(R.keys===null&&(T<=0||nt)R.pqState=0;else if(R.num.isProbablePrime(M(R.num.bitLength())))++R.pqState;else R.num.dAddOffset(z[v++%8],0);else if(R.pqState===2)R.pqState=R.num.subtract(J.ONE).gcd(R.e).compareTo(J.ONE)===0?3:0;else if(R.pqState===3){if(R.pqState=0,R.p===null)R.p=R.num;else R.q=R.num;if(R.p!==null&&R.q!==null)++R.state;R.num=null}}else if(R.state===1){if(R.p.compareTo(R.q)<0)R.num=R.p,R.p=R.q,R.q=R.num;++R.state}else if(R.state===2)R.p1=R.p.subtract(J.ONE),R.q1=R.q.subtract(J.ONE),R.phi=R.p1.multiply(R.q1),++R.state;else if(R.state===3)if(R.phi.gcd(R.e).compareTo(J.ONE)===0)++R.state;else R.p=null,R.q=null,R.state=0;else if(R.state===4)if(R.n=R.p.multiply(R.q),R.n.bitLength()===R.bits)++R.state;else R.q=null,R.state=0;else if(R.state===5){var G1=R.e.modInverse(R.phi);R.keys={privateKey:K.rsa.setPrivateKey(R.n,R.e,G1,R.p,R.q,G1.mod(R.p1),G1.mod(R.q1),R.q.modInverse(R.p)),publicKey:K.rsa.setPublicKey(R.n,R.e)}}p=+new Date,n+=p-x,x=p}return R.keys!==null},K.rsa.generateKeyPair=function(R,T,S,v){if(arguments.length===1){if(typeof R==="object")S=R,R=void 0;else if(typeof R==="function")v=R,R=void 0}else if(arguments.length===2)if(typeof R==="number"){if(typeof T==="function")v=T,T=void 0;else if(typeof T!=="number")S=T,T=void 0}else S=R,v=T,R=void 0,T=void 0;else if(arguments.length===3)if(typeof T==="number"){if(typeof S==="function")v=S,S=void 0}else v=S,S=T,T=void 0;if(S=S||{},R===void 0)R=S.bits||2048;if(T===void 0)T=S.e||65537;if(!Z.options.usePureJavaScript&&!S.prng&&R>=256&&R<=16384&&(T===65537||T===3)){if(v){if(I("generateKeyPair"))return G.generateKeyPair("rsa",{modulusLength:R,publicExponent:T,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}},function(n,t,Y1){if(n)return v(n);v(null,{privateKey:K.privateKeyFromPem(Y1),publicKey:K.publicKeyFromPem(t)})});if(E("generateKey")&&E("exportKey"))return H.globalScope.crypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:R,publicExponent:A(T),hash:{name:"SHA-256"}},!0,["sign","verify"]).then(function(n){return H.globalScope.crypto.subtle.exportKey("pkcs8",n.privateKey)}).then(void 0,function(n){v(n)}).then(function(n){if(n){var t=K.privateKeyFromAsn1(Y.fromDer(Z.util.createBuffer(n)));v(null,{privateKey:t,publicKey:K.setRsaPublicKey(t.n,t.e)})}});if(w("generateKey")&&w("exportKey")){var h=H.globalScope.msCrypto.subtle.generateKey({name:"RSASSA-PKCS1-v1_5",modulusLength:R,publicExponent:A(T),hash:{name:"SHA-256"}},!0,["sign","verify"]);h.oncomplete=function(n){var t=n.target.result,Y1=H.globalScope.msCrypto.subtle.exportKey("pkcs8",t.privateKey);Y1.oncomplete=function(G1){var V1=G1.target.result,C1=K.privateKeyFromAsn1(Y.fromDer(Z.util.createBuffer(V1)));v(null,{privateKey:C1,publicKey:K.setRsaPublicKey(C1.n,C1.e)})},Y1.onerror=function(G1){v(G1)}},h.onerror=function(n){v(n)};return}}else if(I("generateKeyPairSync")){var x=G.generateKeyPairSync("rsa",{modulusLength:R,publicExponent:T,publicKeyEncoding:{type:"spki",format:"pem"},privateKeyEncoding:{type:"pkcs8",format:"pem"}});return{privateKey:K.privateKeyFromPem(x.privateKey),publicKey:K.publicKeyFromPem(x.publicKey)}}}var p=K.rsa.createKeyPairGenerationState(R,T,S);if(!v)return K.rsa.stepKeyPairGenerationState(p,0),p.keys;L(p,S,v)},K.setRsaPublicKey=K.rsa.setPublicKey=function(R,T){var S={n:R,e:T};return S.encrypt=function(v,h,x){if(typeof h==="string")h=h.toUpperCase();else if(h===void 0)h="RSAES-PKCS1-V1_5";if(h==="RSAES-PKCS1-V1_5")h={encode:function(n,t,Y1){return N(n,t,2).getBytes()}};else if(h==="RSA-OAEP"||h==="RSAES-OAEP")h={encode:function(n,t){return Z.pkcs1.encode_rsa_oaep(t,n,x)}};else if(["RAW","NONE","NULL",null].indexOf(h)!==-1)h={encode:function(n){return n}};else if(typeof h==="string")throw new Error('Unsupported encryption scheme: "'+h+'".');var p=h.encode(v,S,!0);return K.rsa.encrypt(p,S,!0)},S.verify=function(v,h,x,p){if(typeof x==="string")x=x.toUpperCase();else if(x===void 0)x="RSASSA-PKCS1-V1_5";if(p===void 0)p={_parseAllDigestBytes:!0};if(!("_parseAllDigestBytes"in p))p._parseAllDigestBytes=!0;if(x==="RSASSA-PKCS1-V1_5")x={verify:function(t,Y1){Y1=C(Y1,S,!0);var G1=Y.fromDer(Y1,{parseAllBytes:p._parseAllDigestBytes}),V1={},C1=[];if(!Y.validate(G1,D,V1,C1)){var N1=new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value.");throw N1.errors=C1,N1}var j1=Y.derToOid(V1.algorithmIdentifier);if(!(j1===Z.oids.md2||j1===Z.oids.md5||j1===Z.oids.sha1||j1===Z.oids.sha224||j1===Z.oids.sha256||j1===Z.oids.sha384||j1===Z.oids.sha512||j1===Z.oids["sha512-224"]||j1===Z.oids["sha512-256"])){var N1=new Error("Unknown RSASSA-PKCS1-v1_5 DigestAlgorithm identifier.");throw N1.oid=j1,N1}if(j1===Z.oids.md2||j1===Z.oids.md5){if(!("parameters"in V1))throw new Error("ASN.1 object does not contain a valid RSASSA-PKCS1-v1_5 DigestInfo value. Missing algorithm identifer NULL parameters.")}return t===V1.digest}};else if(x==="NONE"||x==="NULL"||x===null)x={verify:function(t,Y1){return Y1=C(Y1,S,!0),t===Y1}};var n=K.rsa.decrypt(h,S,!0,!1);return x.verify(v,n,S.n.bitLength())},S},K.setRsaPrivateKey=K.rsa.setPrivateKey=function(R,T,S,v,h,x,p,n){var t={n:R,e:T,d:S,p:v,q:h,dP:x,dQ:p,qInv:n};return t.decrypt=function(Y1,G1,V1){if(typeof G1==="string")G1=G1.toUpperCase();else if(G1===void 0)G1="RSAES-PKCS1-V1_5";var C1=K.rsa.decrypt(Y1,t,!1,!1);if(G1==="RSAES-PKCS1-V1_5")G1={decode:C};else if(G1==="RSA-OAEP"||G1==="RSAES-OAEP")G1={decode:function(N1,j1){return Z.pkcs1.decode_rsa_oaep(j1,N1,V1)}};else if(["RAW","NONE","NULL",null].indexOf(G1)!==-1)G1={decode:function(N1){return N1}};else throw new Error('Unsupported encryption scheme: "'+G1+'".');return G1.decode(C1,t,!1)},t.sign=function(Y1,G1){var V1=!1;if(typeof G1==="string")G1=G1.toUpperCase();if(G1===void 0||G1==="RSASSA-PKCS1-V1_5")G1={encode:F},V1=1;else if(G1==="NONE"||G1==="NULL"||G1===null)G1={encode:function(){return Y1}},V1=1;var C1=G1.encode(Y1,t.n.bitLength());return K.rsa.encrypt(C1,t,V1)},t},K.wrapRsaPrivateKey=function(R){return Y.create(Y.Class.UNIVERSAL,Y.Type.SEQUENCE,!0,[Y.create(Y.Class.UNIVERSAL,Y.Type.INTEGER,!1,Y.integerToDer(0).getBytes()),Y.create(Y.Class.UNIVERSAL,Y.Type.SEQUENCE,!0,[Y.create(Y.Class.UNIVERSAL,Y.Type.OID,!1,Y.oidToDer(K.oids.rsaEncryption).getBytes()),Y.create(Y.Class.UNIVERSAL,Y.Type.NULL,!1,"")]),Y.create(Y.Class.UNIVERSAL,Y.Type.OCTETSTRING,!1,Y.toDer(R).getBytes())])},K.privateKeyFromAsn1=function(R){var T={},S=[];if(Y.validate(R,W,T,S))R=Y.fromDer(Z.util.createBuffer(T.privateKey));if(T={},S=[],!Y.validate(R,$,T,S)){var v=new Error("Cannot read private key. ASN.1 object does not contain an RSAPrivateKey.");throw v.errors=S,v}var h,x,p,n,t,Y1,G1,V1;return h=Z.util.createBuffer(T.privateKeyModulus).toHex(),x=Z.util.createBuffer(T.privateKeyPublicExponent).toHex(),p=Z.util.createBuffer(T.privateKeyPrivateExponent).toHex(),n=Z.util.createBuffer(T.privateKeyPrime1).toHex(),t=Z.util.createBuffer(T.privateKeyPrime2).toHex(),Y1=Z.util.createBuffer(T.privateKeyExponent1).toHex(),G1=Z.util.createBuffer(T.privateKeyExponent2).toHex(),V1=Z.util.createBuffer(T.privateKeyCoefficient).toHex(),K.setRsaPrivateKey(new J(h,16),new J(x,16),new J(p,16),new J(n,16),new J(t,16),new J(Y1,16),new J(G1,16),new J(V1,16))},K.privateKeyToAsn1=K.privateKeyToRSAPrivateKey=function(R){return Y.create(Y.Class.UNIVERSAL,Y.Type.SEQUENCE,!0,[Y.create(Y.Class.UNIVERSAL,Y.Type.INTEGER,!1,Y.integerToDer(0).getBytes()),Y.create(Y.Class.UNIVERSAL,Y.Type.INTEGER,!1,V(R.n)),Y.create(Y.Class.UNIVERSAL,Y.Type.INTEGER,!1,V(R.e)),Y.create(Y.Class.UNIVERSAL,Y.Type.INTEGER,!1,V(R.d)),Y.create(Y.Class.UNIVERSAL,Y.Type.INTEGER,!1,V(R.p)),Y.create(Y.Class.UNIVERSAL,Y.Type.INTEGER,!1,V(R.q)),Y.create(Y.Class.UNIVERSAL,Y.Type.INTEGER,!1,V(R.dP)),Y.create(Y.Class.UNIVERSAL,Y.Type.INTEGER,!1,V(R.dQ)),Y.create(Y.Class.UNIVERSAL,Y.Type.INTEGER,!1,V(R.qInv))])},K.publicKeyFromAsn1=function(R){var T={},S=[];if(Y.validate(R,B,T,S)){var v=Y.derToOid(T.publicKeyOid);if(v!==K.oids.rsaEncryption){var h=new Error("Cannot read public key. Unknown OID.");throw h.oid=v,h}R=T.rsaPublicKey}if(S=[],!Y.validate(R,q,T,S)){var h=new Error("Cannot read public key. ASN.1 object does not contain an RSAPublicKey.");throw h.errors=S,h}var x=Z.util.createBuffer(T.publicKeyModulus).toHex(),p=Z.util.createBuffer(T.publicKeyExponent).toHex();return K.setRsaPublicKey(new J(x,16),new J(p,16))},K.publicKeyToAsn1=K.publicKeyToSubjectPublicKeyInfo=function(R){return Y.create(Y.Class.UNIVERSAL,Y.Type.SEQUENCE,!0,[Y.create(Y.Class.UNIVERSAL,Y.Type.SEQUENCE,!0,[Y.create(Y.Class.UNIVERSAL,Y.Type.OID,!1,Y.oidToDer(K.oids.rsaEncryption).getBytes()),Y.create(Y.Class.UNIVERSAL,Y.Type.NULL,!1,"")]),Y.create(Y.Class.UNIVERSAL,Y.Type.BITSTRING,!1,[K.publicKeyToRSAPublicKey(R)])])},K.publicKeyToRSAPublicKey=function(R){return Y.create(Y.Class.UNIVERSAL,Y.Type.SEQUENCE,!0,[Y.create(Y.Class.UNIVERSAL,Y.Type.INTEGER,!1,V(R.n)),Y.create(Y.Class.UNIVERSAL,Y.Type.INTEGER,!1,V(R.e))])};function N(R,T,S){var v=Z.util.createBuffer(),h=Math.ceil(T.n.bitLength()/8);if(R.length>h-11){var x=new Error("Message is too long for PKCS#1 v1.5 padding.");throw x.length=R.length,x.max=h-11,x}v.putByte(0),v.putByte(S);var p=h-3-R.length,n;if(S===0||S===1){n=S===0?0:255;for(var t=0;t0){var Y1=0,G1=Z.random.getBytes(p);for(var t=0;t1){if(x.getByte()!==255){--x.read;break}++t}}else if(n===2){t=0;while(x.length()>1){if(x.getByte()===0){--x.read;break}++t}}var G1=x.getByte();if(G1!==0||t!==h-3-x.length())throw new Error("Encryption block is invalid.");return x.getBytes()}function L(R,T,S){if(typeof T==="function")S=T,T={};T=T||{};var v={algorithm:{name:T.algorithm||"PRIMEINC",options:{workers:T.workers||2,workLoad:T.workLoad||100,workerScript:T.workerScript}}};if("prng"in T)v.prng=T.prng;h();function h(){x(R.pBits,function(n,t){if(n)return S(n);if(R.p=t,R.q!==null)return p(n,R.q);x(R.qBits,p)})}function x(n,t){Z.prime.generateProbablePrime(n,v,t)}function p(n,t){if(n)return S(n);if(R.q=t,R.p.compareTo(R.q)<0){var Y1=R.p;R.p=R.q,R.q=Y1}if(R.p.subtract(J.ONE).gcd(R.e).compareTo(J.ONE)!==0){R.p=null,h();return}if(R.q.subtract(J.ONE).gcd(R.e).compareTo(J.ONE)!==0){R.q=null,x(R.qBits,p);return}if(R.p1=R.p.subtract(J.ONE),R.q1=R.q.subtract(J.ONE),R.phi=R.p1.multiply(R.q1),R.phi.gcd(R.e).compareTo(J.ONE)!==0){R.p=R.q=null,h();return}if(R.n=R.p.multiply(R.q),R.n.bitLength()!==R.bits){R.q=null,x(R.qBits,p);return}var G1=R.e.modInverse(R.phi);R.keys={privateKey:K.rsa.setPrivateKey(R.n,R.e,G1,R.p,R.q,G1.mod(R.p1),G1.mod(R.q1),R.q.modInverse(R.p)),publicKey:K.rsa.setPublicKey(R.n,R.e)},S(null,R.keys)}}function V(R){var T=R.toString(16);if(T[0]>="8")T="00"+T;var S=Z.util.hexToBytes(T);if(S.length>1&&(S.charCodeAt(0)===0&&(S.charCodeAt(1)&128)===0||S.charCodeAt(0)===255&&(S.charCodeAt(1)&128)===128))return S.substr(1);return S}function M(R){if(R<=100)return 27;if(R<=150)return 18;if(R<=200)return 15;if(R<=250)return 12;if(R<=300)return 9;if(R<=350)return 8;if(R<=400)return 7;if(R<=500)return 6;if(R<=600)return 5;if(R<=800)return 4;if(R<=1250)return 3;return 2}function I(R){return Z.util.isNodejs&&typeof G[R]==="function"}function E(R){return typeof H.globalScope!=="undefined"&&typeof H.globalScope.crypto==="object"&&typeof H.globalScope.crypto.subtle==="object"&&typeof H.globalScope.crypto.subtle[R]==="function"}function w(R){return typeof H.globalScope!=="undefined"&&typeof H.globalScope.msCrypto==="object"&&typeof H.globalScope.msCrypto.subtle==="object"&&typeof H.globalScope.msCrypto.subtle[R]==="function"}function A(R){var T=Z.util.hexToBytes(R.toString(16)),S=new Uint8Array(T.length);for(var v=0;v=0;I--)e=e>>8,e+=N1.at(I)+D1.at(I),D1.setAt(I,e&255);d1.putBuffer(D1)}t=d1,A.putBuffer(V1)}return A.truncate(A.length()-L),A},Y.pbe.getCipher=function(F,P,N){switch(F){case Y.oids.pkcs5PBES2:return Y.pbe.getCipherForPBES2(F,P,N);case Y.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:case Y.oids["pbewithSHAAnd40BitRC2-CBC"]:return Y.pbe.getCipherForPKCS12PBE(F,P,N);default:var C=new Error("Cannot read encrypted PBE data block. Unsupported OID.");throw C.oid=F,C.supportedOids=["pkcs5PBES2","pbeWithSHAAnd3-KeyTripleDES-CBC","pbewithSHAAnd40BitRC2-CBC"],C}},Y.pbe.getCipherForPBES2=function(F,P,N){var C={},L=[];if(!G.validate(P,z,C,L)){var V=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw V.errors=L,V}if(F=G.derToOid(C.kdfOid),F!==Y.oids.pkcs5PBKDF2){var V=new Error("Cannot read encrypted private key. Unsupported key derivation function OID.");throw V.oid=F,V.supportedOids=["pkcs5PBKDF2"],V}if(F=G.derToOid(C.encOid),F!==Y.oids["aes128-CBC"]&&F!==Y.oids["aes192-CBC"]&&F!==Y.oids["aes256-CBC"]&&F!==Y.oids["des-EDE3-CBC"]&&F!==Y.oids.desCBC){var V=new Error("Cannot read encrypted private key. Unsupported encryption scheme OID.");throw V.oid=F,V.supportedOids=["aes128-CBC","aes192-CBC","aes256-CBC","des-EDE3-CBC","desCBC"],V}var M=C.kdfSalt,I=Z.util.createBuffer(C.kdfIterationCount);I=I.getInt(I.length()<<3);var E,w;switch(Y.oids[F]){case"aes128-CBC":E=16,w=Z.aes.createDecryptionCipher;break;case"aes192-CBC":E=24,w=Z.aes.createDecryptionCipher;break;case"aes256-CBC":E=32,w=Z.aes.createDecryptionCipher;break;case"des-EDE3-CBC":E=24,w=Z.des.createDecryptionCipher;break;case"desCBC":E=8,w=Z.des.createDecryptionCipher;break}var A=q(C.prfOid),R=Z.pkcs5.pbkdf2(N,M,I,E,A),T=C.encIv,S=w(R);return S.start(T),S},Y.pbe.getCipherForPKCS12PBE=function(F,P,N){var C={},L=[];if(!G.validate(P,W,C,L)){var V=new Error("Cannot read password-based-encryption algorithm parameters. ASN.1 object is not a supported EncryptedPrivateKeyInfo.");throw V.errors=L,V}var M=Z.util.createBuffer(C.salt),I=Z.util.createBuffer(C.iterations);I=I.getInt(I.length()<<3);var E,w,A;switch(F){case Y.oids["pbeWithSHAAnd3-KeyTripleDES-CBC"]:E=24,w=8,A=Z.des.startDecrypting;break;case Y.oids["pbewithSHAAnd40BitRC2-CBC"]:E=5,w=8,A=function(h,x){var p=Z.rc2.createDecryptionCipher(h,40);return p.start(x,null),p};break;default:var V=new Error("Cannot read PKCS #12 PBE data block. Unsupported OID.");throw V.oid=F,V}var R=q(C.prfOid),T=Y.pbe.generatePkcs12Key(N,M,1,I,E,R);R.start();var S=Y.pbe.generatePkcs12Key(N,M,2,I,w,R);return A(T,S)},Y.pbe.opensslDeriveBytes=function(F,P,N,C){if(typeof C==="undefined"||C===null){if(!("md5"in Z.md))throw new Error('"md5" hash algorithm unavailable.');C=Z.md.md5.create()}if(P===null)P="";var L=[$(C,F+P)];for(var V=16,M=1;V>8*N-P&255;return R=String.fromCharCode(R.charCodeAt(0)&~T)+R.substr(1),R+M+String.fromCharCode(188)},q.verify=function(B,D,F){var P,N=F-1,C=Math.ceil(N/8);if(D=D.substr(-C),C>8*C-N&255;if((V.charCodeAt(0)&I)!==0)throw new Error("Bits beyond keysize not zero as expected.");var E=H.generate(M,L),w="";for(P=0;P2)throw new Error("Cannot read notBefore/notAfter validity times; more than two times were provided in the certificate.");if(n.length<2)throw new Error("Cannot read notBefore/notAfter validity times; they were not provided as either UTCTime or GeneralizedTime.");if(x.validity.notBefore=n[0],x.validity.notAfter=n[1],x.tbsCertificate=T.tbsCertificate,R){x.md=F({signatureOid:x.signatureOid,type:"certificate"});var t=J.toDer(x.tbsCertificate);x.md.update(t.getBytes())}var Y1=Z.md.sha1.create(),G1=J.toDer(T.certIssuer);if(Y1.update(G1.getBytes()),x.issuer.getField=function(N1){return B(x.issuer,N1)},x.issuer.addField=function(N1){C([N1]),x.issuer.attributes.push(N1)},x.issuer.attributes=G.RDNAttributesAsArray(T.certIssuer),T.certIssuerUniqueId)x.issuer.uniqueId=T.certIssuerUniqueId;x.issuer.hash=Y1.digest().toHex();var V1=Z.md.sha1.create(),C1=J.toDer(T.certSubject);if(V1.update(C1.getBytes()),x.subject.getField=function(N1){return B(x.subject,N1)},x.subject.addField=function(N1){C([N1]),x.subject.attributes.push(N1)},x.subject.attributes=G.RDNAttributesAsArray(T.certSubject),T.certSubjectUniqueId)x.subject.uniqueId=T.certSubjectUniqueId;if(x.subject.hash=V1.digest().toHex(),T.certExtensions)x.extensions=G.certificateExtensionsFromAsn1(T.certExtensions);else x.extensions=[];return x.publicKey=G.publicKeyFromAsn1(T.subjectPublicKeyInfo),x},G.certificateExtensionsFromAsn1=function(A){var R=[];for(var T=0;T1)S=T.value.charCodeAt(1),v=T.value.length>2?T.value.charCodeAt(2):0;R.digitalSignature=(S&128)===128,R.nonRepudiation=(S&64)===64,R.keyEncipherment=(S&32)===32,R.dataEncipherment=(S&16)===16,R.keyAgreement=(S&8)===8,R.keyCertSign=(S&4)===4,R.cRLSign=(S&2)===2,R.encipherOnly=(S&1)===1,R.decipherOnly=(v&128)===128}else if(R.name==="basicConstraints"){var T=J.fromDer(R.value);if(T.value.length>0&&T.value[0].type===J.Type.BOOLEAN)R.cA=T.value[0].value.charCodeAt(0)!==0;else R.cA=!1;var h=null;if(T.value.length>0&&T.value[0].type===J.Type.INTEGER)h=T.value[0].value;else if(T.value.length>1)h=T.value[1].value;if(h!==null)R.pathLenConstraint=J.derToInteger(h)}else if(R.name==="extKeyUsage"){var T=J.fromDer(R.value);for(var x=0;x1)S=T.value.charCodeAt(1);R.client=(S&128)===128,R.server=(S&64)===64,R.email=(S&32)===32,R.objsign=(S&16)===16,R.reserved=(S&8)===8,R.sslCA=(S&4)===4,R.emailCA=(S&2)===2,R.objCA=(S&1)===1}else if(R.name==="subjectAltName"||R.name==="issuerAltName"){R.altNames=[];var n,T=J.fromDer(R.value);for(var t=0;t128)throw new Error('Invalid "nsComment" content.');A.value=J.create(J.Class.UNIVERSAL,J.Type.IA5STRING,!1,A.comment)}else if(A.name==="subjectKeyIdentifier"&&R.cert){var G1=R.cert.generateSubjectKeyIdentifier();A.subjectKeyIdentifier=G1.toHex(),A.value=J.create(J.Class.UNIVERSAL,J.Type.OCTETSTRING,!1,G1.getBytes())}else if(A.name==="authorityKeyIdentifier"&&R.cert){A.value=J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[]);var p=A.value.value;if(A.keyIdentifier){var V1=A.keyIdentifier===!0?R.cert.generateSubjectKeyIdentifier().getBytes():A.keyIdentifier;p.push(J.create(J.Class.CONTEXT_SPECIFIC,0,!1,V1))}if(A.authorityCertIssuer){var C1=[J.create(J.Class.CONTEXT_SPECIFIC,4,!0,[N(A.authorityCertIssuer===!0?R.cert.issuer:A.authorityCertIssuer)])];p.push(J.create(J.Class.CONTEXT_SPECIFIC,1,!0,C1))}if(A.serialNumber){var N1=Z.util.hexToBytes(A.serialNumber===!0?R.cert.serialNumber:A.serialNumber);p.push(J.create(J.Class.CONTEXT_SPECIFIC,2,!1,N1))}}else if(A.name==="cRLDistributionPoints"){A.value=J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[]);var p=A.value.value,j1=J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[]),d1=J.create(J.Class.CONTEXT_SPECIFIC,0,!0,[]),t;for(var Y1=0;Y1=I&&A0)S.value.push(G.certificateExtensionsToAsn1(A.extensions));return S},G.getCertificationRequestInfo=function(A){var R=J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[J.create(J.Class.UNIVERSAL,J.Type.INTEGER,!1,J.integerToDer(A.version).getBytes()),N(A.subject),G.publicKeyToAsn1(A.publicKey),M(A)]);return R},G.distinguishedNameToAsn1=function(A){return N(A)},G.certificateToAsn1=function(A){var R=A.tbsCertificate||G.getTBSCertificate(A);return J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[R,J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[J.create(J.Class.UNIVERSAL,J.Type.OID,!1,J.oidToDer(A.signatureOid).getBytes()),V(A.signatureOid,A.signatureParameters)]),J.create(J.Class.UNIVERSAL,J.Type.BITSTRING,!1,String.fromCharCode(0)+A.signature)])},G.certificateExtensionsToAsn1=function(A){var R=J.create(J.Class.CONTEXT_SPECIFIC,3,!0,[]),T=J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[]);R.value.push(T);for(var S=0;Sn.validity.notAfter)x={message:"Certificate is not valid yet or has expired.",error:G.certificateError.certificate_expired,notBefore:n.validity.notBefore,notAfter:n.validity.notAfter,now:v}}if(x===null){if(t=R[0]||A.getIssuer(n),t===null){if(n.isIssuer(n))Y1=!0,t=n}if(t){var G1=t;if(!Z.util.isArray(G1))G1=[G1];var V1=!1;while(!V1&&G1.length>0){t=G1.shift();try{V1=t.verify(n)}catch(O1){}}if(!V1)x={message:"Certificate signature is invalid.",error:G.certificateError.bad_certificate}}if(x===null&&(!t||Y1)&&!A.hasCertificate(n))x={message:"Certificate is not trusted.",error:G.certificateError.unknown_ca}}if(x===null&&t&&!n.isIssuer(t))x={message:"Certificate issuer is invalid.",error:G.certificateError.bad_certificate};if(x===null){var C1={keyUsage:!0,basicConstraints:!0};for(var N1=0;x===null&&N1d1.pathLenConstraint)x={message:"Certificate basicConstraints pathLenConstraint violated.",error:G.certificateError.bad_certificate}}}var P1=x===null?!0:x.error,Q1=T.verify?T.verify(P1,p,S):P1;if(Q1===!0)x=null;else{if(P1===!0)x={message:"The application rejected the certificate.",error:G.certificateError.bad_certificate};if(Q1||Q1===0){if(typeof Q1==="object"&&!Z.util.isArray(Q1)){if(Q1.message)x.message=Q1.message;if(Q1.error)x.error=Q1.error}else if(typeof Q1==="string")x.error=Q1}throw x}h=!1,++p}while(R.length>0);return!0}}}),vM=W1({"node_modules/node-forge/lib/pkcs12.js"(Q,X){var Z=y0();WQ(),kX(),TZ(),yM(),kM(),d9(),cq(),yX(),d0(),T$();var{asn1:J,pki:G}=Z,Y=X.exports=Z.pkcs12=Z.pkcs12||{},H={name:"ContentInfo",tagClass:J.Class.UNIVERSAL,type:J.Type.SEQUENCE,constructed:!0,value:[{name:"ContentInfo.contentType",tagClass:J.Class.UNIVERSAL,type:J.Type.OID,constructed:!1,capture:"contentType"},{name:"ContentInfo.content",tagClass:J.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"content"}]},K={name:"PFX",tagClass:J.Class.UNIVERSAL,type:J.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.version",tagClass:J.Class.UNIVERSAL,type:J.Type.INTEGER,constructed:!1,capture:"version"},H,{name:"PFX.macData",tagClass:J.Class.UNIVERSAL,type:J.Type.SEQUENCE,constructed:!0,optional:!0,captureAsn1:"mac",value:[{name:"PFX.macData.mac",tagClass:J.Class.UNIVERSAL,type:J.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm",tagClass:J.Class.UNIVERSAL,type:J.Type.SEQUENCE,constructed:!0,value:[{name:"PFX.macData.mac.digestAlgorithm.algorithm",tagClass:J.Class.UNIVERSAL,type:J.Type.OID,constructed:!1,capture:"macAlgorithm"},{name:"PFX.macData.mac.digestAlgorithm.parameters",tagClass:J.Class.UNIVERSAL,captureAsn1:"macAlgorithmParameters"}]},{name:"PFX.macData.mac.digest",tagClass:J.Class.UNIVERSAL,type:J.Type.OCTETSTRING,constructed:!1,capture:"macDigest"}]},{name:"PFX.macData.macSalt",tagClass:J.Class.UNIVERSAL,type:J.Type.OCTETSTRING,constructed:!1,capture:"macSalt"},{name:"PFX.macData.iterations",tagClass:J.Class.UNIVERSAL,type:J.Type.INTEGER,constructed:!1,optional:!0,capture:"macIterations"}]}]},z={name:"SafeBag",tagClass:J.Class.UNIVERSAL,type:J.Type.SEQUENCE,constructed:!0,value:[{name:"SafeBag.bagId",tagClass:J.Class.UNIVERSAL,type:J.Type.OID,constructed:!1,capture:"bagId"},{name:"SafeBag.bagValue",tagClass:J.Class.CONTEXT_SPECIFIC,constructed:!0,captureAsn1:"bagValue"},{name:"SafeBag.bagAttributes",tagClass:J.Class.UNIVERSAL,type:J.Type.SET,constructed:!0,optional:!0,capture:"bagAttributes"}]},W={name:"Attribute",tagClass:J.Class.UNIVERSAL,type:J.Type.SEQUENCE,constructed:!0,value:[{name:"Attribute.attrId",tagClass:J.Class.UNIVERSAL,type:J.Type.OID,constructed:!1,capture:"oid"},{name:"Attribute.attrValues",tagClass:J.Class.UNIVERSAL,type:J.Type.SET,constructed:!0,capture:"values"}]},$={name:"CertBag",tagClass:J.Class.UNIVERSAL,type:J.Type.SEQUENCE,constructed:!0,value:[{name:"CertBag.certId",tagClass:J.Class.UNIVERSAL,type:J.Type.OID,constructed:!1,capture:"certId"},{name:"CertBag.certValue",tagClass:J.Class.CONTEXT_SPECIFIC,constructed:!0,value:[{name:"CertBag.certValue[0]",tagClass:J.Class.UNIVERSAL,type:J.Class.OCTETSTRING,constructed:!1,capture:"cert"}]}]};function q(C,L,V,M){var I=[];for(var E=0;E=0)I.push(A)}return I}Y.pkcs12FromAsn1=function(C,L,V){if(typeof L==="string")V=L,L=!0;else if(L===void 0)L=!0;var M={},I=[];if(!J.validate(C,K,M,I)){var E=new Error("Cannot read PKCS#12 PFX. ASN.1 object is not an PKCS#12 PFX.");throw E.errors=E,E}var w={version:M.version.charCodeAt(0),safeContents:[],getBags:function(t){var Y1={},G1;if("localKeyId"in t)G1=t.localKeyId;else if("localKeyIdHex"in t)G1=Z.util.hexToBytes(t.localKeyIdHex);if(G1===void 0&&!("friendlyName"in t)&&"bagType"in t)Y1[t.bagType]=q(w.safeContents,null,null,t.bagType);if(G1!==void 0)Y1.localKeyId=q(w.safeContents,"localKeyId",G1,t.bagType);if("friendlyName"in t)Y1.friendlyName=q(w.safeContents,"friendlyName",t.friendlyName,t.bagType);return Y1},getBagsByFriendlyName:function(t,Y1){return q(w.safeContents,"friendlyName",t,Y1)},getBagsByLocalKeyId:function(t,Y1){return q(w.safeContents,"localKeyId",t,Y1)}};if(M.version.charCodeAt(0)!==3){var E=new Error("PKCS#12 PFX of version other than 3 not supported.");throw E.version=M.version.charCodeAt(0),E}if(J.derToOid(M.contentType)!==G.oids.data){var E=new Error("Only PKCS#12 PFX in password integrity mode supported.");throw E.oid=J.derToOid(M.contentType),E}var A=M.content.value[0];if(A.tagClass!==J.Class.UNIVERSAL||A.type!==J.Type.OCTETSTRING)throw new Error("PKCS#12 authSafe content data is not an OCTET STRING.");if(A=B(A),M.mac){var R=null,T=0,S=J.derToOid(M.macAlgorithm);switch(S){case G.oids.sha1:R=Z.md.sha1.create(),T=20;break;case G.oids.sha256:R=Z.md.sha256.create(),T=32;break;case G.oids.sha384:R=Z.md.sha384.create(),T=48;break;case G.oids.sha512:R=Z.md.sha512.create(),T=64;break;case G.oids.md5:R=Z.md.md5.create(),T=16;break}if(R===null)throw new Error("PKCS#12 uses unsupported MAC algorithm: "+S);var v=new Z.util.ByteBuffer(M.macSalt),h="macIterations"in M?parseInt(Z.util.bytesToHex(M.macIterations),16):1,x=Y.generateKey(V,v,3,h,T,R),p=Z.hmac.create();p.start(R,x),p.update(A.value);var n=p.getMac();if(n.getBytes()!==M.macDigest)throw new Error("PKCS#12 MAC could not be verified. Invalid password?")}return D(w,A.value,L,V),w};function B(C){if(C.composed||C.constructed){var L=Z.util.createBuffer();for(var V=0;V0)E=J.create(J.Class.UNIVERSAL,J.Type.SET,!0,R);var T=[],S=[];if(L!==null)if(Z.util.isArray(L))S=L;else S=[L];var v=[];for(var h=0;h0){var t=J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,v),Y1=J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[J.create(J.Class.UNIVERSAL,J.Type.OID,!1,J.oidToDer(G.oids.data).getBytes()),J.create(J.Class.CONTEXT_SPECIFIC,0,!0,[J.create(J.Class.UNIVERSAL,J.Type.OCTETSTRING,!1,J.toDer(t).getBytes())])]);T.push(Y1)}var G1=null;if(C!==null){var V1=G.wrapRsaPrivateKey(G.privateKeyToAsn1(C));if(V===null)G1=J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[J.create(J.Class.UNIVERSAL,J.Type.OID,!1,J.oidToDer(G.oids.keyBag).getBytes()),J.create(J.Class.CONTEXT_SPECIFIC,0,!0,[V1]),E]);else G1=J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[J.create(J.Class.UNIVERSAL,J.Type.OID,!1,J.oidToDer(G.oids.pkcs8ShroudedKeyBag).getBytes()),J.create(J.Class.CONTEXT_SPECIFIC,0,!0,[G.encryptPrivateKeyInfo(V1,V,M)]),E]);var C1=J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[G1]),N1=J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[J.create(J.Class.UNIVERSAL,J.Type.OID,!1,J.oidToDer(G.oids.data).getBytes()),J.create(J.Class.CONTEXT_SPECIFIC,0,!0,[J.create(J.Class.UNIVERSAL,J.Type.OCTETSTRING,!1,J.toDer(C1).getBytes())])]);T.push(N1)}var j1=J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,T),d1;if(M.useMac){var A=Z.md.sha1.create(),D1=new Z.util.ByteBuffer(Z.random.getBytes(M.saltSize)),e=M.count,C=Y.generateKey(V,D1,3,e,20),P1=Z.hmac.create();P1.start(A,C),P1.update(J.toDer(j1).getBytes());var Q1=P1.getMac();d1=J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[J.create(J.Class.UNIVERSAL,J.Type.OID,!1,J.oidToDer(G.oids.sha1).getBytes()),J.create(J.Class.UNIVERSAL,J.Type.NULL,!1,"")]),J.create(J.Class.UNIVERSAL,J.Type.OCTETSTRING,!1,Q1.getBytes())]),J.create(J.Class.UNIVERSAL,J.Type.OCTETSTRING,!1,D1.getBytes()),J.create(J.Class.UNIVERSAL,J.Type.INTEGER,!1,J.integerToDer(e).getBytes())])}return J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[J.create(J.Class.UNIVERSAL,J.Type.INTEGER,!1,J.integerToDer(3).getBytes()),J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[J.create(J.Class.UNIVERSAL,J.Type.OID,!1,J.oidToDer(G.oids.data).getBytes()),J.create(J.Class.CONTEXT_SPECIFIC,0,!0,[J.create(J.Class.UNIVERSAL,J.Type.OCTETSTRING,!1,J.toDer(j1).getBytes())])]),d1])},Y.generateKey=Z.pbe.generatePkcs12Key}}),gM=W1({"node_modules/node-forge/lib/pki.js"(Q,X){var Z=y0();WQ(),TZ(),kM(),Y7(),C$(),vM(),N$(),cq(),d0(),T$();var J=Z.asn1,G=X.exports=Z.pki=Z.pki||{};G.pemToDer=function(Y){var H=Z.pem.decode(Y)[0];if(H.procType&&H.procType.type==="ENCRYPTED")throw new Error("Could not convert PEM to DER; PEM is encrypted.");return Z.util.createBuffer(H.body)},G.privateKeyFromPem=function(Y){var H=Z.pem.decode(Y)[0];if(H.type!=="PRIVATE KEY"&&H.type!=="RSA PRIVATE KEY"){var K=new Error('Could not convert private key from PEM; PEM header type is not "PRIVATE KEY" or "RSA PRIVATE KEY".');throw K.headerType=H.type,K}if(H.procType&&H.procType.type==="ENCRYPTED")throw new Error("Could not convert private key from PEM; PEM is encrypted.");var z=J.fromDer(H.body);return G.privateKeyFromAsn1(z)},G.privateKeyToPem=function(Y,H){var K={type:"RSA PRIVATE KEY",body:J.toDer(G.privateKeyToAsn1(Y)).getBytes()};return Z.pem.encode(K,{maxline:H})},G.privateKeyInfoToPem=function(Y,H){var K={type:"PRIVATE KEY",body:J.toDer(Y).getBytes()};return Z.pem.encode(K,{maxline:H})}}}),hM=W1({"node_modules/node-forge/lib/tls.js"(Q,X){var Z=y0();WQ(),kX(),L$(),Y7(),gM(),d9(),yX(),d0();var J=function(k,d,f,j){var m=Z.util.createBuffer(),Z1=k.length>>1,_=Z1+(k.length&1),J1=k.substr(0,_),B1=k.substr(Z1,_),L1=Z.util.createBuffer(),H1=Z.hmac.create();f=d+f;var M1=Math.ceil(j/16),u1=Math.ceil(j/20);H1.start("MD5",J1);var s1=Z.util.createBuffer();L1.putBytes(f);for(var a1=0;a10)W.queue(k,W.createAlert(k,{level:W.Alert.Level.warning,description:W.Alert.Description.no_renegotiation})),W.flush(k);k.process()},W.parseHelloMessage=function(k,d,f){var j=null,m=k.entity===W.ConnectionEnd.client;if(f<38)k.error(k,{message:m?"Invalid ServerHello message. Message too short.":"Invalid ClientHello message. Message too short.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.illegal_parameter}});else{var Z1=d.fragment,_=Z1.length();if(j={version:{major:Z1.getByte(),minor:Z1.getByte()},random:Z.util.createBuffer(Z1.getBytes(32)),session_id:K(Z1,1),extensions:[]},m)j.cipher_suite=Z1.getBytes(2),j.compression_method=Z1.getByte();else j.cipher_suites=K(Z1,2),j.compression_methods=K(Z1,1);if(_=f-(_-Z1.length()),_>0){var J1=K(Z1,2);while(J1.length()>0)j.extensions.push({type:[J1.getByte(),J1.getByte()],data:K(J1,2)});if(!m)for(var B1=0;B10){var M1=H1.getByte();if(M1!==0)break;k.session.extensions.server_name.serverNameList.push(K(H1,2).getBytes())}}}}if(k.session.version){if(j.version.major!==k.session.version.major||j.version.minor!==k.session.version.minor)return k.error(k,{message:"TLS version change is disallowed during renegotiation.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.protocol_version}})}if(m)k.session.cipherSuite=W.getCipherSuite(j.cipher_suite);else{var u1=Z.util.createBuffer(j.cipher_suites.bytes());while(u1.length()>0)if(k.session.cipherSuite=W.getCipherSuite(u1.getBytes(2)),k.session.cipherSuite!==null)break}if(k.session.cipherSuite===null)return k.error(k,{message:"No cipher suites in common.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.handshake_failure},cipherSuite:Z.util.bytesToHex(j.cipher_suite)});if(m)k.session.compressionMethod=j.compression_method;else k.session.compressionMethod=W.CompressionMethod.none}return j},W.createSecurityParameters=function(k,d){var f=k.entity===W.ConnectionEnd.client,j=d.random.bytes(),m=f?k.session.sp.client_random:j,Z1=f?j:W.createRandom().getBytes();k.session.sp={entity:k.entity,prf_algorithm:W.PRFAlgorithm.tls_prf_sha256,bulk_cipher_algorithm:null,cipher_type:null,enc_key_length:null,block_length:null,fixed_iv_length:null,record_iv_length:null,mac_algorithm:null,mac_length:null,mac_key_length:null,compression_algorithm:k.session.compressionMethod,pre_master_secret:null,master_secret:null,client_random:m,server_random:Z1}},W.handleServerHello=function(k,d,f){var j=W.parseHelloMessage(k,d,f);if(k.fail)return;if(j.version.minor<=k.version.minor)k.version.minor=j.version.minor;else return k.error(k,{message:"Incompatible TLS version.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.protocol_version}});k.session.version=k.version;var m=j.session_id.bytes();if(m.length>0&&m===k.session.id)k.expect=P,k.session.resuming=!0,k.session.sp.server_random=j.random.bytes();else k.expect=q,k.session.resuming=!1,W.createSecurityParameters(k,j);k.session.id=m,k.process()},W.handleClientHello=function(k,d,f){var j=W.parseHelloMessage(k,d,f);if(k.fail)return;var m=j.session_id.bytes(),Z1=null;if(k.sessionCache){if(Z1=k.sessionCache.getSession(m),Z1===null)m="";else if(Z1.version.major!==j.version.major||Z1.version.minor>j.version.minor)Z1=null,m=""}if(m.length===0)m=Z.random.getBytes(32);if(k.session.id=m,k.session.clientHelloVersion=j.version,k.session.sp={},Z1)k.version=k.session.version=Z1.version,k.session.sp=Z1.sp;else{var _;for(var J1=1;J10)Z1=K(m.certificate_list,3),_=Z.asn1.fromDer(Z1),Z1=Z.pki.certificateFromAsn1(_,!0),J1.push(Z1)}catch(L1){return k.error(k,{message:"Could not parse certificate list.",cause:L1,send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.bad_certificate}})}var B1=k.entity===W.ConnectionEnd.client;if((B1||k.verifyClient===!0)&&J1.length===0)k.error(k,{message:B1?"No server certificate provided.":"No client certificate provided.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.illegal_parameter}});else if(J1.length===0)k.expect=B1?B:I;else{if(B1)k.session.serverCertificate=J1[0];else k.session.clientCertificate=J1[0];if(W.verifyCertificateChain(k,J1))k.expect=B1?B:I}k.process()},W.handleServerKeyExchange=function(k,d,f){if(f>0)return k.error(k,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.unsupported_certificate}});k.expect=D,k.process()},W.handleClientKeyExchange=function(k,d,f){if(f<48)return k.error(k,{message:"Invalid key parameters. Only RSA is supported.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.unsupported_certificate}});var j=d.fragment,m={enc_pre_master_secret:K(j,2).getBytes()},Z1=null;if(k.getPrivateKey)try{Z1=k.getPrivateKey(k,k.session.serverCertificate),Z1=Z.pki.privateKeyFromPem(Z1)}catch(B1){k.error(k,{message:"Could not get private key.",cause:B1,send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.internal_error}})}if(Z1===null)return k.error(k,{message:"No private key set.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.internal_error}});try{var _=k.session.sp;_.pre_master_secret=Z1.decrypt(m.enc_pre_master_secret);var J1=k.session.clientHelloVersion;if(J1.major!==_.pre_master_secret.charCodeAt(0)||J1.minor!==_.pre_master_secret.charCodeAt(1))throw new Error("TLS version rollback attack detected.")}catch(B1){_.pre_master_secret=Z.random.getBytes(48)}if(k.expect=w,k.session.clientCertificate!==null)k.expect=E;k.process()},W.handleCertificateRequest=function(k,d,f){if(f<3)return k.error(k,{message:"Invalid CertificateRequest. Message too short.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.illegal_parameter}});var j=d.fragment,m={certificate_types:K(j,1),certificate_authorities:K(j,2)};k.session.certificateRequest=m,k.expect=F,k.process()},W.handleCertificateVerify=function(k,d,f){if(f<2)return k.error(k,{message:"Invalid CertificateVerify. Message too short.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.illegal_parameter}});var j=d.fragment;j.read-=4;var m=j.bytes();j.read+=4;var Z1={signature:K(j,2).getBytes()},_=Z.util.createBuffer();_.putBuffer(k.session.md5.digest()),_.putBuffer(k.session.sha1.digest()),_=_.getBytes();try{var J1=k.session.clientCertificate;if(!J1.publicKey.verify(_,Z1.signature,"NONE"))throw new Error("CertificateVerify signature does not match.");k.session.md5.update(m),k.session.sha1.update(m)}catch(B1){return k.error(k,{message:"Bad signature in CertificateVerify.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.handshake_failure}})}k.expect=w,k.process()},W.handleServerHelloDone=function(k,d,f){if(f>0)return k.error(k,{message:"Invalid ServerHelloDone message. Invalid length.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.record_overflow}});if(k.serverCertificate===null){var j={message:"No server certificate provided. Not enough security.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.insufficient_security}},m=0,Z1=k.verify(k,j.alert.description,m,[]);if(Z1!==!0){if(Z1||Z1===0){if(typeof Z1==="object"&&!Z.util.isArray(Z1)){if(Z1.message)j.message=Z1.message;if(Z1.alert)j.alert.description=Z1.alert}else if(typeof Z1==="number")j.alert.description=Z1}return k.error(k,j)}}if(k.session.certificateRequest!==null)d=W.createRecord(k,{type:W.ContentType.handshake,data:W.createCertificate(k)}),W.queue(k,d);d=W.createRecord(k,{type:W.ContentType.handshake,data:W.createClientKeyExchange(k)}),W.queue(k,d),k.expect=L;var _=function(J1,B1){if(J1.session.certificateRequest!==null&&J1.session.clientCertificate!==null)W.queue(J1,W.createRecord(J1,{type:W.ContentType.handshake,data:W.createCertificateVerify(J1,B1)}));W.queue(J1,W.createRecord(J1,{type:W.ContentType.change_cipher_spec,data:W.createChangeCipherSpec()})),J1.state.pending=W.createConnectionState(J1),J1.state.current.write=J1.state.pending.write,W.queue(J1,W.createRecord(J1,{type:W.ContentType.handshake,data:W.createFinished(J1)})),J1.expect=P,W.flush(J1),J1.process()};if(k.session.certificateRequest===null||k.session.clientCertificate===null)return _(k,null);W.getClientSignature(k,_)},W.handleChangeCipherSpec=function(k,d){if(d.fragment.getByte()!==1)return k.error(k,{message:"Invalid ChangeCipherSpec message received.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.illegal_parameter}});var f=k.entity===W.ConnectionEnd.client;if(k.session.resuming&&f||!k.session.resuming&&!f)k.state.pending=W.createConnectionState(k);if(k.state.current.read=k.state.pending.read,!k.session.resuming&&f||k.session.resuming&&!f)k.state.pending=null;k.expect=f?N:A,k.process()},W.handleFinished=function(k,d,f){var j=d.fragment;j.read-=4;var m=j.bytes();j.read+=4;var Z1=d.fragment.getBytes();j=Z.util.createBuffer(),j.putBuffer(k.session.md5.digest()),j.putBuffer(k.session.sha1.digest());var _=k.entity===W.ConnectionEnd.client,J1=_?"server finished":"client finished",B1=k.session.sp,L1=12,H1=J;if(j=H1(B1.master_secret,J1,j.getBytes(),L1),j.getBytes()!==Z1)return k.error(k,{message:"Invalid verify_data in Finished message.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.decrypt_error}});if(k.session.md5.update(m),k.session.sha1.update(m),k.session.resuming&&_||!k.session.resuming&&!_)W.queue(k,W.createRecord(k,{type:W.ContentType.change_cipher_spec,data:W.createChangeCipherSpec()})),k.state.current.write=k.state.pending.write,k.state.pending=null,W.queue(k,W.createRecord(k,{type:W.ContentType.handshake,data:W.createFinished(k)}));k.expect=_?C:R,k.handshaking=!1,++k.handshakes,k.peerCertificate=_?k.session.serverCertificate:k.session.clientCertificate,W.flush(k),k.isConnected=!0,k.connected(k),k.process()},W.handleAlert=function(k,d){var f=d.fragment,j={level:f.getByte(),description:f.getByte()},m;switch(j.description){case W.Alert.Description.close_notify:m="Connection closed.";break;case W.Alert.Description.unexpected_message:m="Unexpected message.";break;case W.Alert.Description.bad_record_mac:m="Bad record MAC.";break;case W.Alert.Description.decryption_failed:m="Decryption failed.";break;case W.Alert.Description.record_overflow:m="Record overflow.";break;case W.Alert.Description.decompression_failure:m="Decompression failed.";break;case W.Alert.Description.handshake_failure:m="Handshake failure.";break;case W.Alert.Description.bad_certificate:m="Bad certificate.";break;case W.Alert.Description.unsupported_certificate:m="Unsupported certificate.";break;case W.Alert.Description.certificate_revoked:m="Certificate revoked.";break;case W.Alert.Description.certificate_expired:m="Certificate expired.";break;case W.Alert.Description.certificate_unknown:m="Certificate unknown.";break;case W.Alert.Description.illegal_parameter:m="Illegal parameter.";break;case W.Alert.Description.unknown_ca:m="Unknown certificate authority.";break;case W.Alert.Description.access_denied:m="Access denied.";break;case W.Alert.Description.decode_error:m="Decode error.";break;case W.Alert.Description.decrypt_error:m="Decrypt error.";break;case W.Alert.Description.export_restriction:m="Export restriction.";break;case W.Alert.Description.protocol_version:m="Unsupported protocol version.";break;case W.Alert.Description.insufficient_security:m="Insufficient security.";break;case W.Alert.Description.internal_error:m="Internal error.";break;case W.Alert.Description.user_canceled:m="User canceled.";break;case W.Alert.Description.no_renegotiation:m="Renegotiation not supported.";break;default:m="Unknown error.";break}if(j.description===W.Alert.Description.close_notify)return k.close();k.error(k,{message:m,send:!1,origin:k.entity===W.ConnectionEnd.client?"server":"client",alert:j}),k.process()},W.handleHandshake=function(k,d){var f=d.fragment,j=f.getByte(),m=f.getInt24();if(m>f.length())return k.fragmented=d,d.fragment=Z.util.createBuffer(),f.read-=4,k.process();k.fragmented=null,f.read-=4;var Z1=f.bytes(m+4);if(f.read+=4,j in d1[k.entity][k.expect]){if(k.entity===W.ConnectionEnd.server&&!k.open&&!k.fail)k.handshaking=!0,k.session={version:null,extensions:{server_name:{serverNameList:[]}},cipherSuite:null,compressionMethod:null,serverCertificate:null,clientCertificate:null,md5:Z.md.md5.create(),sha1:Z.md.sha1.create()};if(j!==W.HandshakeType.hello_request&&j!==W.HandshakeType.certificate_verify&&j!==W.HandshakeType.finished)k.session.md5.update(Z1),k.session.sha1.update(Z1);d1[k.entity][k.expect][j](k,d,m)}else W.handleUnexpected(k,d)},W.handleApplicationData=function(k,d){k.data.putBuffer(d.fragment),k.dataReady(k),k.process()},W.handleHeartbeat=function(k,d){var f=d.fragment,j=f.getByte(),m=f.getInt16(),Z1=f.getBytes(m);if(j===W.HeartbeatMessageType.heartbeat_request){if(k.handshaking||m>Z1.length)return k.process();W.queue(k,W.createRecord(k,{type:W.ContentType.heartbeat,data:W.createHeartbeat(W.HeartbeatMessageType.heartbeat_response,Z1)})),W.flush(k)}else if(j===W.HeartbeatMessageType.heartbeat_response){if(Z1!==k.expectedHeartbeatPayload)return k.process();if(k.heartbeatReceived)k.heartbeatReceived(k,Z.util.createBuffer(Z1))}k.process()};var $=0,q=1,B=2,D=3,F=4,P=5,N=6,C=7,L=8,V=0,M=1,I=2,E=3,w=4,A=5,R=6,T=W.handleUnexpected,S=W.handleChangeCipherSpec,v=W.handleAlert,h=W.handleHandshake,x=W.handleApplicationData,p=W.handleHeartbeat,n=[];n[W.ConnectionEnd.client]=[[T,v,h,T,p],[T,v,h,T,p],[T,v,h,T,p],[T,v,h,T,p],[T,v,h,T,p],[S,v,T,T,p],[T,v,h,T,p],[T,v,h,x,p],[T,v,h,T,p]],n[W.ConnectionEnd.server]=[[T,v,h,T,p],[T,v,h,T,p],[T,v,h,T,p],[T,v,h,T,p],[S,v,T,T,p],[T,v,h,T,p],[T,v,h,x,p],[T,v,h,T,p]];var{handleHelloRequest:t,handleServerHello:Y1,handleCertificate:G1,handleServerKeyExchange:V1,handleCertificateRequest:C1,handleServerHelloDone:N1,handleFinished:j1}=W,d1=[];d1[W.ConnectionEnd.client]=[[T,T,Y1,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T],[t,T,T,T,T,T,T,T,T,T,T,G1,V1,C1,N1,T,T,T,T,T,T],[t,T,T,T,T,T,T,T,T,T,T,T,V1,C1,N1,T,T,T,T,T,T],[t,T,T,T,T,T,T,T,T,T,T,T,T,C1,N1,T,T,T,T,T,T],[t,T,T,T,T,T,T,T,T,T,T,T,T,T,N1,T,T,T,T,T,T],[t,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T],[t,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,j1],[t,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T],[t,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T]];var{handleClientHello:D1,handleClientKeyExchange:e,handleCertificateVerify:P1}=W;d1[W.ConnectionEnd.server]=[[T,D1,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T],[T,T,T,T,T,T,T,T,T,T,T,G1,T,T,T,T,T,T,T,T,T],[T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,e,T,T,T,T],[T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,P1,T,T,T,T,T],[T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T],[T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,j1],[T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T],[T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T,T]],W.generateKeys=function(k,d){var f=J,j=d.client_random+d.server_random;if(!k.session.resuming)d.master_secret=f(d.pre_master_secret,"master secret",j,48).bytes(),d.pre_master_secret=null;j=d.server_random+d.client_random;var m=2*d.mac_key_length+2*d.enc_key_length,Z1=k.version.major===W.Versions.TLS_1_0.major&&k.version.minor===W.Versions.TLS_1_0.minor;if(Z1)m+=2*d.fixed_iv_length;var _=f(d.master_secret,"key expansion",j,m),J1={client_write_MAC_key:_.getBytes(d.mac_key_length),server_write_MAC_key:_.getBytes(d.mac_key_length),client_write_key:_.getBytes(d.enc_key_length),server_write_key:_.getBytes(d.enc_key_length)};if(Z1)J1.client_write_IV=_.getBytes(d.fixed_iv_length),J1.server_write_IV=_.getBytes(d.fixed_iv_length);return J1},W.createConnectionState=function(k){var d=k.entity===W.ConnectionEnd.client,f=function(){var Z1={sequenceNumber:[0,0],macKey:null,macLength:0,macFunction:null,cipherState:null,cipherFunction:function(_){return!0},compressionState:null,compressFunction:function(_){return!0},updateSequenceNumber:function(){if(Z1.sequenceNumber[1]===4294967295)Z1.sequenceNumber[1]=0,++Z1.sequenceNumber[0];else++Z1.sequenceNumber[1]}};return Z1},j={read:f(),write:f()};if(j.read.update=function(Z1,_){if(!j.read.cipherFunction(_,j.read))Z1.error(Z1,{message:"Could not decrypt record or bad MAC.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.bad_record_mac}});else if(!j.read.compressFunction(Z1,_,j.read))Z1.error(Z1,{message:"Could not decompress record.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.decompression_failure}});return!Z1.fail},j.write.update=function(Z1,_){if(!j.write.compressFunction(Z1,_,j.write))Z1.error(Z1,{message:"Could not compress record.",send:!1,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.internal_error}});else if(!j.write.cipherFunction(_,j.write))Z1.error(Z1,{message:"Could not encrypt record.",send:!1,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.internal_error}});return!Z1.fail},k.session){var m=k.session.sp;switch(k.session.cipherSuite.initSecurityParameters(m),m.keys=W.generateKeys(k,m),j.read.macKey=d?m.keys.server_write_MAC_key:m.keys.client_write_MAC_key,j.write.macKey=d?m.keys.client_write_MAC_key:m.keys.server_write_MAC_key,k.session.cipherSuite.initConnectionState(j,k,m),m.compression_algorithm){case W.CompressionMethod.none:break;case W.CompressionMethod.deflate:j.read.compressFunction=H,j.write.compressFunction=Y;break;default:throw new Error("Unsupported compression algorithm.")}}return j},W.createRandom=function(){var k=new Date,d=+k+k.getTimezoneOffset()*60000,f=Z.util.createBuffer();return f.putInt32(d),f.putBytes(Z.random.getBytes(28)),f},W.createRecord=function(k,d){if(!d.data)return null;var f={type:d.type,version:{major:k.version.major,minor:k.version.minor},length:d.data.length(),fragment:d.data};return f},W.createAlert=function(k,d){var f=Z.util.createBuffer();return f.putByte(d.level),f.putByte(d.description),W.createRecord(k,{type:W.ContentType.alert,data:f})},W.createClientHello=function(k){k.session.clientHelloVersion={major:k.version.major,minor:k.version.minor};var d=Z.util.createBuffer();for(var f=0;f0)M1+=2;var u1=k.session.id,s1=u1.length+1+2+4+28+2+m+1+_+M1,a1=Z.util.createBuffer();if(a1.putByte(W.HandshakeType.client_hello),a1.putInt24(s1),a1.putByte(k.version.major),a1.putByte(k.version.minor),a1.putBytes(k.session.sp.client_random),z(a1,1,Z.util.createBuffer(u1)),z(a1,2,d),z(a1,1,Z1),M1>0)z(a1,2,J1);return a1},W.createServerHello=function(k){var d=k.session.id,f=d.length+1+2+4+28+2+1,j=Z.util.createBuffer();return j.putByte(W.HandshakeType.server_hello),j.putInt24(f),j.putByte(k.version.major),j.putByte(k.version.minor),j.putBytes(k.session.sp.server_random),z(j,1,Z.util.createBuffer(d)),j.putByte(k.session.cipherSuite.id[0]),j.putByte(k.session.cipherSuite.id[1]),j.putByte(k.session.compressionMethod),j},W.createCertificate=function(k){var d=k.entity===W.ConnectionEnd.client,f=null;if(k.getCertificate){var j;if(d)j=k.session.certificateRequest;else j=k.session.extensions.server_name.serverNameList;f=k.getCertificate(k,j)}var m=Z.util.createBuffer();if(f!==null)try{if(!Z.util.isArray(f))f=[f];var Z1=null;for(var _=0;_0)f.putByte(W.HandshakeType.server_key_exchange),f.putInt24(d);return f},W.getClientSignature=function(k,d){var f=Z.util.createBuffer();f.putBuffer(k.session.md5.digest()),f.putBuffer(k.session.sha1.digest()),f=f.getBytes(),k.getSignature=k.getSignature||function(j,m,Z1){var _=null;if(j.getPrivateKey)try{_=j.getPrivateKey(j,j.session.clientCertificate),_=Z.pki.privateKeyFromPem(_)}catch(J1){j.error(j,{message:"Could not get private key.",cause:J1,send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.internal_error}})}if(_===null)j.error(j,{message:"No private key set.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.internal_error}});else m=_.sign(m,null);Z1(j,m)},k.getSignature(k,f,d)},W.createCertificateVerify=function(k,d){var f=d.length+2,j=Z.util.createBuffer();return j.putByte(W.HandshakeType.certificate_verify),j.putInt24(f),j.putInt16(d.length),j.putBytes(d),j},W.createCertificateRequest=function(k){var d=Z.util.createBuffer();d.putByte(1);var f=Z.util.createBuffer();for(var j in k.caStore.certs){var m=k.caStore.certs[j],Z1=Z.pki.distinguishedNameToAsn1(m.subject),_=Z.asn1.toDer(Z1);f.putInt16(_.length()),f.putBuffer(_)}var J1=1+d.length()+2+f.length(),B1=Z.util.createBuffer();return B1.putByte(W.HandshakeType.certificate_request),B1.putInt24(J1),z(B1,1,d),z(B1,2,f),B1},W.createServerHelloDone=function(k){var d=Z.util.createBuffer();return d.putByte(W.HandshakeType.server_hello_done),d.putInt24(0),d},W.createChangeCipherSpec=function(){var k=Z.util.createBuffer();return k.putByte(1),k},W.createFinished=function(k){var d=Z.util.createBuffer();d.putBuffer(k.session.md5.digest()),d.putBuffer(k.session.sha1.digest());var f=k.entity===W.ConnectionEnd.client,j=k.session.sp,m=12,Z1=J,_=f?"client finished":"server finished";d=Z1(j.master_secret,_,d.getBytes(),m);var J1=Z.util.createBuffer();return J1.putByte(W.HandshakeType.finished),J1.putInt24(d.length()),J1.putBuffer(d),J1},W.createHeartbeat=function(k,d,f){if(typeof f==="undefined")f=d.length;var j=Z.util.createBuffer();j.putByte(k),j.putInt16(f),j.putBytes(d);var m=j.length(),Z1=Math.max(16,m-f-3);return j.putBytes(Z.random.getBytes(Z1)),j},W.queue=function(k,d){if(!d)return;if(d.fragment.length()===0){if(d.type===W.ContentType.handshake||d.type===W.ContentType.alert||d.type===W.ContentType.change_cipher_spec)return}if(d.type===W.ContentType.handshake){var f=d.fragment.bytes();k.session.md5.update(f),k.session.sha1.update(f),f=null}var j;if(d.fragment.length()<=W.MaxFragment)j=[d];else{j=[];var m=d.fragment.bytes();while(m.length>W.MaxFragment)j.push(W.createRecord(k,{type:d.type,data:Z.util.createBuffer(m.slice(0,W.MaxFragment))})),m=m.slice(W.MaxFragment);if(m.length>0)j.push(W.createRecord(k,{type:d.type,data:Z.util.createBuffer(m)}))}for(var Z1=0;Z10)_=f.order[0];if(_!==null&&_ in f.cache){Z1=f.cache[_],delete f.cache[_];for(var J1 in f.order)if(f.order[J1]===_){f.order.splice(J1,1);break}}return Z1},f.setSession=function(m,Z1){if(f.order.length===f.capacity){var _=f.order.shift();delete f.cache[_]}var _=Z.util.bytesToHex(m);f.order.push(_),f.cache[_]=Z1}}return f},W.createConnection=function(k){var d=null;if(k.caStore)if(Z.util.isArray(k.caStore))d=Z.pki.createCaStore(k.caStore);else d=k.caStore;else d=Z.pki.createCaStore();var f=k.cipherSuites||null;if(f===null){f=[];for(var j in W.CipherSuites)f.push(W.CipherSuites[j])}var m=k.server?W.ConnectionEnd.server:W.ConnectionEnd.client,Z1=k.sessionCache?W.createSessionCache(k.sessionCache):null,_={version:{major:W.Version.major,minor:W.Version.minor},entity:m,sessionId:k.sessionId,caStore:d,sessionCache:Z1,cipherSuites:f,connected:k.connected,virtualHost:k.virtualHost||null,verifyClient:k.verifyClient||!1,verify:k.verify||function(H1,M1,u1,s1){return M1},verifyOptions:k.verifyOptions||{},getCertificate:k.getCertificate||null,getPrivateKey:k.getPrivateKey||null,getSignature:k.getSignature||null,input:Z.util.createBuffer(),tlsData:Z.util.createBuffer(),data:Z.util.createBuffer(),tlsDataReady:k.tlsDataReady,dataReady:k.dataReady,heartbeatReceived:k.heartbeatReceived,closed:k.closed,error:function(H1,M1){if(M1.origin=M1.origin||(H1.entity===W.ConnectionEnd.client?"client":"server"),M1.send)W.queue(H1,W.createAlert(H1,M1.alert)),W.flush(H1);var u1=M1.fatal!==!1;if(u1)H1.fail=!0;if(k.error(H1,M1),u1)H1.close(!1)},deflate:k.deflate||null,inflate:k.inflate||null};_.reset=function(H1){_.version={major:W.Version.major,minor:W.Version.minor},_.record=null,_.session=null,_.peerCertificate=null,_.state={pending:null,current:null},_.expect=_.entity===W.ConnectionEnd.client?$:V,_.fragmented=null,_.records=[],_.open=!1,_.handshakes=0,_.handshaking=!1,_.isConnected=!1,_.fail=!(H1||typeof H1==="undefined"),_.input.clear(),_.tlsData.clear(),_.data.clear(),_.state.current=W.createConnectionState(_)},_.reset();var J1=function(H1,M1){var u1=M1.type-W.ContentType.change_cipher_spec,s1=n[H1.entity][H1.expect];if(u1 in s1)s1[u1](H1,M1);else W.handleUnexpected(H1,M1)},B1=function(H1){var M1=0,u1=H1.input,s1=u1.length();if(s1<5)M1=5-s1;else{H1.record={type:u1.getByte(),version:{major:u1.getByte(),minor:u1.getByte()},length:u1.getInt16(),fragment:Z.util.createBuffer(),ready:!1};var a1=H1.record.version.major===H1.version.major;if(a1&&H1.session&&H1.session.version)a1=H1.record.version.minor===H1.version.minor;if(!a1)H1.error(H1,{message:"Incompatible TLS version.",send:!0,alert:{level:W.Alert.Level.fatal,description:W.Alert.Description.protocol_version}})}return M1},L1=function(H1){var M1=0,u1=H1.input,s1=u1.length();if(s10){if(_.sessionCache)M1=_.sessionCache.getSession(H1);if(M1===null)H1=""}if(H1.length===0&&_.sessionCache){if(M1=_.sessionCache.getSession(),M1!==null)H1=M1.id}if(_.session={id:H1,version:null,cipherSuite:null,compressionMethod:null,serverCertificate:null,certificateRequest:null,clientCertificate:null,sp:{},md5:Z.md.md5.create(),sha1:Z.md.sha1.create()},M1)_.version=M1.version,_.session.sp=M1.sp;_.session.sp.client_random=W.createRandom().getBytes(),_.open=!0,W.queue(_,W.createRecord(_,{type:W.ContentType.handshake,data:W.createClientHello(_)})),W.flush(_)}},_.process=function(H1){var M1=0;if(H1)_.input.putBytes(H1);if(!_.fail){if(_.record!==null&&_.record.ready&&_.record.fragment.isEmpty())_.record=null;if(_.record===null)M1=B1(_);if(!_.fail&&_.record!==null&&!_.record.ready)M1=L1(_);if(!_.fail&&_.record!==null&&_.record.ready)J1(_,_.record)}return M1},_.prepare=function(H1){return W.queue(_,W.createRecord(_,{type:W.ContentType.application_data,data:Z.util.createBuffer(H1)})),W.flush(_)},_.prepareHeartbeatRequest=function(H1,M1){if(H1 instanceof Z.util.ByteBuffer)H1=H1.bytes();if(typeof M1==="undefined")M1=H1.length;return _.expectedHeartbeatPayload=H1,W.queue(_,W.createRecord(_,{type:W.ContentType.heartbeat,data:W.createHeartbeat(W.HeartbeatMessageType.heartbeat_request,H1,M1)})),W.flush(_)},_.close=function(H1){if(!_.fail&&_.sessionCache&&_.session){var M1={id:_.session.id,version:_.session.version,sp:_.session.sp};M1.sp.keys=null,_.sessionCache.setSession(M1.id,M1)}if(_.open){if(_.open=!1,_.input.clear(),_.isConnected||_.handshaking)_.isConnected=_.handshaking=!1,W.queue(_,W.createAlert(_,{level:W.Alert.Level.warning,description:W.Alert.Description.close_notify})),W.flush(_);_.closed(_)}_.reset(H1)},_},X.exports=Z.tls=Z.tls||{};for(S1 in W)if(typeof W[S1]!=="function")Z.tls[S1]=W[S1];var S1;Z.tls.prf_tls1=J,Z.tls.hmac_sha1=G,Z.tls.createSessionCache=W.createSessionCache,Z.tls.createConnection=W.createConnection}}),wo=W1({"node_modules/node-forge/lib/aesCipherSuites.js"(Q,X){var Z=y0();NZ(),hM();var J=X.exports=Z.tls;J.CipherSuites.TLS_RSA_WITH_AES_128_CBC_SHA={id:[0,47],name:"TLS_RSA_WITH_AES_128_CBC_SHA",initSecurityParameters:function($){$.bulk_cipher_algorithm=J.BulkCipherAlgorithm.aes,$.cipher_type=J.CipherType.block,$.enc_key_length=16,$.block_length=16,$.fixed_iv_length=16,$.record_iv_length=16,$.mac_algorithm=J.MACAlgorithm.hmac_sha1,$.mac_length=20,$.mac_key_length=20},initConnectionState:G},J.CipherSuites.TLS_RSA_WITH_AES_256_CBC_SHA={id:[0,53],name:"TLS_RSA_WITH_AES_256_CBC_SHA",initSecurityParameters:function($){$.bulk_cipher_algorithm=J.BulkCipherAlgorithm.aes,$.cipher_type=J.CipherType.block,$.enc_key_length=32,$.block_length=16,$.fixed_iv_length=16,$.record_iv_length=16,$.mac_algorithm=J.MACAlgorithm.hmac_sha1,$.mac_length=20,$.mac_key_length=20},initConnectionState:G};function G($,q,B){var D=q.entity===Z.tls.ConnectionEnd.client;$.read.cipherState={init:!1,cipher:Z.cipher.createDecipher("AES-CBC",D?B.keys.server_write_key:B.keys.client_write_key),iv:D?B.keys.server_write_IV:B.keys.client_write_IV},$.write.cipherState={init:!1,cipher:Z.cipher.createCipher("AES-CBC",D?B.keys.client_write_key:B.keys.server_write_key),iv:D?B.keys.client_write_IV:B.keys.server_write_IV},$.read.cipherFunction=z,$.write.cipherFunction=Y,$.read.macLength=$.write.macLength=B.mac_length,$.read.macFunction=$.write.macFunction=J.hmac_sha1}function Y($,q){var B=!1,D=q.macFunction(q.macKey,q.sequenceNumber,$);$.fragment.putBytes(D),q.updateSequenceNumber();var F;if($.version.minor===J.Versions.TLS_1_0.minor)F=q.cipherState.init?null:q.cipherState.iv;else F=Z.random.getBytesSync(16);q.cipherState.init=!0;var P=q.cipherState.cipher;if(P.start({iv:F}),$.version.minor>=J.Versions.TLS_1_1.minor)P.output.putBytes(F);if(P.update($.fragment),P.finish(H))$.fragment=P.output,$.length=$.fragment.length(),B=!0;return B}function H($,q,B){if(!B){var D=$-q.length()%$;q.fillWithByte(D-1,D)}return!0}function K($,q,B){var D=!0;if(B){var F=q.length(),P=q.last();for(var N=F-1-P;N=P)$.fragment=F.output.getBytes(C-P),N=F.output.getBytes(P);else $.fragment=F.output.getBytes();$.fragment=Z.util.createBuffer($.fragment),$.length=$.fragment.length();var L=q.macFunction(q.macKey,q.sequenceNumber,$);return q.updateSequenceNumber(),B=W(q.macKey,N,L)&&B,B}function W($,q,B){var D=Z.hmac.create();return D.start("SHA1",$),D.update(q),q=D.digest().getBytes(),D.start(null,null),D.update(B),B=D.digest().getBytes(),q===B}}}),fM=W1({"node_modules/node-forge/lib/sha512.js"(Q,X){var Z=y0();xQ(),d0();var J=X.exports=Z.sha512=Z.sha512||{};Z.md.sha512=Z.md.algorithms.sha512=J;var G=Z.sha384=Z.sha512.sha384=Z.sha512.sha384||{};G.create=function(){return J.create("SHA-384")},Z.md.sha384=Z.md.algorithms.sha384=G,Z.sha512.sha256=Z.sha512.sha256||{create:function(){return J.create("SHA-512/256")}},Z.md["sha512/256"]=Z.md.algorithms["sha512/256"]=Z.sha512.sha256,Z.sha512.sha224=Z.sha512.sha224||{create:function(){return J.create("SHA-512/224")}},Z.md["sha512/224"]=Z.md.algorithms["sha512/224"]=Z.sha512.sha224,J.create=function(q){if(!H)W();if(typeof q==="undefined")q="SHA-512";if(!(q in z))throw new Error("Invalid SHA-512 algorithm: "+q);var B=z[q],D=null,F=Z.util.createBuffer(),P=new Array(80);for(var N=0;N<80;++N)P[N]=new Array(2);var C=64;switch(q){case"SHA-384":C=48;break;case"SHA-512/256":C=32;break;case"SHA-512/224":C=28;break}var L={algorithm:q.replace("-","").toLowerCase(),blockLength:128,digestLength:C,messageLength:0,fullMessageLength:null,messageLengthSize:16};return L.start=function(){L.messageLength=0,L.fullMessageLength=L.messageLength128=[];var V=L.messageLengthSize/4;for(var M=0;M>>0,I>>>0];for(var E=L.fullMessageLength.length-1;E>=0;--E)L.fullMessageLength[E]+=I[1],I[1]=I[0]+(L.fullMessageLength[E]/4294967296>>>0),L.fullMessageLength[E]=L.fullMessageLength[E]>>>0,I[0]=I[1]/4294967296>>>0;if(F.putBytes(V),$(D,P,F),F.read>2048||F.length()===0)F.compact();return L},L.digest=function(){var V=Z.util.createBuffer();V.putBytes(F.bytes());var M=L.fullMessageLength[L.fullMessageLength.length-1]+L.messageLengthSize,I=M&L.blockLength-1;V.putBytes(Y.substr(0,L.blockLength-I));var E,w,A=L.fullMessageLength[0]*8;for(var R=0;R>>0,A+=w,V.putInt32(A>>>0),A=E>>>0;V.putInt32(A);var T=new Array(D.length);for(var R=0;R=128){for(e=0;e<16;++e)B[e][0]=D.getInt32()>>>0,B[e][1]=D.getInt32()>>>0;for(;e<80;++e)O1=B[e-2],P1=O1[0],Q1=O1[1],F=((P1>>>19|Q1<<13)^(Q1>>>29|P1<<3)^P1>>>6)>>>0,P=((P1<<13|Q1>>>19)^(Q1<<3|P1>>>29)^(P1<<26|Q1>>>6))>>>0,k=B[e-15],P1=k[0],Q1=k[1],N=((P1>>>1|Q1<<31)^(P1>>>8|Q1<<24)^P1>>>7)>>>0,C=((P1<<31|Q1>>>1)^(P1<<24|Q1>>>8)^(P1<<25|Q1>>>7))>>>0,S1=B[e-7],d=B[e-16],Q1=P+S1[1]+C+d[1],B[e][0]=F+S1[0]+N+d[0]+(Q1/4294967296>>>0)>>>0,B[e][1]=Q1>>>0;T=q[0][0],S=q[0][1],v=q[1][0],h=q[1][1],x=q[2][0],p=q[2][1],n=q[3][0],t=q[3][1],Y1=q[4][0],G1=q[4][1],V1=q[5][0],C1=q[5][1],N1=q[6][0],j1=q[6][1],d1=q[7][0],D1=q[7][1];for(e=0;e<80;++e)M=((Y1>>>14|G1<<18)^(Y1>>>18|G1<<14)^(G1>>>9|Y1<<23))>>>0,I=((Y1<<18|G1>>>14)^(Y1<<14|G1>>>18)^(G1<<23|Y1>>>9))>>>0,E=(N1^Y1&(V1^N1))>>>0,w=(j1^G1&(C1^j1))>>>0,L=((T>>>28|S<<4)^(S>>>2|T<<30)^(S>>>7|T<<25))>>>0,V=((T<<4|S>>>28)^(S<<30|T>>>2)^(S<<25|T>>>7))>>>0,A=(T&v|x&(T^v))>>>0,R=(S&h|p&(S^h))>>>0,Q1=D1+I+w+K[e][1]+B[e][1],F=d1+M+E+K[e][0]+B[e][0]+(Q1/4294967296>>>0)>>>0,P=Q1>>>0,Q1=V+R,N=L+A+(Q1/4294967296>>>0)>>>0,C=Q1>>>0,d1=N1,D1=j1,N1=V1,j1=C1,V1=Y1,C1=G1,Q1=t+P,Y1=n+F+(Q1/4294967296>>>0)>>>0,G1=Q1>>>0,n=x,t=p,x=v,p=h,v=T,h=S,Q1=P+C,T=F+N+(Q1/4294967296>>>0)>>>0,S=Q1>>>0;Q1=q[0][1]+S,q[0][0]=q[0][0]+T+(Q1/4294967296>>>0)>>>0,q[0][1]=Q1>>>0,Q1=q[1][1]+h,q[1][0]=q[1][0]+v+(Q1/4294967296>>>0)>>>0,q[1][1]=Q1>>>0,Q1=q[2][1]+p,q[2][0]=q[2][0]+x+(Q1/4294967296>>>0)>>>0,q[2][1]=Q1>>>0,Q1=q[3][1]+t,q[3][0]=q[3][0]+n+(Q1/4294967296>>>0)>>>0,q[3][1]=Q1>>>0,Q1=q[4][1]+G1,q[4][0]=q[4][0]+Y1+(Q1/4294967296>>>0)>>>0,q[4][1]=Q1>>>0,Q1=q[5][1]+C1,q[5][0]=q[5][0]+V1+(Q1/4294967296>>>0)>>>0,q[5][1]=Q1>>>0,Q1=q[6][1]+j1,q[6][0]=q[6][0]+N1+(Q1/4294967296>>>0)>>>0,q[6][1]=Q1>>>0,Q1=q[7][1]+D1,q[7][0]=q[7][0]+d1+(Q1/4294967296>>>0)>>>0,q[7][1]=Q1>>>0,f-=128}}}}),Eo=W1({"node_modules/node-forge/lib/asn1-validator.js"(Q){var X=y0();WQ();var Z=X.asn1;Q.privateKeyValidator={name:"PrivateKeyInfo",tagClass:Z.Class.UNIVERSAL,type:Z.Type.SEQUENCE,constructed:!0,value:[{name:"PrivateKeyInfo.version",tagClass:Z.Class.UNIVERSAL,type:Z.Type.INTEGER,constructed:!1,capture:"privateKeyVersion"},{name:"PrivateKeyInfo.privateKeyAlgorithm",tagClass:Z.Class.UNIVERSAL,type:Z.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:Z.Class.UNIVERSAL,type:Z.Type.OID,constructed:!1,capture:"privateKeyOid"}]},{name:"PrivateKeyInfo",tagClass:Z.Class.UNIVERSAL,type:Z.Type.OCTETSTRING,constructed:!1,capture:"privateKey"}]},Q.publicKeyValidator={name:"SubjectPublicKeyInfo",tagClass:Z.Class.UNIVERSAL,type:Z.Type.SEQUENCE,constructed:!0,captureAsn1:"subjectPublicKeyInfo",value:[{name:"SubjectPublicKeyInfo.AlgorithmIdentifier",tagClass:Z.Class.UNIVERSAL,type:Z.Type.SEQUENCE,constructed:!0,value:[{name:"AlgorithmIdentifier.algorithm",tagClass:Z.Class.UNIVERSAL,type:Z.Type.OID,constructed:!1,capture:"publicKeyOid"}]},{tagClass:Z.Class.UNIVERSAL,type:Z.Type.BITSTRING,constructed:!1,composed:!0,captureBitStringValue:"ed25519PublicKey"}]}}}),jo=W1({"node_modules/node-forge/lib/ed25519.js"(Q,X){var Z=y0();lq(),d9(),fM(),d0();var J=Eo(),G=J.publicKeyValidator,Y=J.privateKeyValidator;if(typeof H==="undefined")H=Z.jsbn.BigInteger;var H,K=Z.util.ByteBuffer,z=typeof Buffer==="undefined"?Uint8Array:Buffer;Z.pki=Z.pki||{},X.exports=Z.pki.ed25519=Z.ed25519=Z.ed25519||{};var W=Z.ed25519;W.constants={},W.constants.PUBLIC_KEY_BYTE_LENGTH=32,W.constants.PRIVATE_KEY_BYTE_LENGTH=64,W.constants.SEED_BYTE_LENGTH=32,W.constants.SIGN_BYTE_LENGTH=64,W.constants.HASH_BYTE_LENGTH=64,W.generateKeyPair=function(k){k=k||{};var d=k.seed;if(d===void 0)d=Z.random.getBytesSync(W.constants.SEED_BYTE_LENGTH);else if(typeof d==="string"){if(d.length!==W.constants.SEED_BYTE_LENGTH)throw new TypeError('"seed" must be '+W.constants.SEED_BYTE_LENGTH+" bytes in length.")}else if(!(d instanceof Uint8Array))throw new TypeError('"seed" must be a node.js Buffer, Uint8Array, or a binary string.');d=$({message:d,encoding:"binary"});var f=new z(W.constants.PUBLIC_KEY_BYTE_LENGTH),j=new z(W.constants.PRIVATE_KEY_BYTE_LENGTH);for(var m=0;m<32;++m)j[m]=d[m];return M(f,j),{publicKey:f,privateKey:j}},W.privateKeyFromAsn1=function(k){var d={},f=[],j=Z.asn1.validate(k,Y,d,f);if(!j){var m=new Error("Invalid Key.");throw m.errors=f,m}var Z1=Z.asn1.derToOid(d.privateKeyOid),_=Z.oids.EdDSA25519;if(Z1!==_)throw new Error('Invalid OID "'+Z1+'"; OID must be "'+_+'".');var J1=d.privateKey,B1=$({message:Z.asn1.fromDer(J1).value,encoding:"binary"});return{privateKeyBytes:B1}},W.publicKeyFromAsn1=function(k){var d={},f=[],j=Z.asn1.validate(k,G,d,f);if(!j){var m=new Error("Invalid Key.");throw m.errors=f,m}var Z1=Z.asn1.derToOid(d.publicKeyOid),_=Z.oids.EdDSA25519;if(Z1!==_)throw new Error('Invalid OID "'+Z1+'"; OID must be "'+_+'".');var J1=d.ed25519PublicKey;if(J1.length!==W.constants.PUBLIC_KEY_BYTE_LENGTH)throw new Error("Key length is invalid.");return $({message:J1,encoding:"binary"})},W.publicKeyFromPrivateKey=function(k){k=k||{};var d=$({message:k.privateKey,encoding:"binary"});if(d.length!==W.constants.PRIVATE_KEY_BYTE_LENGTH)throw new TypeError('"options.privateKey" must have a byte length of '+W.constants.PRIVATE_KEY_BYTE_LENGTH);var f=new z(W.constants.PUBLIC_KEY_BYTE_LENGTH);for(var j=0;j=0};function $(k){var d=k.message;if(d instanceof Uint8Array||d instanceof z)return d;var f=k.encoding;if(d===void 0)if(k.md)d=k.md.digest().getBytes(),f="binary";else throw new TypeError('"options.message" or "options.md" not specified.');if(typeof d==="string"&&!f)throw new TypeError('"options.encoding" must be "binary" or "utf8".');if(typeof d==="string"){if(typeof Buffer!=="undefined")return Buffer.from(d,f);d=new K(d,f)}else if(!(d instanceof K))throw new TypeError('"options.message" must be a node.js Buffer, a Uint8Array, a forge ByteBuffer, or a string with "options.encoding" specifying its encoding.');var j=new z(d.length());for(var m=0;m=32;--j){f=0;for(m=j-32,Z1=j-12;m>8,d[m]-=f*256;d[m]+=f,d[j]=0}f=0;for(m=0;m<32;++m)d[m]+=f-(d[31]>>4)*C[m],f=d[m]>>8,d[m]&=255;for(m=0;m<32;++m)d[m]-=f*C[m];for(j=0;j<32;++j)d[j+1]+=d[j]>>8,k[j]=d[j]&255}function A(k){var d=new Float64Array(64);for(var f=0;f<64;++f)d[f]=k[f],k[f]=0;w(k,d)}function R(k,d){var f=e(),j=e(),m=e(),Z1=e(),_=e(),J1=e(),B1=e(),L1=e(),H1=e();Q1(f,k[1],k[0]),Q1(H1,d[1],d[0]),S1(f,f,H1),P1(j,k[0],k[1]),P1(H1,d[0],d[1]),S1(j,j,H1),S1(m,k[3],d[3]),S1(m,m,F),S1(Z1,k[2],d[2]),P1(Z1,Z1,Z1),Q1(_,j,f),Q1(J1,Z1,m),P1(B1,Z1,m),P1(L1,j,f),S1(k[0],_,J1),S1(k[1],L1,B1),S1(k[2],B1,J1),S1(k[3],_,L1)}function T(k,d,f){for(var j=0;j<4;++j)D1(k[j],d[j],f)}function S(k,d){var f=e(),j=e(),m=e();j1(m,d[2]),S1(f,d[0],m),S1(j,d[1],m),v(k,j),k[31]^=G1(f)<<7}function v(k,d){var f,j,m,Z1=e(),_=e();for(f=0;f<16;++f)_[f]=d[f];d1(_),d1(_),d1(_);for(j=0;j<2;++j){Z1[0]=_[0]-65517;for(f=1;f<15;++f)Z1[f]=_[f]-65535-(Z1[f-1]>>16&1),Z1[f-1]&=65535;Z1[15]=_[15]-32767-(Z1[14]>>16&1),m=Z1[15]>>16&1,Z1[14]&=65535,D1(_,Z1,1-m)}for(f=0;f<16;f++)k[2*f]=_[f]&255,k[2*f+1]=_[f]>>8}function h(k,d){var f=e(),j=e(),m=e(),Z1=e(),_=e(),J1=e(),B1=e();if(N1(k[2],B),x(k[1],d),O1(m,k[1]),S1(Z1,m,D),Q1(m,m,k[2]),P1(Z1,k[2],Z1),O1(_,Z1),O1(J1,_),S1(B1,J1,_),S1(f,B1,m),S1(f,f,Z1),p(f,f),S1(f,f,m),S1(f,f,Z1),S1(f,f,Z1),S1(k[0],f,Z1),O1(j,k[0]),S1(j,j,Z1),n(j,m))S1(k[0],k[0],L);if(O1(j,k[0]),S1(j,j,Z1),n(j,m))return-1;if(G1(k[0])===d[31]>>7)Q1(k[0],q,k[0]);return S1(k[3],k[0],k[1]),0}function x(k,d){var f;for(f=0;f<16;++f)k[f]=d[2*f]+(d[2*f+1]<<8);k[15]&=32767}function p(k,d){var f=e(),j;for(j=0;j<16;++j)f[j]=d[j];for(j=250;j>=0;--j)if(O1(f,f),j!==1)S1(f,f,d);for(j=0;j<16;++j)k[j]=f[j]}function n(k,d){var f=new z(32),j=new z(32);return v(f,k),v(j,d),t(f,0,j,0)}function t(k,d,f,j){return Y1(k,d,f,j,32)}function Y1(k,d,f,j,m){var Z1,_=0;for(Z1=0;Z1>>8)-1}function G1(k){var d=new z(32);return v(d,k),d[0]&1}function V1(k,d,f){var j,m;N1(k[0],q),N1(k[1],B),N1(k[2],B),N1(k[3],q);for(m=255;m>=0;--m)j=f[m/8|0]>>(m&7)&1,T(k,d,j),R(d,k),R(k,k),T(k,d,j)}function C1(k,d){var f=[e(),e(),e(),e()];N1(f[0],P),N1(f[1],N),N1(f[2],B),S1(f[3],P,N),V1(k,f,d)}function N1(k,d){var f;for(f=0;f<16;f++)k[f]=d[f]|0}function j1(k,d){var f=e(),j;for(j=0;j<16;++j)f[j]=d[j];for(j=253;j>=0;--j)if(O1(f,f),j!==2&&j!==4)S1(f,f,d);for(j=0;j<16;++j)k[j]=f[j]}function d1(k){var d,f,j=1;for(d=0;d<16;++d)f=k[d]+j+65535,j=Math.floor(f/65536),k[d]=f-j*65536;k[0]+=j-1+37*(j-1)}function D1(k,d,f){var j,m=~(f-1);for(var Z1=0;Z1<16;++Z1)j=m&(k[Z1]^d[Z1]),k[Z1]^=j,d[Z1]^=j}function e(k){var d,f=new Float64Array(16);if(k)for(d=0;d0)B=Z.util.fillString(String.fromCharCode(0),D)+B;var F=W.encrypt(B,"NONE"),P=Y.generate(B,$);return{encapsulation:F,key:P}},z.decrypt=function(W,$,q){var B=W.decrypt($,"NONE");return Y.generate(B,q)},z},Z.kem.kdf1=function(Y,H){G(this,Y,0,H||Y.digestLength)},Z.kem.kdf2=function(Y,H){G(this,Y,1,H||Y.digestLength)};function G(Y,H,K,z){Y.generate=function(W,$){var q=new Z.util.ByteBuffer,B=Math.ceil($/z)+K,D=new Z.util.ByteBuffer;for(var F=K;F0)I.value[0].value.push(J.create(J.Class.CONTEXT_SPECIFIC,0,!0,L));if(M.length>0)I.value[0].value.push(J.create(J.Class.CONTEXT_SPECIFIC,1,!0,M));return I.value[0].value.push(J.create(J.Class.UNIVERSAL,J.Type.SET,!0,P.signerInfos)),J.create(J.Class.UNIVERSAL,J.Type.SEQUENCE,!0,[J.create(J.Class.UNIVERSAL,J.Type.OID,!1,J.oidToDer(P.type).getBytes()),I])},addSigner:function(L){var{issuer:V,serialNumber:M}=L;if(L.certificate){var I=L.certificate;if(typeof I==="string")I=Z.pki.certificateFromPem(I);V=I.issuer.attributes,M=I.serialNumber}var E=L.key;if(!E)throw new Error("Could not add PKCS#7 signer; no private key specified.");if(typeof E==="string")E=Z.pki.privateKeyFromPem(E);var w=L.digestAlgorithm||Z.pki.oids.sha1;switch(w){case Z.pki.oids.sha1:case Z.pki.oids.sha256:case Z.pki.oids.sha384:case Z.pki.oids.sha512:case Z.pki.oids.md5:break;default:throw new Error("Could not add PKCS#7 signer; unknown message digest algorithm: "+w)}var A=L.authenticatedAttributes||[];if(A.length>0){var R=!1,T=!1;for(var S=0;S0){var C=J.create(J.Class.CONTEXT_SPECIFIC,1,!0,[]);for(var L=0;L=C&&V="8")W="00"+W;var $=Z.util.hexToBytes(W);K.putInt32($.length),K.putBytes($)}function Y(K,z){K.putInt32(z.length),K.putString(z)}function H(){var K=Z.md.sha1.create(),z=arguments.length;for(var W=0;W{let $1=L1(),U1=_.clone().set({hour:$1.get("hour"),minute:$1.get("minute"),second:$1.get("second")});if(D0)U1.add(parseInt(x0,10),R0);if(U0)return U1.format(U0.substring(1).trim());return U1.format(M1)}).replace(/{{\s*yesterday\s*}}/gi,_.clone().subtract(1,"day").format(M1)).replace(/{{\s*tomorrow\s*}}/gi,_.clone().add(1,"d").format(M1)));return J1.foldManager.save(B0,a1),B0}catch(B0){console.error(`Failed to create file: '${t1}'`,B0),new X.Notice("Unable to create new file.")}})}function T(_,J1){var B1;return(B1=J1[L(_,"day")])!=null?B1:null}function S(){let{vault:_}=window.app,{folder:J1}=z(),B1=_.getAbstractFileByPath(X.normalizePath(J1));if(!B1)throw new A("Failed to find daily notes folder");let L1={};return X.Vault.recurseChildren(B1,(H1)=>{if(H1 instanceof X.TFile){let M1=I(H1,"day");if(M1){let u1=L(M1,"day");L1[u1]=H1}}}),L1}var v=class extends Error{};function h(){let{moment:_}=window,J1=_.localeData()._week.dow,B1=["sunday","monday","tuesday","wednesday","thursday","friday","saturday"];while(J1)B1.push(B1.shift()),J1--;return B1}function x(_){return h().indexOf(_.toLowerCase())}function p(_){return T0(this,null,function*(){let{vault:J1}=window.app,{template:B1,format:L1,folder:H1}=W(),[M1,u1]=yield C(B1),s1=_.format(L1),a1=yield N(H1,s1);try{let X0=yield J1.create(a1,M1.replace(/{{\s*(date|time)\s*(([+-]\d+)([yqmwdhs]))?\s*(:.+?)?}}/gi,(t1,B0,Y0,S0,D0,x0)=>{let R0=window.moment(),U0=_.clone().set({hour:R0.get("hour"),minute:R0.get("minute"),second:R0.get("second")});if(Y0)U0.add(parseInt(S0,10),D0);if(x0)return U0.format(x0.substring(1).trim());return U0.format(L1)}).replace(/{{\s*title\s*}}/gi,s1).replace(/{{\s*time\s*}}/gi,window.moment().format("HH:mm")).replace(/{{\s*(sunday|monday|tuesday|wednesday|thursday|friday|saturday)\s*:(.*?)}}/gi,(t1,B0,Y0)=>{let S0=x(B0);return _.weekday(S0).format(Y0.trim())}));return window.app.foldManager.save(X0,u1),X0}catch(X0){console.error(`Failed to create file: '${a1}'`,X0),new X.Notice("Unable to create new file.")}})}function n(_,J1){var B1;return(B1=J1[L(_,"week")])!=null?B1:null}function t(){let _={};if(!k())return _;let{vault:J1}=window.app,{folder:B1}=W(),L1=J1.getAbstractFileByPath(X.normalizePath(B1));if(!L1)throw new v("Failed to find weekly notes folder");return X.Vault.recurseChildren(L1,(H1)=>{if(H1 instanceof X.TFile){let M1=I(H1,"week");if(M1){let u1=L(M1,"week");_[u1]=H1}}}),_}var Y1=class extends Error{};function G1(_){return T0(this,null,function*(){let{vault:J1}=window.app,{template:B1,format:L1,folder:H1}=$(),[M1,u1]=yield C(B1),s1=_.format(L1),a1=yield N(H1,s1);try{let X0=yield J1.create(a1,M1.replace(/{{\s*(date|time)\s*(([+-]\d+)([yqmwdhs]))?\s*(:.+?)?}}/gi,(t1,B0,Y0,S0,D0,x0)=>{let R0=window.moment(),U0=_.clone().set({hour:R0.get("hour"),minute:R0.get("minute"),second:R0.get("second")});if(Y0)U0.add(parseInt(S0,10),D0);if(x0)return U0.format(x0.substring(1).trim());return U0.format(L1)}).replace(/{{\s*date\s*}}/gi,s1).replace(/{{\s*time\s*}}/gi,window.moment().format("HH:mm")).replace(/{{\s*title\s*}}/gi,s1));return window.app.foldManager.save(X0,u1),X0}catch(X0){console.error(`Failed to create file: '${a1}'`,X0),new X.Notice("Unable to create new file.")}})}function V1(_,J1){var B1;return(B1=J1[L(_,"month")])!=null?B1:null}function C1(){let _={};if(!d())return _;let{vault:J1}=window.app,{folder:B1}=$(),L1=J1.getAbstractFileByPath(X.normalizePath(B1));if(!L1)throw new Y1("Failed to find monthly notes folder");return X.Vault.recurseChildren(L1,(H1)=>{if(H1 instanceof X.TFile){let M1=I(H1,"month");if(M1){let u1=L(M1,"month");_[u1]=H1}}}),_}var N1=class extends Error{};function j1(_){return T0(this,null,function*(){let{vault:J1}=window.app,{template:B1,format:L1,folder:H1}=q(),[M1,u1]=yield C(B1),s1=_.format(L1),a1=yield N(H1,s1);try{let X0=yield J1.create(a1,M1.replace(/{{\s*(date|time)\s*(([+-]\d+)([yqmwdhs]))?\s*(:.+?)?}}/gi,(t1,B0,Y0,S0,D0,x0)=>{let R0=window.moment(),U0=_.clone().set({hour:R0.get("hour"),minute:R0.get("minute"),second:R0.get("second")});if(Y0)U0.add(parseInt(S0,10),D0);if(x0)return U0.format(x0.substring(1).trim());return U0.format(L1)}).replace(/{{\s*date\s*}}/gi,s1).replace(/{{\s*time\s*}}/gi,window.moment().format("HH:mm")).replace(/{{\s*title\s*}}/gi,s1));return window.app.foldManager.save(X0,u1),X0}catch(X0){console.error(`Failed to create file: '${a1}'`,X0),new X.Notice("Unable to create new file.")}})}function d1(_,J1){var B1;return(B1=J1[L(_,"quarter")])!=null?B1:null}function D1(){let _={};if(!f())return _;let{vault:J1}=window.app,{folder:B1}=q(),L1=J1.getAbstractFileByPath(X.normalizePath(B1));if(!L1)throw new N1("Failed to find quarterly notes folder");return X.Vault.recurseChildren(L1,(H1)=>{if(H1 instanceof X.TFile){let M1=I(H1,"quarter");if(M1){let u1=L(M1,"quarter");_[u1]=H1}}}),_}var e=class extends Error{};function P1(_){return T0(this,null,function*(){let{vault:J1}=window.app,{template:B1,format:L1,folder:H1}=B(),[M1,u1]=yield C(B1),s1=_.format(L1),a1=yield N(H1,s1);try{let X0=yield J1.create(a1,M1.replace(/{{\s*(date|time)\s*(([+-]\d+)([yqmwdhs]))?\s*(:.+?)?}}/gi,(t1,B0,Y0,S0,D0,x0)=>{let R0=window.moment(),U0=_.clone().set({hour:R0.get("hour"),minute:R0.get("minute"),second:R0.get("second")});if(Y0)U0.add(parseInt(S0,10),D0);if(x0)return U0.format(x0.substring(1).trim());return U0.format(L1)}).replace(/{{\s*date\s*}}/gi,s1).replace(/{{\s*time\s*}}/gi,window.moment().format("HH:mm")).replace(/{{\s*title\s*}}/gi,s1));return window.app.foldManager.save(X0,u1),X0}catch(X0){console.error(`Failed to create file: '${a1}'`,X0),new X.Notice("Unable to create new file.")}})}function Q1(_,J1){var B1;return(B1=J1[L(_,"year")])!=null?B1:null}function O1(){let _={};if(!j())return _;let{vault:J1}=window.app,{folder:B1}=B(),L1=J1.getAbstractFileByPath(X.normalizePath(B1));if(!L1)throw new e("Failed to find yearly notes folder");return X.Vault.recurseChildren(L1,(H1)=>{if(H1 instanceof X.TFile){let M1=I(H1,"year");if(M1){let u1=L(M1,"year");_[u1]=H1}}}),_}function S1(){var _,J1;let{app:B1}=window,L1=B1.internalPlugins.plugins["daily-notes"];if(L1&&L1.enabled)return!0;let H1=B1.plugins.getPlugin("periodic-notes");return H1&&((J1=(_=H1.settings)==null?void 0:_.daily)==null?void 0:J1.enabled)}function k(){var _,J1;let{app:B1}=window;if(B1.plugins.getPlugin("calendar"))return!0;let L1=B1.plugins.getPlugin("periodic-notes");return L1&&((J1=(_=L1.settings)==null?void 0:_.weekly)==null?void 0:J1.enabled)}function d(){var _,J1;let{app:B1}=window,L1=B1.plugins.getPlugin("periodic-notes");return L1&&((J1=(_=L1.settings)==null?void 0:_.monthly)==null?void 0:J1.enabled)}function f(){var _,J1;let{app:B1}=window,L1=B1.plugins.getPlugin("periodic-notes");return L1&&((J1=(_=L1.settings)==null?void 0:_.quarterly)==null?void 0:J1.enabled)}function j(){var _,J1;let{app:B1}=window,L1=B1.plugins.getPlugin("periodic-notes");return L1&&((J1=(_=L1.settings)==null?void 0:_.yearly)==null?void 0:J1.enabled)}function m(_){let J1={day:z,week:W,month:$,quarter:q,year:B}[_];return J1()}function Z1(_,J1){return{day:R,month:G1,week:p}[_](J1)}Q.DEFAULT_DAILY_NOTE_FORMAT=Z,Q.DEFAULT_MONTHLY_NOTE_FORMAT=G,Q.DEFAULT_QUARTERLY_NOTE_FORMAT=Y,Q.DEFAULT_WEEKLY_NOTE_FORMAT=J,Q.DEFAULT_YEARLY_NOTE_FORMAT=H,Q.appHasDailyNotesPluginLoaded=S1,Q.appHasMonthlyNotesPluginLoaded=d,Q.appHasQuarterlyNotesPluginLoaded=f,Q.appHasWeeklyNotesPluginLoaded=k,Q.appHasYearlyNotesPluginLoaded=j,Q.createDailyNote=R,Q.createMonthlyNote=G1,Q.createPeriodicNote=Z1,Q.createQuarterlyNote=j1,Q.createWeeklyNote=p,Q.createYearlyNote=P1,Q.getAllDailyNotes=S,Q.getAllMonthlyNotes=C1,Q.getAllQuarterlyNotes=D1,Q.getAllWeeklyNotes=t,Q.getAllYearlyNotes=O1,Q.getDailyNote=T,Q.getDailyNoteSettings=z,Q.getDateFromFile=I,Q.getDateFromPath=E,Q.getDateUID=L,Q.getMonthlyNote=V1,Q.getMonthlyNoteSettings=$,Q.getPeriodicNoteSettings=m,Q.getQuarterlyNote=d1,Q.getQuarterlyNoteSettings=q,Q.getTemplateInfo=C,Q.getWeeklyNote=n,Q.getWeeklyNoteSettings=W,Q.getYearlyNote=Q1,Q.getYearlyNoteSettings=B}}),ho=W1({"node_modules/obsidian-dataview/lib/index.js"(Q){Object.defineProperty(Q,"__esModule",{value:!0}),require("obsidian");var X=class extends Error{},Z=class extends X{constructor(U){super(`Invalid DateTime: ${U.toMessage()}`)}},J=class extends X{constructor(U){super(`Invalid Interval: ${U.toMessage()}`)}},G=class extends X{constructor(U){super(`Invalid Duration: ${U.toMessage()}`)}},Y=class extends X{},H=class extends X{constructor(U){super(`Invalid unit ${U}`)}},K=class extends X{},z=class extends X{constructor(){super("Zone is an abstract class")}},W="numeric",$="short",q="long",B={year:W,month:W,day:W},D={year:W,month:$,day:W},F={year:W,month:$,day:W,weekday:$},P={year:W,month:q,day:W},N={year:W,month:q,day:W,weekday:q},C={hour:W,minute:W},L={hour:W,minute:W,second:W},V={hour:W,minute:W,second:W,timeZoneName:$},M={hour:W,minute:W,second:W,timeZoneName:q},I={hour:W,minute:W,hourCycle:"h23"},E={hour:W,minute:W,second:W,hourCycle:"h23"},w={hour:W,minute:W,second:W,hourCycle:"h23",timeZoneName:$},A={hour:W,minute:W,second:W,hourCycle:"h23",timeZoneName:q},R={year:W,month:W,day:W,hour:W,minute:W},T={year:W,month:W,day:W,hour:W,minute:W,second:W},S={year:W,month:$,day:W,hour:W,minute:W},v={year:W,month:$,day:W,hour:W,minute:W,second:W},h={year:W,month:$,day:W,weekday:$,hour:W,minute:W},x={year:W,month:q,day:W,hour:W,minute:W,timeZoneName:$},p={year:W,month:q,day:W,hour:W,minute:W,second:W,timeZoneName:$},n={year:W,month:q,day:W,weekday:q,hour:W,minute:W,timeZoneName:q},t={year:W,month:q,day:W,weekday:q,hour:W,minute:W,second:W,timeZoneName:q},Y1=class{get type(){throw new z}get name(){throw new z}get ianaName(){return this.name}get isUniversal(){throw new z}offsetName(U,O){throw new z}formatOffset(U,O){throw new z}offset(U){throw new z}equals(U){throw new z}get isValid(){throw new z}},G1=null,V1=class extends Y1{static get instance(){if(G1===null)G1=new V1;return G1}get type(){return"system"}get name(){return new Intl.DateTimeFormat().resolvedOptions().timeZone}get isUniversal(){return!1}offsetName(U,{format:O,locale:y}){return gQ(U,O,y)}formatOffset(U,O){return l9(this.offset(U),O)}offset(U){return-new Date(U).getTimezoneOffset()}equals(U){return U.type==="system"}get isValid(){return!0}},C1={};function N1(U){if(!C1[U])C1[U]=new Intl.DateTimeFormat("en-US",{hour12:!1,timeZone:U,year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",era:"short"});return C1[U]}var j1={year:0,month:1,day:2,era:3,hour:4,minute:5,second:6};function d1(U,O){let y=U.format(O).replace(/\u200E/g,""),g=/(\d+)\/(\d+)\/(\d+) (AD|BC),? (\d+):(\d+):(\d+)/.exec(y),[,i,c,a,K1,T1,m1,e1]=g;return[a,i,c,K1,T1,m1,e1]}function D1(U,O){let y=U.formatToParts(O),g=[];for(let i=0;i=0?W0:1000+W0,(v0-_1)/60000}equals(U){return U.type==="iana"&&U.name===this.name}get isValid(){return this.valid}},Q1={};function O1(U,O={}){let y=JSON.stringify([U,O]),g=Q1[y];if(!g)g=new Intl.ListFormat(U,O),Q1[y]=g;return g}var S1={};function k(U,O={}){let y=JSON.stringify([U,O]),g=S1[y];if(!g)g=new Intl.DateTimeFormat(U,O),S1[y]=g;return g}var d={};function f(U,O={}){let y=JSON.stringify([U,O]),g=d[y];if(!g)g=new Intl.NumberFormat(U,O),d[y]=g;return g}var j={};function m(U,O={}){let y=O,{base:g}=y,i=FM(y,["base"]),c=JSON.stringify([U,i]),a=j[c];if(!a)a=new Intl.RelativeTimeFormat(U,O),j[c]=a;return a}var Z1=null;function _(){if(Z1)return Z1;else return Z1=new Intl.DateTimeFormat().resolvedOptions().locale,Z1}function J1(U){let O=U.indexOf("-x-");if(O!==-1)U=U.substring(0,O);let y=U.indexOf("-u-");if(y===-1)return[U];else{let g,i;try{g=k(U).resolvedOptions(),i=U}catch(K1){let T1=U.substring(0,y);g=k(T1).resolvedOptions(),i=T1}let{numberingSystem:c,calendar:a}=g;return[i,c,a]}}function B1(U,O,y){if(y||O){if(!U.includes("-u-"))U+="-u";if(y)U+=`-ca-${y}`;if(O)U+=`-nu-${O}`;return U}else return U}function L1(U){let O=[];for(let y=1;y<=12;y++){let g=Z0.utc(2009,y,1);O.push(U(g))}return O}function H1(U){let O=[];for(let y=1;y<=7;y++){let g=Z0.utc(2016,11,13+y);O.push(U(g))}return O}function M1(U,O,y,g){let i=U.listingMode();if(i==="error")return null;else if(i==="en")return y(O);else return g(O)}function u1(U){if(U.numberingSystem&&U.numberingSystem!=="latn")return!1;else return U.numberingSystem==="latn"||!U.locale||U.locale.startsWith("en")||new Intl.DateTimeFormat(U.intl).resolvedOptions().numberingSystem==="latn"}var s1=class{constructor(U,O,y){this.padTo=y.padTo||0,this.floor=y.floor||!1;let g=y,{padTo:i,floor:c}=g,a=FM(g,["padTo","floor"]);if(!O||Object.keys(a).length>0){let K1=K0({useGrouping:!1},y);if(y.padTo>0)K1.minimumIntegerDigits=y.padTo;this.inf=f(U,K1)}}format(U){if(this.inf){let O=this.floor?Math.floor(U):U;return this.inf.format(O)}else{let O=this.floor?Math.floor(U):B6(U,3);return M0(O,this.padTo)}}},a1=class{constructor(U,O,y){this.opts=y,this.originalZone=void 0;let g=void 0;if(this.opts.timeZone)this.dt=U;else if(U.zone.type==="fixed"){let c=-1*(U.offset/60),a=c>=0?`Etc/GMT+${c}`:`Etc/GMT${c}`;if(U.offset!==0&&P1.create(a).valid)g=a,this.dt=U;else g="UTC",this.dt=U.offset===0?U:U.setZone("UTC").plus({minutes:U.offset}),this.originalZone=U.zone}else if(U.zone.type==="system")this.dt=U;else if(U.zone.type==="iana")this.dt=U,g=U.zone.name;else g="UTC",this.dt=U.setZone("UTC").plus({minutes:U.offset}),this.originalZone=U.zone;let i=K0({},this.opts);i.timeZone=i.timeZone||g,this.dtf=k(O,i)}format(){if(this.originalZone)return this.formatToParts().map(({value:U})=>U).join("");return this.dtf.format(this.dt.toJSDate())}formatToParts(){let U=this.dtf.formatToParts(this.dt.toJSDate());if(this.originalZone)return U.map((O)=>{if(O.type==="timeZoneName"){let y=this.originalZone.offsetName(this.dt.ts,{locale:this.dt.locale,format:this.opts.timeZoneName});return m9(K0({},O),{value:y})}else return O});return U}resolvedOptions(){return this.dtf.resolvedOptions()}},X0=class{constructor(U,O,y){if(this.opts=K0({style:"long"},y),!O&&e8())this.rtf=m(U,y)}format(U,O){if(this.rtf)return this.rtf.format(U,O);else return z1(O,U,this.opts.numeric,this.opts.style!=="long")}formatToParts(U,O){if(this.rtf)return this.rtf.formatToParts(U,O);else return[]}},t1=class{static fromOpts(U){return t1.create(U.locale,U.numberingSystem,U.outputCalendar,U.defaultToEN)}static create(U,O,y,g=!1){let i=U||J0.defaultLocale,c=i||(g?"en-US":_()),a=O||J0.defaultNumberingSystem,K1=y||J0.defaultOutputCalendar;return new t1(c,a,K1,i)}static resetCache(){Z1=null,S1={},d={},j={}}static fromObject({locale:U,numberingSystem:O,outputCalendar:y}={}){return t1.create(U,O,y)}constructor(U,O,y,g){let[i,c,a]=J1(U);this.locale=i,this.numberingSystem=O||c||null,this.outputCalendar=y||a||null,this.intl=B1(this.locale,this.numberingSystem,this.outputCalendar),this.weekdaysCache={format:{},standalone:{}},this.monthsCache={format:{},standalone:{}},this.meridiemCache=null,this.eraCache={},this.specifiedLocale=g,this.fastNumbersCached=null}get fastNumbers(){if(this.fastNumbersCached==null)this.fastNumbersCached=u1(this);return this.fastNumbersCached}listingMode(){let U=this.isEnglish(),O=(this.numberingSystem===null||this.numberingSystem==="latn")&&(this.outputCalendar===null||this.outputCalendar==="gregory");return U&&O?"en":"intl"}clone(U){if(!U||Object.getOwnPropertyNames(U).length===0)return this;else return t1.create(U.locale||this.specifiedLocale,U.numberingSystem||this.numberingSystem,U.outputCalendar||this.outputCalendar,U.defaultToEN||!1)}redefaultToEN(U={}){return this.clone(m9(K0({},U),{defaultToEN:!0}))}redefaultToSystem(U={}){return this.clone(m9(K0({},U),{defaultToEN:!1}))}months(U,O=!1){return M1(this,U,sX,()=>{let y=O?{month:U,day:"numeric"}:{month:U},g=O?"format":"standalone";if(!this.monthsCache[g][U])this.monthsCache[g][U]=L1((i)=>this.extract(i,y,"month"));return this.monthsCache[g][U]})}weekdays(U,O=!1){return M1(this,U,eX,()=>{let y=O?{weekday:U,year:"numeric",month:"long",day:"numeric"}:{weekday:U},g=O?"format":"standalone";if(!this.weekdaysCache[g][U])this.weekdaysCache[g][U]=H1((i)=>this.extract(i,y,"weekday"));return this.weekdaysCache[g][U]})}meridiems(){return M1(this,void 0,()=>QJ,()=>{if(!this.meridiemCache){let U={hour:"numeric",hourCycle:"h12"};this.meridiemCache=[Z0.utc(2016,11,13,9),Z0.utc(2016,11,13,19)].map((O)=>this.extract(O,U,"dayperiod"))}return this.meridiemCache})}eras(U){return M1(this,U,ZJ,()=>{let O={era:U};if(!this.eraCache[U])this.eraCache[U]=[Z0.utc(-40,1,1),Z0.utc(2017,1,1)].map((y)=>this.extract(y,O,"era"));return this.eraCache[U]})}extract(U,O,y){let g=this.dtFormatter(U,O),i=g.formatToParts(),c=i.find((a)=>a.type.toLowerCase()===y);return c?c.value:null}numberFormatter(U={}){return new s1(this.intl,U.forceSimple||this.fastNumbers,U)}dtFormatter(U,O={}){return new a1(U,this.intl,O)}relFormatter(U={}){return new X0(this.intl,this.isEnglish(),U)}listFormatter(U={}){return O1(this.intl,U)}isEnglish(){return this.locale==="en"||this.locale.toLowerCase()==="en-us"||new Intl.DateTimeFormat(this.intl).resolvedOptions().locale.startsWith("en-us")}equals(U){return this.locale===U.locale&&this.numberingSystem===U.numberingSystem&&this.outputCalendar===U.outputCalendar}},B0=null,Y0=class extends Y1{static get utcInstance(){if(B0===null)B0=new Y0(0);return B0}static instance(U){return U===0?Y0.utcInstance:new Y0(U)}static parseSpecifier(U){if(U){let O=U.match(/^utc(?:([+-]\d{1,2})(?::(\d{2}))?)?$/i);if(O)return new Y0(d8(O[1],O[2]))}return null}constructor(U){super();this.fixed=U}get type(){return"fixed"}get name(){return this.fixed===0?"UTC":`UTC${l9(this.fixed,"narrow")}`}get ianaName(){if(this.fixed===0)return"Etc/UTC";else return`Etc/GMT${l9(-this.fixed,"narrow")}`}offsetName(){return this.name}formatOffset(U,O){return l9(this.fixed,O)}get isUniversal(){return!0}offset(){return this.fixed}equals(U){return U.type==="fixed"&&U.fixed===this.fixed}get isValid(){return!0}},S0=class extends Y1{constructor(U){super();this.zoneName=U}get type(){return"invalid"}get name(){return this.zoneName}get isUniversal(){return!1}offsetName(){return null}formatOffset(){return""}offset(){return NaN}equals(){return!1}get isValid(){return!1}};function D0(U,O){if(v1(U)||U===null)return O;else if(U instanceof Y1)return U;else if(I6(U)){let y=U.toLowerCase();if(y==="default")return O;else if(y==="local"||y==="system")return V1.instance;else if(y==="utc"||y==="gmt")return Y0.utcInstance;else return Y0.parseSpecifier(y)||P1.create(U)}else if(W6(U))return Y0.instance(U);else if(typeof U==="object"&&"offset"in U&&typeof U.offset==="function")return U;else return new S0(U)}var x0=()=>Date.now(),R0="system",U0=null,$1=null,U1=null,z0=60,L0,J0=class{static get now(){return x0}static set now(U){x0=U}static set defaultZone(U){R0=U}static get defaultZone(){return D0(R0,V1.instance)}static get defaultLocale(){return U0}static set defaultLocale(U){U0=U}static get defaultNumberingSystem(){return $1}static set defaultNumberingSystem(U){$1=U}static get defaultOutputCalendar(){return U1}static set defaultOutputCalendar(U){U1=U}static get twoDigitCutoffYear(){return z0}static set twoDigitCutoffYear(U){z0=U%100}static get throwOnInvalid(){return L0}static set throwOnInvalid(U){L0=U}static resetCaches(){t1.resetCache(),P1.resetCache()}};function v1(U){return typeof U==="undefined"}function W6(U){return typeof U==="number"}function j6(U){return typeof U==="number"&&U%1===0}function I6(U){return typeof U==="string"}function i6(U){return Object.prototype.toString.call(U)==="[object Date]"}function e8(){try{return typeof Intl!=="undefined"&&!!Intl.RelativeTimeFormat}catch(U){return!1}}function _8(U){return Array.isArray(U)?U:[U]}function b0(U,O,y){if(U.length===0)return;return U.reduce((g,i)=>{let c=[O(i),i];if(!g)return c;else if(y(g[0],c[0])===g[0])return g;else return c},null)[1]}function R6(U,O){return O.reduce((y,g)=>{return y[g]=U[g],y},{})}function r0(U,O){return Object.prototype.hasOwnProperty.call(U,O)}function u0(U,O,y){return j6(U)&&U>=O&&U<=y}function q6(U,O){return U-O*Math.floor(U/O)}function M0(U,O=2){let y=U<0,g;if(y)g="-"+(""+-U).padStart(O,"0");else g=(""+U).padStart(O,"0");return g}function _0(U){if(v1(U)||U===null||U==="")return;else return parseInt(U,10)}function i0(U){if(v1(U)||U===null||U==="")return;else return parseFloat(U)}function H6(U){if(v1(U)||U===null||U==="")return;else{let O=parseFloat("0."+U)*1000;return Math.floor(O)}}function B6(U,O,y=!1){let g=Mo(10,O);return(y?Math.trunc:Math.round)(U*g)/g}function Z6(U){return U%4===0&&(U%100!==0||U%400===0)}function e0(U){return Z6(U)?366:365}function z6(U,O){let y=q6(O-1,12)+1,g=U+(O-y)/12;if(y===2)return Z6(g)?29:28;else return[31,null,31,30,31,30,31,31,30,31,30,31][y-1]}function X6(U){let O=Date.UTC(U.year,U.month-1,U.day,U.hour,U.minute,U.second,U.millisecond);if(U.year<100&&U.year>=0)O=new Date(O),O.setUTCFullYear(U.year,U.month-1,U.day);return+O}function n0(U){let O=(U+Math.floor(U/4)-Math.floor(U/100)+Math.floor(U/400))%7,y=U-1,g=(y+Math.floor(y/4)-Math.floor(y/100)+Math.floor(y/400))%7;return O===4||g===3?53:52}function U6(U){if(U>99)return U;else return U>J0.twoDigitCutoffYear?1900+U:2000+U}function gQ(U,O,y,g=null){let i=new Date(U),c={hourCycle:"h23",year:"numeric",month:"2-digit",day:"2-digit",hour:"2-digit",minute:"2-digit"};if(g)c.timeZone=g;let a=K0({timeZoneName:O},c),K1=new Intl.DateTimeFormat(y,a).formatToParts(i).find((T1)=>T1.type.toLowerCase()==="timezonename");return K1?K1.value:null}function d8(U,O){let y=parseInt(U,10);if(Number.isNaN(y))y=0;let g=parseInt(O,10)||0,i=y<0||Object.is(y,-0)?-g:g;return y*60+i}function qQ(U){let O=Number(U);if(typeof U==="boolean"||U===""||Number.isNaN(O))throw new K(`Invalid unit value ${U}`);return O}function hQ(U,O){let y={};for(let g in U)if(r0(U,g)){let i=U[g];if(i===void 0||i===null)continue;y[O(g)]=qQ(i)}return y}function l9(U,O){let y=Math.trunc(Math.abs(U/60)),g=Math.trunc(Math.abs(U%60)),i=U>=0?"+":"-";switch(O){case"short":return`${i}${M0(y,2)}:${M0(g,2)}`;case"narrow":return`${i}${y}${g>0?`:${g}`:""}`;case"techie":return`${i}${M0(y,2)}${M0(g,2)}`;default:throw new RangeError(`Value format ${O} is out of range for property format`)}}function N9(U){return R6(U,["hour","minute","second","millisecond"])}var D3=["January","February","March","April","May","June","July","August","September","October","November","December"],aX=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],L3=["J","F","M","A","M","J","J","A","S","O","N","D"];function sX(U){switch(U){case"narrow":return[...L3];case"short":return[...aX];case"long":return[...D3];case"numeric":return["1","2","3","4","5","6","7","8","9","10","11","12"];case"2-digit":return["01","02","03","04","05","06","07","08","09","10","11","12"];default:return null}}var tX=["Monday","Tuesday","Wednesday","Thursday","Friday","Saturday","Sunday"],rX=["Mon","Tue","Wed","Thu","Fri","Sat","Sun"],C3=["M","T","W","T","F","S","S"];function eX(U){switch(U){case"narrow":return[...C3];case"short":return[...rX];case"long":return[...tX];case"numeric":return["1","2","3","4","5","6","7"];default:return null}}var QJ=["AM","PM"],u8=["Before Christ","Anno Domini"],N3=["BC","AD"],T3=["B","A"];function ZJ(U){switch(U){case"narrow":return[...T3];case"short":return[...N3];case"long":return[...u8];default:return null}}function M3(U){return QJ[U.hour<12?0:1]}function b(U,O){return eX(O)[U.weekday-1]}function u(U,O){return sX(O)[U.month-1]}function o(U,O){return ZJ(O)[U.year<0?0:1]}function z1(U,O,y="always",g=!1){let i={years:["year","yr."],quarters:["quarter","qtr."],months:["month","mo."],weeks:["week","wk."],days:["day","day","days"],hours:["hour","hr."],minutes:["minute","min."],seconds:["second","sec."]},c=["hours","minutes","seconds"].indexOf(U)===-1;if(y==="auto"&&c){let v0=U==="days";switch(O){case 1:return v0?"tomorrow":`next ${i[U][0]}`;case-1:return v0?"yesterday":`last ${i[U][0]}`;case 0:return v0?"today":`this ${i[U][0]}`}}let a=Object.is(O,-0)||O<0,K1=Math.abs(O),T1=K1===1,m1=i[U],e1=g?T1?m1[1]:m1[2]||m1[1]:T1?i[U][0]:U;return a?`${K1} ${e1} ago`:`in ${K1} ${e1}`}function A1(U,O){let y="";for(let g of U)if(g.literal)y+=g.val;else y+=O(g.val);return y}var w1={D:B,DD:D,DDD:P,DDDD:N,t:C,tt:L,ttt:V,tttt:M,T:I,TT:E,TTT:w,TTTT:A,f:R,ff:S,fff:x,ffff:n,F:T,FF:v,FFF:p,FFFF:t},g1=class{static create(U,O={}){return new g1(U,O)}static parseFormat(U){let O=null,y="",g=!1,i=[];for(let c=0;c0)i.push({literal:g||/^\s+$/.test(y),val:y});O=null,y="",g=!g}else if(g)y+=a;else if(a===O)y+=a;else{if(y.length>0)i.push({literal:/^\s+$/.test(y),val:y});y=a,O=a}}if(y.length>0)i.push({literal:g||/^\s+$/.test(y),val:y});return i}static macroTokenToFormatOpts(U){return w1[U]}constructor(U,O){this.opts=O,this.loc=U,this.systemLoc=null}formatWithSystemDefault(U,O){if(this.systemLoc===null)this.systemLoc=this.loc.redefaultToSystem();return this.systemLoc.dtFormatter(U,K0(K0({},this.opts),O)).format()}dtFormatter(U,O={}){return this.loc.dtFormatter(U,K0(K0({},this.opts),O))}formatDateTime(U,O){return this.dtFormatter(U,O).format()}formatDateTimeParts(U,O){return this.dtFormatter(U,O).formatToParts()}formatInterval(U,O){return this.dtFormatter(U.start,O).dtf.formatRange(U.start.toJSDate(),U.end.toJSDate())}resolvedOptions(U,O){return this.dtFormatter(U,O).resolvedOptions()}num(U,O=0){if(this.opts.forceSimple)return M0(U,O);let y=K0({},this.opts);if(O>0)y.padTo=O;return this.loc.numberFormatter(y).format(U)}formatDateTimeFromString(U,O){let y=this.loc.listingMode()==="en",g=this.loc.outputCalendar&&this.loc.outputCalendar!=="gregory",i=(_1,W0)=>this.loc.extract(U,_1,W0),c=(_1)=>{if(U.isOffsetFixed&&U.offset===0&&_1.allowZ)return"Z";return U.isValid?U.zone.formatOffset(U.ts,_1.format):""},a=()=>y?M3(U):i({hour:"numeric",hourCycle:"h12"},"dayperiod"),K1=(_1,W0)=>y?u(U,_1):i(W0?{month:_1}:{month:_1,day:"numeric"},"month"),T1=(_1,W0)=>y?b(U,_1):i(W0?{weekday:_1}:{weekday:_1,month:"long",day:"numeric"},"weekday"),m1=(_1)=>{let W0=g1.macroTokenToFormatOpts(_1);if(W0)return this.formatWithSystemDefault(U,W0);else return _1},e1=(_1)=>y?o(U,_1):i({era:_1},"era"),v0=(_1)=>{switch(_1){case"S":return this.num(U.millisecond);case"u":case"SSS":return this.num(U.millisecond,3);case"s":return this.num(U.second);case"ss":return this.num(U.second,2);case"uu":return this.num(Math.floor(U.millisecond/10),2);case"uuu":return this.num(Math.floor(U.millisecond/100));case"m":return this.num(U.minute);case"mm":return this.num(U.minute,2);case"h":return this.num(U.hour%12===0?12:U.hour%12);case"hh":return this.num(U.hour%12===0?12:U.hour%12,2);case"H":return this.num(U.hour);case"HH":return this.num(U.hour,2);case"Z":return c({format:"narrow",allowZ:this.opts.allowZ});case"ZZ":return c({format:"short",allowZ:this.opts.allowZ});case"ZZZ":return c({format:"techie",allowZ:this.opts.allowZ});case"ZZZZ":return U.zone.offsetName(U.ts,{format:"short",locale:this.loc.locale});case"ZZZZZ":return U.zone.offsetName(U.ts,{format:"long",locale:this.loc.locale});case"z":return U.zoneName;case"a":return a();case"d":return g?i({day:"numeric"},"day"):this.num(U.day);case"dd":return g?i({day:"2-digit"},"day"):this.num(U.day,2);case"c":return this.num(U.weekday);case"ccc":return T1("short",!0);case"cccc":return T1("long",!0);case"ccccc":return T1("narrow",!0);case"E":return this.num(U.weekday);case"EEE":return T1("short",!1);case"EEEE":return T1("long",!1);case"EEEEE":return T1("narrow",!1);case"L":return g?i({month:"numeric",day:"numeric"},"month"):this.num(U.month);case"LL":return g?i({month:"2-digit",day:"numeric"},"month"):this.num(U.month,2);case"LLL":return K1("short",!0);case"LLLL":return K1("long",!0);case"LLLLL":return K1("narrow",!0);case"M":return g?i({month:"numeric"},"month"):this.num(U.month);case"MM":return g?i({month:"2-digit"},"month"):this.num(U.month,2);case"MMM":return K1("short",!1);case"MMMM":return K1("long",!1);case"MMMMM":return K1("narrow",!1);case"y":return g?i({year:"numeric"},"year"):this.num(U.year);case"yy":return g?i({year:"2-digit"},"year"):this.num(U.year.toString().slice(-2),2);case"yyyy":return g?i({year:"numeric"},"year"):this.num(U.year,4);case"yyyyyy":return g?i({year:"numeric"},"year"):this.num(U.year,6);case"G":return e1("short");case"GG":return e1("long");case"GGGGG":return e1("narrow");case"kk":return this.num(U.weekYear.toString().slice(-2),2);case"kkkk":return this.num(U.weekYear,4);case"W":return this.num(U.weekNumber);case"WW":return this.num(U.weekNumber,2);case"o":return this.num(U.ordinal);case"ooo":return this.num(U.ordinal,3);case"q":return this.num(U.quarter);case"qq":return this.num(U.quarter,2);case"X":return this.num(Math.floor(U.ts/1000));case"x":return this.num(U.ts);default:return m1(_1)}};return A1(g1.parseFormat(O),v0)}formatDurationFromString(U,O){let y=(K1)=>{switch(K1[0]){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":return"hour";case"d":return"day";case"w":return"week";case"M":return"month";case"y":return"year";default:return null}},g=(K1)=>(T1)=>{let m1=y(T1);if(m1)return this.num(K1.get(m1),T1.length);else return T1},i=g1.parseFormat(O),c=i.reduce((K1,{literal:T1,val:m1})=>T1?K1:K1.concat(m1),[]),a=U.shiftTo(...c.map(y).filter((K1)=>K1));return A1(i,g(a))}},x1=class{constructor(U,O){this.reason=U,this.explanation=O}toMessage(){if(this.explanation)return`${this.reason}: ${this.explanation}`;else return this.reason}},o0=/[A-Za-z_+-]{1,256}(?::?\/[A-Za-z0-9_+-]{1,256}(?:\/[A-Za-z0-9_+-]{1,256})?)?/;function V6(...U){let O=U.reduce((y,g)=>y+g.source,"");return RegExp(`^${O}$`)}function b6(...U){return(O)=>U.reduce(([y,g,i],c)=>{let[a,K1,T1]=c(O,i);return[K0(K0({},y),a),K1||g,T1]},[{},null,1]).slice(0,2)}function v6(U,...O){if(U==null)return[null,null];for(let[y,g]of O){let i=y.exec(U);if(i)return g(i)}return[null,null]}function Q9(...U){return(O,y)=>{let g={},i;for(i=0;iW0!==void 0&&(J6||W0&&e1)?-W0:W0;return[{years:_1(i0(y)),months:_1(i0(g)),weeks:_1(i0(i)),days:_1(i0(c)),hours:_1(i0(a)),minutes:_1(i0(K1)),seconds:_1(i0(T1),T1==="-0"),milliseconds:_1(H6(m1),v0)}]}var yA={GMT:0,EDT:-240,EST:-300,CDT:-300,CST:-360,MDT:-360,MST:-420,PDT:-420,PST:-480};function I3(U,O,y,g,i,c,a){let K1={year:O.length===2?U6(_0(O)):_0(O),month:aX.indexOf(y)+1,day:_0(g),hour:_0(i),minute:_0(c)};if(a)K1.second=_0(a);if(U)K1.weekday=U.length>3?tX.indexOf(U)+1:rX.indexOf(U)+1;return K1}var xA=/^(?:(Mon|Tue|Wed|Thu|Fri|Sat|Sun),\s)?(\d{1,2})\s(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)\s(\d{2,4})\s(\d\d):(\d\d)(?::(\d\d))?\s(?:(UT|GMT|[ECMP][SD]T)|([Zz])|(?:([+-]\d\d)(\d\d)))$/;function vA(U){let[,O,y,g,i,c,a,K1,T1,m1,e1,v0]=U,_1=I3(O,i,g,y,c,a,K1),W0;if(T1)W0=yA[T1];else if(m1)W0=0;else W0=d8(e1,v0);return[_1,new Y0(W0)]}function gA(U){return U.replace(/\([^()]*\)|[\n\t]/g," ").replace(/(\s\s+)/g," ").trim()}var hA=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun), (\d\d) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) (\d{4}) (\d\d):(\d\d):(\d\d) GMT$/,fA=/^(Monday|Tuesday|Wednesday|Thursday|Friday|Saturday|Sunday), (\d\d)-(Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec)-(\d\d) (\d\d):(\d\d):(\d\d) GMT$/,bA=/^(Mon|Tue|Wed|Thu|Fri|Sat|Sun) (Jan|Feb|Mar|Apr|May|Jun|Jul|Aug|Sep|Oct|Nov|Dec) ( \d|\d\d) (\d\d):(\d\d):(\d\d) (\d{4})$/;function HB(U){let[,O,y,g,i,c,a,K1]=U;return[I3(O,i,g,y,c,a,K1),Y0.utcInstance]}function mA(U){let[,O,y,g,i,c,a,K1]=U;return[I3(O,K1,y,g,i,c,a),Y0.utcInstance]}var _A=V6(U7,Z9),dA=V6(MA,Z9),uA=V6(IA,Z9),pA=V6(j4),zB=b6(EA,wZ,V7,P7),lA=b6(RA,wZ,V7,P7),cA=b6(AA,wZ,V7,P7),iA=b6(wZ,V7,P7);function nA(U){return v6(U,[_A,zB],[dA,lA],[uA,cA],[pA,iA])}function oA(U){return v6(gA(U),[xA,vA])}function aA(U){return v6(U,[hA,HB],[fA,HB],[bA,mA])}function sA(U){return v6(U,[SA,kA])}var tA=b6(wZ);function rA(U){return v6(U,[jA,tA])}var eA=V6(OA,wA),QO=V6(qB),ZO=b6(wZ,V7,P7);function XO(U){return v6(U,[eA,zB],[QO,ZO])}var KB="Invalid Duration",$B={weeks:{days:7,hours:168,minutes:10080,seconds:604800,milliseconds:604800000},days:{hours:24,minutes:1440,seconds:86400,milliseconds:86400000},hours:{minutes:60,seconds:3600,milliseconds:3600000},minutes:{seconds:60,milliseconds:60000},seconds:{milliseconds:1000}},JO=K0({years:{quarters:4,months:12,weeks:52,days:365,hours:8760,minutes:525600,seconds:31536000,milliseconds:31536000000},quarters:{months:3,weeks:13,days:91,hours:2184,minutes:131040,seconds:7862400,milliseconds:7862400000},months:{weeks:4,days:30,hours:720,minutes:43200,seconds:2592000,milliseconds:2592000000}},$B),X9=365.2425,EZ=30.436875,GO=K0({years:{quarters:4,months:12,weeks:X9/7,days:X9,hours:X9*24,minutes:X9*24*60,seconds:X9*24*60*60,milliseconds:X9*24*60*60*1000},quarters:{months:3,weeks:X9/28,days:X9/4,hours:X9*24/4,minutes:X9*24*60/4,seconds:X9*24*60*60/4,milliseconds:X9*24*60*60*1000/4},months:{weeks:EZ/7,days:EZ,hours:EZ*24,minutes:EZ*24*60,seconds:EZ*24*60*60,milliseconds:EZ*24*60*60*1000}},$B),S4=["years","quarters","months","weeks","days","hours","minutes","seconds","milliseconds"],YO=S4.slice(0).reverse();function fQ(U,O,y=!1){let g={values:y?O.values:K0(K0({},U.values),O.values||{}),loc:U.loc.clone(O.loc),conversionAccuracy:O.conversionAccuracy||U.conversionAccuracy,matrix:O.matrix||U.matrix};return new o1(g)}function BB(U,O){var y;let g=(y=O.milliseconds)!=null?y:0;for(let i of YO.slice(1))if(O[i])g+=O[i]*U[i].milliseconds;return g}function UB(U,O){let y=BB(U,O)<0?-1:1;S4.reduceRight((g,i)=>{if(!v1(O[i])){if(g){let c=O[g]*y,a=U[i][g],K1=Math.floor(c/a);O[i]+=K1*y,O[g]-=K1*a*y}return i}else return g},null),S4.reduce((g,i)=>{if(!v1(O[i])){if(g){let c=O[g]%1;O[g]-=c,O[i]+=c*U[g][i]}return i}else return g},null)}function WO(U){let O={};for(let[y,g]of Object.entries(U))if(g!==0)O[y]=g;return O}var o1=class{constructor(U){let O=U.conversionAccuracy==="longterm"||!1,y=O?GO:JO;if(U.matrix)y=U.matrix;this.values=U.values,this.loc=U.loc||t1.create(),this.conversionAccuracy=O?"longterm":"casual",this.invalid=U.invalid||null,this.matrix=y,this.isLuxonDuration=!0}static fromMillis(U,O){return o1.fromObject({milliseconds:U},O)}static fromObject(U,O={}){if(U==null||typeof U!=="object")throw new K(`Duration.fromObject: argument expected to be an object, got ${U===null?"null":typeof U}`);return new o1({values:hQ(U,o1.normalizeUnit),loc:t1.fromObject(O),conversionAccuracy:O.conversionAccuracy,matrix:O.matrix})}static fromDurationLike(U){if(W6(U))return o1.fromMillis(U);else if(o1.isDuration(U))return U;else if(typeof U==="object")return o1.fromObject(U);else throw new K(`Unknown duration argument ${U} of type ${typeof U}`)}static fromISO(U,O){let[y]=sA(U);if(y)return o1.fromObject(y,O);else return o1.invalid("unparsable",`the input "${U}" can't be parsed as ISO 8601`)}static fromISOTime(U,O){let[y]=rA(U);if(y)return o1.fromObject(y,O);else return o1.invalid("unparsable",`the input "${U}" can't be parsed as ISO 8601`)}static invalid(U,O=null){if(!U)throw new K("need to specify a reason the Duration is invalid");let y=U instanceof x1?U:new x1(U,O);if(J0.throwOnInvalid)throw new G(y);else return new o1({invalid:y})}static normalizeUnit(U){let O={year:"years",years:"years",quarter:"quarters",quarters:"quarters",month:"months",months:"months",week:"weeks",weeks:"weeks",day:"days",days:"days",hour:"hours",hours:"hours",minute:"minutes",minutes:"minutes",second:"seconds",seconds:"seconds",millisecond:"milliseconds",milliseconds:"milliseconds"}[U?U.toLowerCase():U];if(!O)throw new H(U);return O}static isDuration(U){return U&&U.isLuxonDuration||!1}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}toFormat(U,O={}){let y=m9(K0({},O),{floor:O.round!==!1&&O.floor!==!1});return this.isValid?g1.create(this.loc,y).formatDurationFromString(this,U):KB}toHuman(U={}){if(!this.isValid)return KB;let O=S4.map((y)=>{let g=this.values[y];if(v1(g))return null;return this.loc.numberFormatter(m9(K0({style:"unit",unitDisplay:"long"},U),{unit:y.slice(0,-1)})).format(g)}).filter((y)=>y);return this.loc.listFormatter(K0({type:"conjunction",style:U.listStyle||"narrow"},U)).format(O)}toObject(){if(!this.isValid)return{};return K0({},this.values)}toISO(){if(!this.isValid)return null;let U="P";if(this.years!==0)U+=this.years+"Y";if(this.months!==0||this.quarters!==0)U+=this.months+this.quarters*3+"M";if(this.weeks!==0)U+=this.weeks+"W";if(this.days!==0)U+=this.days+"D";if(this.hours!==0||this.minutes!==0||this.seconds!==0||this.milliseconds!==0)U+="T";if(this.hours!==0)U+=this.hours+"H";if(this.minutes!==0)U+=this.minutes+"M";if(this.seconds!==0||this.milliseconds!==0)U+=B6(this.seconds+this.milliseconds/1000,3)+"S";if(U==="P")U+="T0S";return U}toISOTime(U={}){if(!this.isValid)return null;let O=this.toMillis();if(O<0||O>=86400000)return null;return U=m9(K0({suppressMilliseconds:!1,suppressSeconds:!1,includePrefix:!1,format:"extended"},U),{includeOffset:!1}),Z0.fromMillis(O,{zone:"UTC"}).toISOTime(U)}toJSON(){return this.toISO()}toString(){return this.toISO()}toMillis(){if(!this.isValid)return NaN;return BB(this.matrix,this.values)}valueOf(){return this.toMillis()}plus(U){if(!this.isValid)return this;let O=o1.fromDurationLike(U),y={};for(let g of S4)if(r0(O.values,g)||r0(this.values,g))y[g]=O.get(g)+this.get(g);return fQ(this,{values:y},!0)}minus(U){if(!this.isValid)return this;let O=o1.fromDurationLike(U);return this.plus(O.negate())}mapUnits(U){if(!this.isValid)return this;let O={};for(let y of Object.keys(this.values))O[y]=qQ(U(this.values[y],y));return fQ(this,{values:O},!0)}get(U){return this[o1.normalizeUnit(U)]}set(U){if(!this.isValid)return this;let O=K0(K0({},this.values),hQ(U,o1.normalizeUnit));return fQ(this,{values:O})}reconfigure({locale:U,numberingSystem:O,conversionAccuracy:y,matrix:g}={}){let c={loc:this.loc.clone({locale:U,numberingSystem:O}),matrix:g,conversionAccuracy:y};return fQ(this,c)}as(U){return this.isValid?this.shiftTo(U).get(U):NaN}normalize(){if(!this.isValid)return this;let U=this.toObject();return UB(this.matrix,U),fQ(this,{values:U},!0)}rescale(){if(!this.isValid)return this;let U=WO(this.normalize().shiftToAll().toObject());return fQ(this,{values:U},!0)}shiftTo(...U){if(!this.isValid)return this;if(U.length===0)return this;U=U.map((c)=>o1.normalizeUnit(c));let O={},y={},g=this.toObject(),i;for(let c of S4)if(U.indexOf(c)>=0){i=c;let a=0;for(let T1 in y)a+=this.matrix[T1][c]*y[T1],y[T1]=0;if(W6(g[c]))a+=g[c];let K1=Math.trunc(a);O[c]=K1,y[c]=(a*1000-K1*1000)/1000}else if(W6(g[c]))y[c]=g[c];for(let c in y)if(y[c]!==0)O[i]+=c===i?y[c]:y[c]/this.matrix[i][c];return UB(this.matrix,O),fQ(this,{values:O},!0)}shiftToAll(){if(!this.isValid)return this;return this.shiftTo("years","months","weeks","days","hours","minutes","seconds","milliseconds")}negate(){if(!this.isValid)return this;let U={};for(let O of Object.keys(this.values))U[O]=this.values[O]===0?0:-this.values[O];return fQ(this,{values:U},!0)}get years(){return this.isValid?this.values.years||0:NaN}get quarters(){return this.isValid?this.values.quarters||0:NaN}get months(){return this.isValid?this.values.months||0:NaN}get weeks(){return this.isValid?this.values.weeks||0:NaN}get days(){return this.isValid?this.values.days||0:NaN}get hours(){return this.isValid?this.values.hours||0:NaN}get minutes(){return this.isValid?this.values.minutes||0:NaN}get seconds(){return this.isValid?this.values.seconds||0:NaN}get milliseconds(){return this.isValid?this.values.milliseconds||0:NaN}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}equals(U){if(!this.isValid||!U.isValid)return!1;if(!this.loc.equals(U.loc))return!1;function O(y,g){if(y===void 0||y===0)return g===void 0||g===0;return y===g}for(let y of S4)if(!O(this.values[y],U.values[y]))return!1;return!0}},jZ="Invalid Interval";function qO(U,O){if(!U||!U.isValid)return S6.invalid("missing or invalid start");else if(!O||!O.isValid)return S6.invalid("missing or invalid end");else if(OU}isBefore(U){if(!this.isValid)return!1;return this.e<=U}contains(U){if(!this.isValid)return!1;return this.s<=U&&this.e>U}set({start:U,end:O}={}){if(!this.isValid)return this;return S6.fromDateTimes(U||this.s,O||this.e)}splitAt(...U){if(!this.isValid)return[];let O=U.map(D7).filter((c)=>this.contains(c)).sort(),y=[],{s:g}=this,i=0;while(g+this.e?this.e:c;y.push(S6.fromDateTimes(g,a)),g=a,i+=1}return y}splitBy(U){let O=o1.fromDurationLike(U);if(!this.isValid||!O.isValid||O.as("milliseconds")===0)return[];let{s:y}=this,g=1,i,c=[];while(yK1*g));i=+a>+this.e?this.e:a,c.push(S6.fromDateTimes(y,i)),y=i,g+=1}return c}divideEqually(U){if(!this.isValid)return[];return this.splitBy(this.length()/U).slice(0,U)}overlaps(U){return this.e>U.s&&this.s=U.e}equals(U){if(!this.isValid||!U.isValid)return!1;return this.s.equals(U.s)&&this.e.equals(U.e)}intersection(U){if(!this.isValid)return this;let O=this.s>U.s?this.s:U.s,y=this.e=y)return null;else return S6.fromDateTimes(O,y)}union(U){if(!this.isValid)return this;let O=this.sU.e?this.e:U.e;return S6.fromDateTimes(O,y)}static merge(U){let[O,y]=U.sort((g,i)=>g.s-i.s).reduce(([g,i],c)=>{if(!i)return[g,c];else if(i.overlaps(c)||i.abutsStart(c))return[g,i.union(c)];else return[g.concat([i]),c]},[[],null]);if(y)O.push(y);return O}static xor(U){let O=null,y=0,g=[],i=U.map((K1)=>[{time:K1.s,type:"s"},{time:K1.e,type:"e"}]),c=Array.prototype.concat(...i),a=c.sort((K1,T1)=>K1.time-T1.time);for(let K1 of a)if(y+=K1.type==="s"?1:-1,y===1)O=K1.time;else{if(O&&+O!==+K1.time)g.push(S6.fromDateTimes(O,K1.time));O=null}return S6.merge(g)}difference(...U){return S6.xor([this].concat(U)).map((O)=>this.intersection(O)).filter((O)=>O&&!O.isEmpty())}toString(){if(!this.isValid)return jZ;return`[${this.s.toISO()} – ${this.e.toISO()})`}toLocaleString(U=B,O={}){return this.isValid?g1.create(this.s.loc.clone(O),U).formatInterval(this):jZ}toISO(U){if(!this.isValid)return jZ;return`${this.s.toISO(U)}/${this.e.toISO(U)}`}toISODate(){if(!this.isValid)return jZ;return`${this.s.toISODate()}/${this.e.toISODate()}`}toISOTime(U){if(!this.isValid)return jZ;return`${this.s.toISOTime(U)}/${this.e.toISOTime(U)}`}toFormat(U,{separator:O=" – "}={}){if(!this.isValid)return jZ;return`${this.s.toFormat(U)}${O}${this.e.toFormat(U)}`}toDuration(U,O){if(!this.isValid)return o1.invalid(this.invalidReason);return this.e.diff(this.s,U,O)}mapEndpoints(U){return S6.fromDateTimes(U(this.s),U(this.e))}},XJ=class{static hasDST(U=J0.defaultZone){let O=Z0.now().setZone(U).set({month:12});return!U.isUniversal&&O.offset!==O.set({month:6}).offset}static isValidIANAZone(U){return P1.isValidZone(U)}static normalizeZone(U){return D0(U,J0.defaultZone)}static months(U="long",{locale:O=null,numberingSystem:y=null,locObj:g=null,outputCalendar:i="gregory"}={}){return(g||t1.create(O,y,i)).months(U)}static monthsFormat(U="long",{locale:O=null,numberingSystem:y=null,locObj:g=null,outputCalendar:i="gregory"}={}){return(g||t1.create(O,y,i)).months(U,!0)}static weekdays(U="long",{locale:O=null,numberingSystem:y=null,locObj:g=null}={}){return(g||t1.create(O,y,null)).weekdays(U)}static weekdaysFormat(U="long",{locale:O=null,numberingSystem:y=null,locObj:g=null}={}){return(g||t1.create(O,y,null)).weekdays(U,!0)}static meridiems({locale:U=null}={}){return t1.create(U).meridiems()}static eras(U="short",{locale:O=null}={}){return t1.create(O,null,"gregory").eras(U)}static features(){return{relative:e8()}}};function VB(U,O){let y=(i)=>i.toUTC(0,{keepLocalTime:!0}).startOf("day").valueOf(),g=y(O)-y(U);return Math.floor(o1.fromMillis(g).as("days"))}function HO(U,O,y){let g=[["years",(T1,m1)=>m1.year-T1.year],["quarters",(T1,m1)=>m1.quarter-T1.quarter+(m1.year-T1.year)*4],["months",(T1,m1)=>m1.month-T1.month+(m1.year-T1.year)*12],["weeks",(T1,m1)=>{let e1=VB(T1,m1);return(e1-e1%7)/7}],["days",VB]],i={},c=U,a,K1;for(let[T1,m1]of g)if(y.indexOf(T1)>=0)if(a=T1,i[T1]=m1(U,O),K1=c.plus(i),K1>O){if(i[T1]--,U=c.plus(i),U>O)K1=U,i[T1]--,U=c.plus(i)}else U=K1;return[U,i,K1,a]}function zO(U,O,y,g){let[i,c,a,K1]=HO(U,O,y),T1=O-i,m1=y.filter((v0)=>["hours","minutes","seconds","milliseconds"].indexOf(v0)>=0);if(m1.length===0){if(a0)return o1.fromMillis(T1,g).shiftTo(...m1).plus(e1);else return e1}var R3={arab:"[٠-٩]",arabext:"[۰-۹]",bali:"[᭐-᭙]",beng:"[০-৯]",deva:"[०-९]",fullwide:"[0-9]",gujr:"[૦-૯]",hanidec:"[〇|一|二|三|四|五|六|七|八|九]",khmr:"[០-៩]",knda:"[೦-೯]",laoo:"[໐-໙]",limb:"[᥆-᥏]",mlym:"[൦-൯]",mong:"[᠐-᠙]",mymr:"[၀-၉]",orya:"[୦-୯]",tamldec:"[௦-௯]",telu:"[౦-౯]",thai:"[๐-๙]",tibt:"[༠-༩]",latn:"\\d"},PB={arab:[1632,1641],arabext:[1776,1785],bali:[6992,7001],beng:[2534,2543],deva:[2406,2415],fullwide:[65296,65303],gujr:[2790,2799],khmr:[6112,6121],knda:[3302,3311],laoo:[3792,3801],limb:[6470,6479],mlym:[3430,3439],mong:[6160,6169],mymr:[4160,4169],orya:[2918,2927],tamldec:[3046,3055],telu:[3174,3183],thai:[3664,3673],tibt:[3872,3881]},KO=R3.hanidec.replace(/[\[|\]]/g,"").split("");function $O(U){let O=parseInt(U,10);if(isNaN(O)){O="";for(let y=0;y=c&&g<=a)O+=g-c}}return parseInt(O,10)}else return O}function T9({numberingSystem:U},O=""){return new RegExp(`${R3[U||"latn"]}${O}`)}var BO="missing Intl.DateTimeFormat.formatToParts support";function p0(U,O=(y)=>y){return{regex:U,deser:([y])=>O($O(y))}}var UO=String.fromCharCode(160),FB=`[ ${UO}]`,DB=new RegExp(FB,"g");function VO(U){return U.replace(/\./g,"\\.?").replace(DB,FB)}function LB(U){return U.replace(/\./g,"").replace(DB," ").toLowerCase()}function M9(U,O){if(U===null)return null;else return{regex:RegExp(U.map(VO).join("|")),deser:([y])=>U.findIndex((g)=>LB(y)===LB(g))+O}}function CB(U,O){return{regex:U,deser:([,y,g])=>d8(y,g),groups:O}}function JJ(U){return{regex:U,deser:([O])=>O}}function PO(U){return U.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&")}function FO(U,O){let y=T9(O),g=T9(O,"{2}"),i=T9(O,"{3}"),c=T9(O,"{4}"),a=T9(O,"{6}"),K1=T9(O,"{1,2}"),T1=T9(O,"{1,3}"),m1=T9(O,"{1,6}"),e1=T9(O,"{1,9}"),v0=T9(O,"{2,4}"),_1=T9(O,"{4,6}"),W0=(n6)=>({regex:RegExp(PO(n6.val)),deser:([G9])=>G9,literal:!0}),k6=((n6)=>{if(U.literal)return W0(n6);switch(n6.val){case"G":return M9(O.eras("short"),0);case"GG":return M9(O.eras("long"),0);case"y":return p0(m1);case"yy":return p0(v0,U6);case"yyyy":return p0(c);case"yyyyy":return p0(_1);case"yyyyyy":return p0(a);case"M":return p0(K1);case"MM":return p0(g);case"MMM":return M9(O.months("short",!0),1);case"MMMM":return M9(O.months("long",!0),1);case"L":return p0(K1);case"LL":return p0(g);case"LLL":return M9(O.months("short",!1),1);case"LLLL":return M9(O.months("long",!1),1);case"d":return p0(K1);case"dd":return p0(g);case"o":return p0(T1);case"ooo":return p0(i);case"HH":return p0(g);case"H":return p0(K1);case"hh":return p0(g);case"h":return p0(K1);case"mm":return p0(g);case"m":return p0(K1);case"q":return p0(K1);case"qq":return p0(g);case"s":return p0(K1);case"ss":return p0(g);case"S":return p0(T1);case"SSS":return p0(i);case"u":return JJ(e1);case"uu":return JJ(K1);case"uuu":return p0(y);case"a":return M9(O.meridiems(),0);case"kkkk":return p0(c);case"kk":return p0(v0,U6);case"W":return p0(K1);case"WW":return p0(g);case"E":case"c":return p0(y);case"EEE":return M9(O.weekdays("short",!1),1);case"EEEE":return M9(O.weekdays("long",!1),1);case"ccc":return M9(O.weekdays("short",!0),1);case"cccc":return M9(O.weekdays("long",!0),1);case"Z":case"ZZ":return CB(new RegExp(`([+-]${K1.source})(?::(${g.source}))?`),2);case"ZZZ":return CB(new RegExp(`([+-]${K1.source})(${g.source})?`),2);case"z":return JJ(/[a-z_+-/]{1,256}?/i);case" ":return JJ(/[^\S\n\r]/);default:return W0(n6)}})(U)||{invalidReason:BO};return k6.token=U,k6}var DO={year:{"2-digit":"yy",numeric:"yyyyy"},month:{numeric:"M","2-digit":"MM",short:"MMM",long:"MMMM"},day:{numeric:"d","2-digit":"dd"},weekday:{short:"EEE",long:"EEEE"},dayperiod:"a",dayPeriod:"a",hour12:{numeric:"h","2-digit":"hh"},hour24:{numeric:"H","2-digit":"HH"},minute:{numeric:"m","2-digit":"mm"},second:{numeric:"s","2-digit":"ss"},timeZoneName:{long:"ZZZZZ",short:"ZZZ"}};function LO(U,O,y){let{type:g,value:i}=U;if(g==="literal"){let T1=/^\s+$/.test(i);return{literal:!T1,val:T1?" ":i}}let c=O[g],a=g;if(g==="hour")if(O.hour12!=null)a=O.hour12?"hour12":"hour24";else if(O.hourCycle!=null)if(O.hourCycle==="h11"||O.hourCycle==="h12")a="hour12";else a="hour24";else a=y.hour12?"hour12":"hour24";let K1=DO[a];if(typeof K1==="object")K1=K1[c];if(K1)return{literal:!1,val:K1};return}function CO(U){return[`^${U.map((y)=>y.regex).reduce((y,g)=>`${y}(${g.source})`,"")}$`,U]}function NO(U,O,y){let g=U.match(O);if(g){let i={},c=1;for(let a in y)if(r0(y,a)){let K1=y[a],T1=K1.groups?K1.groups+1:1;if(!K1.literal&&K1.token)i[K1.token.val[0]]=K1.deser(g.slice(c,c+T1));c+=T1}return[g,i]}else return[g,{}]}function TO(U){let O=(c)=>{switch(c){case"S":return"millisecond";case"s":return"second";case"m":return"minute";case"h":case"H":return"hour";case"d":return"day";case"o":return"ordinal";case"L":case"M":return"month";case"y":return"year";case"E":case"c":return"weekday";case"W":return"weekNumber";case"k":return"weekYear";case"q":return"quarter";default:return null}},y=null,g;if(!v1(U.z))y=P1.create(U.z);if(!v1(U.Z)){if(!y)y=new Y0(U.Z);g=U.Z}if(!v1(U.q))U.M=(U.q-1)*3+1;if(!v1(U.h)){if(U.h<12&&U.a===1)U.h+=12;else if(U.h===12&&U.a===0)U.h=0}if(U.G===0&&U.y)U.y=-U.y;if(!v1(U.u))U.S=H6(U.u);return[Object.keys(U).reduce((c,a)=>{let K1=O(a);if(K1)c[K1]=U[a];return c},{}),y,g]}var A3=null;function MO(){if(!A3)A3=Z0.fromMillis(1555555555555);return A3}function IO(U,O){if(U.literal)return U;let y=g1.macroTokenToFormatOpts(U.val),g=MB(y,O);if(g==null||g.includes(void 0))return U;return g}function NB(U,O){return Array.prototype.concat(...U.map((y)=>IO(y,O)))}function TB(U,O,y){let g=NB(g1.parseFormat(y),U),i=g.map((a)=>FO(a,U)),c=i.find((a)=>a.invalidReason);if(c)return{input:O,tokens:g,invalidReason:c.invalidReason};else{let[a,K1]=CO(i),T1=RegExp(a,"i"),[m1,e1]=NO(O,T1,K1),[v0,_1,W0]=e1?TO(e1):[null,null,void 0];if(r0(e1,"a")&&r0(e1,"H"))throw new Y("Can't include meridiem when specifying 24-hour format");return{input:O,tokens:g,regex:T1,rawMatches:m1,matches:e1,result:v0,zone:_1,specificOffset:W0}}}function RO(U,O,y){let{result:g,zone:i,specificOffset:c,invalidReason:a}=TB(U,O,y);return[g,i,c,a]}function MB(U,O){if(!U)return null;let g=g1.create(O,U).dtFormatter(MO()),i=g.formatToParts(),c=g.resolvedOptions();return i.map((a)=>LO(a,U,c))}var IB=[0,31,59,90,120,151,181,212,243,273,304,334],RB=[0,31,60,91,121,152,182,213,244,274,305,335];function J9(U,O){return new x1("unit out of range",`you specified ${O} (of type ${typeof O}) as a ${U}, which is invalid`)}function AB(U,O,y){let g=new Date(Date.UTC(U,O-1,y));if(U<100&&U>=0)g.setUTCFullYear(g.getUTCFullYear()-1900);let i=g.getUTCDay();return i===0?7:i}function OB(U,O,y){return y+(Z6(U)?RB:IB)[O-1]}function wB(U,O){let y=Z6(U)?RB:IB,g=y.findIndex((c)=>cn0(O))K1=O+1,a=1;else K1=O;return K0({weekYear:K1,weekNumber:a,weekday:c},N9(U))}function EB(U){let{weekYear:O,weekNumber:y,weekday:g}=U,i=AB(O,1,4),c=e0(O),a=y*7+g-i-3,K1;if(a<1)K1=O-1,a+=e0(K1);else if(a>c)K1=O+1,a-=e0(O);else K1=O;let{month:T1,day:m1}=wB(K1,a);return K0({year:K1,month:T1,day:m1},N9(U))}function w3(U){let{year:O,month:y,day:g}=U,i=OB(O,y,g);return K0({year:O,ordinal:i},N9(U))}function jB(U){let{year:O,ordinal:y}=U,{month:g,day:i}=wB(O,y);return K0({year:O,month:g,day:i},N9(U))}function AO(U){let O=j6(U.weekYear),y=u0(U.weekNumber,1,n0(U.weekYear)),g=u0(U.weekday,1,7);if(!O)return J9("weekYear",U.weekYear);else if(!y)return J9("week",U.week);else if(!g)return J9("weekday",U.weekday);else return!1}function OO(U){let O=j6(U.year),y=u0(U.ordinal,1,e0(U.year));if(!O)return J9("year",U.year);else if(!y)return J9("ordinal",U.ordinal);else return!1}function SB(U){let O=j6(U.year),y=u0(U.month,1,12),g=u0(U.day,1,z6(U.year,U.month));if(!O)return J9("year",U.year);else if(!y)return J9("month",U.month);else if(!g)return J9("day",U.day);else return!1}function kB(U){let{hour:O,minute:y,second:g,millisecond:i}=U,c=u0(O,0,23)||O===24&&y===0&&g===0&&i===0,a=u0(y,0,59),K1=u0(g,0,59),T1=u0(i,0,999);if(!c)return J9("hour",O);else if(!a)return J9("minute",y);else if(!K1)return J9("second",g);else if(!T1)return J9("millisecond",i);else return!1}var E3="Invalid DateTime",yB=8640000000000000;function GJ(U){return new x1("unsupported zone",`the zone "${U.name}" is not supported`)}function j3(U){if(U.weekData===null)U.weekData=O3(U.c);return U.weekData}function k4(U,O){let y={ts:U.ts,zone:U.zone,c:U.c,o:U.o,loc:U.loc,invalid:U.invalid};return new Z0(m9(K0(K0({},y),O),{old:y}))}function xB(U,O,y){let g=U-O*60*1000,i=y.offset(g);if(O===i)return[g,O];g-=(i-O)*60*1000;let c=y.offset(g);if(i===c)return[g,i];return[U-Math.min(i,c)*60*1000,Math.max(i,c)]}function YJ(U,O){U+=O*60*1000;let y=new Date(U);return{year:y.getUTCFullYear(),month:y.getUTCMonth()+1,day:y.getUTCDate(),hour:y.getUTCHours(),minute:y.getUTCMinutes(),second:y.getUTCSeconds(),millisecond:y.getUTCMilliseconds()}}function WJ(U,O,y){return xB(X6(U),O,y)}function vB(U,O){let y=U.o,g=U.c.year+Math.trunc(O.years),i=U.c.month+Math.trunc(O.months)+Math.trunc(O.quarters)*3,c=m9(K0({},U.c),{year:g,month:i,day:Math.min(U.c.day,z6(g,i))+Math.trunc(O.days)+Math.trunc(O.weeks)*7}),a=o1.fromObject({years:O.years-Math.trunc(O.years),quarters:O.quarters-Math.trunc(O.quarters),months:O.months-Math.trunc(O.months),weeks:O.weeks-Math.trunc(O.weeks),days:O.days-Math.trunc(O.days),hours:O.hours,minutes:O.minutes,seconds:O.seconds,milliseconds:O.milliseconds}).as("milliseconds"),K1=X6(c),[T1,m1]=xB(K1,y,U.zone);if(a!==0)T1+=a,m1=U.zone.offset(T1);return{ts:T1,o:m1}}function F7(U,O,y,g,i,c){let{setZone:a,zone:K1}=y;if(U&&Object.keys(U).length!==0||O){let T1=O||K1,m1=Z0.fromObject(U,m9(K0({},y),{zone:T1,specificOffset:c}));return a?m1:m1.setZone(K1)}else return Z0.invalid(new x1("unparsable",`the input "${i}" can't be parsed as ${g}`))}function qJ(U,O,y=!0){return U.isValid?g1.create(t1.create("en-US"),{allowZ:y,forceSimple:!0}).formatDateTimeFromString(U,O):null}function S3(U,O){let y=U.c.year>9999||U.c.year<0,g="";if(y&&U.c.year>=0)g+="+";if(g+=M0(U.c.year,y?6:4),O)g+="-",g+=M0(U.c.month),g+="-",g+=M0(U.c.day);else g+=M0(U.c.month),g+=M0(U.c.day);return g}function gB(U,O,y,g,i,c){let a=M0(U.c.hour);if(O){if(a+=":",a+=M0(U.c.minute),U.c.millisecond!==0||U.c.second!==0||!y)a+=":"}else a+=M0(U.c.minute);if(U.c.millisecond!==0||U.c.second!==0||!y){if(a+=M0(U.c.second),U.c.millisecond!==0||!g)a+=".",a+=M0(U.c.millisecond,3)}if(i)if(U.isOffsetFixed&&U.offset===0&&!c)a+="Z";else if(U.o<0)a+="-",a+=M0(Math.trunc(-U.o/60)),a+=":",a+=M0(Math.trunc(-U.o%60));else a+="+",a+=M0(Math.trunc(U.o/60)),a+=":",a+=M0(Math.trunc(U.o%60));if(c)a+="["+U.zone.ianaName+"]";return a}var hB={month:1,day:1,hour:0,minute:0,second:0,millisecond:0},wO={weekNumber:1,weekday:1,hour:0,minute:0,second:0,millisecond:0},EO={ordinal:1,hour:0,minute:0,second:0,millisecond:0},fB=["year","month","day","hour","minute","second","millisecond"],jO=["weekYear","weekNumber","weekday","hour","minute","second","millisecond"],SO=["year","ordinal","hour","minute","second","millisecond"];function bB(U){let O={year:"year",years:"year",month:"month",months:"month",day:"day",days:"day",hour:"hour",hours:"hour",minute:"minute",minutes:"minute",quarter:"quarter",quarters:"quarter",second:"second",seconds:"second",millisecond:"millisecond",milliseconds:"millisecond",weekday:"weekday",weekdays:"weekday",weeknumber:"weekNumber",weeksnumber:"weekNumber",weeknumbers:"weekNumber",weekyear:"weekYear",weekyears:"weekYear",ordinal:"ordinal"}[U.toLowerCase()];if(!O)throw new H(U);return O}function mB(U,O){let y=D0(O.zone,J0.defaultZone),g=t1.fromObject(O),i=J0.now(),c,a;if(!v1(U.year)){for(let m1 of fB)if(v1(U[m1]))U[m1]=hB[m1];let K1=SB(U)||kB(U);if(K1)return Z0.invalid(K1);let T1=y.offset(i);[c,a]=WJ(U,T1,y)}else c=i;return new Z0({ts:c,zone:y,loc:g,o:a})}function _B(U,O,y){let g=v1(y.round)?!0:y.round,i=(a,K1)=>{return a=B6(a,g||y.calendary?0:2,!0),O.loc.clone(y).relFormatter(y).format(a,K1)},c=(a)=>{if(y.calendary)if(!O.hasSame(U,a))return O.startOf(a).diff(U.startOf(a),a).get(a);else return 0;else return O.diff(U,a).get(a)};if(y.unit)return i(c(y.unit),y.unit);for(let a of y.units){let K1=c(a);if(Math.abs(K1)>=1)return i(K1,a)}return i(U>O?-0:0,y.units[y.units.length-1])}function dB(U){let O={},y;if(U.length>0&&typeof U[U.length-1]==="object")O=U[U.length-1],y=Array.from(U).slice(0,U.length-1);else y=Array.from(U);return[O,y]}var Z0=class{constructor(U){let O=U.zone||J0.defaultZone,y=U.invalid||(Number.isNaN(U.ts)?new x1("invalid input"):null)||(!O.isValid?GJ(O):null);this.ts=v1(U.ts)?J0.now():U.ts;let g=null,i=null;if(!y)if(U.old&&U.old.ts===this.ts&&U.old.zone.equals(O))[g,i]=[U.old.c,U.old.o];else{let a=O.offset(this.ts);g=YJ(this.ts,a),y=Number.isNaN(g.year)?new x1("invalid input"):null,g=y?null:g,i=y?null:a}this._zone=O,this.loc=U.loc||t1.create(),this.invalid=y,this.weekData=null,this.c=g,this.o=i,this.isLuxonDateTime=!0}static now(){return new Z0({})}static local(){let[U,O]=dB(arguments),[y,g,i,c,a,K1,T1]=O;return mB({year:y,month:g,day:i,hour:c,minute:a,second:K1,millisecond:T1},U)}static utc(){let[U,O]=dB(arguments),[y,g,i,c,a,K1,T1]=O;return U.zone=Y0.utcInstance,mB({year:y,month:g,day:i,hour:c,minute:a,second:K1,millisecond:T1},U)}static fromJSDate(U,O={}){let y=i6(U)?U.valueOf():NaN;if(Number.isNaN(y))return Z0.invalid("invalid input");let g=D0(O.zone,J0.defaultZone);if(!g.isValid)return Z0.invalid(GJ(g));return new Z0({ts:y,zone:g,loc:t1.fromObject(O)})}static fromMillis(U,O={}){if(!W6(U))throw new K(`fromMillis requires a numerical input, but received a ${typeof U} with value ${U}`);else if(U<-yB||U>yB)return Z0.invalid("Timestamp out of range");else return new Z0({ts:U,zone:D0(O.zone,J0.defaultZone),loc:t1.fromObject(O)})}static fromSeconds(U,O={}){if(!W6(U))throw new K("fromSeconds requires a numerical input");else return new Z0({ts:U*1000,zone:D0(O.zone,J0.defaultZone),loc:t1.fromObject(O)})}static fromObject(U,O={}){U=U||{};let y=D0(O.zone,J0.defaultZone);if(!y.isValid)return Z0.invalid(GJ(y));let g=J0.now(),i=!v1(O.specificOffset)?O.specificOffset:y.offset(g),c=hQ(U,bB),a=!v1(c.ordinal),K1=!v1(c.year),T1=!v1(c.month)||!v1(c.day),m1=K1||T1,e1=c.weekYear||c.weekNumber,v0=t1.fromObject(O);if((m1||a)&&e1)throw new Y("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(T1&&a)throw new Y("Can't mix ordinal dates with month/day");let _1=e1||c.weekday&&!m1,W0,J6,k6=YJ(g,i);if(_1)W0=jO,J6=wO,k6=O3(k6);else if(a)W0=SO,J6=EO,k6=w3(k6);else W0=fB,J6=hB;let n6=!1;for(let q0 of W0){let P6=c[q0];if(!v1(P6))n6=!0;else if(n6)c[q0]=J6[q0];else c[q0]=k6[q0]}let G9=_1?AO(c):a?OO(c):SB(c),R9=G9||kB(c);if(R9)return Z0.invalid(R9);let HQ=_1?EB(c):a?jB(c):c,[k1,C0]=WJ(HQ,i,y),A6=new Z0({ts:k1,zone:y,o:C0,loc:v0});if(c.weekday&&m1&&U.weekday!==A6.weekday)return Z0.invalid("mismatched weekday",`you can't specify both a weekday of ${c.weekday} and a date of ${A6.toISO()}`);return A6}static fromISO(U,O={}){let[y,g]=nA(U);return F7(y,g,O,"ISO 8601",U)}static fromRFC2822(U,O={}){let[y,g]=oA(U);return F7(y,g,O,"RFC 2822",U)}static fromHTTP(U,O={}){let[y,g]=aA(U);return F7(y,g,O,"HTTP",O)}static fromFormat(U,O,y={}){if(v1(U)||v1(O))throw new K("fromFormat requires an input string and a format");let{locale:g=null,numberingSystem:i=null}=y,c=t1.fromOpts({locale:g,numberingSystem:i,defaultToEN:!0}),[a,K1,T1,m1]=RO(c,U,O);if(m1)return Z0.invalid(m1);else return F7(a,K1,y,`format ${O}`,U,T1)}static fromString(U,O,y={}){return Z0.fromFormat(U,O,y)}static fromSQL(U,O={}){let[y,g]=XO(U);return F7(y,g,O,"SQL",U)}static invalid(U,O=null){if(!U)throw new K("need to specify a reason the DateTime is invalid");let y=U instanceof x1?U:new x1(U,O);if(J0.throwOnInvalid)throw new Z(y);else return new Z0({invalid:y})}static isDateTime(U){return U&&U.isLuxonDateTime||!1}static parseFormatForOpts(U,O={}){let y=MB(U,t1.fromObject(O));return!y?null:y.map((g)=>g?g.val:null).join("")}static expandFormat(U,O={}){return NB(g1.parseFormat(U),t1.fromObject(O)).map((g)=>g.val).join("")}get(U){return this[U]}get isValid(){return this.invalid===null}get invalidReason(){return this.invalid?this.invalid.reason:null}get invalidExplanation(){return this.invalid?this.invalid.explanation:null}get locale(){return this.isValid?this.loc.locale:null}get numberingSystem(){return this.isValid?this.loc.numberingSystem:null}get outputCalendar(){return this.isValid?this.loc.outputCalendar:null}get zone(){return this._zone}get zoneName(){return this.isValid?this.zone.name:null}get year(){return this.isValid?this.c.year:NaN}get quarter(){return this.isValid?Math.ceil(this.c.month/3):NaN}get month(){return this.isValid?this.c.month:NaN}get day(){return this.isValid?this.c.day:NaN}get hour(){return this.isValid?this.c.hour:NaN}get minute(){return this.isValid?this.c.minute:NaN}get second(){return this.isValid?this.c.second:NaN}get millisecond(){return this.isValid?this.c.millisecond:NaN}get weekYear(){return this.isValid?j3(this).weekYear:NaN}get weekNumber(){return this.isValid?j3(this).weekNumber:NaN}get weekday(){return this.isValid?j3(this).weekday:NaN}get ordinal(){return this.isValid?w3(this.c).ordinal:NaN}get monthShort(){return this.isValid?XJ.months("short",{locObj:this.loc})[this.month-1]:null}get monthLong(){return this.isValid?XJ.months("long",{locObj:this.loc})[this.month-1]:null}get weekdayShort(){return this.isValid?XJ.weekdays("short",{locObj:this.loc})[this.weekday-1]:null}get weekdayLong(){return this.isValid?XJ.weekdays("long",{locObj:this.loc})[this.weekday-1]:null}get offset(){return this.isValid?+this.o:NaN}get offsetNameShort(){if(this.isValid)return this.zone.offsetName(this.ts,{format:"short",locale:this.locale});else return null}get offsetNameLong(){if(this.isValid)return this.zone.offsetName(this.ts,{format:"long",locale:this.locale});else return null}get isOffsetFixed(){return this.isValid?this.zone.isUniversal:null}get isInDST(){if(this.isOffsetFixed)return!1;else return this.offset>this.set({month:1,day:1}).offset||this.offset>this.set({month:5}).offset}getPossibleOffsets(){if(!this.isValid||this.isOffsetFixed)return[this];let U=86400000,O=60000,y=X6(this.c),g=this.zone.offset(y-U),i=this.zone.offset(y+U),c=this.zone.offset(y-g*O),a=this.zone.offset(y-i*O);if(c===a)return[this];let K1=y-c*O,T1=y-a*O,m1=YJ(K1,c),e1=YJ(T1,a);if(m1.hour===e1.hour&&m1.minute===e1.minute&&m1.second===e1.second&&m1.millisecond===e1.millisecond)return[k4(this,{ts:K1}),k4(this,{ts:T1})];return[this]}get isInLeapYear(){return Z6(this.year)}get daysInMonth(){return z6(this.year,this.month)}get daysInYear(){return this.isValid?e0(this.year):NaN}get weeksInWeekYear(){return this.isValid?n0(this.weekYear):NaN}resolvedLocaleOptions(U={}){let{locale:O,numberingSystem:y,calendar:g}=g1.create(this.loc.clone(U),U).resolvedOptions(this);return{locale:O,numberingSystem:y,outputCalendar:g}}toUTC(U=0,O={}){return this.setZone(Y0.instance(U),O)}toLocal(){return this.setZone(J0.defaultZone)}setZone(U,{keepLocalTime:O=!1,keepCalendarTime:y=!1}={}){if(U=D0(U,J0.defaultZone),U.equals(this.zone))return this;else if(!U.isValid)return Z0.invalid(GJ(U));else{let g=this.ts;if(O||y){let i=U.offset(this.ts),c=this.toObject();[g]=WJ(c,i,U)}return k4(this,{ts:g,zone:U})}}reconfigure({locale:U,numberingSystem:O,outputCalendar:y}={}){let g=this.loc.clone({locale:U,numberingSystem:O,outputCalendar:y});return k4(this,{loc:g})}setLocale(U){return this.reconfigure({locale:U})}set(U){if(!this.isValid)return this;let O=hQ(U,bB),y=!v1(O.weekYear)||!v1(O.weekNumber)||!v1(O.weekday),g=!v1(O.ordinal),i=!v1(O.year),c=!v1(O.month)||!v1(O.day),a=i||c,K1=O.weekYear||O.weekNumber;if((a||g)&&K1)throw new Y("Can't mix weekYear/weekNumber units with year/month/day or ordinals");if(c&&g)throw new Y("Can't mix ordinal dates with month/day");let T1;if(y)T1=EB(K0(K0({},O3(this.c)),O));else if(!v1(O.ordinal))T1=jB(K0(K0({},w3(this.c)),O));else if(T1=K0(K0({},this.toObject()),O),v1(O.day))T1.day=Math.min(z6(T1.year,T1.month),T1.day);let[m1,e1]=WJ(T1,this.o,this.zone);return k4(this,{ts:m1,o:e1})}plus(U){if(!this.isValid)return this;let O=o1.fromDurationLike(U);return k4(this,vB(this,O))}minus(U){if(!this.isValid)return this;let O=o1.fromDurationLike(U).negate();return k4(this,vB(this,O))}startOf(U){if(!this.isValid)return this;let O={},y=o1.normalizeUnit(U);switch(y){case"years":O.month=1;case"quarters":case"months":O.day=1;case"weeks":case"days":O.hour=0;case"hours":O.minute=0;case"minutes":O.second=0;case"seconds":O.millisecond=0;break}if(y==="weeks")O.weekday=1;if(y==="quarters"){let g=Math.ceil(this.month/3);O.month=(g-1)*3+1}return this.set(O)}endOf(U){return this.isValid?this.plus({[U]:1}).startOf(U).minus(1):this}toFormat(U,O={}){return this.isValid?g1.create(this.loc.redefaultToEN(O)).formatDateTimeFromString(this,U):E3}toLocaleString(U=B,O={}){return this.isValid?g1.create(this.loc.clone(O),U).formatDateTime(this):E3}toLocaleParts(U={}){return this.isValid?g1.create(this.loc.clone(U),U).formatDateTimeParts(this):[]}toISO({format:U="extended",suppressSeconds:O=!1,suppressMilliseconds:y=!1,includeOffset:g=!0,extendedZone:i=!1}={}){if(!this.isValid)return null;let c=U==="extended",a=S3(this,c);return a+="T",a+=gB(this,c,O,y,g,i),a}toISODate({format:U="extended"}={}){if(!this.isValid)return null;return S3(this,U==="extended")}toISOWeekDate(){return qJ(this,"kkkk-'W'WW-c")}toISOTime({suppressMilliseconds:U=!1,suppressSeconds:O=!1,includeOffset:y=!0,includePrefix:g=!1,extendedZone:i=!1,format:c="extended"}={}){if(!this.isValid)return null;return(g?"T":"")+gB(this,c==="extended",O,U,y,i)}toRFC2822(){return qJ(this,"EEE, dd LLL yyyy HH:mm:ss ZZZ",!1)}toHTTP(){return qJ(this.toUTC(),"EEE, dd LLL yyyy HH:mm:ss 'GMT'")}toSQLDate(){if(!this.isValid)return null;return S3(this,!0)}toSQLTime({includeOffset:U=!0,includeZone:O=!1,includeOffsetSpace:y=!0}={}){let g="HH:mm:ss.SSS";if(O||U){if(y)g+=" ";if(O)g+="z";else if(U)g+="ZZ"}return qJ(this,g,!0)}toSQL(U={}){if(!this.isValid)return null;return`${this.toSQLDate()} ${this.toSQLTime(U)}`}toString(){return this.isValid?this.toISO():E3}valueOf(){return this.toMillis()}toMillis(){return this.isValid?this.ts:NaN}toSeconds(){return this.isValid?this.ts/1000:NaN}toUnixInteger(){return this.isValid?Math.floor(this.ts/1000):NaN}toJSON(){return this.toISO()}toBSON(){return this.toJSDate()}toObject(U={}){if(!this.isValid)return{};let O=K0({},this.c);if(U.includeConfig)O.outputCalendar=this.outputCalendar,O.numberingSystem=this.loc.numberingSystem,O.locale=this.loc.locale;return O}toJSDate(){return new Date(this.isValid?this.ts:NaN)}diff(U,O="milliseconds",y={}){if(!this.isValid||!U.isValid)return o1.invalid("created by diffing an invalid DateTime");let g=K0({locale:this.locale,numberingSystem:this.numberingSystem},y),i=_8(O).map(o1.normalizeUnit),c=U.valueOf()>this.valueOf(),a=c?this:U,K1=c?U:this,T1=zO(a,K1,i,g);return c?T1.negate():T1}diffNow(U="milliseconds",O={}){return this.diff(Z0.now(),U,O)}until(U){return this.isValid?S6.fromDateTimes(this,U):this}hasSame(U,O){if(!this.isValid)return!1;let y=U.valueOf(),g=this.setZone(U.zone,{keepLocalTime:!0});return g.startOf(O)<=y&&y<=g.endOf(O)}equals(U){return this.isValid&&U.isValid&&this.valueOf()===U.valueOf()&&this.zone.equals(U.zone)&&this.loc.equals(U.loc)}toRelative(U={}){if(!this.isValid)return null;let O=U.base||Z0.fromObject({},{zone:this.zone}),y=U.padding?thisO.valueOf(),Math.min)}static max(...U){if(!U.every(Z0.isDateTime))throw new K("max requires all arguments be DateTimes");return b0(U,(O)=>O.valueOf(),Math.max)}static fromFormatExplain(U,O,y={}){let{locale:g=null,numberingSystem:i=null}=y,c=t1.fromOpts({locale:g,numberingSystem:i,defaultToEN:!0});return TB(c,U,O)}static fromStringExplain(U,O,y={}){return Z0.fromFormatExplain(U,O,y)}static get DATE_SHORT(){return B}static get DATE_MED(){return D}static get DATE_MED_WITH_WEEKDAY(){return F}static get DATE_FULL(){return P}static get DATE_HUGE(){return N}static get TIME_SIMPLE(){return C}static get TIME_WITH_SECONDS(){return L}static get TIME_WITH_SHORT_OFFSET(){return V}static get TIME_WITH_LONG_OFFSET(){return M}static get TIME_24_SIMPLE(){return I}static get TIME_24_WITH_SECONDS(){return E}static get TIME_24_WITH_SHORT_OFFSET(){return w}static get TIME_24_WITH_LONG_OFFSET(){return A}static get DATETIME_SHORT(){return R}static get DATETIME_SHORT_WITH_SECONDS(){return T}static get DATETIME_MED(){return S}static get DATETIME_MED_WITH_SECONDS(){return v}static get DATETIME_MED_WITH_WEEKDAY(){return h}static get DATETIME_FULL(){return x}static get DATETIME_FULL_WITH_SECONDS(){return p}static get DATETIME_HUGE(){return n}static get DATETIME_HUGE_WITH_SECONDS(){return t}};function D7(U){if(Z0.isDateTime(U))return U;else if(U&&U.valueOf&&W6(U.valueOf()))return Z0.fromJSDate(U);else if(U&&typeof U==="object")return Z0.fromObject(U);else throw new K(`Unknown datetime argument: ${U}, of type ${typeof U}`)}var k3={renderNullAs:"\\-",taskCompletionTracking:!1,taskCompletionUseEmojiShorthand:!1,taskCompletionText:"completion",taskCompletionDateFormat:"yyyy-MM-dd",recursiveSubTaskCompletion:!1,warnOnEmptyResult:!0,refreshEnabled:!0,refreshInterval:2500,defaultDateFormat:"MMMM dd, yyyy",defaultDateTimeFormat:"h:mm a - MMMM dd, yyyy",maxRecursiveRenderDepth:4,tableIdColumnName:"File",tableGroupColumnName:"Group",showResultCount:!0},kO={allowHtml:!0};K0(K0(K0({},k3),kO),{inlineQueryPrefix:"=",inlineJsQueryPrefix:"$=",inlineQueriesInCodeblocks:!0,enableInlineDataview:!0,enableDataviewJs:!1,enableInlineDataviewJs:!1,prettyRenderInlineFields:!0,prettyRenderInlineFieldsInLivePreview:!0,dataviewJsKeyword:"dataviewjs"});var uB=class{constructor(U){b8(this,"value"),b8(this,"successful"),this.value=U,this.successful=!0}map(U){return new uB(U(this.value))}flatMap(U){return U(this.value)}mapErr(U){return this}bimap(U,O){return this.map(U)}orElse(U){return this.value}cast(){return this}orElseThrow(U){return this.value}},pB=class{constructor(U){b8(this,"error"),b8(this,"successful"),this.error=U,this.successful=!1}map(U){return this}flatMap(U){return this}mapErr(U){return new pB(U(this.error))}bimap(U,O){return this.mapErr(O)}orElse(U){return U}cast(){return this}orElseThrow(U){if(U)throw new Error(U(this.error));else throw new Error(""+this.error)}},HJ;(function(U){function O(c){return new uB(c)}U.success=O;function y(c){return new pB(c)}U.failure=y;function g(c,a,K1){if(c.successful)if(a.successful)return K1(c.value,a.value);else return y(a.error);else return y(c.error)}U.flatMap2=g;function i(c,a,K1){return g(c,a,(T1,m1)=>O(K1(T1,m1)))}U.map2=i})(HJ||(HJ={}));var yO=typeof globalThis!=="undefined"?globalThis:typeof window!=="undefined"?window:typeof global!=="undefined"?global:typeof self!=="undefined"?self:{},zJ={exports:{}};zJ.exports,function(U,O){(function(y,g){U.exports=g()})(typeof self!="undefined"?self:yO,function(){return function(y){var g={};function i(c){if(g[c])return g[c].exports;var a=g[c]={i:c,l:!1,exports:{}};return y[c].call(a.exports,a,a.exports,i),a.l=!0,a.exports}return i.m=y,i.c=g,i.d=function(c,a,K1){i.o(c,a)||Object.defineProperty(c,a,{configurable:!1,enumerable:!0,get:K1})},i.r=function(c){Object.defineProperty(c,"__esModule",{value:!0})},i.n=function(c){var a=c&&c.__esModule?function(){return c.default}:function(){return c};return i.d(a,"a",a),a},i.o=function(c,a){return Object.prototype.hasOwnProperty.call(c,a)},i.p="",i(i.s=0)}([function(y,g,i){function c(s){if(!(this instanceof c))return new c(s);this._=s}var a=c.prototype;function K1(s,q1){for(var F1=0;F1>7),buf:function(y1){var h1=T1(function(f1,V0,K6,V8){return f1.concat(K6===V8.length-1?Buffer.from([V0,0]).readUInt16BE(0):V8.readUInt16BE(K6))},[],y1);return Buffer.from(m1(function(f1){return(f1<<1&65535)>>8},h1))}(F1.buf)}}),F1}function v0(){return typeof Buffer!="undefined"}function _1(){if(!v0())throw new Error("Buffer global does not exist; please use webpack if you need to parse Buffers in the browser.")}function W0(s){_1();var q1=T1(function(h1,f1){return h1+f1},0,s);if(q1%8!=0)throw new Error("The bits ["+s.join(", ")+"] add up to "+q1+" which is not an even number of bytes; the total should be divisible by 8");var F1,R1=q1/8,y1=(F1=function(h1){return h1>48},T1(function(h1,f1){return h1||(F1(f1)?f1:h1)},null,s));if(y1)throw new Error(y1+" bit range requested exceeds 48 bit (6 byte) Number max.");return new c(function(h1,f1){var V0=R1+f1;return V0>h1.length?P6(f1,R1.toString()+" bytes"):q0(V0,T1(function(K6,V8){var o6=e1(V8,K6.buf);return{coll:K6.coll.concat(o6.v),buf:o6.buf}},{coll:[],buf:h1.slice(f1,V0)},s).coll)})}function J6(s,q1){return new c(function(F1,R1){return _1(),R1+q1>F1.length?P6(R1,q1+" bytes for "+s):q0(R1+q1,F1.slice(R1,R1+q1))})}function k6(s,q1){if(typeof(F1=q1)!="number"||Math.floor(F1)!==F1||q1<0||q1>6)throw new Error(s+" requires integer length in range [0, 6].");var F1}function n6(s){return k6("uintBE",s),J6("uintBE("+s+")",s).map(function(q1){return q1.readUIntBE(0,s)})}function G9(s){return k6("uintLE",s),J6("uintLE("+s+")",s).map(function(q1){return q1.readUIntLE(0,s)})}function R9(s){return k6("intBE",s),J6("intBE("+s+")",s).map(function(q1){return q1.readIntBE(0,s)})}function HQ(s){return k6("intLE",s),J6("intLE("+s+")",s).map(function(q1){return q1.readIntLE(0,s)})}function k1(s){return s instanceof c}function C0(s){return{}.toString.call(s)==="[object Array]"}function A6(s){return v0()&&Buffer.isBuffer(s)}function q0(s,q1){return{status:!0,index:s,value:q1,furthest:-1,expected:[]}}function P6(s,q1){return C0(q1)||(q1=[q1]),{status:!1,index:-1,value:null,furthest:s,expected:q1}}function g0(s,q1){if(!q1)return s;if(s.furthest>q1.furthest)return s;var F1=s.furthest===q1.furthest?function(R1,y1){if(function(){if(c._supportsSet!==void 0)return c._supportsSet;var VQ=typeof Set!="undefined";return c._supportsSet=VQ,VQ}()&&Array.from){for(var h1=new Set(R1),f1=0;f1=0;){if(f1 in F1){R1=F1[f1].line,h1===0&&(h1=F1[f1].lineStart);break}(s.charAt(f1)===` -`||s.charAt(f1)==="\r"&&s.charAt(f1+1)!==` -`)&&(y1++,h1===0&&(h1=f1+1)),f1--}var V0=R1+y1,K6=q1-h1;return F1[q1]={line:V0,lineStart:h1},{offset:q1,line:V0+1,column:K6+1}}function l8(s){if(!k1(s))throw new Error("not a parser: "+s)}function y4(s,q1){return typeof s=="string"?s.charAt(q1):s[q1]}function KQ(s){if(typeof s!="number")throw new Error("not a number: "+s)}function i9(s){if(typeof s!="function")throw new Error("not a function: "+s)}function $Q(s){if(typeof s!="string")throw new Error("not a string: "+s)}var N7=2,$J=3,A9=8,T7=5*A9,BJ=4*A9,M7=" ";function T8(s,q1){return new Array(q1+1).join(s)}function n9(s,q1,F1){var R1=q1-s.length;return R1<=0?s:T8(F1,R1)+s}function tB(s,q1,F1,R1){return{from:s-q1>0?s-q1:0,to:s+F1>R1?R1:s+F1}}function iO(s,q1){var F1,R1,y1,h1,f1,V0=q1.index,K6=V0.offset,V8=1;if(K6===s.length)return"Got the end of the input";if(A6(s)){var o6=K6-K6%A9,UQ=K6-o6,c8=tB(o6,T7,BJ+A9,s.length),VQ=m1(function(m6){return m1(function(kZ){return n9(kZ.toString(16),2,"0")},m6)},function(m6,kZ){var yZ=m6.length,g4=[],xZ=0;if(yZ<=kZ)return[m6.slice()];for(var vZ=0;vZ=4&&(F1+=1),V8=2,y1=m1(function(m6){return m6.length<=4?m6.join(" "):m6.slice(0,4).join(" ")+" "+m6.slice(4).join(" ")},VQ),(f1=(8*(h1.to>0?h1.to-1:h1.to)).toString(16).length)<2&&(f1=2)}else{var SZ=s.split(/\r\n|[\n\r\u2028\u2029]/);F1=V0.column-1,R1=V0.line-1,h1=tB(R1,N7,$J,SZ.length),y1=SZ.slice(h1.from,h1.to),f1=h1.to.toString().length}var Xw=R1-h1.from;return A6(s)&&(f1=(8*(h1.to>0?h1.to-1:h1.to)).toString(16).length)<2&&(f1=2),T1(function(m6,kZ,yZ){var g4,xZ=yZ===Xw,vZ=xZ?"> ":M7;return g4=A6(s)?n9((8*(h1.from+yZ)).toString(16),f1,"0"):n9((h1.from+yZ+1).toString(),f1," "),[].concat(m6,[vZ+g4+" | "+kZ],xZ?[M7+T8(" ",f1)+" | "+n9("",F1," ")+T8("^",V8)]:[])},[],y1).join(` -`)}function rB(s,q1){return[` -`,"-- PARSING FAILED "+T8("-",50),` - -`,iO(s,q1),` - -`,(F1=q1.expected,F1.length===1?`Expected: - -`+F1[0]:`Expected one of the following: - -`+F1.join(", ")),` -`].join("");var F1}function eB(s){return s.flags!==void 0?s.flags:[s.global?"g":"",s.ignoreCase?"i":"",s.multiline?"m":"",s.unicode?"u":"",s.sticky?"y":""].join("")}function UJ(){for(var s=[].slice.call(arguments),q1=s.length,F1=0;F1=2?KQ(q1):q1=0;var F1=function(y1){return RegExp("^(?:"+y1.source+")",eB(y1))}(s),R1=""+s;return c(function(y1,h1){var f1=F1.exec(y1.slice(h1));if(f1){if(0<=q1&&q1<=f1.length){var V0=f1[0],K6=f1[q1];return q0(h1+V0.length,K6)}return P6(h1,"valid match group (0 to "+f1.length+") in "+R1)}return P6(h1,R1)})}function v4(s){return c(function(q1,F1){return q0(F1,s)})}function PJ(s){return c(function(q1,F1){return P6(F1,s)})}function FJ(s){if(k1(s))return c(function(q1,F1){var R1=s._(q1,F1);return R1.index=F1,R1.value="",R1});if(typeof s=="string")return FJ(I7(s));if(s instanceof RegExp)return FJ(BQ(s));throw new Error("not a string, regexp, or parser: "+s)}function ZU(s){return l8(s),c(function(q1,F1){var R1=s._(q1,F1),y1=q1.slice(F1,R1.index);return R1.status?P6(F1,'not "'+y1+'"'):q0(F1,null)})}function DJ(s){return i9(s),c(function(q1,F1){var R1=y4(q1,F1);return F1=s.length?P6(q1,"any character/byte"):q0(q1+1,y4(s,q1))}),oO=c(function(s,q1){return q0(s.length,s.slice(q1))}),_3=c(function(s,q1){return q1=0}).desc(q1)},c.optWhitespace=eO,c.Parser=c,c.range=function(s,q1){return DJ(function(F1){return s<=F1&&F1<=q1}).desc(s+"-"+q1)},c.regex=BQ,c.regexp=BQ,c.sepBy=QU,c.sepBy1=b3,c.seq=UJ,c.seqMap=x4,c.seqObj=function(){for(var s,q1={},F1=0,R1=(s=arguments,Array.prototype.slice.call(s)),y1=R1.length,h1=0;h1255)throw new Error("Value specified to byte constructor ("+s+"=0x"+s.toString(16)+") is larger in value than a single byte.");var q1=(s>15?"0x":"0x0")+s.toString(16);return c(function(F1,R1){var y1=y4(F1,R1);return y1===s?q0(R1+1,y1):P6(R1,q1)})},buffer:function(s){return J6("buffer",s).map(function(q1){return Buffer.from(q1)})},encodedString:function(s,q1){return J6("string",q1).map(function(F1){return F1.toString(s)})},uintBE:n6,uint8BE:n6(1),uint16BE:n6(2),uint32BE:n6(4),uintLE:G9,uint8LE:G9(1),uint16LE:G9(2),uint32LE:G9(4),intBE:R9,int8BE:R9(1),int16BE:R9(2),int32BE:R9(4),intLE:HQ,int8LE:HQ(1),int16LE:HQ(2),int32LE:HQ(4),floatBE:J6("floatBE",4).map(function(s){return s.readFloatBE(0)}),floatLE:J6("floatLE",4).map(function(s){return s.readFloatLE(0)}),doubleBE:J6("doubleBE",8).map(function(s){return s.readDoubleBE(0)}),doubleLE:J6("doubleLE",8).map(function(s){return s.readDoubleLE(0)})},y.exports=c}])})}(zJ,zJ.exports);var X1=zJ.exports,y3=()=>{return/[#*0-9]\uFE0F?\u20E3|[\xA9\xAE\u203C\u2049\u2122\u2139\u2194-\u2199\u21A9\u21AA\u231A\u231B\u2328\u23CF\u23ED-\u23EF\u23F1\u23F2\u23F8-\u23FA\u24C2\u25AA\u25AB\u25B6\u25C0\u25FB\u25FC\u25FE\u2600-\u2604\u260E\u2611\u2614\u2615\u2618\u2620\u2622\u2623\u2626\u262A\u262E\u262F\u2638-\u263A\u2640\u2642\u2648-\u2653\u265F\u2660\u2663\u2665\u2666\u2668\u267B\u267E\u267F\u2692\u2694-\u2697\u2699\u269B\u269C\u26A0\u26A7\u26AA\u26B0\u26B1\u26BD\u26BE\u26C4\u26C8\u26CF\u26D1\u26D3\u26E9\u26F0-\u26F5\u26F7\u26F8\u26FA\u2702\u2708\u2709\u270F\u2712\u2714\u2716\u271D\u2721\u2733\u2734\u2744\u2747\u2757\u2763\u27A1\u2934\u2935\u2B05-\u2B07\u2B1B\u2B1C\u2B55\u3030\u303D\u3297\u3299]\uFE0F?|[\u261D\u270C\u270D](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\u270A\u270B](?:\uD83C[\uDFFB-\uDFFF])?|[\u23E9-\u23EC\u23F0\u23F3\u25FD\u2693\u26A1\u26AB\u26C5\u26CE\u26D4\u26EA\u26FD\u2705\u2728\u274C\u274E\u2753-\u2755\u2795-\u2797\u27B0\u27BF\u2B50]|\u26F9(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\u2764\uFE0F?(?:\u200D(?:\uD83D\uDD25|\uD83E\uDE79))?|\uD83C(?:[\uDC04\uDD70\uDD71\uDD7E\uDD7F\uDE02\uDE37\uDF21\uDF24-\uDF2C\uDF36\uDF7D\uDF96\uDF97\uDF99-\uDF9B\uDF9E\uDF9F\uDFCD\uDFCE\uDFD4-\uDFDF\uDFF5\uDFF7]\uFE0F?|[\uDF85\uDFC2\uDFC7](?:\uD83C[\uDFFB-\uDFFF])?|[\uDFC3\uDFC4\uDFCA](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDFCB\uDFCC](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDCCF\uDD8E\uDD91-\uDD9A\uDE01\uDE1A\uDE2F\uDE32-\uDE36\uDE38-\uDE3A\uDE50\uDE51\uDF00-\uDF20\uDF2D-\uDF35\uDF37-\uDF7C\uDF7E-\uDF84\uDF86-\uDF93\uDFA0-\uDFC1\uDFC5\uDFC6\uDFC8\uDFC9\uDFCF-\uDFD3\uDFE0-\uDFF0\uDFF8-\uDFFF]|\uDDE6\uD83C[\uDDE8-\uDDEC\uDDEE\uDDF1\uDDF2\uDDF4\uDDF6-\uDDFA\uDDFC\uDDFD\uDDFF]|\uDDE7\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEF\uDDF1-\uDDF4\uDDF6-\uDDF9\uDDFB\uDDFC\uDDFE\uDDFF]|\uDDE8\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDEE\uDDF0-\uDDF5\uDDF7\uDDFA-\uDDFF]|\uDDE9\uD83C[\uDDEA\uDDEC\uDDEF\uDDF0\uDDF2\uDDF4\uDDFF]|\uDDEA\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDED\uDDF7-\uDDFA]|\uDDEB\uD83C[\uDDEE-\uDDF0\uDDF2\uDDF4\uDDF7]|\uDDEC\uD83C[\uDDE6\uDDE7\uDDE9-\uDDEE\uDDF1-\uDDF3\uDDF5-\uDDFA\uDDFC\uDDFE]|\uDDED\uD83C[\uDDF0\uDDF2\uDDF3\uDDF7\uDDF9\uDDFA]|\uDDEE\uD83C[\uDDE8-\uDDEA\uDDF1-\uDDF4\uDDF6-\uDDF9]|\uDDEF\uD83C[\uDDEA\uDDF2\uDDF4\uDDF5]|\uDDF0\uD83C[\uDDEA\uDDEC-\uDDEE\uDDF2\uDDF3\uDDF5\uDDF7\uDDFC\uDDFE\uDDFF]|\uDDF1\uD83C[\uDDE6-\uDDE8\uDDEE\uDDF0\uDDF7-\uDDFB\uDDFE]|\uDDF2\uD83C[\uDDE6\uDDE8-\uDDED\uDDF0-\uDDFF]|\uDDF3\uD83C[\uDDE6\uDDE8\uDDEA-\uDDEC\uDDEE\uDDF1\uDDF4\uDDF5\uDDF7\uDDFA\uDDFF]|\uDDF4\uD83C\uDDF2|\uDDF5\uD83C[\uDDE6\uDDEA-\uDDED\uDDF0-\uDDF3\uDDF7-\uDDF9\uDDFC\uDDFE]|\uDDF6\uD83C\uDDE6|\uDDF7\uD83C[\uDDEA\uDDF4\uDDF8\uDDFA\uDDFC]|\uDDF8\uD83C[\uDDE6-\uDDEA\uDDEC-\uDDF4\uDDF7-\uDDF9\uDDFB\uDDFD-\uDDFF]|\uDDF9\uD83C[\uDDE6\uDDE8\uDDE9\uDDEB-\uDDED\uDDEF-\uDDF4\uDDF7\uDDF9\uDDFB\uDDFC\uDDFF]|\uDDFA\uD83C[\uDDE6\uDDEC\uDDF2\uDDF3\uDDF8\uDDFE\uDDFF]|\uDDFB\uD83C[\uDDE6\uDDE8\uDDEA\uDDEC\uDDEE\uDDF3\uDDFA]|\uDDFC\uD83C[\uDDEB\uDDF8]|\uDDFD\uD83C\uDDF0|\uDDFE\uD83C[\uDDEA\uDDF9]|\uDDFF\uD83C[\uDDE6\uDDF2\uDDFC]|\uDFF3\uFE0F?(?:\u200D(?:\u26A7\uFE0F?|\uD83C\uDF08))?|\uDFF4(?:\u200D\u2620\uFE0F?|\uDB40\uDC67\uDB40\uDC62\uDB40(?:\uDC65\uDB40\uDC6E\uDB40\uDC67|\uDC73\uDB40\uDC63\uDB40\uDC74|\uDC77\uDB40\uDC6C\uDB40\uDC73)\uDB40\uDC7F)?)|\uD83D(?:[\uDC08\uDC26](?:\u200D\u2B1B)?|[\uDC3F\uDCFD\uDD49\uDD4A\uDD6F\uDD70\uDD73\uDD76-\uDD79\uDD87\uDD8A-\uDD8D\uDDA5\uDDA8\uDDB1\uDDB2\uDDBC\uDDC2-\uDDC4\uDDD1-\uDDD3\uDDDC-\uDDDE\uDDE1\uDDE3\uDDE8\uDDEF\uDDF3\uDDFA\uDECB\uDECD-\uDECF\uDEE0-\uDEE5\uDEE9\uDEF0\uDEF3]\uFE0F?|[\uDC42\uDC43\uDC46-\uDC50\uDC66\uDC67\uDC6B-\uDC6D\uDC72\uDC74-\uDC76\uDC78\uDC7C\uDC83\uDC85\uDC8F\uDC91\uDCAA\uDD7A\uDD95\uDD96\uDE4C\uDE4F\uDEC0\uDECC](?:\uD83C[\uDFFB-\uDFFF])?|[\uDC6E\uDC70\uDC71\uDC73\uDC77\uDC81\uDC82\uDC86\uDC87\uDE45-\uDE47\uDE4B\uDE4D\uDE4E\uDEA3\uDEB4-\uDEB6](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD74\uDD90](?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?|[\uDC00-\uDC07\uDC09-\uDC14\uDC16-\uDC25\uDC27-\uDC3A\uDC3C-\uDC3E\uDC40\uDC44\uDC45\uDC51-\uDC65\uDC6A\uDC79-\uDC7B\uDC7D-\uDC80\uDC84\uDC88-\uDC8E\uDC90\uDC92-\uDCA9\uDCAB-\uDCFC\uDCFF-\uDD3D\uDD4B-\uDD4E\uDD50-\uDD67\uDDA4\uDDFB-\uDE2D\uDE2F-\uDE34\uDE37-\uDE44\uDE48-\uDE4A\uDE80-\uDEA2\uDEA4-\uDEB3\uDEB7-\uDEBF\uDEC1-\uDEC5\uDED0-\uDED2\uDED5-\uDED7\uDEDC-\uDEDF\uDEEB\uDEEC\uDEF4-\uDEFC\uDFE0-\uDFEB\uDFF0]|\uDC15(?:\u200D\uD83E\uDDBA)?|\uDC3B(?:\u200D\u2744\uFE0F?)?|\uDC41\uFE0F?(?:\u200D\uD83D\uDDE8\uFE0F?)?|\uDC68(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDC68\uDC69]\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?)|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?\uDC68\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D\uDC68\uD83C[\uDFFB-\uDFFE])))?))?|\uDC69(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:\uDC8B\u200D\uD83D)?[\uDC68\uDC69]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D(?:[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?|\uDC69\u200D\uD83D(?:\uDC66(?:\u200D\uD83D\uDC66)?|\uDC67(?:\u200D\uD83D[\uDC66\uDC67])?))|\uD83E[\uDDAF-\uDDB3\uDDBC\uDDBD])|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFC-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFD-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFD\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D\uD83D(?:[\uDC68\uDC69]|\uDC8B\u200D\uD83D[\uDC68\uDC69])\uD83C[\uDFFB-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83D[\uDC68\uDC69]\uD83C[\uDFFB-\uDFFE])))?))?|\uDC6F(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDD75(?:\uFE0F|\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|\uDE2E(?:\u200D\uD83D\uDCA8)?|\uDE35(?:\u200D\uD83D\uDCAB)?|\uDE36(?:\u200D\uD83C\uDF2B\uFE0F?)?)|\uD83E(?:[\uDD0C\uDD0F\uDD18-\uDD1F\uDD30-\uDD34\uDD36\uDD77\uDDB5\uDDB6\uDDBB\uDDD2\uDDD3\uDDD5\uDEC3-\uDEC5\uDEF0\uDEF2-\uDEF8](?:\uD83C[\uDFFB-\uDFFF])?|[\uDD26\uDD35\uDD37-\uDD39\uDD3D\uDD3E\uDDB8\uDDB9\uDDCD-\uDDCF\uDDD4\uDDD6-\uDDDD](?:\uD83C[\uDFFB-\uDFFF])?(?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDDDE\uDDDF](?:\u200D[\u2640\u2642]\uFE0F?)?|[\uDD0D\uDD0E\uDD10-\uDD17\uDD20-\uDD25\uDD27-\uDD2F\uDD3A\uDD3F-\uDD45\uDD47-\uDD76\uDD78-\uDDB4\uDDB7\uDDBA\uDDBC-\uDDCC\uDDD0\uDDE0-\uDDFF\uDE70-\uDE7C\uDE80-\uDE88\uDE90-\uDEBD\uDEBF-\uDEC2\uDECE-\uDEDB\uDEE0-\uDEE8]|\uDD3C(?:\u200D[\u2640\u2642]\uFE0F?|\uD83C[\uDFFB-\uDFFF])?|\uDDD1(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1))|\uD83C(?:\uDFFB(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFC-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFC(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFD-\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFD(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFE(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFD\uDFFF]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?|\uDFFF(?:\u200D(?:[\u2695\u2696\u2708]\uFE0F?|\u2764\uFE0F?\u200D(?:\uD83D\uDC8B\u200D)?\uD83E\uDDD1\uD83C[\uDFFB-\uDFFE]|\uD83C[\uDF3E\uDF73\uDF7C\uDF84\uDF93\uDFA4\uDFA8\uDFEB\uDFED]|\uD83D[\uDCBB\uDCBC\uDD27\uDD2C\uDE80\uDE92]|\uD83E(?:[\uDDAF-\uDDB3\uDDBC\uDDBD]|\uDD1D\u200D\uD83E\uDDD1\uD83C[\uDFFB-\uDFFF])))?))?|\uDEF1(?:\uD83C(?:\uDFFB(?:\u200D\uD83E\uDEF2\uD83C[\uDFFC-\uDFFF])?|\uDFFC(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFD-\uDFFF])?|\uDFFD(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB\uDFFC\uDFFE\uDFFF])?|\uDFFE(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFD\uDFFF])?|\uDFFF(?:\u200D\uD83E\uDEF2\uD83C[\uDFFB-\uDFFE])?))?)/g};function lB(U){if(U===void 0||U===null)return U;return U.shiftToAll().normalize()}function cB(U){if(U.includes("/"))U=U.substring(U.lastIndexOf("/")+1);if(U.endsWith(".md"))U=U.substring(0,U.length-3);return U}X1.alt(X1.regex(new RegExp(y3(),"")),X1.regex(/[0-9\p{Letter}_-]+/u).map((U)=>U.toLocaleLowerCase()),X1.whitespace.map((U)=>"-"),X1.any.map((U)=>"")).many().map((U)=>U.join(""));var xO=X1.alt(X1.regex(new RegExp(y3(),"")),X1.regex(/[0-9\p{Letter}_-]+/u),X1.whitespace.map((U)=>" "),X1.any.map((U)=>" ")).many().map((U)=>{return U.join("").split(/\s+/).join(" ").trim()});function vO(U){return xO.tryParse(U)}function gO(U){return U=lB(U),U=o1.fromObject(Object.fromEntries(Object.entries(U.toObject()).filter(([,O])=>O!=0))),U.toHuman()}var L7;(function(U){function O(k1,C0=k3,A6=!1){let q0=y(k1);if(!q0)return C0.renderNullAs;switch(q0.type){case"null":return C0.renderNullAs;case"string":return q0.value;case"number":case"boolean":return""+q0.value;case"html":return q0.value.outerHTML;case"widget":return q0.value.markdown();case"link":return q0.value.markdown();case"function":return"";case"array":let P6="";if(A6)P6+="[";if(P6+=q0.value.map((g0)=>O(g0,C0,!0)).join(", "),A6)P6+="]";return P6;case"object":return"{ "+Object.entries(q0.value).map((g0)=>g0[0]+": "+O(g0[1],C0,!0)).join(", ")+" }";case"date":if(q0.value.second==0&&q0.value.hour==0&&q0.value.minute==0)return q0.value.toFormat(C0.defaultDateFormat);return q0.value.toFormat(C0.defaultDateTimeFormat);case"duration":return gO(q0.value)}}U.toString=O;function y(k1){if(_1(k1))return{type:"null",value:k1};else if(m1(k1))return{type:"number",value:k1};else if(T1(k1))return{type:"string",value:k1};else if(J6(k1))return{type:"boolean",value:k1};else if(v0(k1))return{type:"duration",value:k1};else if(e1(k1))return{type:"date",value:k1};else if(n6(k1))return{type:"widget",value:k1};else if(W0(k1))return{type:"array",value:k1};else if(k6(k1))return{type:"link",value:k1};else if(HQ(k1))return{type:"function",value:k1};else if(G9(k1))return{type:"html",value:k1};else if(R9(k1))return{type:"object",value:k1};else return}U.wrapValue=y;function g(k1,C0){if(R9(k1)){let A6={};for(let[q0,P6]of Object.entries(k1))A6[q0]=g(P6,C0);return A6}else if(W0(k1)){let A6=[];for(let q0 of k1)A6.push(g(q0,C0));return A6}else return C0(k1)}U.mapLeaves=g;function i(k1,C0,A6){var q0,P6;if(k1===void 0)k1=null;if(C0===void 0)C0=null;if(k1===null&&C0===null)return 0;else if(k1===null)return-1;else if(C0===null)return 1;let g0=y(k1),y6=y(C0);if(g0===void 0&&y6===void 0)return 0;else if(g0===void 0)return-1;else if(y6===void 0)return 1;if(g0.type!=y6.type)return g0.type.localeCompare(y6.type);if(g0.value===y6.value)return 0;switch(g0.type){case"string":return g0.value.localeCompare(y6.value);case"number":if(g0.valueT8,KQ=y4(zQ.path).localeCompare(y4(l8.path));if(KQ!=0)return KQ;let i9=zQ.type.localeCompare(l8.type);if(i9!=0)return i9;if(zQ.subpath&&!l8.subpath)return 1;if(!zQ.subpath&&l8.subpath)return-1;if(!zQ.subpath&&!l8.subpath)return 0;return((q0=zQ.subpath)!=null?q0:"").localeCompare((P6=l8.subpath)!=null?P6:"");case"date":return g0.value0;case"boolean":return C0.value;case"link":return!!C0.value.path;case"date":return C0.value.toMillis()!=0;case"duration":return C0.value.as("seconds")!=0;case"object":return Object.keys(C0.value).length>0;case"array":return C0.value.length>0;case"null":return!1;case"html":case"widget":case"function":return!0}}U.isTruthy=a;function K1(k1){if(k1===null||k1===void 0)return k1;if(U.isArray(k1))return[].concat(k1.map((C0)=>K1(C0)));else if(U.isObject(k1)){let C0={};for(let[A6,q0]of Object.entries(k1))C0[A6]=K1(q0);return C0}else return k1}U.deepCopy=K1;function T1(k1){return typeof k1=="string"}U.isString=T1;function m1(k1){return typeof k1=="number"}U.isNumber=m1;function e1(k1){return k1 instanceof Z0}U.isDate=e1;function v0(k1){return k1 instanceof o1}U.isDuration=v0;function _1(k1){return k1===null||k1===void 0}U.isNull=_1;function W0(k1){return Array.isArray(k1)}U.isArray=W0;function J6(k1){return typeof k1==="boolean"}U.isBoolean=J6;function k6(k1){return k1 instanceof U8}U.isLink=k6;function n6(k1){return k1 instanceof x3}U.isWidget=n6;function G9(k1){if(typeof HTMLElement!=="undefined")return k1 instanceof HTMLElement;else return!1}U.isHtml=G9;function R9(k1){return typeof k1=="object"&&!G9(k1)&&!n6(k1)&&!W0(k1)&&!v0(k1)&&!e1(k1)&&!k6(k1)&&k1!==void 0&&!_1(k1)}U.isObject=R9;function HQ(k1){return typeof k1=="function"}U.isFunction=HQ})(L7||(L7={}));var iB;(function(U){function O(i){return L7.isObject(i)&&Object.keys(i).length==2&&"key"in i&&"rows"in i}U.isElementGroup=O;function y(i){for(let c of i)if(!O(c))return!1;return!0}U.isGrouping=y;function g(i){if(y(i)){let c=0;for(let a of i)c+=g(a.rows);return c}else return i.length}U.count=g})(iB||(iB={}));var U8=class{constructor(U){b8(this,"path"),b8(this,"display"),b8(this,"subpath"),b8(this,"embed"),b8(this,"type"),Object.assign(this,U)}static file(U,O=!1,y){return new U8({path:U,embed:O,display:y,subpath:void 0,type:"file"})}static infer(U,O=!1,y){if(U.includes("#^")){let g=U.split("#^");return U8.block(g[0],g[1],O,y)}else if(U.includes("#")){let g=U.split("#");return U8.header(g[0],g[1],O,y)}else return U8.file(U,O,y)}static header(U,O,y,g){return new U8({path:U,embed:y,display:g,subpath:vO(O),type:"header"})}static block(U,O,y,g){return new U8({path:U,embed:y,display:g,subpath:O,type:"block"})}static fromObject(U){return new U8(U)}equals(U){if(U==null||U==null)return!1;return this.path==U.path&&this.type==U.type&&this.subpath==U.subpath}toString(){return this.markdown()}toObject(){return{path:this.path,type:this.type,subpath:this.subpath,display:this.display,embed:this.embed}}withPath(U){return new U8(Object.assign({},this,{path:U}))}withDisplay(U){return new U8(Object.assign({},this,{display:U}))}withHeader(U){return U8.header(this.path,U,this.embed,this.display)}toFile(){return U8.file(this.path,this.embed,this.display)}toEmbed(){if(this.embed)return this;else{let U=new U8(this);return U.embed=!0,U}}fromEmbed(){if(!this.embed)return this;else{let U=new U8(this);return U.embed=!1,U}}markdown(){let U=(this.embed?"!":"")+"[["+this.obsidianLink();if(this.display)U+="|"+this.display;else if(U+="|"+cB(this.path),this.type=="header"||this.type=="block")U+=" > "+this.subpath;return U+="]]",U}obsidianLink(){var U,O;let y=this.path.replaceAll("|","\\|");if(this.type=="header")return y+"#"+((U=this.subpath)==null?void 0:U.replaceAll("|","\\|"));if(this.type=="block")return y+"#^"+((O=this.subpath)==null?void 0:O.replaceAll("|","\\|"));else return y}fileName(){return cB(this.path).replace(".md","")}},x3=class{constructor(U){b8(this,"$widget"),this.$widget=U}},hO=class extends x3{constructor(U,O){super("dataview:list-pair");b8(this,"key"),b8(this,"value"),this.key=U,this.value=O}markdown(){return`${L7.toString(this.key)}: ${L7.toString(this.value)}`}},fO=class extends x3{constructor(U,O){super("dataview:external-link");b8(this,"url"),b8(this,"display"),this.url=U,this.display=O}markdown(){var U;return`[${(U=this.display)!=null?U:this.url}](${this.url})`}},nB;(function(U){function O(a,K1){return new hO(a,K1)}U.listPair=O;function y(a,K1){return new fO(a,K1)}U.externalLink=y;function g(a){return a.$widget==="dataview:list-pair"}U.isListPair=g;function i(a){return a.$widget==="dataview:external-link"}U.isExternalLink=i;function c(a){return g(a)||i(a)}U.isBuiltin=c})(nB||(nB={}));var w6;(function(U){function O(_1){return{type:"variable",name:_1}}U.variable=O;function y(_1){return{type:"literal",value:_1}}U.literal=y;function g(_1,W0,J6){return{type:"binaryop",left:_1,op:W0,right:J6}}U.binaryOp=g;function i(_1,W0){return{type:"index",object:_1,index:W0}}U.index=i;function c(_1){let W0=_1.split("."),J6=U.variable(W0[0]);for(let k6=1;k6"||_1==">="||_1=="!="||_1=="="}U.isCompareOp=v0,U.NULL=U.literal(null)})(w6||(w6={}));var c9;(function(U){function O(e1){return{type:"tag",tag:e1}}U.tag=O;function y(e1){return{type:"csv",path:e1}}U.csv=y;function g(e1){return{type:"folder",folder:e1}}U.folder=g;function i(e1,v0){return{type:"link",file:e1,direction:v0?"incoming":"outgoing"}}U.link=i;function c(e1,v0,_1){return{type:"binaryop",left:e1,op:v0,right:_1}}U.binaryOp=c;function a(e1,v0){return{type:"binaryop",left:e1,op:"&",right:v0}}U.and=a;function K1(e1,v0){return{type:"binaryop",left:e1,op:"|",right:v0}}U.or=K1;function T1(e1){return{type:"negate",child:e1}}U.negate=T1;function m1(){return{type:"empty"}}U.empty=m1})(c9||(c9={}));var oB=new RegExp(y3(),""),v3={year:o1.fromObject({years:1}),years:o1.fromObject({years:1}),yr:o1.fromObject({years:1}),yrs:o1.fromObject({years:1}),month:o1.fromObject({months:1}),months:o1.fromObject({months:1}),mo:o1.fromObject({months:1}),mos:o1.fromObject({months:1}),week:o1.fromObject({weeks:1}),weeks:o1.fromObject({weeks:1}),wk:o1.fromObject({weeks:1}),wks:o1.fromObject({weeks:1}),w:o1.fromObject({weeks:1}),day:o1.fromObject({days:1}),days:o1.fromObject({days:1}),d:o1.fromObject({days:1}),hour:o1.fromObject({hours:1}),hours:o1.fromObject({hours:1}),hr:o1.fromObject({hours:1}),hrs:o1.fromObject({hours:1}),h:o1.fromObject({hours:1}),minute:o1.fromObject({minutes:1}),minutes:o1.fromObject({minutes:1}),min:o1.fromObject({minutes:1}),mins:o1.fromObject({minutes:1}),m:o1.fromObject({minutes:1}),second:o1.fromObject({seconds:1}),seconds:o1.fromObject({seconds:1}),sec:o1.fromObject({seconds:1}),secs:o1.fromObject({seconds:1}),s:o1.fromObject({seconds:1})},g3={now:()=>Z0.local(),today:()=>Z0.local().startOf("day"),yesterday:()=>Z0.local().startOf("day").minus(o1.fromObject({days:1})),tomorrow:()=>Z0.local().startOf("day").plus(o1.fromObject({days:1})),sow:()=>Z0.local().startOf("week"),"start-of-week":()=>Z0.local().startOf("week"),eow:()=>Z0.local().endOf("week"),"end-of-week":()=>Z0.local().endOf("week"),soy:()=>Z0.local().startOf("year"),"start-of-year":()=>Z0.local().startOf("year"),eoy:()=>Z0.local().endOf("year"),"end-of-year":()=>Z0.local().endOf("year"),som:()=>Z0.local().startOf("month"),"start-of-month":()=>Z0.local().startOf("month"),eom:()=>Z0.local().endOf("month"),"end-of-month":()=>Z0.local().endOf("month")},h3=["FROM","WHERE","LIMIT","GROUP","FLATTEN"];function bO(U){let O=-1;while((O=U.indexOf("|",O+1))>=0){if(O>0&&U[O-1]=="\\")continue;return[U.substring(0,O).replace(/\\\|/g,"|"),U.substring(O+1)]}return[U.replace(/\\\|/g,"|"),void 0]}function mO(U){let[O,y]=bO(U);return U8.infer(O,!1,y)}function C7(U,O,y){return X1.seqMap(U,X1.seq(X1.optWhitespace,O,X1.optWhitespace,U).many(),(g,i)=>{if(i.length==0)return g;let c=y(g,i[0][1],i[0][3]);for(let a=1;a{return(i,c)=>{let a=U._(i,c);if(!a.status)return a;for(let K1 of O){let T1=K1(a.value)._(i,a.index);if(!T1.status)return a;a=T1}return a}})}var I9=X1.createLanguage({number:(U)=>X1.regexp(/-?[0-9]+(\.[0-9]+)?/).map((O)=>Number.parseFloat(O)).desc("number"),string:(U)=>X1.string('"').then(X1.alt(U.escapeCharacter,X1.noneOf('"\\')).atLeast(0).map((O)=>O.join(""))).skip(X1.string('"')).desc("string"),escapeCharacter:(U)=>X1.string("\\").then(X1.any).map((O)=>{if(O==='"')return'"';if(O==="\\")return"\\";else return"\\"+O}),bool:(U)=>X1.regexp(/true|false|True|False/).map((O)=>O.toLowerCase()=="true").desc("boolean ('true' or 'false')"),tag:(U)=>X1.seqMap(X1.string("#"),X1.alt(X1.regexp(/[^\u2000-\u206F\u2E00-\u2E7F'!"#$%&()*+,.:;<=>?@^`{|}~\[\]\\\s]/).desc("text")).many(),(O,y)=>O+y.join("")).desc("tag ('#hello/stuff')"),identifier:(U)=>X1.seqMap(X1.alt(X1.regexp(/\p{Letter}/u),X1.regexp(oB).desc("text")),X1.alt(X1.regexp(/[0-9\p{Letter}_-]/u),X1.regexp(oB).desc("text")).many(),(O,y)=>O+y.join("")).desc("variable identifier"),link:(U)=>X1.regexp(/\[\[([^\[\]]*?)\]\]/u,1).map((O)=>mO(O)).desc("file link"),embedLink:(U)=>X1.seqMap(X1.string("!").atMost(1),U.link,(O,y)=>{if(O.length>0)y.embed=!0;return y}).desc("file link"),binaryPlusMinus:(U)=>X1.regexp(/\+|-/).map((O)=>O).desc("'+' or '-'"),binaryMulDiv:(U)=>X1.regexp(/\*|\/|%/).map((O)=>O).desc("'*' or '/' or '%'"),binaryCompareOp:(U)=>X1.regexp(/>=|<=|!=|>|<|=/).map((O)=>O).desc("'>=' or '<=' or '!=' or '=' or '>' or '<'"),binaryBooleanOp:(U)=>X1.regexp(/and|or|&|\|/i).map((O)=>{if(O.toLowerCase()=="and")return"&";else if(O.toLowerCase()=="or")return"|";else return O}).desc("'and' or 'or'"),rootDate:(U)=>X1.seqMap(X1.regexp(/\d{4}/),X1.string("-"),X1.regexp(/\d{2}/),(O,y,g)=>{return Z0.fromObject({year:Number.parseInt(O),month:Number.parseInt(g)})}).desc("date in format YYYY-MM[-DDTHH-MM-SS.MS]"),dateShorthand:(U)=>X1.alt(...Object.keys(g3).sort((O,y)=>y.length-O.length).map(X1.string)),date:(U)=>_O(U.rootDate,(O)=>X1.seqMap(X1.string("-"),X1.regexp(/\d{2}/),(y,g)=>O.set({day:Number.parseInt(g)})),(O)=>X1.seqMap(X1.string("T"),X1.regexp(/\d{2}/),(y,g)=>O.set({hour:Number.parseInt(g)})),(O)=>X1.seqMap(X1.string(":"),X1.regexp(/\d{2}/),(y,g)=>O.set({minute:Number.parseInt(g)})),(O)=>X1.seqMap(X1.string(":"),X1.regexp(/\d{2}/),(y,g)=>O.set({second:Number.parseInt(g)})),(O)=>X1.alt(X1.seqMap(X1.string("."),X1.regexp(/\d{3}/),(y,g)=>O.set({millisecond:Number.parseInt(g)})),X1.succeed(O)),(O)=>X1.alt(X1.seqMap(X1.string("+").or(X1.string("-")),X1.regexp(/\d{1,2}(:\d{2})?/),(y,g)=>O.setZone("UTC"+y+g,{keepLocalTime:!0})),X1.seqMap(X1.string("Z"),()=>O.setZone("utc",{keepLocalTime:!0})),X1.seqMap(X1.string("["),X1.regexp(/[0-9A-Za-z+-\/]+/u),X1.string("]"),(y,g,i)=>O.setZone(g,{keepLocalTime:!0})))).assert((O)=>O.isValid,"valid date").desc("date in format YYYY-MM[-DDTHH-MM-SS.MS]"),datePlus:(U)=>X1.alt(U.dateShorthand.map((O)=>g3[O]()),U.date).desc("date in format YYYY-MM[-DDTHH-MM-SS.MS] or in shorthand"),durationType:(U)=>X1.alt(...Object.keys(v3).sort((O,y)=>y.length-O.length).map(X1.string)),duration:(U)=>X1.seqMap(U.number,X1.optWhitespace,U.durationType,(O,y,g)=>v3[g].mapUnits((i)=>i*O)).sepBy1(X1.string(",").trim(X1.optWhitespace).or(X1.optWhitespace)).map((O)=>O.reduce((y,g)=>y.plus(g))).desc("duration like 4hr2min"),rawNull:(U)=>X1.string("null"),tagSource:(U)=>U.tag.map((O)=>c9.tag(O)),csvSource:(U)=>X1.seqMap(X1.string("csv(").skip(X1.optWhitespace),U.string,X1.string(")"),(O,y,g)=>c9.csv(y)),linkIncomingSource:(U)=>U.link.map((O)=>c9.link(O.path,!0)),linkOutgoingSource:(U)=>X1.seqMap(X1.string("outgoing(").skip(X1.optWhitespace),U.link,X1.string(")"),(O,y,g)=>c9.link(y.path,!1)),folderSource:(U)=>U.string.map((O)=>c9.folder(O)),parensSource:(U)=>X1.seqMap(X1.string("("),X1.optWhitespace,U.source,X1.optWhitespace,X1.string(")"),(O,y,g,i,c)=>g),negateSource:(U)=>X1.seqMap(X1.alt(X1.string("-"),X1.string("!")),U.atomSource,(O,y)=>c9.negate(y)),atomSource:(U)=>X1.alt(U.parensSource,U.negateSource,U.linkOutgoingSource,U.linkIncomingSource,U.folderSource,U.tagSource,U.csvSource),binaryOpSource:(U)=>C7(U.atomSource,U.binaryBooleanOp.map((O)=>O),c9.binaryOp),source:(U)=>U.binaryOpSource,variableField:(U)=>U.identifier.chain((O)=>{if(h3.includes(O.toUpperCase()))return X1.fail("Variable fields cannot be a keyword ("+h3.join(" or ")+")");else return X1.succeed(w6.variable(O))}).desc("variable"),numberField:(U)=>U.number.map((O)=>w6.literal(O)).desc("number"),stringField:(U)=>U.string.map((O)=>w6.literal(O)).desc("string"),boolField:(U)=>U.bool.map((O)=>w6.literal(O)).desc("boolean"),dateField:(U)=>X1.seqMap(X1.string("date("),X1.optWhitespace,U.datePlus,X1.optWhitespace,X1.string(")"),(O,y,g,i,c)=>w6.literal(g)).desc("date"),durationField:(U)=>X1.seqMap(X1.string("dur("),X1.optWhitespace,U.duration,X1.optWhitespace,X1.string(")"),(O,y,g,i,c)=>w6.literal(g)).desc("duration"),nullField:(U)=>U.rawNull.map((O)=>w6.NULL),linkField:(U)=>U.link.map((O)=>w6.literal(O)),listField:(U)=>U.field.sepBy(X1.string(",").trim(X1.optWhitespace)).wrap(X1.string("[").skip(X1.optWhitespace),X1.optWhitespace.then(X1.string("]"))).map((O)=>w6.list(O)).desc("list ('[1, 2, 3]')"),objectField:(U)=>X1.seqMap(U.identifier.or(U.string),X1.string(":").trim(X1.optWhitespace),U.field,(O,y,g)=>{return{name:O,value:g}}).sepBy(X1.string(",").trim(X1.optWhitespace)).wrap(X1.string("{").skip(X1.optWhitespace),X1.optWhitespace.then(X1.string("}"))).map((O)=>{let y={};for(let g of O)y[g.name]=g.value;return w6.object(y)}).desc("object ('{ a: 1, b: 2 }')"),atomInlineField:(U)=>X1.alt(U.date,U.duration.map((O)=>lB(O)),U.string,U.tag,U.embedLink,U.bool,U.number,U.rawNull),inlineFieldList:(U)=>U.atomInlineField.sepBy(X1.string(",").trim(X1.optWhitespace).lookahead(U.atomInlineField)),inlineField:(U)=>X1.alt(X1.seqMap(U.atomInlineField,X1.string(",").trim(X1.optWhitespace),U.inlineFieldList,(O,y,g)=>[O].concat(g)),U.atomInlineField),atomField:(U)=>X1.alt(U.embedLink.map((O)=>w6.literal(O)),U.negatedField,U.linkField,U.listField,U.objectField,U.lambdaField,U.parensField,U.boolField,U.numberField,U.stringField,U.dateField,U.durationField,U.nullField,U.variableField),indexField:(U)=>X1.seqMap(U.atomField,X1.alt(U.dotPostfix,U.indexPostfix,U.functionPostfix).many(),(O,y)=>{let g=O;for(let i of y)switch(i.type){case"dot":g=w6.index(g,w6.literal(i.field));break;case"index":g=w6.index(g,i.field);break;case"function":g=w6.func(g,i.fields);break}return g}),negatedField:(U)=>X1.seqMap(X1.string("!"),U.indexField,(O,y)=>w6.negate(y)).desc("negated field"),parensField:(U)=>X1.seqMap(X1.string("("),X1.optWhitespace,U.field,X1.optWhitespace,X1.string(")"),(O,y,g,i,c)=>g),lambdaField:(U)=>X1.seqMap(U.identifier.sepBy(X1.string(",").trim(X1.optWhitespace)).wrap(X1.string("(").trim(X1.optWhitespace),X1.string(")").trim(X1.optWhitespace)),X1.string("=>").trim(X1.optWhitespace),U.field,(O,y,g)=>{return{type:"lambda",arguments:O,value:g}}),dotPostfix:(U)=>X1.seqMap(X1.string("."),U.identifier,(O,y)=>{return{type:"dot",field:y}}),indexPostfix:(U)=>X1.seqMap(X1.string("["),X1.optWhitespace,U.field,X1.optWhitespace,X1.string("]"),(O,y,g,i,c)=>{return{type:"index",field:g}}),functionPostfix:(U)=>X1.seqMap(X1.string("("),X1.optWhitespace,U.field.sepBy(X1.string(",").trim(X1.optWhitespace)),X1.optWhitespace,X1.string(")"),(O,y,g,i,c)=>{return{type:"function",fields:g}}),binaryMulDivField:(U)=>C7(U.indexField,U.binaryMulDiv,w6.binaryOp),binaryPlusMinusField:(U)=>C7(U.binaryMulDivField,U.binaryPlusMinus,w6.binaryOp),binaryCompareField:(U)=>C7(U.binaryPlusMinusField,U.binaryCompareOp,w6.binaryOp),binaryBooleanField:(U)=>C7(U.binaryCompareField,U.binaryBooleanOp,w6.binaryOp),binaryOpField:(U)=>U.binaryBooleanField,field:(U)=>U.binaryOpField});function dO(U){try{return HJ.success(I9.field.tryParse(U))}catch(O){return HJ.failure(""+O)}}var KJ;(function(U){function O(g,i){return{name:g,field:i}}U.named=O;function y(g,i){return{field:g,direction:i}}U.sortBy=y})(KJ||(KJ={}));function uO(U){return X1.custom((O,y)=>{return(g,i)=>{let c=U._(g,i);if(!c.status)return c;return Object.assign({},c,{value:[c.value,g.substring(i,c.index)]})}})}function pO(U){return U.split(/[\r\n]+/).map((O)=>O.trim()).join("")}function aB(U,O){return X1.eof.map(U).or(X1.whitespace.then(O))}var sB=X1.createLanguage({queryType:(U)=>X1.alt(X1.regexp(/TABLE|LIST|TASK|CALENDAR/i)).map((O)=>O.toLowerCase()).desc("query type ('TABLE', 'LIST', 'TASK', or 'CALENDAR')"),explicitNamedField:(U)=>X1.seqMap(I9.field.skip(X1.whitespace),X1.regexp(/AS/i).skip(X1.whitespace),I9.identifier.or(I9.string),(O,y,g)=>KJ.named(g,O)),comment:()=>X1.Parser((U,O)=>{let y=U.substring(O);if(!y.startsWith("//"))return X1.makeFailure(O,"Not a comment");y=y.split(` -`)[0];let g=y.substring(2).trim();return X1.makeSuccess(O+y.length,g)}),namedField:(U)=>X1.alt(U.explicitNamedField,uO(I9.field).map(([O,y])=>KJ.named(pO(y),O))),sortField:(U)=>X1.seqMap(I9.field.skip(X1.optWhitespace),X1.regexp(/ASCENDING|DESCENDING|ASC|DESC/i).atMost(1),(O,y)=>{let g=y.length==0?"ascending":y[0].toLowerCase();if(g=="desc")g="descending";if(g=="asc")g="ascending";return{field:O,direction:g}}),headerClause:(U)=>U.queryType.chain((O)=>{switch(O){case"table":return aB(()=>({type:O,fields:[],showId:!0}),X1.seqMap(X1.regexp(/WITHOUT\s+ID/i).skip(X1.optWhitespace).atMost(1),X1.sepBy(U.namedField,X1.string(",").trim(X1.optWhitespace)),(y,g)=>{return{type:O,fields:g,showId:y.length==0}}));case"list":return aB(()=>({type:O,format:void 0,showId:!0}),X1.seqMap(X1.regexp(/WITHOUT\s+ID/i).skip(X1.optWhitespace).atMost(1),I9.field.atMost(1),(y,g)=>{return{type:O,format:g.length==1?g[0]:void 0,showId:y.length==0}}));case"task":return X1.succeed({type:O});case"calendar":return X1.whitespace.then(X1.seqMap(U.namedField,(y)=>{return{type:O,showId:!0,field:y}}));default:return X1.fail(`Unrecognized query type '${O}'`)}}).desc("TABLE or LIST or TASK or CALENDAR"),fromClause:(U)=>X1.seqMap(X1.regexp(/FROM/i),X1.whitespace,I9.source,(O,y,g)=>g),whereClause:(U)=>X1.seqMap(X1.regexp(/WHERE/i),X1.whitespace,I9.field,(O,y,g)=>{return{type:"where",clause:g}}).desc("WHERE "),sortByClause:(U)=>X1.seqMap(X1.regexp(/SORT/i),X1.whitespace,U.sortField.sepBy1(X1.string(",").trim(X1.optWhitespace)),(O,y,g)=>{return{type:"sort",fields:g}}).desc("SORT field [ASC/DESC]"),limitClause:(U)=>X1.seqMap(X1.regexp(/LIMIT/i),X1.whitespace,I9.field,(O,y,g)=>{return{type:"limit",amount:g}}).desc("LIMIT "),flattenClause:(U)=>X1.seqMap(X1.regexp(/FLATTEN/i).skip(X1.whitespace),U.namedField,(O,y)=>{return{type:"flatten",field:y}}).desc("FLATTEN [AS ]"),groupByClause:(U)=>X1.seqMap(X1.regexp(/GROUP BY/i).skip(X1.whitespace),U.namedField,(O,y)=>{return{type:"group",field:y}}).desc("GROUP BY [AS ]"),clause:(U)=>X1.alt(U.fromClause,U.whereClause,U.sortByClause,U.limitClause,U.groupByClause,U.flattenClause),query:(U)=>X1.seqMap(U.headerClause.trim(f3),U.fromClause.trim(f3).atMost(1),U.clause.trim(f3).many(),(O,y,g)=>{return{header:O,source:y.length==0?c9.folder(""):y[0],operations:g,settings:k3}})}),f3=X1.alt(X1.whitespace,sB.comment).many().map((U)=>U.join("")),lO=(U)=>{var O;if(U)return(O=U.plugins.plugins.dataview)==null?void 0:O.api;else return window.DataviewAPI},cO=(U)=>U.plugins.enabledPlugins.has("dataview");Q.DATE_SHORTHANDS=g3,Q.DURATION_TYPES=v3,Q.EXPRESSION=I9,Q.KEYWORDS=h3,Q.QUERY_LANGUAGE=sB,Q.getAPI=lO,Q.isPluginEnabled=cO,Q.parseField=dO}}),xX=W1({"node_modules/bytes/index.js"(Q,X){X.exports=H,X.exports.format=K,X.exports.parse=z;var Z=/\B(?=(\d{3})+(?!\d))/g,J=/(?:\.0*|(\.[^0]+)0+)$/,G={b:1,kb:1024,mb:1048576,gb:1073741824,tb:Math.pow(1024,4),pb:Math.pow(1024,5)},Y=/^((-|\+)?(\d+(?:\.\d+)?)) *(kb|mb|gb|tb|pb)$/i;function H(W,$){if(typeof W==="string")return z(W);if(typeof W==="number")return K(W,$);return null}function K(W,$){if(!Number.isFinite(W))return null;var q=Math.abs(W),B=$&&$.thousandsSeparator||"",D=$&&$.unitSeparator||"",F=$&&$.decimalPlaces!==void 0?$.decimalPlaces:2,P=Boolean($&&$.fixedDecimals),N=$&&$.unit||"";if(!N||!G[N.toLowerCase()])if(q>=G.pb)N="PB";else if(q>=G.tb)N="TB";else if(q>=G.gb)N="GB";else if(q>=G.mb)N="MB";else if(q>=G.kb)N="KB";else N="B";var C=W/G[N.toLowerCase()],L=C.toFixed(F);if(!P)L=L.replace(J,"$1");if(B)L=L.split(".").map(function(V,M){return M===0?V.replace(Z,B):V}).join(".");return L+D+N}function z(W){if(typeof W==="number"&&!isNaN(W))return W;if(typeof W!=="string")return null;var $=Y.exec(W),q,B="b";if(!$)q=parseInt(W,10),B="b";else q=parseFloat($[1]),B=$[4].toLowerCase();if(isNaN(q))return null;return Math.floor(G[B]*q)}}}),iq=W1({"node_modules/content-type/index.js"(Q){var X=/; *([!#$%&'*+.^_`|~0-9A-Za-z-]+) *= *("(?:[\u000b\u0020\u0021\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u000b\u0020-\u00ff])*"|[!#$%&'*+.^_`|~0-9A-Za-z-]+) */g,Z=/^[\u000b\u0020-\u007e\u0080-\u00ff]+$/,J=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+$/,G=/\\([\u000b\u0020-\u00ff])/g,Y=/([\\"])/g,H=/^[!#$%&'*+.^_`|~0-9A-Za-z-]+\/[!#$%&'*+.^_`|~0-9A-Za-z-]+$/;Q.format=K,Q.parse=z;function K(B){if(!B||typeof B!=="object")throw new TypeError("argument obj is required");var{parameters:D,type:F}=B;if(!F||!H.test(F))throw new TypeError("invalid type");var P=F;if(D&&typeof D==="object"){var N,C=Object.keys(D).sort();for(var L=0;L0&&!Z.test(D))throw new TypeError("invalid parameter value");return'"'+D.replace(Y,"\\$1")+'"'}function q(B){this.parameters=Object.create(null),this.type=B}}}),mM=W1({"node_modules/depd/index.js"(Q,X){var Z=require("path").relative;X.exports=z;var J=process.cwd();function G(w,A){var R=w.split(/[ ,]+/),T=String(A).toLowerCase();for(var S=0;S0}function $(w){if(process.noDeprecation)return!0;var A=process.env.NO_DEPRECATION||"";return G(A,w)}function q(w){if(process.traceDeprecation)return!0;var A=process.env.TRACE_DEPRECATION||"";return G(A,w)}function B(w,A){var R=W(process,"deprecation");if(!R&&this._ignored)return;var T,S,v,h,x=0,p=!1,n=L(),t=this._file;if(A)h=A,v=D(n[1]),v.name=h.name,t=v[0];else x=2,h=D(n[x]),v=h;for(;x",R=w.getLineNumber(),T=w.getColumnNumber();if(w.isEval())A=w.getEvalOrigin()+", "+A;var S=[A,R,T];return S.callSite=w,S.name=w.getFunctionName(),S}function F(w){var{callSite:A,name:R}=w;if(!R)R="";var T=A.getThis(),S=T&&A.getTypeName();if(S==="Object")S=void 0;if(S==="Function")S=T.name||S;return S&&A.getMethodName()?S+"."+R:R}function P(w,A,R){var T=new Date().toUTCString(),S=T+" "+this._namespace+" deprecated "+w;if(this._traced){for(var v=0;v=600))Z("non-error status code; use only 4xx or 5xx status codes");if(typeof L!=="number"||!G.message[L]&&(L<400||L>=600))L=500;var w=z[L]||z[K(L)];if(!N)N=w?new w(C):new Error(C||G.message[L]),Error.captureStackTrace(N,z);if(!w||!(N instanceof w)||N.status!==L)N.expose=L<500,N.status=N.statusCode=L;for(var A in V)if(A!=="status"&&A!=="statusCode")N[A]=V[A];return N}function W(){function N(){throw new TypeError("cannot construct abstract class")}return Y(N,Error),N}function $(N,C,L){var V=P(C);function M(I){var E=I!=null?I:G.message[L],w=new Error(E);return Error.captureStackTrace(w,M),J(w,M.prototype),Object.defineProperty(w,"message",{enumerable:!0,configurable:!0,value:E,writable:!0}),Object.defineProperty(w,"name",{enumerable:!1,configurable:!0,value:V,writable:!0}),w}return Y(M,N),D(M,V),M.prototype.status=L,M.prototype.statusCode=L,M.prototype.expose=!0,M}function q(N){return function C(L){if(!L||typeof L!=="object")return!1;if(L instanceof N)return!0;return L instanceof Error&&typeof L.expose==="boolean"&&typeof L.statusCode==="number"&&L.status===L.statusCode}}function B(N,C,L){var V=P(C);function M(I){var E=I!=null?I:G.message[L],w=new Error(E);return Error.captureStackTrace(w,M),J(w,M.prototype),Object.defineProperty(w,"message",{enumerable:!0,configurable:!0,value:E,writable:!0}),Object.defineProperty(w,"name",{enumerable:!1,configurable:!0,value:V,writable:!0}),w}return Y(M,N),D(M,V),M.prototype.status=L,M.prototype.statusCode=L,M.prototype.expose=!1,M}function D(N,C){var L=Object.getOwnPropertyDescriptor(N,"name");if(L&&L.configurable)L.value=C,Object.defineProperty(N,"name",L)}function F(N,C,L){C.forEach(function V(M){var I,E=H(G.message[M]);switch(K(M)){case 400:I=$(L,E,M);break;case 500:I=B(L,E,M);break}if(I)N[M]=I,N[E]=I})}function P(N){return N.substr(-5)!=="Error"?N+"Error":N}}}),uo=W1({"node_modules/body-parser/node_modules/ms/index.js"(Q,X){var Z=1000,J=Z*60,G=J*60,Y=G*24,H=Y*365.25;X.exports=function(q,B){B=B||{};var D=typeof q;if(D==="string"&&q.length>0)return K(q);else if(D==="number"&&isNaN(q)===!1)return B.long?W(q):z(q);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(q))};function K(q){if(q=String(q),q.length>100)return;var B=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(q);if(!B)return;var D=parseFloat(B[1]),F=(B[2]||"ms").toLowerCase();switch(F){case"years":case"year":case"yrs":case"yr":case"y":return D*H;case"days":case"day":case"d":return D*Y;case"hours":case"hour":case"hrs":case"hr":case"h":return D*G;case"minutes":case"minute":case"mins":case"min":case"m":return D*J;case"seconds":case"second":case"secs":case"sec":case"s":return D*Z;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return D;default:return}}function z(q){if(q>=Y)return Math.round(q/Y)+"d";if(q>=G)return Math.round(q/G)+"h";if(q>=J)return Math.round(q/J)+"m";if(q>=Z)return Math.round(q/Z)+"s";return q+"ms"}function W(q){return $(q,Y,"day")||$(q,G,"hour")||$(q,J,"minute")||$(q,Z,"second")||q+" ms"}function $(q,B,D){if(q=31||typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}Q.formatters.j=function(z){try{return JSON.stringify(z)}catch(W){return"[UnexpectedJSONParseError]: "+W.message}};function J(z){var W=this.useColors;if(z[0]=(W?"%c":"")+this.namespace+(W?" %c":" ")+z[0]+(W?"%c ":" ")+"+"+Q.humanize(this.diff),!W)return;var $="color: "+this.color;z.splice(1,0,$,"color: inherit");var q=0,B=0;z[0].replace(/%[a-zA-Z%]/g,function(D){if(D==="%%")return;if(q++,D==="%c")B=q}),z.splice(B,0,$)}function G(){return typeof console==="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function Y(z){try{if(z==null)Q.storage.removeItem("debug");else Q.storage.debug=z}catch(W){}}function H(){var z;try{z=Q.storage.debug}catch(W){}if(!z&&typeof process!=="undefined"&&"env"in process)z=process.env.DEBUG;return z}Q.enable(H());function K(){try{return window.localStorage}catch(z){}}}}),lo=W1({"node_modules/has-flag/index.js"(Q,X){X.exports=(Z,J=process.argv)=>{let G=Z.startsWith("-")?"":Z.length===1?"-":"--",Y=J.indexOf(G+Z),H=J.indexOf("--");return Y!==-1&&(H===-1||Y=2,has16m:$>=3}}function z($,q){if(H===0)return 0;if(G("color=16m")||G("color=full")||G("color=truecolor"))return 3;if(G("color=256"))return 2;if($&&!q&&H===void 0)return 0;let B=H||0;if(Y.TERM==="dumb")return B;if(process.platform==="win32"){let D=Z.release().split(".");if(Number(D[0])>=10&&Number(D[2])>=10586)return Number(D[2])>=14931?3:2;return 1}if("CI"in Y){if(["TRAVIS","CIRCLECI","APPVEYOR","GITLAB_CI","GITHUB_ACTIONS","BUILDKITE"].some((D)=>(D in Y))||Y.CI_NAME==="codeship")return 1;return B}if("TEAMCITY_VERSION"in Y)return/^(9\.(0*[1-9]\d*)\.|\d{2,}\.)/.test(Y.TEAMCITY_VERSION)?1:0;if(Y.COLORTERM==="truecolor")return 3;if("TERM_PROGRAM"in Y){let D=parseInt((Y.TERM_PROGRAM_VERSION||"").split(".")[0],10);switch(Y.TERM_PROGRAM){case"iTerm.app":return D>=3?3:2;case"Apple_Terminal":return 2}}if(/-256(color)?$/i.test(Y.TERM))return 2;if(/^screen|^xterm|^vt100|^vt220|^rxvt|color|ansi|cygwin|linux/i.test(Y.TERM))return 1;if("COLORTERM"in Y)return 1;return B}function W($){let q=z($,$&&$.isTTY);return K(q)}X.exports={supportsColor:W,stdout:K(z(!0,J.isatty(1))),stderr:K(z(!0,J.isatty(2)))}}}),co=W1({"node_modules/body-parser/node_modules/debug/src/node.js"(Q,X){var Z=require("tty"),J=require("util");Q=X.exports=_M(),Q.init=q,Q.log=z,Q.formatArgs=H,Q.save=W,Q.load=$,Q.useColors=Y,Q.colors=[6,2,3,4,5,1];try{if(G=I$(),G&&G.level>=2)Q.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221]}catch(B){}var G;Q.inspectOpts=Object.keys(process.env).filter(function(B){return/^debug_/i.test(B)}).reduce(function(B,D){var F=D.substring(6).toLowerCase().replace(/_([a-z])/g,function(N,C){return C.toUpperCase()}),P=process.env[D];if(/^(yes|on|true|enabled)$/i.test(P))P=!0;else if(/^(no|off|false|disabled)$/i.test(P))P=!1;else if(P==="null")P=null;else P=Number(P);return B[F]=P,B},{});function Y(){return"colors"in Q.inspectOpts?Boolean(Q.inspectOpts.colors):Z.isatty(process.stderr.fd)}Q.formatters.o=function(B){return this.inspectOpts.colors=this.useColors,J.inspect(B,this.inspectOpts).split(` -`).map(function(D){return D.trim()}).join(" ")},Q.formatters.O=function(B){return this.inspectOpts.colors=this.useColors,J.inspect(B,this.inspectOpts)};function H(B){var D=this.namespace,F=this.useColors;if(F){var P=this.color,N="\x1B[3"+(P<8?P:"8;5;"+P),C=" "+N+";1m"+D+" \x1B[0m";B[0]=C+B[0].split(` -`).join(` -`+C),B.push(N+"m+"+Q.humanize(this.diff)+"\x1B[0m")}else B[0]=K()+D+" "+B[0]}function K(){if(Q.inspectOpts.hideDate)return"";else return new Date().toISOString()+" "}function z(){return process.stderr.write(J.format.apply(J,arguments)+` -`)}function W(B){if(B==null)delete process.env.DEBUG;else process.env.DEBUG=B}function $(){return process.env.DEBUG}function q(B){B.inspectOpts={};var D=Object.keys(Q.inspectOpts);for(var F=0;F=2147483648)throw new RangeError('The value "'+K+'" is invalid for option "size"');var $=J(K);if(!z||z.length===0)$.fill(0);else if(typeof W==="string")$.fill(z,W);else $.fill(z);return $};if(!G.kStringMaxLength)try{G.kStringMaxLength=process.binding("buffer").kStringMaxLength}catch(K){}if(!G.constants){if(G.constants={MAX_LENGTH:G.kMaxLength},G.kStringMaxLength)G.constants.MAX_STRING_LENGTH=G.kStringMaxLength}X.exports=G}}),no=W1({"node_modules/iconv-lite/lib/bom-handling.js"(Q){var X="\uFEFF";Q.PrependBOM=Z;function Z(G,Y){this.encoder=G,this.addBOM=!0}Z.prototype.write=function(G){if(this.addBOM)G=X+G,this.addBOM=!1;return this.encoder.write(G)},Z.prototype.end=function(){return this.encoder.end()},Q.StripBOM=J;function J(G,Y){this.decoder=G,this.pass=!1,this.options=Y||{}}J.prototype.write=function(G){var Y=this.decoder.write(G);if(this.pass||!Y)return Y;if(Y[0]===X){if(Y=Y.slice(1),typeof this.options.stripBOM==="function")this.options.stripBOM()}return this.pass=!0,Y},J.prototype.end=function(){return this.decoder.end()}}}),oo=W1({"node_modules/iconv-lite/encodings/internal.js"(Q,X){var Z=MZ().Buffer;X.exports={utf8:{type:"_internal",bomAware:!0},cesu8:{type:"_internal",bomAware:!0},unicode11utf8:"utf8",ucs2:{type:"_internal",bomAware:!0},utf16le:"ucs2",binary:{type:"_internal"},base64:{type:"_internal"},hex:{type:"_internal"},_internal:J};function J($,q){if(this.enc=$.encodingName,this.bomAware=$.bomAware,this.enc==="base64")this.encoder=K;else if(this.enc==="cesu8"){if(this.enc="utf8",this.encoder=z,Z.from("eda0bdedb2a9","hex").toString()!=="\uD83D\uDCA9")this.decoder=W,this.defaultCharUnicode=q.defaultCharUnicode}}J.prototype.encoder=H,J.prototype.decoder=Y;var G=require("string_decoder").StringDecoder;if(!G.prototype.end)G.prototype.end=function(){};function Y($,q){G.call(this,q.enc)}Y.prototype=G.prototype;function H($,q){this.enc=q.enc}H.prototype.write=function($){return Z.from($,this.enc)},H.prototype.end=function(){};function K($,q){this.prevStr=""}K.prototype.write=function($){$=this.prevStr+$;var q=$.length-$.length%4;return this.prevStr=$.slice(q),$=$.slice(0,q),Z.from($,"base64")},K.prototype.end=function(){return Z.from(this.prevStr,"base64")};function z($,q){}z.prototype.write=function($){var q=Z.alloc($.length*3),B=0;for(var D=0;D<$.length;D++){var F=$.charCodeAt(D);if(F<128)q[B++]=F;else if(F<2048)q[B++]=192+(F>>>6),q[B++]=128+(F&63);else q[B++]=224+(F>>>12),q[B++]=128+(F>>>6&63),q[B++]=128+(F&63)}return q.slice(0,B)},z.prototype.end=function(){};function W($,q){this.acc=0,this.contBytes=0,this.accBytes=0,this.defaultCharUnicode=q.defaultCharUnicode}W.prototype.write=function($){var q=this.acc,B=this.contBytes,D=this.accBytes,F="";for(var P=0;P<$.length;P++){var N=$[P];if((N&192)!==128){if(B>0)F+=this.defaultCharUnicode,B=0;if(N<128)F+=String.fromCharCode(N);else if(N<224)q=N&31,B=1,D=1;else if(N<240)q=N&15,B=2,D=1;else F+=this.defaultCharUnicode}else if(B>0){if(q=q<<6|N&63,B--,D++,B===0)if(D===2&&q<128&&q>0)F+=this.defaultCharUnicode;else if(D===3&&q<2048)F+=this.defaultCharUnicode;else F+=String.fromCharCode(q)}else F+=this.defaultCharUnicode}return this.acc=q,this.contBytes=B,this.accBytes=D,F},W.prototype.end=function(){var $=0;if(this.contBytes>0)$+=this.defaultCharUnicode;return $}}}),ao=W1({"node_modules/iconv-lite/encodings/utf32.js"(Q){var X=MZ().Buffer;Q._utf32=Z;function Z(W,$){this.iconv=$,this.bomAware=!0,this.isLE=W.isLE}Q.utf32le={type:"_utf32",isLE:!0},Q.utf32be={type:"_utf32",isLE:!1},Q.ucs4le="utf32le",Q.ucs4be="utf32be",Z.prototype.encoder=J,Z.prototype.decoder=G;function J(W,$){this.isLE=$.isLE,this.highSurrogate=0}J.prototype.write=function(W){var $=X.from(W,"ucs2"),q=X.alloc($.length*2),B=this.isLE?q.writeUInt32LE:q.writeUInt32BE,D=0;for(var F=0;F<$.length;F+=2){var P=$.readUInt16LE(F),N=55296<=P&&P<56320,C=56320<=P&&P<57344;if(this.highSurrogate)if(N||!C)B.call(q,this.highSurrogate,D),D+=4;else{var L=(this.highSurrogate-55296<<10|P-56320)+65536;B.call(q,L,D),D+=4,this.highSurrogate=0;continue}if(N)this.highSurrogate=P;else B.call(q,P,D),D+=4,this.highSurrogate=0}if(D1114111)q.writeUInt16LE(this.badChar,B),B+=2;else{F-=65536;var P=55296|F>>10,N=56320+(F&1023);q.writeUInt16LE(P,B),B+=2,q.writeUInt16LE(N,B),B+=2}}return q.slice(0,B).toString("ucs2")},G.prototype.end=function(){this.overflow=null},Q.utf32=Y,Q.ucs4=Y;function Y(W,$){this.iconv=$}Y.prototype.encoder=H,Y.prototype.decoder=K;function H(W,$){if(W=W||{},W.addBOM===void 0)W.addBOM=!0;this.encoder=$.iconv.getEncoder(W.defaultEncoding||"utf-32le",W)}H.prototype.write=function(W){return this.encoder.write(W)},H.prototype.end=function(){return this.encoder.end()};function K(W,$){this.decoder=null,this.initialBytes=[],this.initialBytesLen=0,this.options=W||{},this.iconv=$.iconv}K.prototype.write=function(W){if(!this.decoder){if(this.initialBytes.push(W),this.initialBytesLen+=W.length,this.initialBytesLen<32)return"";var $=X.concat(this.initialBytes),q=z($,this.options.defaultEncoding);this.decoder=this.iconv.getDecoder(q,this.options),this.initialBytes.length=this.initialBytesLen=0}return this.decoder.write(W)},K.prototype.end=function(){if(!this.decoder){var W=X.concat(this.initialBytes),$=z(W,this.options.defaultEncoding);this.decoder=this.iconv.getDecoder($,this.options);var q=this.decoder.write(W),B=this.decoder.end();return B?q+B:q}return this.decoder.end()};function z(W,$){var q=$||"utf-32le";if(W.length>=4)if(W.readUInt32BE(0)===65279)q="utf-32be";else if(W.readUInt32LE(0)===65279)q="utf-32le";else{var B=0,D=0,F=0,P=0,N=Math.min(W.length-W.length%4,128);for(var C=0;C16)++D;if(I!==0||M>16)++B;if(L===0&&V===0&&M===0&&I!==0)P++;if(L!==0&&V===0&&M===0&&I===0)F++}if(DF)q="utf-32be";else if(P=2)if(W[0]==254&&W[1]==255)q="utf-16be";else if(W[0]==255&&W[1]==254)q="utf-16le";else{var B=0,D=0,F=Math.min(W.length-W.length%2,64);for(var P=0;PB)q="utf-16be";else if(D0)N=this.iconv.decode(X.from(this.base64Accum,"base64"),"utf16-be");return this.inBase64=!1,this.base64Accum="",N},Q.utf7imap=B;function B(N,C){this.iconv=C}B.prototype.encoder=D,B.prototype.decoder=F,B.prototype.bomAware=!0;function D(N,C){this.iconv=C.iconv,this.inBase64=!1,this.base64Accum=X.alloc(6),this.base64AccumIdx=0}D.prototype.write=function(N){var C=this.inBase64,L=this.base64Accum,V=this.base64AccumIdx,M=X.alloc(N.length*5+10),I=0;for(var E=0;E0)I+=M.write(L.slice(0,V).toString("base64").replace(/\//g,",").replace(/=+$/,""),I),V=0;M[I++]=$,C=!1}if(!C){if(M[I++]=w,w===q)M[I++]=$}}else{if(!C)M[I++]=q,C=!0;if(C){if(L[V++]=w>>8,L[V++]=w&255,V==L.length)I+=M.write(L.toString("base64").replace(/\//g,","),I),V=0}}}return this.inBase64=C,this.base64AccumIdx=V,M.slice(0,I)},D.prototype.end=function(){var N=X.alloc(10),C=0;if(this.inBase64){if(this.base64AccumIdx>0)C+=N.write(this.base64Accum.slice(0,this.base64AccumIdx).toString("base64").replace(/\//g,",").replace(/=+$/,""),C),this.base64AccumIdx=0;N[C++]=$,this.inBase64=!1}return N.slice(0,C)};function F(N,C){this.iconv=C.iconv,this.inBase64=!1,this.base64Accum=""}var P=K.slice();P[44]=!0,F.prototype.write=function(N){var C="",L=0,V=this.inBase64,M=this.base64Accum;for(var I=0;I0)N=this.iconv.decode(X.from(this.base64Accum,"base64"),"utf16-be");return this.inBase64=!1,this.base64Accum="",N}}}),ro=W1({"node_modules/iconv-lite/encodings/sbcs-codec.js"(Q){var X=MZ().Buffer;Q._sbcs=Z;function Z(Y,H){if(!Y)throw new Error("SBCS codec is called without the data.");if(!Y.chars||Y.chars.length!==128&&Y.chars.length!==256)throw new Error("Encoding '"+Y.type+"' has incorrect 'chars' (must be of len 128 or 256)");if(Y.chars.length===128){var K="";for(var z=0;z<128;z++)K+=String.fromCharCode(z);Y.chars=K+Y.chars}this.decodeBuf=X.from(Y.chars,"ucs2");var W=X.alloc(65536,H.defaultCharSingleByte.charCodeAt(0));for(var z=0;z?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~°·∙√▒─│┼┤┬├┴┐┌└┘β∞φ±½¼≈«»ﻷﻸ��ﻻﻼ� ­ﺂ£¤ﺄ��ﺎﺏﺕﺙ،ﺝﺡﺥ٠١٢٣٤٥٦٧٨٩ﻑ؛ﺱﺵﺹ؟¢ﺀﺁﺃﺅﻊﺋﺍﺑﺓﺗﺛﺟﺣﺧﺩﺫﺭﺯﺳﺷﺻﺿﻁﻅﻋﻏ¦¬÷×ﻉـﻓﻗﻛﻟﻣﻧﻫﻭﻯﻳﺽﻌﻎﻍﻡﹽّﻥﻩﻬﻰﻲﻐﻕﻵﻶﻝﻙﻱ■�`},ibm864:"cp864",csibm864:"cp864",cp865:{type:"_sbcs",chars:"ÇüéâäàåçêëèïîìÄÅÉæÆôöòûùÿÖÜø£Ø₧ƒáíóúñѪº¿⌐¬½¼¡«¤░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀αßΓπΣσµτΦΘΩδ∞φε∩≡±≥≤⌠⌡÷≈°∙·√ⁿ²■ "},ibm865:"cp865",csibm865:"cp865",cp866:{type:"_sbcs",chars:"АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмноп░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀рстуфхцчшщъыьэюяЁёЄєЇїЎў°∙·√№¤■ "},ibm866:"cp866",csibm866:"cp866",cp869:{type:"_sbcs",chars:"������Ά�·¬¦‘’Έ―ΉΊΪΌ��ΎΫ©Ώ²³ά£έήίϊΐόύΑΒΓΔΕΖΗ½ΘΙ«»░▒▓│┤ΚΛΜΝ╣║╗╝ΞΟ┐└┴┬├─┼ΠΡ╚╔╩╦╠═╬ΣΤΥΦΧΨΩαβγ┘┌█▄δε▀ζηθικλμνξοπρσςτ΄­±υφχ§ψ΅°¨ωϋΰώ■ "},ibm869:"cp869",csibm869:"cp869",cp922:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®‾°±²³´µ¶·¸¹º»¼½¾¿ÀÁÂÃÄÅÆÇÈÉÊËÌÍÎÏŠÑÒÓÔÕÖרÙÚÛÜÝŽßàáâãäåæçèéêëìíîïšñòóôõö÷øùúûüýžÿ"},ibm922:"cp922",csibm922:"cp922",cp1046:{type:"_sbcs",chars:"ﺈ×÷ﹱˆ■│─┐┌└┘ﹹﹻﹽﹿﹷﺊﻰﻳﻲﻎﻏﻐﻶﻸﻺﻼ ¤ﺋﺑﺗﺛﺟﺣ،­ﺧﺳ٠١٢٣٤٥٦٧٨٩ﺷ؛ﺻﺿﻊ؟ﻋءآأؤإئابةتثجحخدذرزسشصضطﻇعغﻌﺂﺄﺎﻓـفقكلمنهوىيًٌٍَُِّْﻗﻛﻟﻵﻷﻹﻻﻣﻧﻬﻩ�"},ibm1046:"cp1046",csibm1046:"cp1046",cp1124:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ЁЂҐЄЅІЇЈЉЊЋЌ­ЎЏАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя№ёђґєѕіїјљњћќ§ўџ"},ibm1124:"cp1124",csibm1124:"cp1124",cp1125:{type:"_sbcs",chars:"АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмноп░▒▓│┤╡╢╖╕╣║╗╝╜╛┐└┴┬├─┼╞╟╚╔╩╦╠═╬╧╨╤╥╙╘╒╓╫╪┘┌█▄▌▐▀рстуфхцчшщъыьэюяЁёҐґЄєІіЇї·√№¤■ "},ibm1125:"cp1125",csibm1125:"cp1125",cp1129:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§œ©ª«¬­®¯°±²³Ÿµ¶·Œ¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖרÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ"},ibm1129:"cp1129",csibm1129:"cp1129",cp1133:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ກຂຄງຈສຊຍດຕຖທນບປຜຝພຟມຢຣລວຫອຮ���ຯະາຳິີຶືຸູຼັົຽ���ເແໂໃໄ່້໊໋໌ໍໆ�ໜໝ₭����������������໐໑໒໓໔໕໖໗໘໙��¢¬¦�"},ibm1133:"cp1133",csibm1133:"cp1133",cp1161:{type:"_sbcs",chars:"��������������������������������่กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู้๊๋€฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛¢¬¦ "},ibm1161:"cp1161",csibm1161:"cp1161",cp1162:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����"},ibm1162:"cp1162",csibm1162:"cp1162",cp1163:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£€¥¦§œ©ª«¬­®¯°±²³Ÿµ¶·Œ¹º»¼½¾¿ÀÁÂĂÄÅÆÇÈÉÊË̀ÍÎÏĐÑ̉ÓÔƠÖרÙÚÛÜỮßàáâăäåæçèéêë́íîïđṇ̃óôơö÷øùúûüư₫ÿ"},ibm1163:"cp1163",csibm1163:"cp1163",maccroatian:{type:"_sbcs",chars:"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®Š™´¨≠ŽØ∞±≤≥∆µ∂∑∏š∫ªºΩžø¿¡¬√ƒ≈ƫȅ ÀÃÕŒœĐ—“”‘’÷◊�©⁄¤‹›Æ»–·‚„‰ÂćÁčÈÍÎÏÌÓÔđÒÚÛÙıˆ˜¯πË˚¸Êæˇ"},maccyrillic:{type:"_sbcs",chars:"АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°¢£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµ∂ЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю¤"},macgreek:{type:"_sbcs",chars:"Ĺ²É³ÖÜ΅àâä΄¨çéèê룙î‰ôö¦­ùûü†ΓΔΘΛΞΠß®©ΣΪ§≠°·Α±≤≥¥ΒΕΖΗΙΚΜΦΫΨΩάΝ¬ΟΡ≈Τ«»… ΥΧΆΈœ–―“”‘’÷ΉΊΌΎέήίόΏύαβψδεφγηιξκλμνοπώρστθωςχυζϊϋΐΰ�"},maciceland:{type:"_sbcs",chars:"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûüݰ¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤ÐðÞþý·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ"},macroman:{type:"_sbcs",chars:"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ"},macromania:{type:"_sbcs",chars:"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ĂŞ∞±≤≥¥µ∂∑∏π∫ªºΩăş¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›Ţţ‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ"},macthai:{type:"_sbcs",chars:"«»…“”�•‘’� กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู\uFEFF​–—฿เแโใไๅๆ็่้๊๋์ํ™๏๐๑๒๓๔๕๖๗๘๙®©����"},macturkish:{type:"_sbcs",chars:"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸĞğİıŞş‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙ�ˆ˜¯˘˙˚¸˝˛ˇ"},macukraine:{type:"_sbcs",chars:"АБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯ†°Ґ£§•¶І®©™Ђђ≠Ѓѓ∞±≤≥іµґЈЄєЇїЉљЊњјЅ¬√ƒ≈∆«»… ЋћЌќѕ–—“”‘’÷„ЎўЏџ№Ёёяабвгдежзийклмнопрстуфхцчшщъыьэю¤"},koi8r:{type:"_sbcs",chars:"─│┌┐└┘├┤┬┴┼▀▄█▌▐░▒▓⌠■∙√≈≤≥ ⌡°²·÷═║╒ё╓╔╕╖╗╘╙╚╛╜╝╞╟╠╡Ё╢╣╤╥╦╧╨╩╪╫╬©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ"},koi8u:{type:"_sbcs",chars:"─│┌┐└┘├┤┬┴┼▀▄█▌▐░▒▓⌠■∙√≈≤≥ ⌡°²·÷═║╒ёє╔ії╗╘╙╚╛ґ╝╞╟╠╡ЁЄ╣ІЇ╦╧╨╩╪Ґ╬©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ"},koi8ru:{type:"_sbcs",chars:"─│┌┐└┘├┤┬┴┼▀▄█▌▐░▒▓⌠■∙√≈≤≥ ⌡°²·÷═║╒ёє╔ії╗╘╙╚╛ґў╞╟╠╡ЁЄ╣ІЇ╦╧╨╩╪ҐЎ©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ"},koi8t:{type:"_sbcs",chars:"қғ‚Ғ„…†‡�‰ҳ‹ҲҷҶ�Қ‘’“”•–—�™�›�����ӯӮё¤ӣ¦§���«¬­®�°±²Ё�Ӣ¶·�№�»���©юабцдефгхийклмнопярстужвьызшэщчъЮАБЦДЕФГХИЙКЛМНОПЯРСТУЖВЬЫЗШЭЩЧЪ"},armscii8:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ �և։)(»«—.՝,-֊…՜՛՞ԱաԲբԳգԴդԵեԶզԷէԸըԹթԺժԻիԼլԽխԾծԿկՀհՁձՂղՃճՄմՅյՆնՇշՈոՉչՊպՋջՌռՍսՎվՏտՐրՑցՒւՓփՔքՕօՖֆ՚�"},rk1048:{type:"_sbcs",chars:"ЂЃ‚ѓ„…†‡€‰Љ‹ЊҚҺЏђ‘’“”•–—�™љ›њқһџ ҰұӘ¤Ө¦§Ё©Ғ«¬­®Ү°±Ііөµ¶·ё№ғ»әҢңүАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя"},tcvn:{type:"_sbcs",chars:`\x00ÚỤ\x03ỪỬỮ\x07\b -\v\f\r\x0E\x0F\x10ỨỰỲỶỸÝỴ\x18\x19\x1A\x1B\x1C\x1D\x1E\x1F !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~ÀẢÃÁẠẶẬÈẺẼÉẸỆÌỈĨÍỊÒỎÕÓỌỘỜỞỠỚỢÙỦŨ ĂÂÊÔƠƯĐăâêôơưđẶ̀̀̉̃́àảãáạẲằẳẵắẴẮẦẨẪẤỀặầẩẫấậèỂẻẽéẹềểễếệìỉỄẾỒĩíịòỔỏõóọồổỗốộờởỡớợùỖủũúụừửữứựỳỷỹýỵỐ`},georgianacademy:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿აბგდევზთიკლმნოპჟრსტუფქღყშჩცძწჭხჯჰჱჲჳჴჵჶçèéêëìíîïðñòóôõö÷øùúûüýþÿ"},georgianps:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ¡¢£¤¥¦§¨©ª«¬­®¯°±²³´µ¶·¸¹º»¼½¾¿აბგდევზჱთიკლმნჲოპჟრსტჳუფქღყშჩცძწჭხჴჯჰჵæçèéêëìíîïðñòóôõö÷øùúûüýþÿ"},pt154:{type:"_sbcs",chars:"ҖҒӮғ„…ҶҮҲүҠӢҢҚҺҸҗ‘’“”•–—ҳҷҡӣңқһҹ ЎўЈӨҘҰ§Ё©Ә«¬ӯ®Ҝ°ұІіҙө¶·ё№ә»јҪҫҝАБВГДЕЖЗИЙКЛМНОПРСТУФХЦЧШЩЪЫЬЭЮЯабвгдежзийклмнопрстуфхцчшщъыьэюя"},viscii:{type:"_sbcs",chars:`\x00\x01Ẳ\x03\x04ẴẪ\x07\b -\v\f\r\x0E\x0F\x10\x11\x12\x13Ỷ\x15\x16\x17\x18Ỹ\x1A\x1B\x1C\x1DỴ\x1F !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}~ẠẮẰẶẤẦẨẬẼẸẾỀỂỄỆỐỒỔỖỘỢỚỜỞỊỎỌỈỦŨỤỲÕắằặấầẩậẽẹếềểễệốồổỗỠƠộờởịỰỨỪỬơớƯÀÁÂÃẢĂẳẵÈÉÊẺÌÍĨỳĐứÒÓÔạỷừửÙÚỹỵÝỡưàáâãảăữẫèéêẻìíĩỉđựòóôõỏọụùúũủýợỮ`},iso646cn:{type:"_sbcs",chars:`\x00\x01\x02\x03\x04\x05\x06\x07\b -\v\f\r\x0E\x0F\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1A\x1B\x1C\x1D\x1E\x1F !"#¥%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_\`abcdefghijklmnopqrstuvwxyz{|}‾��������������������������������������������������������������������������������������������������������������������������������`},iso646jp:{type:"_sbcs",chars:`\x00\x01\x02\x03\x04\x05\x06\x07\b -\v\f\r\x0E\x0F\x10\x11\x12\x13\x14\x15\x16\x17\x18\x19\x1A\x1B\x1C\x1D\x1E\x1F !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[¥]^_\`abcdefghijklmnopqrstuvwxyz{|}‾��������������������������������������������������������������������������������������������������������������������������������`},hproman8:{type:"_sbcs",chars:"€‚ƒ„…†‡ˆ‰Š‹ŒŽ‘’“”•–—˜™š›œžŸ ÀÂÈÊËÎÏ´ˋˆ¨˜ÙÛ₤¯Ýý°ÇçÑñ¡¿¤£¥§ƒ¢âêôûáéóúàèòùäëöüÅîØÆåíøæÄìÖÜÉïßÔÁÃãÐðÍÌÓÒÕõŠšÚŸÿÞþ·µ¶¾—¼½ªº«■»±�"},macintosh:{type:"_sbcs",chars:"ÄÅÇÉÑÖÜáàâäãåçéèêëíìîïñóòôöõúùûü†°¢£§•¶ß®©™´¨≠ÆØ∞±≤≥¥µ∂∑∏π∫ªºΩæø¿¡¬√ƒ≈∆«»… ÀÃÕŒœ–—“”‘’÷◊ÿŸ⁄¤‹›fifl‡·‚„‰ÂÊÁËÈÍÎÏÌÓÔ�ÒÚÛÙıˆ˜¯˘˙˚¸˝˛ˇ"},ascii:{type:"_sbcs",chars:"��������������������������������������������������������������������������������������������������������������������������������"},tis620:{type:"_sbcs",chars:"���������������������������������กขฃคฅฆงจฉชซฌญฎฏฐฑฒณดตถทธนบปผฝพฟภมยรฤลฦวศษสหฬอฮฯะัาำิีึืฺุู����฿เแโใไๅๆ็่้๊๋์ํ๎๏๐๑๒๓๔๕๖๗๘๙๚๛����"}}}}),Za=W1({"node_modules/iconv-lite/encodings/dbcs-codec.js"(Q){var X=MZ().Buffer;Q._dbcs=W;var Z=-1,J=-2,G=-10,Y=-1000,H=new Array(256),K=-1;for(z=0;z<256;z++)H[z]=Z;var z;function W(D,F){if(this.encodingName=D.encodingName,!D)throw new Error("DBCS codec is called without the data.");if(!D.table)throw new Error("Encoding '"+this.encodingName+"' has no data.");var P=D.table();this.decodeTables=[],this.decodeTables[0]=H.slice(0),this.decodeTableSeq=[];for(var N=0;N0;D>>=8)F.push(D&255);if(F.length==0)F.push(0);var P=this.decodeTables[0];for(var N=F.length-1;N>0;N--){var C=P[F[N]];if(C==Z)P[F[N]]=Y-this.decodeTables.length,this.decodeTables.push(P=H.slice(0));else if(C<=Y)P=this.decodeTables[Y-C];else throw new Error("Overwrite byte in "+this.encodingName+", addr: "+D.toString(16))}return P},W.prototype._addDecodeChunk=function(D){var F=parseInt(D[0],16),P=this._getDecodeTrieNode(F);F=F&255;for(var N=1;N255)throw new Error("Incorrect chunk in "+this.encodingName+" at addr "+D[0]+": too long"+F)},W.prototype._getEncodeBucket=function(D){var F=D>>8;if(this.encodeTable[F]===void 0)this.encodeTable[F]=H.slice(0);return this.encodeTable[F]},W.prototype._setEncodeChar=function(D,F){var P=this._getEncodeBucket(D),N=D&255;if(P[N]<=G)this.encodeTableSeq[G-P[N]][K]=F;else if(P[N]==Z)P[N]=F},W.prototype._setEncodeSequence=function(D,F){var P=D[0],N=this._getEncodeBucket(P),C=P&255,L;if(N[C]<=G)L=this.encodeTableSeq[G-N[C]];else{if(L={},N[C]!==Z)L[K]=N[C];N[C]=G-this.encodeTableSeq.length,this.encodeTableSeq.push(L)}for(var V=1;V=0)this._setEncodeChar(L,V);else if(L<=Y)this._fillEncodeTable(Y-L,V<<8,P);else if(L<=G)this._setEncodeSequence(this.decodeTableSeq[G-L],V)}};function $(D,F){this.leadSurrogate=-1,this.seqObj=void 0,this.encodeTable=F.encodeTable,this.encodeTableSeq=F.encodeTableSeq,this.defaultCharSingleByte=F.defCharSB,this.gb18030=F.gb18030}$.prototype.write=function(D){var F=X.alloc(D.length*(this.gb18030?4:3)),P=this.leadSurrogate,N=this.seqObj,C=-1,L=0,V=0;while(!0){if(C===-1){if(L==D.length)break;var M=D.charCodeAt(L++)}else{var M=C;C=-1}if(55296<=M&&M<57344)if(M<56320)if(P===-1){P=M;continue}else P=M,M=Z;else if(P!==-1)M=65536+(P-55296)*1024+(M-56320),P=-1;else M=Z;else if(P!==-1)C=M,M=Z,P=-1;var I=Z;if(N!==void 0&&M!=Z){var E=N[M];if(typeof E==="object"){N=E;continue}else if(typeof E=="number")I=E;else if(E==null){if(E=N[K],E!==void 0)I=E,C=M}N=void 0}else if(M>=0){var w=this.encodeTable[M>>8];if(w!==void 0)I=w[M&255];if(I<=G){N=this.encodeTableSeq[G-I];continue}if(I==Z&&this.gb18030){var A=B(this.gb18030.uChars,M);if(A!=-1){var I=this.gb18030.gbChars[A]+(M-this.gb18030.uChars[A]);F[V++]=129+Math.floor(I/12600),I=I%12600,F[V++]=48+Math.floor(I/1260),I=I%1260,F[V++]=129+Math.floor(I/10),I=I%10,F[V++]=48+I;continue}}}if(I===Z)I=this.defaultCharSingleByte;if(I<256)F[V++]=I;else if(I<65536)F[V++]=I>>8,F[V++]=I&255;else F[V++]=I>>16,F[V++]=I>>8&255,F[V++]=I&255}return this.seqObj=N,this.leadSurrogate=P,F.slice(0,V)},$.prototype.end=function(){if(this.leadSurrogate===-1&&this.seqObj===void 0)return;var D=X.alloc(10),F=0;if(this.seqObj){var P=this.seqObj[K];if(P!==void 0)if(P<256)D[F++]=P;else D[F++]=P>>8,D[F++]=P&255;this.seqObj=void 0}if(this.leadSurrogate!==-1)D[F++]=this.defaultCharSingleByte,this.leadSurrogate=-1;return D.slice(0,F)},$.prototype.findIdx=B;function q(D,F){this.nodeIdx=0,this.prevBuf=X.alloc(0),this.decodeTables=F.decodeTables,this.decodeTableSeq=F.decodeTableSeq,this.defaultCharUnicode=F.defaultCharUnicode,this.gb18030=F.gb18030}q.prototype.write=function(D){var F=X.alloc(D.length*2),P=this.nodeIdx,N=this.prevBuf,C=this.prevBuf.length,L=-this.prevBuf.length,V;if(C>0)N=X.concat([N,D.slice(0,10)]);for(var M=0,I=0;M=0?D[M]:N[M+C],V=this.decodeTables[P][E];if(V>=0);else if(V===Z)M=L,V=this.defaultCharUnicode.charCodeAt(0);else if(V===J){var w=L>=0?D.slice(L,M+1):N.slice(L+C,M+1+C),A=(w[0]-129)*12600+(w[1]-48)*1260+(w[2]-129)*10+(w[3]-48),R=B(this.gb18030.gbChars,A);V=this.gb18030.uChars[R]+A-this.gb18030.gbChars[R]}else if(V<=Y){P=Y-V;continue}else if(V<=G){var T=this.decodeTableSeq[G-V];for(var S=0;S>8;V=T[T.length-1]}else throw new Error("iconv-lite internal error: invalid decoding table value "+V+" at "+P+"/"+E);if(V>65535){V-=65536;var v=55296+Math.floor(V/1024);F[I++]=v&255,F[I++]=v>>8,V=56320+V%1024}F[I++]=V&255,F[I++]=V>>8,P=0,L=M+1}return this.nodeIdx=P,this.prevBuf=L>=0?D.slice(L):N.slice(L+C),F.slice(0,I).toString("ucs2")},q.prototype.end=function(){var D="";while(this.prevBuf.length>0){D+=this.defaultCharUnicode;var F=this.prevBuf.slice(1);if(this.prevBuf=X.alloc(0),this.nodeIdx=0,F.length>0)D+=this.write(F)}return this.nodeIdx=0,D};function B(D,F){if(D[0]>F)return-1;var P=0,N=D.length;while(PF)q=F;if(B=String(B||"utf8").toLowerCase(),Z.isNativeEncoding(B))return G.SlowBufferWrite.call(this,W,$,q,B);if(W.length>0&&(q<0||$<0))throw new RangeError("attempt to write beyond buffer bounds");var P=J.encode(W,B);if(P.lengthC)q=C;if(W.length>0&&(q<0||$<0))throw new RangeError("attempt to write beyond buffer bounds");var L=J.encode(W,B);if(L.length0?Z.concat([B,D]):B},G.decode=function K(z,W,$){if(typeof z==="string"){if(!G.skipDecodeWarning)console.error("Iconv-lite warning: decode()-ing strings is deprecated. Refer to https://github.com/ashtuchkin/iconv-lite/wiki/Use-Buffers-when-decoding"),G.skipDecodeWarning=!0;z=Z.from(""+(z||""),"binary")}var q=G.getDecoder(W,$),B=q.write(z),D=q.end();return D?B+D:B},G.encodingExists=function K(z){try{return G.getCodec(z),!0}catch(W){return!1}},G.toEncoding=G.encode,G.fromEncoding=G.decode,G._codecDataCache={},G.getCodec=function K(z){if(!G.encodings)G.encodings=Ha();var W=G._canonicalizeEncoding(z),$={};while(!0){var q=G._codecDataCache[W];if(q)return q;var B=G.encodings[W];switch(typeof B){case"string":W=B;break;case"object":for(var D in B)$[D]=B[D];if(!$.encodingName)$.encodingName=W;W=B.type;break;case"function":if(!$.encodingName)$.encodingName=W;return q=new B($,G),G._codecDataCache[$.encodingName]=q,q;default:throw new Error("Encoding not recognized: '"+z+"' (searched as: '"+W+"')")}}},G._canonicalizeEncoding=function(K){return(""+K).toLowerCase().replace(/:\d{4}$|[^0-9a-z]/g,"")},G.getEncoder=function K(z,W){var $=G.getCodec(z),q=new $.encoder(W,$);if($.bomAware&&W&&W.addBOM)q=new J.PrependBOM(q,W);return q},G.getDecoder=function K(z,W){var $=G.getCodec(z),q=new $.decoder(W,$);if($.bomAware&&!(W&&W.stripBOM===!1))q=new J.StripBOM(q,W);return q};var Y=typeof process!=="undefined"&&process.versions&&process.versions.node;if(Y){if(H=Y.split(".").map(Number),H[0]>0||H[1]>=10)za()(G);Ka()(G)}var H}}),R$=W1({"node_modules/unpipe/index.js"(Q,X){X.exports=J;function Z(G){var Y=G.listeners("data");for(var H=0;HC)return R(G(413,"request entity too large",{expected:N,length:N,limit:C,type:"entity.too.large"}));var I=F._readableState;if(F._decoder||I&&(I.encoding||I.decoder))return R(G(500,"stream encoding should not be set",{type:"stream.encoding.set"}));if(typeof F.readable!=="undefined"&&!F.readable)return R(G(500,"stream is not readable",{type:"stream.not.readable"}));var E=0,w;try{w=z(P)}catch(x){return R(x)}var A=w?"":[];F.on("aborted",T),F.on("close",h),F.on("data",S),F.on("end",v),F.on("error",v),M=!1;function R(){var x=new Array(arguments.length);for(var p=0;pC)R(G(413,"request entity too large",{limit:C,received:E,type:"entity.too.large"}));else if(w)A+=w.write(x);else A.push(x)}function v(x){if(V)return;if(x)return R(x);if(N!==null&&E!==N)R(G(400,"request size did not match content length",{expected:N,length:N,received:E,type:"request.size.invalid"}));else{var p=w?A+(w.end()||""):Buffer.concat(A);R(null,p)}}function h(){A=null,F.removeListener("aborted",T),F.removeListener("data",S),F.removeListener("end",v),F.removeListener("error",v),F.removeListener("close",h)}}function B(){try{return require("async_hooks")}catch(F){return{}}}function D(F){var P;if(Z.AsyncResource)P=new Z.AsyncResource(F.name||"bound-anonymous-fn");if(!P||!P.runInAsyncScope)return F;return P.runInAsyncScope.bind(P,F,null)}}}),aq=W1({"node_modules/body-parser/lib/read.js"(Q,X){var Z=W7(),J=dM(),G=$a(),Y=uM(),H=O4(),K=R$(),z=require("zlib");X.exports=W;function W(B,D,F,P,N,C){var L,V=C,M,I=V.encoding!==null?V.encoding:null,E=V.verify;try{M=$(B,N,V.inflate),L=M.length,M.length=void 0}catch(w){return F(w)}if(V.length=L,V.encoding=E?null:I,V.encoding===null&&I!==null&&!Y.encodingExists(I))return F(Z(415,'unsupported charset "'+I.toUpperCase()+'"',{charset:I.toLowerCase(),type:"charset.unsupported"}));N("read body"),G(M,V,function(w,A){if(w){var R;if(w.type==="encoding.unsupported")R=Z(415,'unsupported charset "'+I.toUpperCase()+'"',{charset:I.toLowerCase(),type:"charset.unsupported"});else R=Z(400,w);if(M!==B)K(B),J(M,!0);q(B,function S(){F(Z(400,R))});return}if(E)try{N("verify body"),E(B,D,A,I)}catch(S){F(Z(403,S,{body:A,type:S.type||"entity.verify.failed"}));return}var T=A;try{N("parse body"),T=typeof A!=="string"&&I!==null?Y.decode(A,I):A,B.body=P(T)}catch(S){F(Z(400,S,{body:T,type:S.type||"entity.parse.failed"}));return}F()})}function $(B,D,F){var P=(B.headers["content-encoding"]||"identity").toLowerCase(),N=B.headers["content-length"],C;if(D('content-encoding "%s"',P),F===!1&&P!=="identity")throw Z(415,"content encoding unsupported",{encoding:P,type:"encoding.unsupported"});switch(P){case"deflate":C=z.createInflate(),D("inflate body"),B.pipe(C);break;case"gzip":C=z.createGunzip(),D("gunzip body"),B.pipe(C);break;case"identity":C=B,C.length=N;break;default:throw Z(415,'unsupported content encoding "'+P+'"',{encoding:P,type:"encoding.unsupported"})}return C}function q(B,D){if(H.isFinished(B))D(null);else H(B,D),B.resume()}}}),Ba=W1({"node_modules/media-typer/index.js"(Q){var X=/; *([!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+) *= *("(?:[ !\u0023-\u005b\u005d-\u007e\u0080-\u00ff]|\\[\u0020-\u007e])*"|[!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+) */g,Z=/^[\u0020-\u007e\u0080-\u00ff]+$/,J=/^[!#$%&'\*\+\-\.0-9A-Z\^_`a-z\|~]+$/,G=/\\([\u0000-\u007f])/g,Y=/([\\"])/g,H=/^[A-Za-z0-9][A-Za-z0-9!#$&^_.-]{0,126}$/,K=/^[A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126}$/,z=/^ *([A-Za-z0-9][A-Za-z0-9!#$&^_-]{0,126})\/([A-Za-z0-9][A-Za-z0-9!#$&^_.+-]{0,126}) *$/;Q.format=W,Q.parse=$;function W(F){if(!F||typeof F!=="object")throw new TypeError("argument obj is required");var{parameters:P,subtype:N,suffix:C,type:L}=F;if(!L||!K.test(L))throw new TypeError("invalid type");if(!N||!H.test(N))throw new TypeError("invalid subtype");var V=L+"/"+N;if(C){if(!K.test(C))throw new TypeError("invalid suffix");V+="+"+C}if(P&&typeof P==="object"){var M,I=Object.keys(P).sort();for(var E=0;E0&&!Z.test(P))throw new TypeError("invalid parameter value");return'"'+P.replace(Y,"\\$1")+'"'}function D(F){var P=z.exec(F.toLowerCase());if(!P)throw new TypeError("invalid media type");var N=P[1],C=P[2],L,V=C.lastIndexOf("+");if(V!==-1)L=C.substr(V+1),C=C.substr(0,V);var M={type:N,subtype:C,suffix:L};return M}}}),Ua=W1({"node_modules/mime-db/db.json"(Q,X){X.exports={"application/1d-interleaved-parityfec":{source:"iana"},"application/3gpdash-qoe-report+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/3gpp-ims+xml":{source:"iana",compressible:!0},"application/3gpphal+json":{source:"iana",compressible:!0},"application/3gpphalforms+json":{source:"iana",compressible:!0},"application/a2l":{source:"iana"},"application/ace+cbor":{source:"iana"},"application/activemessage":{source:"iana"},"application/activity+json":{source:"iana",compressible:!0},"application/alto-costmap+json":{source:"iana",compressible:!0},"application/alto-costmapfilter+json":{source:"iana",compressible:!0},"application/alto-directory+json":{source:"iana",compressible:!0},"application/alto-endpointcost+json":{source:"iana",compressible:!0},"application/alto-endpointcostparams+json":{source:"iana",compressible:!0},"application/alto-endpointprop+json":{source:"iana",compressible:!0},"application/alto-endpointpropparams+json":{source:"iana",compressible:!0},"application/alto-error+json":{source:"iana",compressible:!0},"application/alto-networkmap+json":{source:"iana",compressible:!0},"application/alto-networkmapfilter+json":{source:"iana",compressible:!0},"application/alto-updatestreamcontrol+json":{source:"iana",compressible:!0},"application/alto-updatestreamparams+json":{source:"iana",compressible:!0},"application/aml":{source:"iana"},"application/andrew-inset":{source:"iana",extensions:["ez"]},"application/applefile":{source:"iana"},"application/applixware":{source:"apache",extensions:["aw"]},"application/at+jwt":{source:"iana"},"application/atf":{source:"iana"},"application/atfx":{source:"iana"},"application/atom+xml":{source:"iana",compressible:!0,extensions:["atom"]},"application/atomcat+xml":{source:"iana",compressible:!0,extensions:["atomcat"]},"application/atomdeleted+xml":{source:"iana",compressible:!0,extensions:["atomdeleted"]},"application/atomicmail":{source:"iana"},"application/atomsvc+xml":{source:"iana",compressible:!0,extensions:["atomsvc"]},"application/atsc-dwd+xml":{source:"iana",compressible:!0,extensions:["dwd"]},"application/atsc-dynamic-event-message":{source:"iana"},"application/atsc-held+xml":{source:"iana",compressible:!0,extensions:["held"]},"application/atsc-rdt+json":{source:"iana",compressible:!0},"application/atsc-rsat+xml":{source:"iana",compressible:!0,extensions:["rsat"]},"application/atxml":{source:"iana"},"application/auth-policy+xml":{source:"iana",compressible:!0},"application/bacnet-xdd+zip":{source:"iana",compressible:!1},"application/batch-smtp":{source:"iana"},"application/bdoc":{compressible:!1,extensions:["bdoc"]},"application/beep+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/calendar+json":{source:"iana",compressible:!0},"application/calendar+xml":{source:"iana",compressible:!0,extensions:["xcs"]},"application/call-completion":{source:"iana"},"application/cals-1840":{source:"iana"},"application/captive+json":{source:"iana",compressible:!0},"application/cbor":{source:"iana"},"application/cbor-seq":{source:"iana"},"application/cccex":{source:"iana"},"application/ccmp+xml":{source:"iana",compressible:!0},"application/ccxml+xml":{source:"iana",compressible:!0,extensions:["ccxml"]},"application/cdfx+xml":{source:"iana",compressible:!0,extensions:["cdfx"]},"application/cdmi-capability":{source:"iana",extensions:["cdmia"]},"application/cdmi-container":{source:"iana",extensions:["cdmic"]},"application/cdmi-domain":{source:"iana",extensions:["cdmid"]},"application/cdmi-object":{source:"iana",extensions:["cdmio"]},"application/cdmi-queue":{source:"iana",extensions:["cdmiq"]},"application/cdni":{source:"iana"},"application/cea":{source:"iana"},"application/cea-2018+xml":{source:"iana",compressible:!0},"application/cellml+xml":{source:"iana",compressible:!0},"application/cfw":{source:"iana"},"application/city+json":{source:"iana",compressible:!0},"application/clr":{source:"iana"},"application/clue+xml":{source:"iana",compressible:!0},"application/clue_info+xml":{source:"iana",compressible:!0},"application/cms":{source:"iana"},"application/cnrp+xml":{source:"iana",compressible:!0},"application/coap-group+json":{source:"iana",compressible:!0},"application/coap-payload":{source:"iana"},"application/commonground":{source:"iana"},"application/conference-info+xml":{source:"iana",compressible:!0},"application/cose":{source:"iana"},"application/cose-key":{source:"iana"},"application/cose-key-set":{source:"iana"},"application/cpl+xml":{source:"iana",compressible:!0,extensions:["cpl"]},"application/csrattrs":{source:"iana"},"application/csta+xml":{source:"iana",compressible:!0},"application/cstadata+xml":{source:"iana",compressible:!0},"application/csvm+json":{source:"iana",compressible:!0},"application/cu-seeme":{source:"apache",extensions:["cu"]},"application/cwt":{source:"iana"},"application/cybercash":{source:"iana"},"application/dart":{compressible:!0},"application/dash+xml":{source:"iana",compressible:!0,extensions:["mpd"]},"application/dash-patch+xml":{source:"iana",compressible:!0,extensions:["mpp"]},"application/dashdelta":{source:"iana"},"application/davmount+xml":{source:"iana",compressible:!0,extensions:["davmount"]},"application/dca-rft":{source:"iana"},"application/dcd":{source:"iana"},"application/dec-dx":{source:"iana"},"application/dialog-info+xml":{source:"iana",compressible:!0},"application/dicom":{source:"iana"},"application/dicom+json":{source:"iana",compressible:!0},"application/dicom+xml":{source:"iana",compressible:!0},"application/dii":{source:"iana"},"application/dit":{source:"iana"},"application/dns":{source:"iana"},"application/dns+json":{source:"iana",compressible:!0},"application/dns-message":{source:"iana"},"application/docbook+xml":{source:"apache",compressible:!0,extensions:["dbk"]},"application/dots+cbor":{source:"iana"},"application/dskpp+xml":{source:"iana",compressible:!0},"application/dssc+der":{source:"iana",extensions:["dssc"]},"application/dssc+xml":{source:"iana",compressible:!0,extensions:["xdssc"]},"application/dvcs":{source:"iana"},"application/ecmascript":{source:"iana",compressible:!0,extensions:["es","ecma"]},"application/edi-consent":{source:"iana"},"application/edi-x12":{source:"iana",compressible:!1},"application/edifact":{source:"iana",compressible:!1},"application/efi":{source:"iana"},"application/elm+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/elm+xml":{source:"iana",compressible:!0},"application/emergencycalldata.cap+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/emergencycalldata.comment+xml":{source:"iana",compressible:!0},"application/emergencycalldata.control+xml":{source:"iana",compressible:!0},"application/emergencycalldata.deviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.ecall.msd":{source:"iana"},"application/emergencycalldata.providerinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.serviceinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.subscriberinfo+xml":{source:"iana",compressible:!0},"application/emergencycalldata.veds+xml":{source:"iana",compressible:!0},"application/emma+xml":{source:"iana",compressible:!0,extensions:["emma"]},"application/emotionml+xml":{source:"iana",compressible:!0,extensions:["emotionml"]},"application/encaprtp":{source:"iana"},"application/epp+xml":{source:"iana",compressible:!0},"application/epub+zip":{source:"iana",compressible:!1,extensions:["epub"]},"application/eshop":{source:"iana"},"application/exi":{source:"iana",extensions:["exi"]},"application/expect-ct-report+json":{source:"iana",compressible:!0},"application/express":{source:"iana",extensions:["exp"]},"application/fastinfoset":{source:"iana"},"application/fastsoap":{source:"iana"},"application/fdt+xml":{source:"iana",compressible:!0,extensions:["fdt"]},"application/fhir+json":{source:"iana",charset:"UTF-8",compressible:!0},"application/fhir+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/fido.trusted-apps+json":{compressible:!0},"application/fits":{source:"iana"},"application/flexfec":{source:"iana"},"application/font-sfnt":{source:"iana"},"application/font-tdpfr":{source:"iana",extensions:["pfr"]},"application/font-woff":{source:"iana",compressible:!1},"application/framework-attributes+xml":{source:"iana",compressible:!0},"application/geo+json":{source:"iana",compressible:!0,extensions:["geojson"]},"application/geo+json-seq":{source:"iana"},"application/geopackage+sqlite3":{source:"iana"},"application/geoxacml+xml":{source:"iana",compressible:!0},"application/gltf-buffer":{source:"iana"},"application/gml+xml":{source:"iana",compressible:!0,extensions:["gml"]},"application/gpx+xml":{source:"apache",compressible:!0,extensions:["gpx"]},"application/gxf":{source:"apache",extensions:["gxf"]},"application/gzip":{source:"iana",compressible:!1,extensions:["gz"]},"application/h224":{source:"iana"},"application/held+xml":{source:"iana",compressible:!0},"application/hjson":{extensions:["hjson"]},"application/http":{source:"iana"},"application/hyperstudio":{source:"iana",extensions:["stk"]},"application/ibe-key-request+xml":{source:"iana",compressible:!0},"application/ibe-pkg-reply+xml":{source:"iana",compressible:!0},"application/ibe-pp-data":{source:"iana"},"application/iges":{source:"iana"},"application/im-iscomposing+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/index":{source:"iana"},"application/index.cmd":{source:"iana"},"application/index.obj":{source:"iana"},"application/index.response":{source:"iana"},"application/index.vnd":{source:"iana"},"application/inkml+xml":{source:"iana",compressible:!0,extensions:["ink","inkml"]},"application/iotp":{source:"iana"},"application/ipfix":{source:"iana",extensions:["ipfix"]},"application/ipp":{source:"iana"},"application/isup":{source:"iana"},"application/its+xml":{source:"iana",compressible:!0,extensions:["its"]},"application/java-archive":{source:"apache",compressible:!1,extensions:["jar","war","ear"]},"application/java-serialized-object":{source:"apache",compressible:!1,extensions:["ser"]},"application/java-vm":{source:"apache",compressible:!1,extensions:["class"]},"application/javascript":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["js","mjs"]},"application/jf2feed+json":{source:"iana",compressible:!0},"application/jose":{source:"iana"},"application/jose+json":{source:"iana",compressible:!0},"application/jrd+json":{source:"iana",compressible:!0},"application/jscalendar+json":{source:"iana",compressible:!0},"application/json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["json","map"]},"application/json-patch+json":{source:"iana",compressible:!0},"application/json-seq":{source:"iana"},"application/json5":{extensions:["json5"]},"application/jsonml+json":{source:"apache",compressible:!0,extensions:["jsonml"]},"application/jwk+json":{source:"iana",compressible:!0},"application/jwk-set+json":{source:"iana",compressible:!0},"application/jwt":{source:"iana"},"application/kpml-request+xml":{source:"iana",compressible:!0},"application/kpml-response+xml":{source:"iana",compressible:!0},"application/ld+json":{source:"iana",compressible:!0,extensions:["jsonld"]},"application/lgr+xml":{source:"iana",compressible:!0,extensions:["lgr"]},"application/link-format":{source:"iana"},"application/load-control+xml":{source:"iana",compressible:!0},"application/lost+xml":{source:"iana",compressible:!0,extensions:["lostxml"]},"application/lostsync+xml":{source:"iana",compressible:!0},"application/lpf+zip":{source:"iana",compressible:!1},"application/lxf":{source:"iana"},"application/mac-binhex40":{source:"iana",extensions:["hqx"]},"application/mac-compactpro":{source:"apache",extensions:["cpt"]},"application/macwriteii":{source:"iana"},"application/mads+xml":{source:"iana",compressible:!0,extensions:["mads"]},"application/manifest+json":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["webmanifest"]},"application/marc":{source:"iana",extensions:["mrc"]},"application/marcxml+xml":{source:"iana",compressible:!0,extensions:["mrcx"]},"application/mathematica":{source:"iana",extensions:["ma","nb","mb"]},"application/mathml+xml":{source:"iana",compressible:!0,extensions:["mathml"]},"application/mathml-content+xml":{source:"iana",compressible:!0},"application/mathml-presentation+xml":{source:"iana",compressible:!0},"application/mbms-associated-procedure-description+xml":{source:"iana",compressible:!0},"application/mbms-deregister+xml":{source:"iana",compressible:!0},"application/mbms-envelope+xml":{source:"iana",compressible:!0},"application/mbms-msk+xml":{source:"iana",compressible:!0},"application/mbms-msk-response+xml":{source:"iana",compressible:!0},"application/mbms-protection-description+xml":{source:"iana",compressible:!0},"application/mbms-reception-report+xml":{source:"iana",compressible:!0},"application/mbms-register+xml":{source:"iana",compressible:!0},"application/mbms-register-response+xml":{source:"iana",compressible:!0},"application/mbms-schedule+xml":{source:"iana",compressible:!0},"application/mbms-user-service-description+xml":{source:"iana",compressible:!0},"application/mbox":{source:"iana",extensions:["mbox"]},"application/media-policy-dataset+xml":{source:"iana",compressible:!0,extensions:["mpf"]},"application/media_control+xml":{source:"iana",compressible:!0},"application/mediaservercontrol+xml":{source:"iana",compressible:!0,extensions:["mscml"]},"application/merge-patch+json":{source:"iana",compressible:!0},"application/metalink+xml":{source:"apache",compressible:!0,extensions:["metalink"]},"application/metalink4+xml":{source:"iana",compressible:!0,extensions:["meta4"]},"application/mets+xml":{source:"iana",compressible:!0,extensions:["mets"]},"application/mf4":{source:"iana"},"application/mikey":{source:"iana"},"application/mipc":{source:"iana"},"application/missing-blocks+cbor-seq":{source:"iana"},"application/mmt-aei+xml":{source:"iana",compressible:!0,extensions:["maei"]},"application/mmt-usd+xml":{source:"iana",compressible:!0,extensions:["musd"]},"application/mods+xml":{source:"iana",compressible:!0,extensions:["mods"]},"application/moss-keys":{source:"iana"},"application/moss-signature":{source:"iana"},"application/mosskey-data":{source:"iana"},"application/mosskey-request":{source:"iana"},"application/mp21":{source:"iana",extensions:["m21","mp21"]},"application/mp4":{source:"iana",extensions:["mp4s","m4p"]},"application/mpeg4-generic":{source:"iana"},"application/mpeg4-iod":{source:"iana"},"application/mpeg4-iod-xmt":{source:"iana"},"application/mrb-consumer+xml":{source:"iana",compressible:!0},"application/mrb-publish+xml":{source:"iana",compressible:!0},"application/msc-ivr+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msc-mixer+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/msword":{source:"iana",compressible:!1,extensions:["doc","dot"]},"application/mud+json":{source:"iana",compressible:!0},"application/multipart-core":{source:"iana"},"application/mxf":{source:"iana",extensions:["mxf"]},"application/n-quads":{source:"iana",extensions:["nq"]},"application/n-triples":{source:"iana",extensions:["nt"]},"application/nasdata":{source:"iana"},"application/news-checkgroups":{source:"iana",charset:"US-ASCII"},"application/news-groupinfo":{source:"iana",charset:"US-ASCII"},"application/news-transmission":{source:"iana"},"application/nlsml+xml":{source:"iana",compressible:!0},"application/node":{source:"iana",extensions:["cjs"]},"application/nss":{source:"iana"},"application/oauth-authz-req+jwt":{source:"iana"},"application/oblivious-dns-message":{source:"iana"},"application/ocsp-request":{source:"iana"},"application/ocsp-response":{source:"iana"},"application/octet-stream":{source:"iana",compressible:!1,extensions:["bin","dms","lrf","mar","so","dist","distz","pkg","bpk","dump","elc","deploy","exe","dll","deb","dmg","iso","img","msi","msp","msm","buffer"]},"application/oda":{source:"iana",extensions:["oda"]},"application/odm+xml":{source:"iana",compressible:!0},"application/odx":{source:"iana"},"application/oebps-package+xml":{source:"iana",compressible:!0,extensions:["opf"]},"application/ogg":{source:"iana",compressible:!1,extensions:["ogx"]},"application/omdoc+xml":{source:"apache",compressible:!0,extensions:["omdoc"]},"application/onenote":{source:"apache",extensions:["onetoc","onetoc2","onetmp","onepkg"]},"application/opc-nodeset+xml":{source:"iana",compressible:!0},"application/oscore":{source:"iana"},"application/oxps":{source:"iana",extensions:["oxps"]},"application/p21":{source:"iana"},"application/p21+zip":{source:"iana",compressible:!1},"application/p2p-overlay+xml":{source:"iana",compressible:!0,extensions:["relo"]},"application/parityfec":{source:"iana"},"application/passport":{source:"iana"},"application/patch-ops-error+xml":{source:"iana",compressible:!0,extensions:["xer"]},"application/pdf":{source:"iana",compressible:!1,extensions:["pdf"]},"application/pdx":{source:"iana"},"application/pem-certificate-chain":{source:"iana"},"application/pgp-encrypted":{source:"iana",compressible:!1,extensions:["pgp"]},"application/pgp-keys":{source:"iana",extensions:["asc"]},"application/pgp-signature":{source:"iana",extensions:["asc","sig"]},"application/pics-rules":{source:"apache",extensions:["prf"]},"application/pidf+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pidf-diff+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/pkcs10":{source:"iana",extensions:["p10"]},"application/pkcs12":{source:"iana"},"application/pkcs7-mime":{source:"iana",extensions:["p7m","p7c"]},"application/pkcs7-signature":{source:"iana",extensions:["p7s"]},"application/pkcs8":{source:"iana",extensions:["p8"]},"application/pkcs8-encrypted":{source:"iana"},"application/pkix-attr-cert":{source:"iana",extensions:["ac"]},"application/pkix-cert":{source:"iana",extensions:["cer"]},"application/pkix-crl":{source:"iana",extensions:["crl"]},"application/pkix-pkipath":{source:"iana",extensions:["pkipath"]},"application/pkixcmp":{source:"iana",extensions:["pki"]},"application/pls+xml":{source:"iana",compressible:!0,extensions:["pls"]},"application/poc-settings+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/postscript":{source:"iana",compressible:!0,extensions:["ai","eps","ps"]},"application/ppsp-tracker+json":{source:"iana",compressible:!0},"application/problem+json":{source:"iana",compressible:!0},"application/problem+xml":{source:"iana",compressible:!0},"application/provenance+xml":{source:"iana",compressible:!0,extensions:["provx"]},"application/prs.alvestrand.titrax-sheet":{source:"iana"},"application/prs.cww":{source:"iana",extensions:["cww"]},"application/prs.cyn":{source:"iana",charset:"7-BIT"},"application/prs.hpub+zip":{source:"iana",compressible:!1},"application/prs.nprend":{source:"iana"},"application/prs.plucker":{source:"iana"},"application/prs.rdf-xml-crypt":{source:"iana"},"application/prs.xsf+xml":{source:"iana",compressible:!0},"application/pskc+xml":{source:"iana",compressible:!0,extensions:["pskcxml"]},"application/pvd+json":{source:"iana",compressible:!0},"application/qsig":{source:"iana"},"application/raml+yaml":{compressible:!0,extensions:["raml"]},"application/raptorfec":{source:"iana"},"application/rdap+json":{source:"iana",compressible:!0},"application/rdf+xml":{source:"iana",compressible:!0,extensions:["rdf","owl"]},"application/reginfo+xml":{source:"iana",compressible:!0,extensions:["rif"]},"application/relax-ng-compact-syntax":{source:"iana",extensions:["rnc"]},"application/remote-printing":{source:"iana"},"application/reputon+json":{source:"iana",compressible:!0},"application/resource-lists+xml":{source:"iana",compressible:!0,extensions:["rl"]},"application/resource-lists-diff+xml":{source:"iana",compressible:!0,extensions:["rld"]},"application/rfc+xml":{source:"iana",compressible:!0},"application/riscos":{source:"iana"},"application/rlmi+xml":{source:"iana",compressible:!0},"application/rls-services+xml":{source:"iana",compressible:!0,extensions:["rs"]},"application/route-apd+xml":{source:"iana",compressible:!0,extensions:["rapd"]},"application/route-s-tsid+xml":{source:"iana",compressible:!0,extensions:["sls"]},"application/route-usd+xml":{source:"iana",compressible:!0,extensions:["rusd"]},"application/rpki-ghostbusters":{source:"iana",extensions:["gbr"]},"application/rpki-manifest":{source:"iana",extensions:["mft"]},"application/rpki-publication":{source:"iana"},"application/rpki-roa":{source:"iana",extensions:["roa"]},"application/rpki-updown":{source:"iana"},"application/rsd+xml":{source:"apache",compressible:!0,extensions:["rsd"]},"application/rss+xml":{source:"apache",compressible:!0,extensions:["rss"]},"application/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"application/rtploopback":{source:"iana"},"application/rtx":{source:"iana"},"application/samlassertion+xml":{source:"iana",compressible:!0},"application/samlmetadata+xml":{source:"iana",compressible:!0},"application/sarif+json":{source:"iana",compressible:!0},"application/sarif-external-properties+json":{source:"iana",compressible:!0},"application/sbe":{source:"iana"},"application/sbml+xml":{source:"iana",compressible:!0,extensions:["sbml"]},"application/scaip+xml":{source:"iana",compressible:!0},"application/scim+json":{source:"iana",compressible:!0},"application/scvp-cv-request":{source:"iana",extensions:["scq"]},"application/scvp-cv-response":{source:"iana",extensions:["scs"]},"application/scvp-vp-request":{source:"iana",extensions:["spq"]},"application/scvp-vp-response":{source:"iana",extensions:["spp"]},"application/sdp":{source:"iana",extensions:["sdp"]},"application/secevent+jwt":{source:"iana"},"application/senml+cbor":{source:"iana"},"application/senml+json":{source:"iana",compressible:!0},"application/senml+xml":{source:"iana",compressible:!0,extensions:["senmlx"]},"application/senml-etch+cbor":{source:"iana"},"application/senml-etch+json":{source:"iana",compressible:!0},"application/senml-exi":{source:"iana"},"application/sensml+cbor":{source:"iana"},"application/sensml+json":{source:"iana",compressible:!0},"application/sensml+xml":{source:"iana",compressible:!0,extensions:["sensmlx"]},"application/sensml-exi":{source:"iana"},"application/sep+xml":{source:"iana",compressible:!0},"application/sep-exi":{source:"iana"},"application/session-info":{source:"iana"},"application/set-payment":{source:"iana"},"application/set-payment-initiation":{source:"iana",extensions:["setpay"]},"application/set-registration":{source:"iana"},"application/set-registration-initiation":{source:"iana",extensions:["setreg"]},"application/sgml":{source:"iana"},"application/sgml-open-catalog":{source:"iana"},"application/shf+xml":{source:"iana",compressible:!0,extensions:["shf"]},"application/sieve":{source:"iana",extensions:["siv","sieve"]},"application/simple-filter+xml":{source:"iana",compressible:!0},"application/simple-message-summary":{source:"iana"},"application/simplesymbolcontainer":{source:"iana"},"application/sipc":{source:"iana"},"application/slate":{source:"iana"},"application/smil":{source:"iana"},"application/smil+xml":{source:"iana",compressible:!0,extensions:["smi","smil"]},"application/smpte336m":{source:"iana"},"application/soap+fastinfoset":{source:"iana"},"application/soap+xml":{source:"iana",compressible:!0},"application/sparql-query":{source:"iana",extensions:["rq"]},"application/sparql-results+xml":{source:"iana",compressible:!0,extensions:["srx"]},"application/spdx+json":{source:"iana",compressible:!0},"application/spirits-event+xml":{source:"iana",compressible:!0},"application/sql":{source:"iana"},"application/srgs":{source:"iana",extensions:["gram"]},"application/srgs+xml":{source:"iana",compressible:!0,extensions:["grxml"]},"application/sru+xml":{source:"iana",compressible:!0,extensions:["sru"]},"application/ssdl+xml":{source:"apache",compressible:!0,extensions:["ssdl"]},"application/ssml+xml":{source:"iana",compressible:!0,extensions:["ssml"]},"application/stix+json":{source:"iana",compressible:!0},"application/swid+xml":{source:"iana",compressible:!0,extensions:["swidtag"]},"application/tamp-apex-update":{source:"iana"},"application/tamp-apex-update-confirm":{source:"iana"},"application/tamp-community-update":{source:"iana"},"application/tamp-community-update-confirm":{source:"iana"},"application/tamp-error":{source:"iana"},"application/tamp-sequence-adjust":{source:"iana"},"application/tamp-sequence-adjust-confirm":{source:"iana"},"application/tamp-status-query":{source:"iana"},"application/tamp-status-response":{source:"iana"},"application/tamp-update":{source:"iana"},"application/tamp-update-confirm":{source:"iana"},"application/tar":{compressible:!0},"application/taxii+json":{source:"iana",compressible:!0},"application/td+json":{source:"iana",compressible:!0},"application/tei+xml":{source:"iana",compressible:!0,extensions:["tei","teicorpus"]},"application/tetra_isi":{source:"iana"},"application/thraud+xml":{source:"iana",compressible:!0,extensions:["tfi"]},"application/timestamp-query":{source:"iana"},"application/timestamp-reply":{source:"iana"},"application/timestamped-data":{source:"iana",extensions:["tsd"]},"application/tlsrpt+gzip":{source:"iana"},"application/tlsrpt+json":{source:"iana",compressible:!0},"application/tnauthlist":{source:"iana"},"application/token-introspection+jwt":{source:"iana"},"application/toml":{compressible:!0,extensions:["toml"]},"application/trickle-ice-sdpfrag":{source:"iana"},"application/trig":{source:"iana",extensions:["trig"]},"application/ttml+xml":{source:"iana",compressible:!0,extensions:["ttml"]},"application/tve-trigger":{source:"iana"},"application/tzif":{source:"iana"},"application/tzif-leap":{source:"iana"},"application/ubjson":{compressible:!1,extensions:["ubj"]},"application/ulpfec":{source:"iana"},"application/urc-grpsheet+xml":{source:"iana",compressible:!0},"application/urc-ressheet+xml":{source:"iana",compressible:!0,extensions:["rsheet"]},"application/urc-targetdesc+xml":{source:"iana",compressible:!0,extensions:["td"]},"application/urc-uisocketdesc+xml":{source:"iana",compressible:!0},"application/vcard+json":{source:"iana",compressible:!0},"application/vcard+xml":{source:"iana",compressible:!0},"application/vemmi":{source:"iana"},"application/vividence.scriptfile":{source:"apache"},"application/vnd.1000minds.decision-model+xml":{source:"iana",compressible:!0,extensions:["1km"]},"application/vnd.3gpp-prose+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-prose-pc3ch+xml":{source:"iana",compressible:!0},"application/vnd.3gpp-v2x-local-service-information":{source:"iana"},"application/vnd.3gpp.5gnas":{source:"iana"},"application/vnd.3gpp.access-transfer-events+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.bsf+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gmop+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.gtpc":{source:"iana"},"application/vnd.3gpp.interworking-data":{source:"iana"},"application/vnd.3gpp.lpp":{source:"iana"},"application/vnd.3gpp.mc-signalling-ear":{source:"iana"},"application/vnd.3gpp.mcdata-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-payload":{source:"iana"},"application/vnd.3gpp.mcdata-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-signalling":{source:"iana"},"application/vnd.3gpp.mcdata-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcdata-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-floor-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-signed+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-ue-init-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcptt-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-command+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-affiliation-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-location-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-mbms-usage-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-service-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-transmission-request+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-ue-config+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mcvideo-user-profile+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.mid-call+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ngap":{source:"iana"},"application/vnd.3gpp.pfcp":{source:"iana"},"application/vnd.3gpp.pic-bw-large":{source:"iana",extensions:["plb"]},"application/vnd.3gpp.pic-bw-small":{source:"iana",extensions:["psb"]},"application/vnd.3gpp.pic-bw-var":{source:"iana",extensions:["pvb"]},"application/vnd.3gpp.s1ap":{source:"iana"},"application/vnd.3gpp.sms":{source:"iana"},"application/vnd.3gpp.sms+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-ext+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.srvcc-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.state-and-event-info+xml":{source:"iana",compressible:!0},"application/vnd.3gpp.ussd+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.bcmcsinfo+xml":{source:"iana",compressible:!0},"application/vnd.3gpp2.sms":{source:"iana"},"application/vnd.3gpp2.tcap":{source:"iana",extensions:["tcap"]},"application/vnd.3lightssoftware.imagescal":{source:"iana"},"application/vnd.3m.post-it-notes":{source:"iana",extensions:["pwn"]},"application/vnd.accpac.simply.aso":{source:"iana",extensions:["aso"]},"application/vnd.accpac.simply.imp":{source:"iana",extensions:["imp"]},"application/vnd.acucobol":{source:"iana",extensions:["acu"]},"application/vnd.acucorp":{source:"iana",extensions:["atc","acutc"]},"application/vnd.adobe.air-application-installer-package+zip":{source:"apache",compressible:!1,extensions:["air"]},"application/vnd.adobe.flash.movie":{source:"iana"},"application/vnd.adobe.formscentral.fcdt":{source:"iana",extensions:["fcdt"]},"application/vnd.adobe.fxp":{source:"iana",extensions:["fxp","fxpl"]},"application/vnd.adobe.partial-upload":{source:"iana"},"application/vnd.adobe.xdp+xml":{source:"iana",compressible:!0,extensions:["xdp"]},"application/vnd.adobe.xfdf":{source:"iana",extensions:["xfdf"]},"application/vnd.aether.imp":{source:"iana"},"application/vnd.afpc.afplinedata":{source:"iana"},"application/vnd.afpc.afplinedata-pagedef":{source:"iana"},"application/vnd.afpc.cmoca-cmresource":{source:"iana"},"application/vnd.afpc.foca-charset":{source:"iana"},"application/vnd.afpc.foca-codedfont":{source:"iana"},"application/vnd.afpc.foca-codepage":{source:"iana"},"application/vnd.afpc.modca":{source:"iana"},"application/vnd.afpc.modca-cmtable":{source:"iana"},"application/vnd.afpc.modca-formdef":{source:"iana"},"application/vnd.afpc.modca-mediummap":{source:"iana"},"application/vnd.afpc.modca-objectcontainer":{source:"iana"},"application/vnd.afpc.modca-overlay":{source:"iana"},"application/vnd.afpc.modca-pagesegment":{source:"iana"},"application/vnd.age":{source:"iana",extensions:["age"]},"application/vnd.ah-barcode":{source:"iana"},"application/vnd.ahead.space":{source:"iana",extensions:["ahead"]},"application/vnd.airzip.filesecure.azf":{source:"iana",extensions:["azf"]},"application/vnd.airzip.filesecure.azs":{source:"iana",extensions:["azs"]},"application/vnd.amadeus+json":{source:"iana",compressible:!0},"application/vnd.amazon.ebook":{source:"apache",extensions:["azw"]},"application/vnd.amazon.mobi8-ebook":{source:"iana"},"application/vnd.americandynamics.acc":{source:"iana",extensions:["acc"]},"application/vnd.amiga.ami":{source:"iana",extensions:["ami"]},"application/vnd.amundsen.maze+xml":{source:"iana",compressible:!0},"application/vnd.android.ota":{source:"iana"},"application/vnd.android.package-archive":{source:"apache",compressible:!1,extensions:["apk"]},"application/vnd.anki":{source:"iana"},"application/vnd.anser-web-certificate-issue-initiation":{source:"iana",extensions:["cii"]},"application/vnd.anser-web-funds-transfer-initiation":{source:"apache",extensions:["fti"]},"application/vnd.antix.game-component":{source:"iana",extensions:["atx"]},"application/vnd.apache.arrow.file":{source:"iana"},"application/vnd.apache.arrow.stream":{source:"iana"},"application/vnd.apache.thrift.binary":{source:"iana"},"application/vnd.apache.thrift.compact":{source:"iana"},"application/vnd.apache.thrift.json":{source:"iana"},"application/vnd.api+json":{source:"iana",compressible:!0},"application/vnd.aplextor.warrp+json":{source:"iana",compressible:!0},"application/vnd.apothekende.reservation+json":{source:"iana",compressible:!0},"application/vnd.apple.installer+xml":{source:"iana",compressible:!0,extensions:["mpkg"]},"application/vnd.apple.keynote":{source:"iana",extensions:["key"]},"application/vnd.apple.mpegurl":{source:"iana",extensions:["m3u8"]},"application/vnd.apple.numbers":{source:"iana",extensions:["numbers"]},"application/vnd.apple.pages":{source:"iana",extensions:["pages"]},"application/vnd.apple.pkpass":{compressible:!1,extensions:["pkpass"]},"application/vnd.arastra.swi":{source:"iana"},"application/vnd.aristanetworks.swi":{source:"iana",extensions:["swi"]},"application/vnd.artisan+json":{source:"iana",compressible:!0},"application/vnd.artsquare":{source:"iana"},"application/vnd.astraea-software.iota":{source:"iana",extensions:["iota"]},"application/vnd.audiograph":{source:"iana",extensions:["aep"]},"application/vnd.autopackage":{source:"iana"},"application/vnd.avalon+json":{source:"iana",compressible:!0},"application/vnd.avistar+xml":{source:"iana",compressible:!0},"application/vnd.balsamiq.bmml+xml":{source:"iana",compressible:!0,extensions:["bmml"]},"application/vnd.balsamiq.bmpr":{source:"iana"},"application/vnd.banana-accounting":{source:"iana"},"application/vnd.bbf.usp.error":{source:"iana"},"application/vnd.bbf.usp.msg":{source:"iana"},"application/vnd.bbf.usp.msg+json":{source:"iana",compressible:!0},"application/vnd.bekitzur-stech+json":{source:"iana",compressible:!0},"application/vnd.bint.med-content":{source:"iana"},"application/vnd.biopax.rdf+xml":{source:"iana",compressible:!0},"application/vnd.blink-idb-value-wrapper":{source:"iana"},"application/vnd.blueice.multipass":{source:"iana",extensions:["mpm"]},"application/vnd.bluetooth.ep.oob":{source:"iana"},"application/vnd.bluetooth.le.oob":{source:"iana"},"application/vnd.bmi":{source:"iana",extensions:["bmi"]},"application/vnd.bpf":{source:"iana"},"application/vnd.bpf3":{source:"iana"},"application/vnd.businessobjects":{source:"iana",extensions:["rep"]},"application/vnd.byu.uapi+json":{source:"iana",compressible:!0},"application/vnd.cab-jscript":{source:"iana"},"application/vnd.canon-cpdl":{source:"iana"},"application/vnd.canon-lips":{source:"iana"},"application/vnd.capasystems-pg+json":{source:"iana",compressible:!0},"application/vnd.cendio.thinlinc.clientconf":{source:"iana"},"application/vnd.century-systems.tcp_stream":{source:"iana"},"application/vnd.chemdraw+xml":{source:"iana",compressible:!0,extensions:["cdxml"]},"application/vnd.chess-pgn":{source:"iana"},"application/vnd.chipnuts.karaoke-mmd":{source:"iana",extensions:["mmd"]},"application/vnd.ciedi":{source:"iana"},"application/vnd.cinderella":{source:"iana",extensions:["cdy"]},"application/vnd.cirpack.isdn-ext":{source:"iana"},"application/vnd.citationstyles.style+xml":{source:"iana",compressible:!0,extensions:["csl"]},"application/vnd.claymore":{source:"iana",extensions:["cla"]},"application/vnd.cloanto.rp9":{source:"iana",extensions:["rp9"]},"application/vnd.clonk.c4group":{source:"iana",extensions:["c4g","c4d","c4f","c4p","c4u"]},"application/vnd.cluetrust.cartomobile-config":{source:"iana",extensions:["c11amc"]},"application/vnd.cluetrust.cartomobile-config-pkg":{source:"iana",extensions:["c11amz"]},"application/vnd.coffeescript":{source:"iana"},"application/vnd.collabio.xodocuments.document":{source:"iana"},"application/vnd.collabio.xodocuments.document-template":{source:"iana"},"application/vnd.collabio.xodocuments.presentation":{source:"iana"},"application/vnd.collabio.xodocuments.presentation-template":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet":{source:"iana"},"application/vnd.collabio.xodocuments.spreadsheet-template":{source:"iana"},"application/vnd.collection+json":{source:"iana",compressible:!0},"application/vnd.collection.doc+json":{source:"iana",compressible:!0},"application/vnd.collection.next+json":{source:"iana",compressible:!0},"application/vnd.comicbook+zip":{source:"iana",compressible:!1},"application/vnd.comicbook-rar":{source:"iana"},"application/vnd.commerce-battelle":{source:"iana"},"application/vnd.commonspace":{source:"iana",extensions:["csp"]},"application/vnd.contact.cmsg":{source:"iana",extensions:["cdbcmsg"]},"application/vnd.coreos.ignition+json":{source:"iana",compressible:!0},"application/vnd.cosmocaller":{source:"iana",extensions:["cmc"]},"application/vnd.crick.clicker":{source:"iana",extensions:["clkx"]},"application/vnd.crick.clicker.keyboard":{source:"iana",extensions:["clkk"]},"application/vnd.crick.clicker.palette":{source:"iana",extensions:["clkp"]},"application/vnd.crick.clicker.template":{source:"iana",extensions:["clkt"]},"application/vnd.crick.clicker.wordbank":{source:"iana",extensions:["clkw"]},"application/vnd.criticaltools.wbs+xml":{source:"iana",compressible:!0,extensions:["wbs"]},"application/vnd.cryptii.pipe+json":{source:"iana",compressible:!0},"application/vnd.crypto-shade-file":{source:"iana"},"application/vnd.cryptomator.encrypted":{source:"iana"},"application/vnd.cryptomator.vault":{source:"iana"},"application/vnd.ctc-posml":{source:"iana",extensions:["pml"]},"application/vnd.ctct.ws+xml":{source:"iana",compressible:!0},"application/vnd.cups-pdf":{source:"iana"},"application/vnd.cups-postscript":{source:"iana"},"application/vnd.cups-ppd":{source:"iana",extensions:["ppd"]},"application/vnd.cups-raster":{source:"iana"},"application/vnd.cups-raw":{source:"iana"},"application/vnd.curl":{source:"iana"},"application/vnd.curl.car":{source:"apache",extensions:["car"]},"application/vnd.curl.pcurl":{source:"apache",extensions:["pcurl"]},"application/vnd.cyan.dean.root+xml":{source:"iana",compressible:!0},"application/vnd.cybank":{source:"iana"},"application/vnd.cyclonedx+json":{source:"iana",compressible:!0},"application/vnd.cyclonedx+xml":{source:"iana",compressible:!0},"application/vnd.d2l.coursepackage1p0+zip":{source:"iana",compressible:!1},"application/vnd.d3m-dataset":{source:"iana"},"application/vnd.d3m-problem":{source:"iana"},"application/vnd.dart":{source:"iana",compressible:!0,extensions:["dart"]},"application/vnd.data-vision.rdz":{source:"iana",extensions:["rdz"]},"application/vnd.datapackage+json":{source:"iana",compressible:!0},"application/vnd.dataresource+json":{source:"iana",compressible:!0},"application/vnd.dbf":{source:"iana",extensions:["dbf"]},"application/vnd.debian.binary-package":{source:"iana"},"application/vnd.dece.data":{source:"iana",extensions:["uvf","uvvf","uvd","uvvd"]},"application/vnd.dece.ttml+xml":{source:"iana",compressible:!0,extensions:["uvt","uvvt"]},"application/vnd.dece.unspecified":{source:"iana",extensions:["uvx","uvvx"]},"application/vnd.dece.zip":{source:"iana",extensions:["uvz","uvvz"]},"application/vnd.denovo.fcselayout-link":{source:"iana",extensions:["fe_launch"]},"application/vnd.desmume.movie":{source:"iana"},"application/vnd.dir-bi.plate-dl-nosuffix":{source:"iana"},"application/vnd.dm.delegation+xml":{source:"iana",compressible:!0},"application/vnd.dna":{source:"iana",extensions:["dna"]},"application/vnd.document+json":{source:"iana",compressible:!0},"application/vnd.dolby.mlp":{source:"apache",extensions:["mlp"]},"application/vnd.dolby.mobile.1":{source:"iana"},"application/vnd.dolby.mobile.2":{source:"iana"},"application/vnd.doremir.scorecloud-binary-document":{source:"iana"},"application/vnd.dpgraph":{source:"iana",extensions:["dpg"]},"application/vnd.dreamfactory":{source:"iana",extensions:["dfac"]},"application/vnd.drive+json":{source:"iana",compressible:!0},"application/vnd.ds-keypoint":{source:"apache",extensions:["kpxx"]},"application/vnd.dtg.local":{source:"iana"},"application/vnd.dtg.local.flash":{source:"iana"},"application/vnd.dtg.local.html":{source:"iana"},"application/vnd.dvb.ait":{source:"iana",extensions:["ait"]},"application/vnd.dvb.dvbisl+xml":{source:"iana",compressible:!0},"application/vnd.dvb.dvbj":{source:"iana"},"application/vnd.dvb.esgcontainer":{source:"iana"},"application/vnd.dvb.ipdcdftnotifaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess":{source:"iana"},"application/vnd.dvb.ipdcesgaccess2":{source:"iana"},"application/vnd.dvb.ipdcesgpdd":{source:"iana"},"application/vnd.dvb.ipdcroaming":{source:"iana"},"application/vnd.dvb.iptv.alfec-base":{source:"iana"},"application/vnd.dvb.iptv.alfec-enhancement":{source:"iana"},"application/vnd.dvb.notif-aggregate-root+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-container+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-generic+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-msglist+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-request+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-ia-registration-response+xml":{source:"iana",compressible:!0},"application/vnd.dvb.notif-init+xml":{source:"iana",compressible:!0},"application/vnd.dvb.pfr":{source:"iana"},"application/vnd.dvb.service":{source:"iana",extensions:["svc"]},"application/vnd.dxr":{source:"iana"},"application/vnd.dynageo":{source:"iana",extensions:["geo"]},"application/vnd.dzr":{source:"iana"},"application/vnd.easykaraoke.cdgdownload":{source:"iana"},"application/vnd.ecdis-update":{source:"iana"},"application/vnd.ecip.rlp":{source:"iana"},"application/vnd.eclipse.ditto+json":{source:"iana",compressible:!0},"application/vnd.ecowin.chart":{source:"iana",extensions:["mag"]},"application/vnd.ecowin.filerequest":{source:"iana"},"application/vnd.ecowin.fileupdate":{source:"iana"},"application/vnd.ecowin.series":{source:"iana"},"application/vnd.ecowin.seriesrequest":{source:"iana"},"application/vnd.ecowin.seriesupdate":{source:"iana"},"application/vnd.efi.img":{source:"iana"},"application/vnd.efi.iso":{source:"iana"},"application/vnd.emclient.accessrequest+xml":{source:"iana",compressible:!0},"application/vnd.enliven":{source:"iana",extensions:["nml"]},"application/vnd.enphase.envoy":{source:"iana"},"application/vnd.eprints.data+xml":{source:"iana",compressible:!0},"application/vnd.epson.esf":{source:"iana",extensions:["esf"]},"application/vnd.epson.msf":{source:"iana",extensions:["msf"]},"application/vnd.epson.quickanime":{source:"iana",extensions:["qam"]},"application/vnd.epson.salt":{source:"iana",extensions:["slt"]},"application/vnd.epson.ssf":{source:"iana",extensions:["ssf"]},"application/vnd.ericsson.quickcall":{source:"iana"},"application/vnd.espass-espass+zip":{source:"iana",compressible:!1},"application/vnd.eszigno3+xml":{source:"iana",compressible:!0,extensions:["es3","et3"]},"application/vnd.etsi.aoc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.asic-e+zip":{source:"iana",compressible:!1},"application/vnd.etsi.asic-s+zip":{source:"iana",compressible:!1},"application/vnd.etsi.cug+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvcommand+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-bc+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-cod+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsad-npvr+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvservice+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvsync+xml":{source:"iana",compressible:!0},"application/vnd.etsi.iptvueprofile+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mcid+xml":{source:"iana",compressible:!0},"application/vnd.etsi.mheg5":{source:"iana"},"application/vnd.etsi.overload-control-policy-dataset+xml":{source:"iana",compressible:!0},"application/vnd.etsi.pstn+xml":{source:"iana",compressible:!0},"application/vnd.etsi.sci+xml":{source:"iana",compressible:!0},"application/vnd.etsi.simservs+xml":{source:"iana",compressible:!0},"application/vnd.etsi.timestamp-token":{source:"iana"},"application/vnd.etsi.tsl+xml":{source:"iana",compressible:!0},"application/vnd.etsi.tsl.der":{source:"iana"},"application/vnd.eu.kasparian.car+json":{source:"iana",compressible:!0},"application/vnd.eudora.data":{source:"iana"},"application/vnd.evolv.ecig.profile":{source:"iana"},"application/vnd.evolv.ecig.settings":{source:"iana"},"application/vnd.evolv.ecig.theme":{source:"iana"},"application/vnd.exstream-empower+zip":{source:"iana",compressible:!1},"application/vnd.exstream-package":{source:"iana"},"application/vnd.ezpix-album":{source:"iana",extensions:["ez2"]},"application/vnd.ezpix-package":{source:"iana",extensions:["ez3"]},"application/vnd.f-secure.mobile":{source:"iana"},"application/vnd.familysearch.gedcom+zip":{source:"iana",compressible:!1},"application/vnd.fastcopy-disk-image":{source:"iana"},"application/vnd.fdf":{source:"iana",extensions:["fdf"]},"application/vnd.fdsn.mseed":{source:"iana",extensions:["mseed"]},"application/vnd.fdsn.seed":{source:"iana",extensions:["seed","dataless"]},"application/vnd.ffsns":{source:"iana"},"application/vnd.ficlab.flb+zip":{source:"iana",compressible:!1},"application/vnd.filmit.zfc":{source:"iana"},"application/vnd.fints":{source:"iana"},"application/vnd.firemonkeys.cloudcell":{source:"iana"},"application/vnd.flographit":{source:"iana",extensions:["gph"]},"application/vnd.fluxtime.clip":{source:"iana",extensions:["ftc"]},"application/vnd.font-fontforge-sfd":{source:"iana"},"application/vnd.framemaker":{source:"iana",extensions:["fm","frame","maker","book"]},"application/vnd.frogans.fnc":{source:"iana",extensions:["fnc"]},"application/vnd.frogans.ltf":{source:"iana",extensions:["ltf"]},"application/vnd.fsc.weblaunch":{source:"iana",extensions:["fsc"]},"application/vnd.fujifilm.fb.docuworks":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.binder":{source:"iana"},"application/vnd.fujifilm.fb.docuworks.container":{source:"iana"},"application/vnd.fujifilm.fb.jfi+xml":{source:"iana",compressible:!0},"application/vnd.fujitsu.oasys":{source:"iana",extensions:["oas"]},"application/vnd.fujitsu.oasys2":{source:"iana",extensions:["oa2"]},"application/vnd.fujitsu.oasys3":{source:"iana",extensions:["oa3"]},"application/vnd.fujitsu.oasysgp":{source:"iana",extensions:["fg5"]},"application/vnd.fujitsu.oasysprs":{source:"iana",extensions:["bh2"]},"application/vnd.fujixerox.art-ex":{source:"iana"},"application/vnd.fujixerox.art4":{source:"iana"},"application/vnd.fujixerox.ddd":{source:"iana",extensions:["ddd"]},"application/vnd.fujixerox.docuworks":{source:"iana",extensions:["xdw"]},"application/vnd.fujixerox.docuworks.binder":{source:"iana",extensions:["xbd"]},"application/vnd.fujixerox.docuworks.container":{source:"iana"},"application/vnd.fujixerox.hbpl":{source:"iana"},"application/vnd.fut-misnet":{source:"iana"},"application/vnd.futoin+cbor":{source:"iana"},"application/vnd.futoin+json":{source:"iana",compressible:!0},"application/vnd.fuzzysheet":{source:"iana",extensions:["fzs"]},"application/vnd.genomatix.tuxedo":{source:"iana",extensions:["txd"]},"application/vnd.gentics.grd+json":{source:"iana",compressible:!0},"application/vnd.geo+json":{source:"iana",compressible:!0},"application/vnd.geocube+xml":{source:"iana",compressible:!0},"application/vnd.geogebra.file":{source:"iana",extensions:["ggb"]},"application/vnd.geogebra.slides":{source:"iana"},"application/vnd.geogebra.tool":{source:"iana",extensions:["ggt"]},"application/vnd.geometry-explorer":{source:"iana",extensions:["gex","gre"]},"application/vnd.geonext":{source:"iana",extensions:["gxt"]},"application/vnd.geoplan":{source:"iana",extensions:["g2w"]},"application/vnd.geospace":{source:"iana",extensions:["g3w"]},"application/vnd.gerber":{source:"iana"},"application/vnd.globalplatform.card-content-mgt":{source:"iana"},"application/vnd.globalplatform.card-content-mgt-response":{source:"iana"},"application/vnd.gmx":{source:"iana",extensions:["gmx"]},"application/vnd.google-apps.document":{compressible:!1,extensions:["gdoc"]},"application/vnd.google-apps.presentation":{compressible:!1,extensions:["gslides"]},"application/vnd.google-apps.spreadsheet":{compressible:!1,extensions:["gsheet"]},"application/vnd.google-earth.kml+xml":{source:"iana",compressible:!0,extensions:["kml"]},"application/vnd.google-earth.kmz":{source:"iana",compressible:!1,extensions:["kmz"]},"application/vnd.gov.sk.e-form+xml":{source:"iana",compressible:!0},"application/vnd.gov.sk.e-form+zip":{source:"iana",compressible:!1},"application/vnd.gov.sk.xmldatacontainer+xml":{source:"iana",compressible:!0},"application/vnd.grafeq":{source:"iana",extensions:["gqf","gqs"]},"application/vnd.gridmp":{source:"iana"},"application/vnd.groove-account":{source:"iana",extensions:["gac"]},"application/vnd.groove-help":{source:"iana",extensions:["ghf"]},"application/vnd.groove-identity-message":{source:"iana",extensions:["gim"]},"application/vnd.groove-injector":{source:"iana",extensions:["grv"]},"application/vnd.groove-tool-message":{source:"iana",extensions:["gtm"]},"application/vnd.groove-tool-template":{source:"iana",extensions:["tpl"]},"application/vnd.groove-vcard":{source:"iana",extensions:["vcg"]},"application/vnd.hal+json":{source:"iana",compressible:!0},"application/vnd.hal+xml":{source:"iana",compressible:!0,extensions:["hal"]},"application/vnd.handheld-entertainment+xml":{source:"iana",compressible:!0,extensions:["zmm"]},"application/vnd.hbci":{source:"iana",extensions:["hbci"]},"application/vnd.hc+json":{source:"iana",compressible:!0},"application/vnd.hcl-bireports":{source:"iana"},"application/vnd.hdt":{source:"iana"},"application/vnd.heroku+json":{source:"iana",compressible:!0},"application/vnd.hhe.lesson-player":{source:"iana",extensions:["les"]},"application/vnd.hl7cda+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hl7v2+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.hp-hpgl":{source:"iana",extensions:["hpgl"]},"application/vnd.hp-hpid":{source:"iana",extensions:["hpid"]},"application/vnd.hp-hps":{source:"iana",extensions:["hps"]},"application/vnd.hp-jlyt":{source:"iana",extensions:["jlt"]},"application/vnd.hp-pcl":{source:"iana",extensions:["pcl"]},"application/vnd.hp-pclxl":{source:"iana",extensions:["pclxl"]},"application/vnd.httphone":{source:"iana"},"application/vnd.hydrostatix.sof-data":{source:"iana",extensions:["sfd-hdstx"]},"application/vnd.hyper+json":{source:"iana",compressible:!0},"application/vnd.hyper-item+json":{source:"iana",compressible:!0},"application/vnd.hyperdrive+json":{source:"iana",compressible:!0},"application/vnd.hzn-3d-crossword":{source:"iana"},"application/vnd.ibm.afplinedata":{source:"iana"},"application/vnd.ibm.electronic-media":{source:"iana"},"application/vnd.ibm.minipay":{source:"iana",extensions:["mpy"]},"application/vnd.ibm.modcap":{source:"iana",extensions:["afp","listafp","list3820"]},"application/vnd.ibm.rights-management":{source:"iana",extensions:["irm"]},"application/vnd.ibm.secure-container":{source:"iana",extensions:["sc"]},"application/vnd.iccprofile":{source:"iana",extensions:["icc","icm"]},"application/vnd.ieee.1905":{source:"iana"},"application/vnd.igloader":{source:"iana",extensions:["igl"]},"application/vnd.imagemeter.folder+zip":{source:"iana",compressible:!1},"application/vnd.imagemeter.image+zip":{source:"iana",compressible:!1},"application/vnd.immervision-ivp":{source:"iana",extensions:["ivp"]},"application/vnd.immervision-ivu":{source:"iana",extensions:["ivu"]},"application/vnd.ims.imsccv1p1":{source:"iana"},"application/vnd.ims.imsccv1p2":{source:"iana"},"application/vnd.ims.imsccv1p3":{source:"iana"},"application/vnd.ims.lis.v2.result+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolconsumerprofile+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolproxy.id+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings+json":{source:"iana",compressible:!0},"application/vnd.ims.lti.v2.toolsettings.simple+json":{source:"iana",compressible:!0},"application/vnd.informedcontrol.rms+xml":{source:"iana",compressible:!0},"application/vnd.informix-visionary":{source:"iana"},"application/vnd.infotech.project":{source:"iana"},"application/vnd.infotech.project+xml":{source:"iana",compressible:!0},"application/vnd.innopath.wamp.notification":{source:"iana"},"application/vnd.insors.igm":{source:"iana",extensions:["igm"]},"application/vnd.intercon.formnet":{source:"iana",extensions:["xpw","xpx"]},"application/vnd.intergeo":{source:"iana",extensions:["i2g"]},"application/vnd.intertrust.digibox":{source:"iana"},"application/vnd.intertrust.nncp":{source:"iana"},"application/vnd.intu.qbo":{source:"iana",extensions:["qbo"]},"application/vnd.intu.qfx":{source:"iana",extensions:["qfx"]},"application/vnd.iptc.g2.catalogitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.conceptitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.knowledgeitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.newsmessage+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.packageitem+xml":{source:"iana",compressible:!0},"application/vnd.iptc.g2.planningitem+xml":{source:"iana",compressible:!0},"application/vnd.ipunplugged.rcprofile":{source:"iana",extensions:["rcprofile"]},"application/vnd.irepository.package+xml":{source:"iana",compressible:!0,extensions:["irp"]},"application/vnd.is-xpr":{source:"iana",extensions:["xpr"]},"application/vnd.isac.fcs":{source:"iana",extensions:["fcs"]},"application/vnd.iso11783-10+zip":{source:"iana",compressible:!1},"application/vnd.jam":{source:"iana",extensions:["jam"]},"application/vnd.japannet-directory-service":{source:"iana"},"application/vnd.japannet-jpnstore-wakeup":{source:"iana"},"application/vnd.japannet-payment-wakeup":{source:"iana"},"application/vnd.japannet-registration":{source:"iana"},"application/vnd.japannet-registration-wakeup":{source:"iana"},"application/vnd.japannet-setstore-wakeup":{source:"iana"},"application/vnd.japannet-verification":{source:"iana"},"application/vnd.japannet-verification-wakeup":{source:"iana"},"application/vnd.jcp.javame.midlet-rms":{source:"iana",extensions:["rms"]},"application/vnd.jisp":{source:"iana",extensions:["jisp"]},"application/vnd.joost.joda-archive":{source:"iana",extensions:["joda"]},"application/vnd.jsk.isdn-ngn":{source:"iana"},"application/vnd.kahootz":{source:"iana",extensions:["ktz","ktr"]},"application/vnd.kde.karbon":{source:"iana",extensions:["karbon"]},"application/vnd.kde.kchart":{source:"iana",extensions:["chrt"]},"application/vnd.kde.kformula":{source:"iana",extensions:["kfo"]},"application/vnd.kde.kivio":{source:"iana",extensions:["flw"]},"application/vnd.kde.kontour":{source:"iana",extensions:["kon"]},"application/vnd.kde.kpresenter":{source:"iana",extensions:["kpr","kpt"]},"application/vnd.kde.kspread":{source:"iana",extensions:["ksp"]},"application/vnd.kde.kword":{source:"iana",extensions:["kwd","kwt"]},"application/vnd.kenameaapp":{source:"iana",extensions:["htke"]},"application/vnd.kidspiration":{source:"iana",extensions:["kia"]},"application/vnd.kinar":{source:"iana",extensions:["kne","knp"]},"application/vnd.koan":{source:"iana",extensions:["skp","skd","skt","skm"]},"application/vnd.kodak-descriptor":{source:"iana",extensions:["sse"]},"application/vnd.las":{source:"iana"},"application/vnd.las.las+json":{source:"iana",compressible:!0},"application/vnd.las.las+xml":{source:"iana",compressible:!0,extensions:["lasxml"]},"application/vnd.laszip":{source:"iana"},"application/vnd.leap+json":{source:"iana",compressible:!0},"application/vnd.liberty-request+xml":{source:"iana",compressible:!0},"application/vnd.llamagraphics.life-balance.desktop":{source:"iana",extensions:["lbd"]},"application/vnd.llamagraphics.life-balance.exchange+xml":{source:"iana",compressible:!0,extensions:["lbe"]},"application/vnd.logipipe.circuit+zip":{source:"iana",compressible:!1},"application/vnd.loom":{source:"iana"},"application/vnd.lotus-1-2-3":{source:"iana",extensions:["123"]},"application/vnd.lotus-approach":{source:"iana",extensions:["apr"]},"application/vnd.lotus-freelance":{source:"iana",extensions:["pre"]},"application/vnd.lotus-notes":{source:"iana",extensions:["nsf"]},"application/vnd.lotus-organizer":{source:"iana",extensions:["org"]},"application/vnd.lotus-screencam":{source:"iana",extensions:["scm"]},"application/vnd.lotus-wordpro":{source:"iana",extensions:["lwp"]},"application/vnd.macports.portpkg":{source:"iana",extensions:["portpkg"]},"application/vnd.mapbox-vector-tile":{source:"iana",extensions:["mvt"]},"application/vnd.marlin.drm.actiontoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.conftoken+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.license+xml":{source:"iana",compressible:!0},"application/vnd.marlin.drm.mdcf":{source:"iana"},"application/vnd.mason+json":{source:"iana",compressible:!0},"application/vnd.maxar.archive.3tz+zip":{source:"iana",compressible:!1},"application/vnd.maxmind.maxmind-db":{source:"iana"},"application/vnd.mcd":{source:"iana",extensions:["mcd"]},"application/vnd.medcalcdata":{source:"iana",extensions:["mc1"]},"application/vnd.mediastation.cdkey":{source:"iana",extensions:["cdkey"]},"application/vnd.meridian-slingshot":{source:"iana"},"application/vnd.mfer":{source:"iana",extensions:["mwf"]},"application/vnd.mfmp":{source:"iana",extensions:["mfm"]},"application/vnd.micro+json":{source:"iana",compressible:!0},"application/vnd.micrografx.flo":{source:"iana",extensions:["flo"]},"application/vnd.micrografx.igx":{source:"iana",extensions:["igx"]},"application/vnd.microsoft.portable-executable":{source:"iana"},"application/vnd.microsoft.windows.thumbnail-cache":{source:"iana"},"application/vnd.miele+json":{source:"iana",compressible:!0},"application/vnd.mif":{source:"iana",extensions:["mif"]},"application/vnd.minisoft-hp3000-save":{source:"iana"},"application/vnd.mitsubishi.misty-guard.trustweb":{source:"iana"},"application/vnd.mobius.daf":{source:"iana",extensions:["daf"]},"application/vnd.mobius.dis":{source:"iana",extensions:["dis"]},"application/vnd.mobius.mbk":{source:"iana",extensions:["mbk"]},"application/vnd.mobius.mqy":{source:"iana",extensions:["mqy"]},"application/vnd.mobius.msl":{source:"iana",extensions:["msl"]},"application/vnd.mobius.plc":{source:"iana",extensions:["plc"]},"application/vnd.mobius.txf":{source:"iana",extensions:["txf"]},"application/vnd.mophun.application":{source:"iana",extensions:["mpn"]},"application/vnd.mophun.certificate":{source:"iana",extensions:["mpc"]},"application/vnd.motorola.flexsuite":{source:"iana"},"application/vnd.motorola.flexsuite.adsi":{source:"iana"},"application/vnd.motorola.flexsuite.fis":{source:"iana"},"application/vnd.motorola.flexsuite.gotap":{source:"iana"},"application/vnd.motorola.flexsuite.kmr":{source:"iana"},"application/vnd.motorola.flexsuite.ttc":{source:"iana"},"application/vnd.motorola.flexsuite.wem":{source:"iana"},"application/vnd.motorola.iprm":{source:"iana"},"application/vnd.mozilla.xul+xml":{source:"iana",compressible:!0,extensions:["xul"]},"application/vnd.ms-3mfdocument":{source:"iana"},"application/vnd.ms-artgalry":{source:"iana",extensions:["cil"]},"application/vnd.ms-asf":{source:"iana"},"application/vnd.ms-cab-compressed":{source:"iana",extensions:["cab"]},"application/vnd.ms-color.iccprofile":{source:"apache"},"application/vnd.ms-excel":{source:"iana",compressible:!1,extensions:["xls","xlm","xla","xlc","xlt","xlw"]},"application/vnd.ms-excel.addin.macroenabled.12":{source:"iana",extensions:["xlam"]},"application/vnd.ms-excel.sheet.binary.macroenabled.12":{source:"iana",extensions:["xlsb"]},"application/vnd.ms-excel.sheet.macroenabled.12":{source:"iana",extensions:["xlsm"]},"application/vnd.ms-excel.template.macroenabled.12":{source:"iana",extensions:["xltm"]},"application/vnd.ms-fontobject":{source:"iana",compressible:!0,extensions:["eot"]},"application/vnd.ms-htmlhelp":{source:"iana",extensions:["chm"]},"application/vnd.ms-ims":{source:"iana",extensions:["ims"]},"application/vnd.ms-lrm":{source:"iana",extensions:["lrm"]},"application/vnd.ms-office.activex+xml":{source:"iana",compressible:!0},"application/vnd.ms-officetheme":{source:"iana",extensions:["thmx"]},"application/vnd.ms-opentype":{source:"apache",compressible:!0},"application/vnd.ms-outlook":{compressible:!1,extensions:["msg"]},"application/vnd.ms-package.obfuscated-opentype":{source:"apache"},"application/vnd.ms-pki.seccat":{source:"apache",extensions:["cat"]},"application/vnd.ms-pki.stl":{source:"apache",extensions:["stl"]},"application/vnd.ms-playready.initiator+xml":{source:"iana",compressible:!0},"application/vnd.ms-powerpoint":{source:"iana",compressible:!1,extensions:["ppt","pps","pot"]},"application/vnd.ms-powerpoint.addin.macroenabled.12":{source:"iana",extensions:["ppam"]},"application/vnd.ms-powerpoint.presentation.macroenabled.12":{source:"iana",extensions:["pptm"]},"application/vnd.ms-powerpoint.slide.macroenabled.12":{source:"iana",extensions:["sldm"]},"application/vnd.ms-powerpoint.slideshow.macroenabled.12":{source:"iana",extensions:["ppsm"]},"application/vnd.ms-powerpoint.template.macroenabled.12":{source:"iana",extensions:["potm"]},"application/vnd.ms-printdevicecapabilities+xml":{source:"iana",compressible:!0},"application/vnd.ms-printing.printticket+xml":{source:"apache",compressible:!0},"application/vnd.ms-printschematicket+xml":{source:"iana",compressible:!0},"application/vnd.ms-project":{source:"iana",extensions:["mpp","mpt"]},"application/vnd.ms-tnef":{source:"iana"},"application/vnd.ms-windows.devicepairing":{source:"iana"},"application/vnd.ms-windows.nwprinting.oob":{source:"iana"},"application/vnd.ms-windows.printerpairing":{source:"iana"},"application/vnd.ms-windows.wsd.oob":{source:"iana"},"application/vnd.ms-wmdrm.lic-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.lic-resp":{source:"iana"},"application/vnd.ms-wmdrm.meter-chlg-req":{source:"iana"},"application/vnd.ms-wmdrm.meter-resp":{source:"iana"},"application/vnd.ms-word.document.macroenabled.12":{source:"iana",extensions:["docm"]},"application/vnd.ms-word.template.macroenabled.12":{source:"iana",extensions:["dotm"]},"application/vnd.ms-works":{source:"iana",extensions:["wps","wks","wcm","wdb"]},"application/vnd.ms-wpl":{source:"iana",extensions:["wpl"]},"application/vnd.ms-xpsdocument":{source:"iana",compressible:!1,extensions:["xps"]},"application/vnd.msa-disk-image":{source:"iana"},"application/vnd.mseq":{source:"iana",extensions:["mseq"]},"application/vnd.msign":{source:"iana"},"application/vnd.multiad.creator":{source:"iana"},"application/vnd.multiad.creator.cif":{source:"iana"},"application/vnd.music-niff":{source:"iana"},"application/vnd.musician":{source:"iana",extensions:["mus"]},"application/vnd.muvee.style":{source:"iana",extensions:["msty"]},"application/vnd.mynfc":{source:"iana",extensions:["taglet"]},"application/vnd.nacamar.ybrid+json":{source:"iana",compressible:!0},"application/vnd.ncd.control":{source:"iana"},"application/vnd.ncd.reference":{source:"iana"},"application/vnd.nearst.inv+json":{source:"iana",compressible:!0},"application/vnd.nebumind.line":{source:"iana"},"application/vnd.nervana":{source:"iana"},"application/vnd.netfpx":{source:"iana"},"application/vnd.neurolanguage.nlu":{source:"iana",extensions:["nlu"]},"application/vnd.nimn":{source:"iana"},"application/vnd.nintendo.nitro.rom":{source:"iana"},"application/vnd.nintendo.snes.rom":{source:"iana"},"application/vnd.nitf":{source:"iana",extensions:["ntf","nitf"]},"application/vnd.noblenet-directory":{source:"iana",extensions:["nnd"]},"application/vnd.noblenet-sealer":{source:"iana",extensions:["nns"]},"application/vnd.noblenet-web":{source:"iana",extensions:["nnw"]},"application/vnd.nokia.catalogs":{source:"iana"},"application/vnd.nokia.conml+wbxml":{source:"iana"},"application/vnd.nokia.conml+xml":{source:"iana",compressible:!0},"application/vnd.nokia.iptv.config+xml":{source:"iana",compressible:!0},"application/vnd.nokia.isds-radio-presets":{source:"iana"},"application/vnd.nokia.landmark+wbxml":{source:"iana"},"application/vnd.nokia.landmark+xml":{source:"iana",compressible:!0},"application/vnd.nokia.landmarkcollection+xml":{source:"iana",compressible:!0},"application/vnd.nokia.n-gage.ac+xml":{source:"iana",compressible:!0,extensions:["ac"]},"application/vnd.nokia.n-gage.data":{source:"iana",extensions:["ngdat"]},"application/vnd.nokia.n-gage.symbian.install":{source:"iana",extensions:["n-gage"]},"application/vnd.nokia.ncd":{source:"iana"},"application/vnd.nokia.pcd+wbxml":{source:"iana"},"application/vnd.nokia.pcd+xml":{source:"iana",compressible:!0},"application/vnd.nokia.radio-preset":{source:"iana",extensions:["rpst"]},"application/vnd.nokia.radio-presets":{source:"iana",extensions:["rpss"]},"application/vnd.novadigm.edm":{source:"iana",extensions:["edm"]},"application/vnd.novadigm.edx":{source:"iana",extensions:["edx"]},"application/vnd.novadigm.ext":{source:"iana",extensions:["ext"]},"application/vnd.ntt-local.content-share":{source:"iana"},"application/vnd.ntt-local.file-transfer":{source:"iana"},"application/vnd.ntt-local.ogw_remote-access":{source:"iana"},"application/vnd.ntt-local.sip-ta_remote":{source:"iana"},"application/vnd.ntt-local.sip-ta_tcp_stream":{source:"iana"},"application/vnd.oasis.opendocument.chart":{source:"iana",extensions:["odc"]},"application/vnd.oasis.opendocument.chart-template":{source:"iana",extensions:["otc"]},"application/vnd.oasis.opendocument.database":{source:"iana",extensions:["odb"]},"application/vnd.oasis.opendocument.formula":{source:"iana",extensions:["odf"]},"application/vnd.oasis.opendocument.formula-template":{source:"iana",extensions:["odft"]},"application/vnd.oasis.opendocument.graphics":{source:"iana",compressible:!1,extensions:["odg"]},"application/vnd.oasis.opendocument.graphics-template":{source:"iana",extensions:["otg"]},"application/vnd.oasis.opendocument.image":{source:"iana",extensions:["odi"]},"application/vnd.oasis.opendocument.image-template":{source:"iana",extensions:["oti"]},"application/vnd.oasis.opendocument.presentation":{source:"iana",compressible:!1,extensions:["odp"]},"application/vnd.oasis.opendocument.presentation-template":{source:"iana",extensions:["otp"]},"application/vnd.oasis.opendocument.spreadsheet":{source:"iana",compressible:!1,extensions:["ods"]},"application/vnd.oasis.opendocument.spreadsheet-template":{source:"iana",extensions:["ots"]},"application/vnd.oasis.opendocument.text":{source:"iana",compressible:!1,extensions:["odt"]},"application/vnd.oasis.opendocument.text-master":{source:"iana",extensions:["odm"]},"application/vnd.oasis.opendocument.text-template":{source:"iana",extensions:["ott"]},"application/vnd.oasis.opendocument.text-web":{source:"iana",extensions:["oth"]},"application/vnd.obn":{source:"iana"},"application/vnd.ocf+cbor":{source:"iana"},"application/vnd.oci.image.manifest.v1+json":{source:"iana",compressible:!0},"application/vnd.oftn.l10n+json":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessdownload+xml":{source:"iana",compressible:!0},"application/vnd.oipf.contentaccessstreaming+xml":{source:"iana",compressible:!0},"application/vnd.oipf.cspg-hexbinary":{source:"iana"},"application/vnd.oipf.dae.svg+xml":{source:"iana",compressible:!0},"application/vnd.oipf.dae.xhtml+xml":{source:"iana",compressible:!0},"application/vnd.oipf.mippvcontrolmessage+xml":{source:"iana",compressible:!0},"application/vnd.oipf.pae.gem":{source:"iana"},"application/vnd.oipf.spdiscovery+xml":{source:"iana",compressible:!0},"application/vnd.oipf.spdlist+xml":{source:"iana",compressible:!0},"application/vnd.oipf.ueprofile+xml":{source:"iana",compressible:!0},"application/vnd.oipf.userprofile+xml":{source:"iana",compressible:!0},"application/vnd.olpc-sugar":{source:"iana",extensions:["xo"]},"application/vnd.oma-scws-config":{source:"iana"},"application/vnd.oma-scws-http-request":{source:"iana"},"application/vnd.oma-scws-http-response":{source:"iana"},"application/vnd.oma.bcast.associated-procedure-parameter+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.drm-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.imd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.ltkm":{source:"iana"},"application/vnd.oma.bcast.notification+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.provisioningtrigger":{source:"iana"},"application/vnd.oma.bcast.sgboot":{source:"iana"},"application/vnd.oma.bcast.sgdd+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sgdu":{source:"iana"},"application/vnd.oma.bcast.simple-symbol-container":{source:"iana"},"application/vnd.oma.bcast.smartcard-trigger+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.sprov+xml":{source:"iana",compressible:!0},"application/vnd.oma.bcast.stkm":{source:"iana"},"application/vnd.oma.cab-address-book+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-feature-handler+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-pcc+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-subs-invite+xml":{source:"iana",compressible:!0},"application/vnd.oma.cab-user-prefs+xml":{source:"iana",compressible:!0},"application/vnd.oma.dcd":{source:"iana"},"application/vnd.oma.dcdc":{source:"iana"},"application/vnd.oma.dd2+xml":{source:"iana",compressible:!0,extensions:["dd2"]},"application/vnd.oma.drm.risd+xml":{source:"iana",compressible:!0},"application/vnd.oma.group-usage-list+xml":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+cbor":{source:"iana"},"application/vnd.oma.lwm2m+json":{source:"iana",compressible:!0},"application/vnd.oma.lwm2m+tlv":{source:"iana"},"application/vnd.oma.pal+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.detailed-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.final-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.groups+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.invocation-descriptor+xml":{source:"iana",compressible:!0},"application/vnd.oma.poc.optimized-progress-report+xml":{source:"iana",compressible:!0},"application/vnd.oma.push":{source:"iana"},"application/vnd.oma.scidm.messages+xml":{source:"iana",compressible:!0},"application/vnd.oma.xcap-directory+xml":{source:"iana",compressible:!0},"application/vnd.omads-email+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-file+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omads-folder+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.omaloc-supl-init":{source:"iana"},"application/vnd.onepager":{source:"iana"},"application/vnd.onepagertamp":{source:"iana"},"application/vnd.onepagertamx":{source:"iana"},"application/vnd.onepagertat":{source:"iana"},"application/vnd.onepagertatp":{source:"iana"},"application/vnd.onepagertatx":{source:"iana"},"application/vnd.openblox.game+xml":{source:"iana",compressible:!0,extensions:["obgx"]},"application/vnd.openblox.game-binary":{source:"iana"},"application/vnd.openeye.oeb":{source:"iana"},"application/vnd.openofficeorg.extension":{source:"apache",extensions:["oxt"]},"application/vnd.openstreetmap.data+xml":{source:"iana",compressible:!0,extensions:["osm"]},"application/vnd.opentimestamps.ots":{source:"iana"},"application/vnd.openxmlformats-officedocument.custom-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.customxmlproperties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawing+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chart+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.chartshapes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramcolors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramdata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramlayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.drawingml.diagramstyle+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.extended-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.commentauthors+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.handoutmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesmaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.notesslide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presentation":{source:"iana",compressible:!1,extensions:["pptx"]},"application/vnd.openxmlformats-officedocument.presentationml.presentation.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.presprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slide":{source:"iana",extensions:["sldx"]},"application/vnd.openxmlformats-officedocument.presentationml.slide+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidelayout+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slidemaster+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideshow":{source:"iana",extensions:["ppsx"]},"application/vnd.openxmlformats-officedocument.presentationml.slideshow.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.slideupdateinfo+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tablestyles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.tags+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.template":{source:"iana",extensions:["potx"]},"application/vnd.openxmlformats-officedocument.presentationml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.presentationml.viewprops+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.calcchain+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.chartsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.connections+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.dialogsheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.externallink+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcachedefinition+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivotcacherecords+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.pivottable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.querytable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionheaders+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.revisionlog+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sharedstrings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet":{source:"iana",compressible:!1,extensions:["xlsx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.sheetmetadata+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.table+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.tablesinglecells+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.template":{source:"iana",extensions:["xltx"]},"application/vnd.openxmlformats-officedocument.spreadsheetml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.usernames+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.volatiledependencies+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.spreadsheetml.worksheet+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.theme+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.themeoverride+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.vmldrawing":{source:"iana"},"application/vnd.openxmlformats-officedocument.wordprocessingml.comments+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document":{source:"iana",compressible:!1,extensions:["docx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.glossary+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.document.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.endnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.fonttable+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footer+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.footnotes+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.numbering+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.settings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.styles+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.template":{source:"iana",extensions:["dotx"]},"application/vnd.openxmlformats-officedocument.wordprocessingml.template.main+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-officedocument.wordprocessingml.websettings+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.core-properties+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.digital-signature-xmlsignature+xml":{source:"iana",compressible:!0},"application/vnd.openxmlformats-package.relationships+xml":{source:"iana",compressible:!0},"application/vnd.oracle.resource+json":{source:"iana",compressible:!0},"application/vnd.orange.indata":{source:"iana"},"application/vnd.osa.netdeploy":{source:"iana"},"application/vnd.osgeo.mapguide.package":{source:"iana",extensions:["mgp"]},"application/vnd.osgi.bundle":{source:"iana"},"application/vnd.osgi.dp":{source:"iana",extensions:["dp"]},"application/vnd.osgi.subsystem":{source:"iana",extensions:["esa"]},"application/vnd.otps.ct-kip+xml":{source:"iana",compressible:!0},"application/vnd.oxli.countgraph":{source:"iana"},"application/vnd.pagerduty+json":{source:"iana",compressible:!0},"application/vnd.palm":{source:"iana",extensions:["pdb","pqa","oprc"]},"application/vnd.panoply":{source:"iana"},"application/vnd.paos.xml":{source:"iana"},"application/vnd.patentdive":{source:"iana"},"application/vnd.patientecommsdoc":{source:"iana"},"application/vnd.pawaafile":{source:"iana",extensions:["paw"]},"application/vnd.pcos":{source:"iana"},"application/vnd.pg.format":{source:"iana",extensions:["str"]},"application/vnd.pg.osasli":{source:"iana",extensions:["ei6"]},"application/vnd.piaccess.application-licence":{source:"iana"},"application/vnd.picsel":{source:"iana",extensions:["efif"]},"application/vnd.pmi.widget":{source:"iana",extensions:["wg"]},"application/vnd.poc.group-advertisement+xml":{source:"iana",compressible:!0},"application/vnd.pocketlearn":{source:"iana",extensions:["plf"]},"application/vnd.powerbuilder6":{source:"iana",extensions:["pbd"]},"application/vnd.powerbuilder6-s":{source:"iana"},"application/vnd.powerbuilder7":{source:"iana"},"application/vnd.powerbuilder7-s":{source:"iana"},"application/vnd.powerbuilder75":{source:"iana"},"application/vnd.powerbuilder75-s":{source:"iana"},"application/vnd.preminet":{source:"iana"},"application/vnd.previewsystems.box":{source:"iana",extensions:["box"]},"application/vnd.proteus.magazine":{source:"iana",extensions:["mgz"]},"application/vnd.psfs":{source:"iana"},"application/vnd.publishare-delta-tree":{source:"iana",extensions:["qps"]},"application/vnd.pvi.ptid1":{source:"iana",extensions:["ptid"]},"application/vnd.pwg-multiplexed":{source:"iana"},"application/vnd.pwg-xhtml-print+xml":{source:"iana",compressible:!0},"application/vnd.qualcomm.brew-app-res":{source:"iana"},"application/vnd.quarantainenet":{source:"iana"},"application/vnd.quark.quarkxpress":{source:"iana",extensions:["qxd","qxt","qwd","qwt","qxl","qxb"]},"application/vnd.quobject-quoxdocument":{source:"iana"},"application/vnd.radisys.moml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-conn+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-audit-stream+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-conf+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-base+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-detect+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-fax-sendrecv+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-group+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-speech+xml":{source:"iana",compressible:!0},"application/vnd.radisys.msml-dialog-transform+xml":{source:"iana",compressible:!0},"application/vnd.rainstor.data":{source:"iana"},"application/vnd.rapid":{source:"iana"},"application/vnd.rar":{source:"iana",extensions:["rar"]},"application/vnd.realvnc.bed":{source:"iana",extensions:["bed"]},"application/vnd.recordare.musicxml":{source:"iana",extensions:["mxl"]},"application/vnd.recordare.musicxml+xml":{source:"iana",compressible:!0,extensions:["musicxml"]},"application/vnd.renlearn.rlprint":{source:"iana"},"application/vnd.resilient.logic":{source:"iana"},"application/vnd.restful+json":{source:"iana",compressible:!0},"application/vnd.rig.cryptonote":{source:"iana",extensions:["cryptonote"]},"application/vnd.rim.cod":{source:"apache",extensions:["cod"]},"application/vnd.rn-realmedia":{source:"apache",extensions:["rm"]},"application/vnd.rn-realmedia-vbr":{source:"apache",extensions:["rmvb"]},"application/vnd.route66.link66+xml":{source:"iana",compressible:!0,extensions:["link66"]},"application/vnd.rs-274x":{source:"iana"},"application/vnd.ruckus.download":{source:"iana"},"application/vnd.s3sms":{source:"iana"},"application/vnd.sailingtracker.track":{source:"iana",extensions:["st"]},"application/vnd.sar":{source:"iana"},"application/vnd.sbm.cid":{source:"iana"},"application/vnd.sbm.mid2":{source:"iana"},"application/vnd.scribus":{source:"iana"},"application/vnd.sealed.3df":{source:"iana"},"application/vnd.sealed.csf":{source:"iana"},"application/vnd.sealed.doc":{source:"iana"},"application/vnd.sealed.eml":{source:"iana"},"application/vnd.sealed.mht":{source:"iana"},"application/vnd.sealed.net":{source:"iana"},"application/vnd.sealed.ppt":{source:"iana"},"application/vnd.sealed.tiff":{source:"iana"},"application/vnd.sealed.xls":{source:"iana"},"application/vnd.sealedmedia.softseal.html":{source:"iana"},"application/vnd.sealedmedia.softseal.pdf":{source:"iana"},"application/vnd.seemail":{source:"iana",extensions:["see"]},"application/vnd.seis+json":{source:"iana",compressible:!0},"application/vnd.sema":{source:"iana",extensions:["sema"]},"application/vnd.semd":{source:"iana",extensions:["semd"]},"application/vnd.semf":{source:"iana",extensions:["semf"]},"application/vnd.shade-save-file":{source:"iana"},"application/vnd.shana.informed.formdata":{source:"iana",extensions:["ifm"]},"application/vnd.shana.informed.formtemplate":{source:"iana",extensions:["itp"]},"application/vnd.shana.informed.interchange":{source:"iana",extensions:["iif"]},"application/vnd.shana.informed.package":{source:"iana",extensions:["ipk"]},"application/vnd.shootproof+json":{source:"iana",compressible:!0},"application/vnd.shopkick+json":{source:"iana",compressible:!0},"application/vnd.shp":{source:"iana"},"application/vnd.shx":{source:"iana"},"application/vnd.sigrok.session":{source:"iana"},"application/vnd.simtech-mindmapper":{source:"iana",extensions:["twd","twds"]},"application/vnd.siren+json":{source:"iana",compressible:!0},"application/vnd.smaf":{source:"iana",extensions:["mmf"]},"application/vnd.smart.notebook":{source:"iana"},"application/vnd.smart.teacher":{source:"iana",extensions:["teacher"]},"application/vnd.snesdev-page-table":{source:"iana"},"application/vnd.software602.filler.form+xml":{source:"iana",compressible:!0,extensions:["fo"]},"application/vnd.software602.filler.form-xml-zip":{source:"iana"},"application/vnd.solent.sdkm+xml":{source:"iana",compressible:!0,extensions:["sdkm","sdkd"]},"application/vnd.spotfire.dxp":{source:"iana",extensions:["dxp"]},"application/vnd.spotfire.sfs":{source:"iana",extensions:["sfs"]},"application/vnd.sqlite3":{source:"iana"},"application/vnd.sss-cod":{source:"iana"},"application/vnd.sss-dtf":{source:"iana"},"application/vnd.sss-ntf":{source:"iana"},"application/vnd.stardivision.calc":{source:"apache",extensions:["sdc"]},"application/vnd.stardivision.draw":{source:"apache",extensions:["sda"]},"application/vnd.stardivision.impress":{source:"apache",extensions:["sdd"]},"application/vnd.stardivision.math":{source:"apache",extensions:["smf"]},"application/vnd.stardivision.writer":{source:"apache",extensions:["sdw","vor"]},"application/vnd.stardivision.writer-global":{source:"apache",extensions:["sgl"]},"application/vnd.stepmania.package":{source:"iana",extensions:["smzip"]},"application/vnd.stepmania.stepchart":{source:"iana",extensions:["sm"]},"application/vnd.street-stream":{source:"iana"},"application/vnd.sun.wadl+xml":{source:"iana",compressible:!0,extensions:["wadl"]},"application/vnd.sun.xml.calc":{source:"apache",extensions:["sxc"]},"application/vnd.sun.xml.calc.template":{source:"apache",extensions:["stc"]},"application/vnd.sun.xml.draw":{source:"apache",extensions:["sxd"]},"application/vnd.sun.xml.draw.template":{source:"apache",extensions:["std"]},"application/vnd.sun.xml.impress":{source:"apache",extensions:["sxi"]},"application/vnd.sun.xml.impress.template":{source:"apache",extensions:["sti"]},"application/vnd.sun.xml.math":{source:"apache",extensions:["sxm"]},"application/vnd.sun.xml.writer":{source:"apache",extensions:["sxw"]},"application/vnd.sun.xml.writer.global":{source:"apache",extensions:["sxg"]},"application/vnd.sun.xml.writer.template":{source:"apache",extensions:["stw"]},"application/vnd.sus-calendar":{source:"iana",extensions:["sus","susp"]},"application/vnd.svd":{source:"iana",extensions:["svd"]},"application/vnd.swiftview-ics":{source:"iana"},"application/vnd.sycle+xml":{source:"iana",compressible:!0},"application/vnd.syft+json":{source:"iana",compressible:!0},"application/vnd.symbian.install":{source:"apache",extensions:["sis","sisx"]},"application/vnd.syncml+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xsm"]},"application/vnd.syncml.dm+wbxml":{source:"iana",charset:"UTF-8",extensions:["bdm"]},"application/vnd.syncml.dm+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["xdm"]},"application/vnd.syncml.dm.notification":{source:"iana"},"application/vnd.syncml.dmddf+wbxml":{source:"iana"},"application/vnd.syncml.dmddf+xml":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["ddf"]},"application/vnd.syncml.dmtnds+wbxml":{source:"iana"},"application/vnd.syncml.dmtnds+xml":{source:"iana",charset:"UTF-8",compressible:!0},"application/vnd.syncml.ds.notification":{source:"iana"},"application/vnd.tableschema+json":{source:"iana",compressible:!0},"application/vnd.tao.intent-module-archive":{source:"iana",extensions:["tao"]},"application/vnd.tcpdump.pcap":{source:"iana",extensions:["pcap","cap","dmp"]},"application/vnd.think-cell.ppttc+json":{source:"iana",compressible:!0},"application/vnd.tmd.mediaflex.api+xml":{source:"iana",compressible:!0},"application/vnd.tml":{source:"iana"},"application/vnd.tmobile-livetv":{source:"iana",extensions:["tmo"]},"application/vnd.tri.onesource":{source:"iana"},"application/vnd.trid.tpt":{source:"iana",extensions:["tpt"]},"application/vnd.triscape.mxs":{source:"iana",extensions:["mxs"]},"application/vnd.trueapp":{source:"iana",extensions:["tra"]},"application/vnd.truedoc":{source:"iana"},"application/vnd.ubisoft.webplayer":{source:"iana"},"application/vnd.ufdl":{source:"iana",extensions:["ufd","ufdl"]},"application/vnd.uiq.theme":{source:"iana",extensions:["utz"]},"application/vnd.umajin":{source:"iana",extensions:["umj"]},"application/vnd.unity":{source:"iana",extensions:["unityweb"]},"application/vnd.uoml+xml":{source:"iana",compressible:!0,extensions:["uoml"]},"application/vnd.uplanet.alert":{source:"iana"},"application/vnd.uplanet.alert-wbxml":{source:"iana"},"application/vnd.uplanet.bearer-choice":{source:"iana"},"application/vnd.uplanet.bearer-choice-wbxml":{source:"iana"},"application/vnd.uplanet.cacheop":{source:"iana"},"application/vnd.uplanet.cacheop-wbxml":{source:"iana"},"application/vnd.uplanet.channel":{source:"iana"},"application/vnd.uplanet.channel-wbxml":{source:"iana"},"application/vnd.uplanet.list":{source:"iana"},"application/vnd.uplanet.list-wbxml":{source:"iana"},"application/vnd.uplanet.listcmd":{source:"iana"},"application/vnd.uplanet.listcmd-wbxml":{source:"iana"},"application/vnd.uplanet.signal":{source:"iana"},"application/vnd.uri-map":{source:"iana"},"application/vnd.valve.source.material":{source:"iana"},"application/vnd.vcx":{source:"iana",extensions:["vcx"]},"application/vnd.vd-study":{source:"iana"},"application/vnd.vectorworks":{source:"iana"},"application/vnd.vel+json":{source:"iana",compressible:!0},"application/vnd.verimatrix.vcas":{source:"iana"},"application/vnd.veritone.aion+json":{source:"iana",compressible:!0},"application/vnd.veryant.thin":{source:"iana"},"application/vnd.ves.encrypted":{source:"iana"},"application/vnd.vidsoft.vidconference":{source:"iana"},"application/vnd.visio":{source:"iana",extensions:["vsd","vst","vss","vsw"]},"application/vnd.visionary":{source:"iana",extensions:["vis"]},"application/vnd.vividence.scriptfile":{source:"iana"},"application/vnd.vsf":{source:"iana",extensions:["vsf"]},"application/vnd.wap.sic":{source:"iana"},"application/vnd.wap.slc":{source:"iana"},"application/vnd.wap.wbxml":{source:"iana",charset:"UTF-8",extensions:["wbxml"]},"application/vnd.wap.wmlc":{source:"iana",extensions:["wmlc"]},"application/vnd.wap.wmlscriptc":{source:"iana",extensions:["wmlsc"]},"application/vnd.webturbo":{source:"iana",extensions:["wtb"]},"application/vnd.wfa.dpp":{source:"iana"},"application/vnd.wfa.p2p":{source:"iana"},"application/vnd.wfa.wsc":{source:"iana"},"application/vnd.windows.devicepairing":{source:"iana"},"application/vnd.wmc":{source:"iana"},"application/vnd.wmf.bootstrap":{source:"iana"},"application/vnd.wolfram.mathematica":{source:"iana"},"application/vnd.wolfram.mathematica.package":{source:"iana"},"application/vnd.wolfram.player":{source:"iana",extensions:["nbp"]},"application/vnd.wordperfect":{source:"iana",extensions:["wpd"]},"application/vnd.wqd":{source:"iana",extensions:["wqd"]},"application/vnd.wrq-hp3000-labelled":{source:"iana"},"application/vnd.wt.stf":{source:"iana",extensions:["stf"]},"application/vnd.wv.csp+wbxml":{source:"iana"},"application/vnd.wv.csp+xml":{source:"iana",compressible:!0},"application/vnd.wv.ssp+xml":{source:"iana",compressible:!0},"application/vnd.xacml+json":{source:"iana",compressible:!0},"application/vnd.xara":{source:"iana",extensions:["xar"]},"application/vnd.xfdl":{source:"iana",extensions:["xfdl"]},"application/vnd.xfdl.webform":{source:"iana"},"application/vnd.xmi+xml":{source:"iana",compressible:!0},"application/vnd.xmpie.cpkg":{source:"iana"},"application/vnd.xmpie.dpkg":{source:"iana"},"application/vnd.xmpie.plan":{source:"iana"},"application/vnd.xmpie.ppkg":{source:"iana"},"application/vnd.xmpie.xlim":{source:"iana"},"application/vnd.yamaha.hv-dic":{source:"iana",extensions:["hvd"]},"application/vnd.yamaha.hv-script":{source:"iana",extensions:["hvs"]},"application/vnd.yamaha.hv-voice":{source:"iana",extensions:["hvp"]},"application/vnd.yamaha.openscoreformat":{source:"iana",extensions:["osf"]},"application/vnd.yamaha.openscoreformat.osfpvg+xml":{source:"iana",compressible:!0,extensions:["osfpvg"]},"application/vnd.yamaha.remote-setup":{source:"iana"},"application/vnd.yamaha.smaf-audio":{source:"iana",extensions:["saf"]},"application/vnd.yamaha.smaf-phrase":{source:"iana",extensions:["spf"]},"application/vnd.yamaha.through-ngn":{source:"iana"},"application/vnd.yamaha.tunnel-udpencap":{source:"iana"},"application/vnd.yaoweme":{source:"iana"},"application/vnd.yellowriver-custom-menu":{source:"iana",extensions:["cmp"]},"application/vnd.youtube.yt":{source:"iana"},"application/vnd.zul":{source:"iana",extensions:["zir","zirz"]},"application/vnd.zzazz.deck+xml":{source:"iana",compressible:!0,extensions:["zaz"]},"application/voicexml+xml":{source:"iana",compressible:!0,extensions:["vxml"]},"application/voucher-cms+json":{source:"iana",compressible:!0},"application/vq-rtcpxr":{source:"iana"},"application/wasm":{source:"iana",compressible:!0,extensions:["wasm"]},"application/watcherinfo+xml":{source:"iana",compressible:!0,extensions:["wif"]},"application/webpush-options+json":{source:"iana",compressible:!0},"application/whoispp-query":{source:"iana"},"application/whoispp-response":{source:"iana"},"application/widget":{source:"iana",extensions:["wgt"]},"application/winhlp":{source:"apache",extensions:["hlp"]},"application/wita":{source:"iana"},"application/wordperfect5.1":{source:"iana"},"application/wsdl+xml":{source:"iana",compressible:!0,extensions:["wsdl"]},"application/wspolicy+xml":{source:"iana",compressible:!0,extensions:["wspolicy"]},"application/x-7z-compressed":{source:"apache",compressible:!1,extensions:["7z"]},"application/x-abiword":{source:"apache",extensions:["abw"]},"application/x-ace-compressed":{source:"apache",extensions:["ace"]},"application/x-amf":{source:"apache"},"application/x-apple-diskimage":{source:"apache",extensions:["dmg"]},"application/x-arj":{compressible:!1,extensions:["arj"]},"application/x-authorware-bin":{source:"apache",extensions:["aab","x32","u32","vox"]},"application/x-authorware-map":{source:"apache",extensions:["aam"]},"application/x-authorware-seg":{source:"apache",extensions:["aas"]},"application/x-bcpio":{source:"apache",extensions:["bcpio"]},"application/x-bdoc":{compressible:!1,extensions:["bdoc"]},"application/x-bittorrent":{source:"apache",extensions:["torrent"]},"application/x-blorb":{source:"apache",extensions:["blb","blorb"]},"application/x-bzip":{source:"apache",compressible:!1,extensions:["bz"]},"application/x-bzip2":{source:"apache",compressible:!1,extensions:["bz2","boz"]},"application/x-cbr":{source:"apache",extensions:["cbr","cba","cbt","cbz","cb7"]},"application/x-cdlink":{source:"apache",extensions:["vcd"]},"application/x-cfs-compressed":{source:"apache",extensions:["cfs"]},"application/x-chat":{source:"apache",extensions:["chat"]},"application/x-chess-pgn":{source:"apache",extensions:["pgn"]},"application/x-chrome-extension":{extensions:["crx"]},"application/x-cocoa":{source:"nginx",extensions:["cco"]},"application/x-compress":{source:"apache"},"application/x-conference":{source:"apache",extensions:["nsc"]},"application/x-cpio":{source:"apache",extensions:["cpio"]},"application/x-csh":{source:"apache",extensions:["csh"]},"application/x-deb":{compressible:!1},"application/x-debian-package":{source:"apache",extensions:["deb","udeb"]},"application/x-dgc-compressed":{source:"apache",extensions:["dgc"]},"application/x-director":{source:"apache",extensions:["dir","dcr","dxr","cst","cct","cxt","w3d","fgd","swa"]},"application/x-doom":{source:"apache",extensions:["wad"]},"application/x-dtbncx+xml":{source:"apache",compressible:!0,extensions:["ncx"]},"application/x-dtbook+xml":{source:"apache",compressible:!0,extensions:["dtb"]},"application/x-dtbresource+xml":{source:"apache",compressible:!0,extensions:["res"]},"application/x-dvi":{source:"apache",compressible:!1,extensions:["dvi"]},"application/x-envoy":{source:"apache",extensions:["evy"]},"application/x-eva":{source:"apache",extensions:["eva"]},"application/x-font-bdf":{source:"apache",extensions:["bdf"]},"application/x-font-dos":{source:"apache"},"application/x-font-framemaker":{source:"apache"},"application/x-font-ghostscript":{source:"apache",extensions:["gsf"]},"application/x-font-libgrx":{source:"apache"},"application/x-font-linux-psf":{source:"apache",extensions:["psf"]},"application/x-font-pcf":{source:"apache",extensions:["pcf"]},"application/x-font-snf":{source:"apache",extensions:["snf"]},"application/x-font-speedo":{source:"apache"},"application/x-font-sunos-news":{source:"apache"},"application/x-font-type1":{source:"apache",extensions:["pfa","pfb","pfm","afm"]},"application/x-font-vfont":{source:"apache"},"application/x-freearc":{source:"apache",extensions:["arc"]},"application/x-futuresplash":{source:"apache",extensions:["spl"]},"application/x-gca-compressed":{source:"apache",extensions:["gca"]},"application/x-glulx":{source:"apache",extensions:["ulx"]},"application/x-gnumeric":{source:"apache",extensions:["gnumeric"]},"application/x-gramps-xml":{source:"apache",extensions:["gramps"]},"application/x-gtar":{source:"apache",extensions:["gtar"]},"application/x-gzip":{source:"apache"},"application/x-hdf":{source:"apache",extensions:["hdf"]},"application/x-httpd-php":{compressible:!0,extensions:["php"]},"application/x-install-instructions":{source:"apache",extensions:["install"]},"application/x-iso9660-image":{source:"apache",extensions:["iso"]},"application/x-iwork-keynote-sffkey":{extensions:["key"]},"application/x-iwork-numbers-sffnumbers":{extensions:["numbers"]},"application/x-iwork-pages-sffpages":{extensions:["pages"]},"application/x-java-archive-diff":{source:"nginx",extensions:["jardiff"]},"application/x-java-jnlp-file":{source:"apache",compressible:!1,extensions:["jnlp"]},"application/x-javascript":{compressible:!0},"application/x-keepass2":{extensions:["kdbx"]},"application/x-latex":{source:"apache",compressible:!1,extensions:["latex"]},"application/x-lua-bytecode":{extensions:["luac"]},"application/x-lzh-compressed":{source:"apache",extensions:["lzh","lha"]},"application/x-makeself":{source:"nginx",extensions:["run"]},"application/x-mie":{source:"apache",extensions:["mie"]},"application/x-mobipocket-ebook":{source:"apache",extensions:["prc","mobi"]},"application/x-mpegurl":{compressible:!1},"application/x-ms-application":{source:"apache",extensions:["application"]},"application/x-ms-shortcut":{source:"apache",extensions:["lnk"]},"application/x-ms-wmd":{source:"apache",extensions:["wmd"]},"application/x-ms-wmz":{source:"apache",extensions:["wmz"]},"application/x-ms-xbap":{source:"apache",extensions:["xbap"]},"application/x-msaccess":{source:"apache",extensions:["mdb"]},"application/x-msbinder":{source:"apache",extensions:["obd"]},"application/x-mscardfile":{source:"apache",extensions:["crd"]},"application/x-msclip":{source:"apache",extensions:["clp"]},"application/x-msdos-program":{extensions:["exe"]},"application/x-msdownload":{source:"apache",extensions:["exe","dll","com","bat","msi"]},"application/x-msmediaview":{source:"apache",extensions:["mvb","m13","m14"]},"application/x-msmetafile":{source:"apache",extensions:["wmf","wmz","emf","emz"]},"application/x-msmoney":{source:"apache",extensions:["mny"]},"application/x-mspublisher":{source:"apache",extensions:["pub"]},"application/x-msschedule":{source:"apache",extensions:["scd"]},"application/x-msterminal":{source:"apache",extensions:["trm"]},"application/x-mswrite":{source:"apache",extensions:["wri"]},"application/x-netcdf":{source:"apache",extensions:["nc","cdf"]},"application/x-ns-proxy-autoconfig":{compressible:!0,extensions:["pac"]},"application/x-nzb":{source:"apache",extensions:["nzb"]},"application/x-perl":{source:"nginx",extensions:["pl","pm"]},"application/x-pilot":{source:"nginx",extensions:["prc","pdb"]},"application/x-pkcs12":{source:"apache",compressible:!1,extensions:["p12","pfx"]},"application/x-pkcs7-certificates":{source:"apache",extensions:["p7b","spc"]},"application/x-pkcs7-certreqresp":{source:"apache",extensions:["p7r"]},"application/x-pki-message":{source:"iana"},"application/x-rar-compressed":{source:"apache",compressible:!1,extensions:["rar"]},"application/x-redhat-package-manager":{source:"nginx",extensions:["rpm"]},"application/x-research-info-systems":{source:"apache",extensions:["ris"]},"application/x-sea":{source:"nginx",extensions:["sea"]},"application/x-sh":{source:"apache",compressible:!0,extensions:["sh"]},"application/x-shar":{source:"apache",extensions:["shar"]},"application/x-shockwave-flash":{source:"apache",compressible:!1,extensions:["swf"]},"application/x-silverlight-app":{source:"apache",extensions:["xap"]},"application/x-sql":{source:"apache",extensions:["sql"]},"application/x-stuffit":{source:"apache",compressible:!1,extensions:["sit"]},"application/x-stuffitx":{source:"apache",extensions:["sitx"]},"application/x-subrip":{source:"apache",extensions:["srt"]},"application/x-sv4cpio":{source:"apache",extensions:["sv4cpio"]},"application/x-sv4crc":{source:"apache",extensions:["sv4crc"]},"application/x-t3vm-image":{source:"apache",extensions:["t3"]},"application/x-tads":{source:"apache",extensions:["gam"]},"application/x-tar":{source:"apache",compressible:!0,extensions:["tar"]},"application/x-tcl":{source:"apache",extensions:["tcl","tk"]},"application/x-tex":{source:"apache",extensions:["tex"]},"application/x-tex-tfm":{source:"apache",extensions:["tfm"]},"application/x-texinfo":{source:"apache",extensions:["texinfo","texi"]},"application/x-tgif":{source:"apache",extensions:["obj"]},"application/x-ustar":{source:"apache",extensions:["ustar"]},"application/x-virtualbox-hdd":{compressible:!0,extensions:["hdd"]},"application/x-virtualbox-ova":{compressible:!0,extensions:["ova"]},"application/x-virtualbox-ovf":{compressible:!0,extensions:["ovf"]},"application/x-virtualbox-vbox":{compressible:!0,extensions:["vbox"]},"application/x-virtualbox-vbox-extpack":{compressible:!1,extensions:["vbox-extpack"]},"application/x-virtualbox-vdi":{compressible:!0,extensions:["vdi"]},"application/x-virtualbox-vhd":{compressible:!0,extensions:["vhd"]},"application/x-virtualbox-vmdk":{compressible:!0,extensions:["vmdk"]},"application/x-wais-source":{source:"apache",extensions:["src"]},"application/x-web-app-manifest+json":{compressible:!0,extensions:["webapp"]},"application/x-www-form-urlencoded":{source:"iana",compressible:!0},"application/x-x509-ca-cert":{source:"iana",extensions:["der","crt","pem"]},"application/x-x509-ca-ra-cert":{source:"iana"},"application/x-x509-next-ca-cert":{source:"iana"},"application/x-xfig":{source:"apache",extensions:["fig"]},"application/x-xliff+xml":{source:"apache",compressible:!0,extensions:["xlf"]},"application/x-xpinstall":{source:"apache",compressible:!1,extensions:["xpi"]},"application/x-xz":{source:"apache",extensions:["xz"]},"application/x-zmachine":{source:"apache",extensions:["z1","z2","z3","z4","z5","z6","z7","z8"]},"application/x400-bp":{source:"iana"},"application/xacml+xml":{source:"iana",compressible:!0},"application/xaml+xml":{source:"apache",compressible:!0,extensions:["xaml"]},"application/xcap-att+xml":{source:"iana",compressible:!0,extensions:["xav"]},"application/xcap-caps+xml":{source:"iana",compressible:!0,extensions:["xca"]},"application/xcap-diff+xml":{source:"iana",compressible:!0,extensions:["xdf"]},"application/xcap-el+xml":{source:"iana",compressible:!0,extensions:["xel"]},"application/xcap-error+xml":{source:"iana",compressible:!0},"application/xcap-ns+xml":{source:"iana",compressible:!0,extensions:["xns"]},"application/xcon-conference-info+xml":{source:"iana",compressible:!0},"application/xcon-conference-info-diff+xml":{source:"iana",compressible:!0},"application/xenc+xml":{source:"iana",compressible:!0,extensions:["xenc"]},"application/xhtml+xml":{source:"iana",compressible:!0,extensions:["xhtml","xht"]},"application/xhtml-voice+xml":{source:"apache",compressible:!0},"application/xliff+xml":{source:"iana",compressible:!0,extensions:["xlf"]},"application/xml":{source:"iana",compressible:!0,extensions:["xml","xsl","xsd","rng"]},"application/xml-dtd":{source:"iana",compressible:!0,extensions:["dtd"]},"application/xml-external-parsed-entity":{source:"iana"},"application/xml-patch+xml":{source:"iana",compressible:!0},"application/xmpp+xml":{source:"iana",compressible:!0},"application/xop+xml":{source:"iana",compressible:!0,extensions:["xop"]},"application/xproc+xml":{source:"apache",compressible:!0,extensions:["xpl"]},"application/xslt+xml":{source:"iana",compressible:!0,extensions:["xsl","xslt"]},"application/xspf+xml":{source:"apache",compressible:!0,extensions:["xspf"]},"application/xv+xml":{source:"iana",compressible:!0,extensions:["mxml","xhvml","xvml","xvm"]},"application/yang":{source:"iana",extensions:["yang"]},"application/yang-data+json":{source:"iana",compressible:!0},"application/yang-data+xml":{source:"iana",compressible:!0},"application/yang-patch+json":{source:"iana",compressible:!0},"application/yang-patch+xml":{source:"iana",compressible:!0},"application/yin+xml":{source:"iana",compressible:!0,extensions:["yin"]},"application/zip":{source:"iana",compressible:!1,extensions:["zip"]},"application/zlib":{source:"iana"},"application/zstd":{source:"iana"},"audio/1d-interleaved-parityfec":{source:"iana"},"audio/32kadpcm":{source:"iana"},"audio/3gpp":{source:"iana",compressible:!1,extensions:["3gpp"]},"audio/3gpp2":{source:"iana"},"audio/aac":{source:"iana"},"audio/ac3":{source:"iana"},"audio/adpcm":{source:"apache",extensions:["adp"]},"audio/amr":{source:"iana",extensions:["amr"]},"audio/amr-wb":{source:"iana"},"audio/amr-wb+":{source:"iana"},"audio/aptx":{source:"iana"},"audio/asc":{source:"iana"},"audio/atrac-advanced-lossless":{source:"iana"},"audio/atrac-x":{source:"iana"},"audio/atrac3":{source:"iana"},"audio/basic":{source:"iana",compressible:!1,extensions:["au","snd"]},"audio/bv16":{source:"iana"},"audio/bv32":{source:"iana"},"audio/clearmode":{source:"iana"},"audio/cn":{source:"iana"},"audio/dat12":{source:"iana"},"audio/dls":{source:"iana"},"audio/dsr-es201108":{source:"iana"},"audio/dsr-es202050":{source:"iana"},"audio/dsr-es202211":{source:"iana"},"audio/dsr-es202212":{source:"iana"},"audio/dv":{source:"iana"},"audio/dvi4":{source:"iana"},"audio/eac3":{source:"iana"},"audio/encaprtp":{source:"iana"},"audio/evrc":{source:"iana"},"audio/evrc-qcp":{source:"iana"},"audio/evrc0":{source:"iana"},"audio/evrc1":{source:"iana"},"audio/evrcb":{source:"iana"},"audio/evrcb0":{source:"iana"},"audio/evrcb1":{source:"iana"},"audio/evrcnw":{source:"iana"},"audio/evrcnw0":{source:"iana"},"audio/evrcnw1":{source:"iana"},"audio/evrcwb":{source:"iana"},"audio/evrcwb0":{source:"iana"},"audio/evrcwb1":{source:"iana"},"audio/evs":{source:"iana"},"audio/flexfec":{source:"iana"},"audio/fwdred":{source:"iana"},"audio/g711-0":{source:"iana"},"audio/g719":{source:"iana"},"audio/g722":{source:"iana"},"audio/g7221":{source:"iana"},"audio/g723":{source:"iana"},"audio/g726-16":{source:"iana"},"audio/g726-24":{source:"iana"},"audio/g726-32":{source:"iana"},"audio/g726-40":{source:"iana"},"audio/g728":{source:"iana"},"audio/g729":{source:"iana"},"audio/g7291":{source:"iana"},"audio/g729d":{source:"iana"},"audio/g729e":{source:"iana"},"audio/gsm":{source:"iana"},"audio/gsm-efr":{source:"iana"},"audio/gsm-hr-08":{source:"iana"},"audio/ilbc":{source:"iana"},"audio/ip-mr_v2.5":{source:"iana"},"audio/isac":{source:"apache"},"audio/l16":{source:"iana"},"audio/l20":{source:"iana"},"audio/l24":{source:"iana",compressible:!1},"audio/l8":{source:"iana"},"audio/lpc":{source:"iana"},"audio/melp":{source:"iana"},"audio/melp1200":{source:"iana"},"audio/melp2400":{source:"iana"},"audio/melp600":{source:"iana"},"audio/mhas":{source:"iana"},"audio/midi":{source:"apache",extensions:["mid","midi","kar","rmi"]},"audio/mobile-xmf":{source:"iana",extensions:["mxmf"]},"audio/mp3":{compressible:!1,extensions:["mp3"]},"audio/mp4":{source:"iana",compressible:!1,extensions:["m4a","mp4a"]},"audio/mp4a-latm":{source:"iana"},"audio/mpa":{source:"iana"},"audio/mpa-robust":{source:"iana"},"audio/mpeg":{source:"iana",compressible:!1,extensions:["mpga","mp2","mp2a","mp3","m2a","m3a"]},"audio/mpeg4-generic":{source:"iana"},"audio/musepack":{source:"apache"},"audio/ogg":{source:"iana",compressible:!1,extensions:["oga","ogg","spx","opus"]},"audio/opus":{source:"iana"},"audio/parityfec":{source:"iana"},"audio/pcma":{source:"iana"},"audio/pcma-wb":{source:"iana"},"audio/pcmu":{source:"iana"},"audio/pcmu-wb":{source:"iana"},"audio/prs.sid":{source:"iana"},"audio/qcelp":{source:"iana"},"audio/raptorfec":{source:"iana"},"audio/red":{source:"iana"},"audio/rtp-enc-aescm128":{source:"iana"},"audio/rtp-midi":{source:"iana"},"audio/rtploopback":{source:"iana"},"audio/rtx":{source:"iana"},"audio/s3m":{source:"apache",extensions:["s3m"]},"audio/scip":{source:"iana"},"audio/silk":{source:"apache",extensions:["sil"]},"audio/smv":{source:"iana"},"audio/smv-qcp":{source:"iana"},"audio/smv0":{source:"iana"},"audio/sofa":{source:"iana"},"audio/sp-midi":{source:"iana"},"audio/speex":{source:"iana"},"audio/t140c":{source:"iana"},"audio/t38":{source:"iana"},"audio/telephone-event":{source:"iana"},"audio/tetra_acelp":{source:"iana"},"audio/tetra_acelp_bb":{source:"iana"},"audio/tone":{source:"iana"},"audio/tsvcis":{source:"iana"},"audio/uemclip":{source:"iana"},"audio/ulpfec":{source:"iana"},"audio/usac":{source:"iana"},"audio/vdvi":{source:"iana"},"audio/vmr-wb":{source:"iana"},"audio/vnd.3gpp.iufp":{source:"iana"},"audio/vnd.4sb":{source:"iana"},"audio/vnd.audiokoz":{source:"iana"},"audio/vnd.celp":{source:"iana"},"audio/vnd.cisco.nse":{source:"iana"},"audio/vnd.cmles.radio-events":{source:"iana"},"audio/vnd.cns.anp1":{source:"iana"},"audio/vnd.cns.inf1":{source:"iana"},"audio/vnd.dece.audio":{source:"iana",extensions:["uva","uvva"]},"audio/vnd.digital-winds":{source:"iana",extensions:["eol"]},"audio/vnd.dlna.adts":{source:"iana"},"audio/vnd.dolby.heaac.1":{source:"iana"},"audio/vnd.dolby.heaac.2":{source:"iana"},"audio/vnd.dolby.mlp":{source:"iana"},"audio/vnd.dolby.mps":{source:"iana"},"audio/vnd.dolby.pl2":{source:"iana"},"audio/vnd.dolby.pl2x":{source:"iana"},"audio/vnd.dolby.pl2z":{source:"iana"},"audio/vnd.dolby.pulse.1":{source:"iana"},"audio/vnd.dra":{source:"iana",extensions:["dra"]},"audio/vnd.dts":{source:"iana",extensions:["dts"]},"audio/vnd.dts.hd":{source:"iana",extensions:["dtshd"]},"audio/vnd.dts.uhd":{source:"iana"},"audio/vnd.dvb.file":{source:"iana"},"audio/vnd.everad.plj":{source:"iana"},"audio/vnd.hns.audio":{source:"iana"},"audio/vnd.lucent.voice":{source:"iana",extensions:["lvp"]},"audio/vnd.ms-playready.media.pya":{source:"iana",extensions:["pya"]},"audio/vnd.nokia.mobile-xmf":{source:"iana"},"audio/vnd.nortel.vbk":{source:"iana"},"audio/vnd.nuera.ecelp4800":{source:"iana",extensions:["ecelp4800"]},"audio/vnd.nuera.ecelp7470":{source:"iana",extensions:["ecelp7470"]},"audio/vnd.nuera.ecelp9600":{source:"iana",extensions:["ecelp9600"]},"audio/vnd.octel.sbc":{source:"iana"},"audio/vnd.presonus.multitrack":{source:"iana"},"audio/vnd.qcelp":{source:"iana"},"audio/vnd.rhetorex.32kadpcm":{source:"iana"},"audio/vnd.rip":{source:"iana",extensions:["rip"]},"audio/vnd.rn-realaudio":{compressible:!1},"audio/vnd.sealedmedia.softseal.mpeg":{source:"iana"},"audio/vnd.vmx.cvsd":{source:"iana"},"audio/vnd.wave":{compressible:!1},"audio/vorbis":{source:"iana",compressible:!1},"audio/vorbis-config":{source:"iana"},"audio/wav":{compressible:!1,extensions:["wav"]},"audio/wave":{compressible:!1,extensions:["wav"]},"audio/webm":{source:"apache",compressible:!1,extensions:["weba"]},"audio/x-aac":{source:"apache",compressible:!1,extensions:["aac"]},"audio/x-aiff":{source:"apache",extensions:["aif","aiff","aifc"]},"audio/x-caf":{source:"apache",compressible:!1,extensions:["caf"]},"audio/x-flac":{source:"apache",extensions:["flac"]},"audio/x-m4a":{source:"nginx",extensions:["m4a"]},"audio/x-matroska":{source:"apache",extensions:["mka"]},"audio/x-mpegurl":{source:"apache",extensions:["m3u"]},"audio/x-ms-wax":{source:"apache",extensions:["wax"]},"audio/x-ms-wma":{source:"apache",extensions:["wma"]},"audio/x-pn-realaudio":{source:"apache",extensions:["ram","ra"]},"audio/x-pn-realaudio-plugin":{source:"apache",extensions:["rmp"]},"audio/x-realaudio":{source:"nginx",extensions:["ra"]},"audio/x-tta":{source:"apache"},"audio/x-wav":{source:"apache",extensions:["wav"]},"audio/xm":{source:"apache",extensions:["xm"]},"chemical/x-cdx":{source:"apache",extensions:["cdx"]},"chemical/x-cif":{source:"apache",extensions:["cif"]},"chemical/x-cmdf":{source:"apache",extensions:["cmdf"]},"chemical/x-cml":{source:"apache",extensions:["cml"]},"chemical/x-csml":{source:"apache",extensions:["csml"]},"chemical/x-pdb":{source:"apache"},"chemical/x-xyz":{source:"apache",extensions:["xyz"]},"font/collection":{source:"iana",extensions:["ttc"]},"font/otf":{source:"iana",compressible:!0,extensions:["otf"]},"font/sfnt":{source:"iana"},"font/ttf":{source:"iana",compressible:!0,extensions:["ttf"]},"font/woff":{source:"iana",extensions:["woff"]},"font/woff2":{source:"iana",extensions:["woff2"]},"image/aces":{source:"iana",extensions:["exr"]},"image/apng":{compressible:!1,extensions:["apng"]},"image/avci":{source:"iana",extensions:["avci"]},"image/avcs":{source:"iana",extensions:["avcs"]},"image/avif":{source:"iana",compressible:!1,extensions:["avif"]},"image/bmp":{source:"iana",compressible:!0,extensions:["bmp"]},"image/cgm":{source:"iana",extensions:["cgm"]},"image/dicom-rle":{source:"iana",extensions:["drle"]},"image/emf":{source:"iana",extensions:["emf"]},"image/fits":{source:"iana",extensions:["fits"]},"image/g3fax":{source:"iana",extensions:["g3"]},"image/gif":{source:"iana",compressible:!1,extensions:["gif"]},"image/heic":{source:"iana",extensions:["heic"]},"image/heic-sequence":{source:"iana",extensions:["heics"]},"image/heif":{source:"iana",extensions:["heif"]},"image/heif-sequence":{source:"iana",extensions:["heifs"]},"image/hej2k":{source:"iana",extensions:["hej2"]},"image/hsj2":{source:"iana",extensions:["hsj2"]},"image/ief":{source:"iana",extensions:["ief"]},"image/jls":{source:"iana",extensions:["jls"]},"image/jp2":{source:"iana",compressible:!1,extensions:["jp2","jpg2"]},"image/jpeg":{source:"iana",compressible:!1,extensions:["jpeg","jpg","jpe"]},"image/jph":{source:"iana",extensions:["jph"]},"image/jphc":{source:"iana",extensions:["jhc"]},"image/jpm":{source:"iana",compressible:!1,extensions:["jpm"]},"image/jpx":{source:"iana",compressible:!1,extensions:["jpx","jpf"]},"image/jxr":{source:"iana",extensions:["jxr"]},"image/jxra":{source:"iana",extensions:["jxra"]},"image/jxrs":{source:"iana",extensions:["jxrs"]},"image/jxs":{source:"iana",extensions:["jxs"]},"image/jxsc":{source:"iana",extensions:["jxsc"]},"image/jxsi":{source:"iana",extensions:["jxsi"]},"image/jxss":{source:"iana",extensions:["jxss"]},"image/ktx":{source:"iana",extensions:["ktx"]},"image/ktx2":{source:"iana",extensions:["ktx2"]},"image/naplps":{source:"iana"},"image/pjpeg":{compressible:!1},"image/png":{source:"iana",compressible:!1,extensions:["png"]},"image/prs.btif":{source:"iana",extensions:["btif"]},"image/prs.pti":{source:"iana",extensions:["pti"]},"image/pwg-raster":{source:"iana"},"image/sgi":{source:"apache",extensions:["sgi"]},"image/svg+xml":{source:"iana",compressible:!0,extensions:["svg","svgz"]},"image/t38":{source:"iana",extensions:["t38"]},"image/tiff":{source:"iana",compressible:!1,extensions:["tif","tiff"]},"image/tiff-fx":{source:"iana",extensions:["tfx"]},"image/vnd.adobe.photoshop":{source:"iana",compressible:!0,extensions:["psd"]},"image/vnd.airzip.accelerator.azv":{source:"iana",extensions:["azv"]},"image/vnd.cns.inf2":{source:"iana"},"image/vnd.dece.graphic":{source:"iana",extensions:["uvi","uvvi","uvg","uvvg"]},"image/vnd.djvu":{source:"iana",extensions:["djvu","djv"]},"image/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"image/vnd.dwg":{source:"iana",extensions:["dwg"]},"image/vnd.dxf":{source:"iana",extensions:["dxf"]},"image/vnd.fastbidsheet":{source:"iana",extensions:["fbs"]},"image/vnd.fpx":{source:"iana",extensions:["fpx"]},"image/vnd.fst":{source:"iana",extensions:["fst"]},"image/vnd.fujixerox.edmics-mmr":{source:"iana",extensions:["mmr"]},"image/vnd.fujixerox.edmics-rlc":{source:"iana",extensions:["rlc"]},"image/vnd.globalgraphics.pgb":{source:"iana"},"image/vnd.microsoft.icon":{source:"iana",compressible:!0,extensions:["ico"]},"image/vnd.mix":{source:"iana"},"image/vnd.mozilla.apng":{source:"iana"},"image/vnd.ms-dds":{compressible:!0,extensions:["dds"]},"image/vnd.ms-modi":{source:"iana",extensions:["mdi"]},"image/vnd.ms-photo":{source:"apache",extensions:["wdp"]},"image/vnd.net-fpx":{source:"iana",extensions:["npx"]},"image/vnd.pco.b16":{source:"iana",extensions:["b16"]},"image/vnd.radiance":{source:"iana"},"image/vnd.sealed.png":{source:"iana"},"image/vnd.sealedmedia.softseal.gif":{source:"iana"},"image/vnd.sealedmedia.softseal.jpg":{source:"iana"},"image/vnd.svf":{source:"iana"},"image/vnd.tencent.tap":{source:"iana",extensions:["tap"]},"image/vnd.valve.source.texture":{source:"iana",extensions:["vtf"]},"image/vnd.wap.wbmp":{source:"iana",extensions:["wbmp"]},"image/vnd.xiff":{source:"iana",extensions:["xif"]},"image/vnd.zbrush.pcx":{source:"iana",extensions:["pcx"]},"image/webp":{source:"apache",extensions:["webp"]},"image/wmf":{source:"iana",extensions:["wmf"]},"image/x-3ds":{source:"apache",extensions:["3ds"]},"image/x-cmu-raster":{source:"apache",extensions:["ras"]},"image/x-cmx":{source:"apache",extensions:["cmx"]},"image/x-freehand":{source:"apache",extensions:["fh","fhc","fh4","fh5","fh7"]},"image/x-icon":{source:"apache",compressible:!0,extensions:["ico"]},"image/x-jng":{source:"nginx",extensions:["jng"]},"image/x-mrsid-image":{source:"apache",extensions:["sid"]},"image/x-ms-bmp":{source:"nginx",compressible:!0,extensions:["bmp"]},"image/x-pcx":{source:"apache",extensions:["pcx"]},"image/x-pict":{source:"apache",extensions:["pic","pct"]},"image/x-portable-anymap":{source:"apache",extensions:["pnm"]},"image/x-portable-bitmap":{source:"apache",extensions:["pbm"]},"image/x-portable-graymap":{source:"apache",extensions:["pgm"]},"image/x-portable-pixmap":{source:"apache",extensions:["ppm"]},"image/x-rgb":{source:"apache",extensions:["rgb"]},"image/x-tga":{source:"apache",extensions:["tga"]},"image/x-xbitmap":{source:"apache",extensions:["xbm"]},"image/x-xcf":{compressible:!1},"image/x-xpixmap":{source:"apache",extensions:["xpm"]},"image/x-xwindowdump":{source:"apache",extensions:["xwd"]},"message/cpim":{source:"iana"},"message/delivery-status":{source:"iana"},"message/disposition-notification":{source:"iana",extensions:["disposition-notification"]},"message/external-body":{source:"iana"},"message/feedback-report":{source:"iana"},"message/global":{source:"iana",extensions:["u8msg"]},"message/global-delivery-status":{source:"iana",extensions:["u8dsn"]},"message/global-disposition-notification":{source:"iana",extensions:["u8mdn"]},"message/global-headers":{source:"iana",extensions:["u8hdr"]},"message/http":{source:"iana",compressible:!1},"message/imdn+xml":{source:"iana",compressible:!0},"message/news":{source:"iana"},"message/partial":{source:"iana",compressible:!1},"message/rfc822":{source:"iana",compressible:!0,extensions:["eml","mime"]},"message/s-http":{source:"iana"},"message/sip":{source:"iana"},"message/sipfrag":{source:"iana"},"message/tracking-status":{source:"iana"},"message/vnd.si.simp":{source:"iana"},"message/vnd.wfa.wsc":{source:"iana",extensions:["wsc"]},"model/3mf":{source:"iana",extensions:["3mf"]},"model/e57":{source:"iana"},"model/gltf+json":{source:"iana",compressible:!0,extensions:["gltf"]},"model/gltf-binary":{source:"iana",compressible:!0,extensions:["glb"]},"model/iges":{source:"iana",compressible:!1,extensions:["igs","iges"]},"model/mesh":{source:"iana",compressible:!1,extensions:["msh","mesh","silo"]},"model/mtl":{source:"iana",extensions:["mtl"]},"model/obj":{source:"iana",extensions:["obj"]},"model/step":{source:"iana"},"model/step+xml":{source:"iana",compressible:!0,extensions:["stpx"]},"model/step+zip":{source:"iana",compressible:!1,extensions:["stpz"]},"model/step-xml+zip":{source:"iana",compressible:!1,extensions:["stpxz"]},"model/stl":{source:"iana",extensions:["stl"]},"model/vnd.collada+xml":{source:"iana",compressible:!0,extensions:["dae"]},"model/vnd.dwf":{source:"iana",extensions:["dwf"]},"model/vnd.flatland.3dml":{source:"iana"},"model/vnd.gdl":{source:"iana",extensions:["gdl"]},"model/vnd.gs-gdl":{source:"apache"},"model/vnd.gs.gdl":{source:"iana"},"model/vnd.gtw":{source:"iana",extensions:["gtw"]},"model/vnd.moml+xml":{source:"iana",compressible:!0},"model/vnd.mts":{source:"iana",extensions:["mts"]},"model/vnd.opengex":{source:"iana",extensions:["ogex"]},"model/vnd.parasolid.transmit.binary":{source:"iana",extensions:["x_b"]},"model/vnd.parasolid.transmit.text":{source:"iana",extensions:["x_t"]},"model/vnd.pytha.pyox":{source:"iana"},"model/vnd.rosette.annotated-data-model":{source:"iana"},"model/vnd.sap.vds":{source:"iana",extensions:["vds"]},"model/vnd.usdz+zip":{source:"iana",compressible:!1,extensions:["usdz"]},"model/vnd.valve.source.compiled-map":{source:"iana",extensions:["bsp"]},"model/vnd.vtu":{source:"iana",extensions:["vtu"]},"model/vrml":{source:"iana",compressible:!1,extensions:["wrl","vrml"]},"model/x3d+binary":{source:"apache",compressible:!1,extensions:["x3db","x3dbz"]},"model/x3d+fastinfoset":{source:"iana",extensions:["x3db"]},"model/x3d+vrml":{source:"apache",compressible:!1,extensions:["x3dv","x3dvz"]},"model/x3d+xml":{source:"iana",compressible:!0,extensions:["x3d","x3dz"]},"model/x3d-vrml":{source:"iana",extensions:["x3dv"]},"multipart/alternative":{source:"iana",compressible:!1},"multipart/appledouble":{source:"iana"},"multipart/byteranges":{source:"iana"},"multipart/digest":{source:"iana"},"multipart/encrypted":{source:"iana",compressible:!1},"multipart/form-data":{source:"iana",compressible:!1},"multipart/header-set":{source:"iana"},"multipart/mixed":{source:"iana"},"multipart/multilingual":{source:"iana"},"multipart/parallel":{source:"iana"},"multipart/related":{source:"iana",compressible:!1},"multipart/report":{source:"iana"},"multipart/signed":{source:"iana",compressible:!1},"multipart/vnd.bint.med-plus":{source:"iana"},"multipart/voice-message":{source:"iana"},"multipart/x-mixed-replace":{source:"iana"},"text/1d-interleaved-parityfec":{source:"iana"},"text/cache-manifest":{source:"iana",compressible:!0,extensions:["appcache","manifest"]},"text/calendar":{source:"iana",extensions:["ics","ifb"]},"text/calender":{compressible:!0},"text/cmd":{compressible:!0},"text/coffeescript":{extensions:["coffee","litcoffee"]},"text/cql":{source:"iana"},"text/cql-expression":{source:"iana"},"text/cql-identifier":{source:"iana"},"text/css":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["css"]},"text/csv":{source:"iana",compressible:!0,extensions:["csv"]},"text/csv-schema":{source:"iana"},"text/directory":{source:"iana"},"text/dns":{source:"iana"},"text/ecmascript":{source:"iana"},"text/encaprtp":{source:"iana"},"text/enriched":{source:"iana"},"text/fhirpath":{source:"iana"},"text/flexfec":{source:"iana"},"text/fwdred":{source:"iana"},"text/gff3":{source:"iana"},"text/grammar-ref-list":{source:"iana"},"text/html":{source:"iana",compressible:!0,extensions:["html","htm","shtml"]},"text/jade":{extensions:["jade"]},"text/javascript":{source:"iana",compressible:!0},"text/jcr-cnd":{source:"iana"},"text/jsx":{compressible:!0,extensions:["jsx"]},"text/less":{compressible:!0,extensions:["less"]},"text/markdown":{source:"iana",compressible:!0,extensions:["markdown","md"]},"text/mathml":{source:"nginx",extensions:["mml"]},"text/mdx":{compressible:!0,extensions:["mdx"]},"text/mizar":{source:"iana"},"text/n3":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["n3"]},"text/parameters":{source:"iana",charset:"UTF-8"},"text/parityfec":{source:"iana"},"text/plain":{source:"iana",compressible:!0,extensions:["txt","text","conf","def","list","log","in","ini"]},"text/provenance-notation":{source:"iana",charset:"UTF-8"},"text/prs.fallenstein.rst":{source:"iana"},"text/prs.lines.tag":{source:"iana",extensions:["dsc"]},"text/prs.prop.logic":{source:"iana"},"text/raptorfec":{source:"iana"},"text/red":{source:"iana"},"text/rfc822-headers":{source:"iana"},"text/richtext":{source:"iana",compressible:!0,extensions:["rtx"]},"text/rtf":{source:"iana",compressible:!0,extensions:["rtf"]},"text/rtp-enc-aescm128":{source:"iana"},"text/rtploopback":{source:"iana"},"text/rtx":{source:"iana"},"text/sgml":{source:"iana",extensions:["sgml","sgm"]},"text/shaclc":{source:"iana"},"text/shex":{source:"iana",extensions:["shex"]},"text/slim":{extensions:["slim","slm"]},"text/spdx":{source:"iana",extensions:["spdx"]},"text/strings":{source:"iana"},"text/stylus":{extensions:["stylus","styl"]},"text/t140":{source:"iana"},"text/tab-separated-values":{source:"iana",compressible:!0,extensions:["tsv"]},"text/troff":{source:"iana",extensions:["t","tr","roff","man","me","ms"]},"text/turtle":{source:"iana",charset:"UTF-8",extensions:["ttl"]},"text/ulpfec":{source:"iana"},"text/uri-list":{source:"iana",compressible:!0,extensions:["uri","uris","urls"]},"text/vcard":{source:"iana",compressible:!0,extensions:["vcard"]},"text/vnd.a":{source:"iana"},"text/vnd.abc":{source:"iana"},"text/vnd.ascii-art":{source:"iana"},"text/vnd.curl":{source:"iana",extensions:["curl"]},"text/vnd.curl.dcurl":{source:"apache",extensions:["dcurl"]},"text/vnd.curl.mcurl":{source:"apache",extensions:["mcurl"]},"text/vnd.curl.scurl":{source:"apache",extensions:["scurl"]},"text/vnd.debian.copyright":{source:"iana",charset:"UTF-8"},"text/vnd.dmclientscript":{source:"iana"},"text/vnd.dvb.subtitle":{source:"iana",extensions:["sub"]},"text/vnd.esmertec.theme-descriptor":{source:"iana",charset:"UTF-8"},"text/vnd.familysearch.gedcom":{source:"iana",extensions:["ged"]},"text/vnd.ficlab.flt":{source:"iana"},"text/vnd.fly":{source:"iana",extensions:["fly"]},"text/vnd.fmi.flexstor":{source:"iana",extensions:["flx"]},"text/vnd.gml":{source:"iana"},"text/vnd.graphviz":{source:"iana",extensions:["gv"]},"text/vnd.hans":{source:"iana"},"text/vnd.hgl":{source:"iana"},"text/vnd.in3d.3dml":{source:"iana",extensions:["3dml"]},"text/vnd.in3d.spot":{source:"iana",extensions:["spot"]},"text/vnd.iptc.newsml":{source:"iana"},"text/vnd.iptc.nitf":{source:"iana"},"text/vnd.latex-z":{source:"iana"},"text/vnd.motorola.reflex":{source:"iana"},"text/vnd.ms-mediapackage":{source:"iana"},"text/vnd.net2phone.commcenter.command":{source:"iana"},"text/vnd.radisys.msml-basic-layout":{source:"iana"},"text/vnd.senx.warpscript":{source:"iana"},"text/vnd.si.uricatalogue":{source:"iana"},"text/vnd.sosi":{source:"iana"},"text/vnd.sun.j2me.app-descriptor":{source:"iana",charset:"UTF-8",extensions:["jad"]},"text/vnd.trolltech.linguist":{source:"iana",charset:"UTF-8"},"text/vnd.wap.si":{source:"iana"},"text/vnd.wap.sl":{source:"iana"},"text/vnd.wap.wml":{source:"iana",extensions:["wml"]},"text/vnd.wap.wmlscript":{source:"iana",extensions:["wmls"]},"text/vtt":{source:"iana",charset:"UTF-8",compressible:!0,extensions:["vtt"]},"text/x-asm":{source:"apache",extensions:["s","asm"]},"text/x-c":{source:"apache",extensions:["c","cc","cxx","cpp","h","hh","dic"]},"text/x-component":{source:"nginx",extensions:["htc"]},"text/x-fortran":{source:"apache",extensions:["f","for","f77","f90"]},"text/x-gwt-rpc":{compressible:!0},"text/x-handlebars-template":{extensions:["hbs"]},"text/x-java-source":{source:"apache",extensions:["java"]},"text/x-jquery-tmpl":{compressible:!0},"text/x-lua":{extensions:["lua"]},"text/x-markdown":{compressible:!0,extensions:["mkd"]},"text/x-nfo":{source:"apache",extensions:["nfo"]},"text/x-opml":{source:"apache",extensions:["opml"]},"text/x-org":{compressible:!0,extensions:["org"]},"text/x-pascal":{source:"apache",extensions:["p","pas"]},"text/x-processing":{compressible:!0,extensions:["pde"]},"text/x-sass":{extensions:["sass"]},"text/x-scss":{extensions:["scss"]},"text/x-setext":{source:"apache",extensions:["etx"]},"text/x-sfv":{source:"apache",extensions:["sfv"]},"text/x-suse-ymp":{compressible:!0,extensions:["ymp"]},"text/x-uuencode":{source:"apache",extensions:["uu"]},"text/x-vcalendar":{source:"apache",extensions:["vcs"]},"text/x-vcard":{source:"apache",extensions:["vcf"]},"text/xml":{source:"iana",compressible:!0,extensions:["xml"]},"text/xml-external-parsed-entity":{source:"iana"},"text/yaml":{compressible:!0,extensions:["yaml","yml"]},"video/1d-interleaved-parityfec":{source:"iana"},"video/3gpp":{source:"iana",extensions:["3gp","3gpp"]},"video/3gpp-tt":{source:"iana"},"video/3gpp2":{source:"iana",extensions:["3g2"]},"video/av1":{source:"iana"},"video/bmpeg":{source:"iana"},"video/bt656":{source:"iana"},"video/celb":{source:"iana"},"video/dv":{source:"iana"},"video/encaprtp":{source:"iana"},"video/ffv1":{source:"iana"},"video/flexfec":{source:"iana"},"video/h261":{source:"iana",extensions:["h261"]},"video/h263":{source:"iana",extensions:["h263"]},"video/h263-1998":{source:"iana"},"video/h263-2000":{source:"iana"},"video/h264":{source:"iana",extensions:["h264"]},"video/h264-rcdo":{source:"iana"},"video/h264-svc":{source:"iana"},"video/h265":{source:"iana"},"video/iso.segment":{source:"iana",extensions:["m4s"]},"video/jpeg":{source:"iana",extensions:["jpgv"]},"video/jpeg2000":{source:"iana"},"video/jpm":{source:"apache",extensions:["jpm","jpgm"]},"video/jxsv":{source:"iana"},"video/mj2":{source:"iana",extensions:["mj2","mjp2"]},"video/mp1s":{source:"iana"},"video/mp2p":{source:"iana"},"video/mp2t":{source:"iana",extensions:["ts"]},"video/mp4":{source:"iana",compressible:!1,extensions:["mp4","mp4v","mpg4"]},"video/mp4v-es":{source:"iana"},"video/mpeg":{source:"iana",compressible:!1,extensions:["mpeg","mpg","mpe","m1v","m2v"]},"video/mpeg4-generic":{source:"iana"},"video/mpv":{source:"iana"},"video/nv":{source:"iana"},"video/ogg":{source:"iana",compressible:!1,extensions:["ogv"]},"video/parityfec":{source:"iana"},"video/pointer":{source:"iana"},"video/quicktime":{source:"iana",compressible:!1,extensions:["qt","mov"]},"video/raptorfec":{source:"iana"},"video/raw":{source:"iana"},"video/rtp-enc-aescm128":{source:"iana"},"video/rtploopback":{source:"iana"},"video/rtx":{source:"iana"},"video/scip":{source:"iana"},"video/smpte291":{source:"iana"},"video/smpte292m":{source:"iana"},"video/ulpfec":{source:"iana"},"video/vc1":{source:"iana"},"video/vc2":{source:"iana"},"video/vnd.cctv":{source:"iana"},"video/vnd.dece.hd":{source:"iana",extensions:["uvh","uvvh"]},"video/vnd.dece.mobile":{source:"iana",extensions:["uvm","uvvm"]},"video/vnd.dece.mp4":{source:"iana"},"video/vnd.dece.pd":{source:"iana",extensions:["uvp","uvvp"]},"video/vnd.dece.sd":{source:"iana",extensions:["uvs","uvvs"]},"video/vnd.dece.video":{source:"iana",extensions:["uvv","uvvv"]},"video/vnd.directv.mpeg":{source:"iana"},"video/vnd.directv.mpeg-tts":{source:"iana"},"video/vnd.dlna.mpeg-tts":{source:"iana"},"video/vnd.dvb.file":{source:"iana",extensions:["dvb"]},"video/vnd.fvt":{source:"iana",extensions:["fvt"]},"video/vnd.hns.video":{source:"iana"},"video/vnd.iptvforum.1dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.1dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.2dparityfec-1010":{source:"iana"},"video/vnd.iptvforum.2dparityfec-2005":{source:"iana"},"video/vnd.iptvforum.ttsavc":{source:"iana"},"video/vnd.iptvforum.ttsmpeg2":{source:"iana"},"video/vnd.motorola.video":{source:"iana"},"video/vnd.motorola.videop":{source:"iana"},"video/vnd.mpegurl":{source:"iana",extensions:["mxu","m4u"]},"video/vnd.ms-playready.media.pyv":{source:"iana",extensions:["pyv"]},"video/vnd.nokia.interleaved-multimedia":{source:"iana"},"video/vnd.nokia.mp4vr":{source:"iana"},"video/vnd.nokia.videovoip":{source:"iana"},"video/vnd.objectvideo":{source:"iana"},"video/vnd.radgamettools.bink":{source:"iana"},"video/vnd.radgamettools.smacker":{source:"iana"},"video/vnd.sealed.mpeg1":{source:"iana"},"video/vnd.sealed.mpeg4":{source:"iana"},"video/vnd.sealed.swf":{source:"iana"},"video/vnd.sealedmedia.softseal.mov":{source:"iana"},"video/vnd.uvvu.mp4":{source:"iana",extensions:["uvu","uvvu"]},"video/vnd.vivo":{source:"iana",extensions:["viv"]},"video/vnd.youtube.yt":{source:"iana"},"video/vp8":{source:"iana"},"video/vp9":{source:"iana"},"video/webm":{source:"apache",compressible:!1,extensions:["webm"]},"video/x-f4v":{source:"apache",extensions:["f4v"]},"video/x-fli":{source:"apache",extensions:["fli"]},"video/x-flv":{source:"apache",compressible:!1,extensions:["flv"]},"video/x-m4v":{source:"apache",extensions:["m4v"]},"video/x-matroska":{source:"apache",compressible:!1,extensions:["mkv","mk3d","mks"]},"video/x-mng":{source:"apache",extensions:["mng"]},"video/x-ms-asf":{source:"apache",extensions:["asf","asx"]},"video/x-ms-vob":{source:"apache",extensions:["vob"]},"video/x-ms-wm":{source:"apache",extensions:["wm"]},"video/x-ms-wmv":{source:"apache",compressible:!1,extensions:["wmv"]},"video/x-ms-wmx":{source:"apache",extensions:["wmx"]},"video/x-ms-wvx":{source:"apache",extensions:["wvx"]},"video/x-msvideo":{source:"apache",extensions:["avi"]},"video/x-sgi-movie":{source:"apache",extensions:["movie"]},"video/x-smv":{source:"apache",extensions:["smv"]},"x-conference/x-cooltalk":{source:"apache",extensions:["ice"]},"x-shader/x-fragment":{compressible:!0},"x-shader/x-vertex":{compressible:!0}}}}),Va=W1({"node_modules/mime-db/index.js"(Q,X){X.exports=Ua()}}),q7=W1({"node_modules/mime-types/index.js"(Q){var X=Va(),Z=require("path").extname,J=/^\s*([^;\s]*)(?:;|\s|$)/,G=/^text\//i;Q.charset=Y,Q.charsets={lookup:Y},Q.contentType=H,Q.extension=K,Q.extensions=Object.create(null),Q.lookup=z,Q.types=Object.create(null),W(Q.extensions,Q.types);function Y($){if(!$||typeof $!=="string")return!1;var q=J.exec($),B=q&&X[q[1].toLowerCase()];if(B&&B.charset)return B.charset;if(q&&G.test(q[1]))return"UTF-8";return!1}function H($){if(!$||typeof $!=="string")return!1;var q=$.indexOf("/")===-1?Q.lookup($):$;if(!q)return!1;if(q.indexOf("charset")===-1){var B=Q.charset(q);if(B)q+="; charset="+B.toLowerCase()}return q}function K($){if(!$||typeof $!=="string")return!1;var q=J.exec($),B=q&&Q.extensions[q[1].toLowerCase()];if(!B||!B.length)return!1;return B[0]}function z($){if(!$||typeof $!=="string")return!1;var q=Z("x."+$).toLowerCase().substr(1);if(!q)return!1;return Q.types[q]||!1}function W($,q){var B=["nginx","apache",void 0,"iana"];Object.keys(X).forEach(function D(F){var P=X[F],N=P.extensions;if(!N||!N.length)return;$[F]=N;for(var C=0;CM||V===M&&q[L].substr(0,12)==="application/"))continue}q[L]=F}})}}}),vX=W1({"node_modules/type-is/index.js"(Q,X){var Z=Ba(),J=q7();X.exports=H,X.exports.is=G,X.exports.hasBody=Y,X.exports.normalize=K,X.exports.match=z;function G(q,B){var D,F=B,P=$(q);if(!P)return!1;if(F&&!Array.isArray(F)){F=new Array(arguments.length-1);for(D=0;D2){D=new Array(arguments.length-1);for(var F=0;F1&&typeof C1!=="boolean")throw new z('"allowMissing" argument must be a boolean');if(x(/^%?[^%]*%?$/,V1)===null)throw new K("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var N1=t(V1),j1=N1.length>0?N1[0]:"",d1=Y1("%"+j1+"%",C1),D1=d1.name,e=d1.value,P1=!1,Q1=d1.alias;if(Q1)j1=Q1[0],S(N1,T([0,1],Q1));for(var O1=1,S1=!0;O1=N1.length){var j=B(e,k);if(S1=!!j,S1&&"get"in j&&!("originalValue"in j.get))e=j.get;else e=e[k]}else S1=R(e,k),e=e[k];if(S1&&!P1)M[D1]=e}}return e}}}),O$=W1({"node_modules/es-define-property/index.js"(Q,X){var Z=H7(),J=Z("%Object.defineProperty%",!0)||!1;if(J)try{J({},"a",{value:1})}catch(G){J=!1}X.exports=J}}),lM=W1({"node_modules/gopd/index.js"(Q,X){var Z=H7(),J=Z("%Object.getOwnPropertyDescriptor%",!0);if(J)try{J([],"length")}catch(G){J=null}X.exports=J}}),Ea=W1({"node_modules/define-data-property/index.js"(Q,X){var Z=O$(),J=pM(),G=gX(),Y=lM();X.exports=function H(K,z,W){if(!K||typeof K!=="object"&&typeof K!=="function")throw new G("`obj` must be an object or a function`");if(typeof z!=="string"&&typeof z!=="symbol")throw new G("`property` must be a string or a symbol`");if(arguments.length>3&&typeof arguments[3]!=="boolean"&&arguments[3]!==null)throw new G("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&typeof arguments[4]!=="boolean"&&arguments[4]!==null)throw new G("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&typeof arguments[5]!=="boolean"&&arguments[5]!==null)throw new G("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&typeof arguments[6]!=="boolean")throw new G("`loose`, if provided, must be a boolean");var $=arguments.length>3?arguments[3]:null,q=arguments.length>4?arguments[4]:null,B=arguments.length>5?arguments[5]:null,D=arguments.length>6?arguments[6]:!1,F=!!Y&&Y(K,z);if(Z)Z(K,z,{configurable:B===null&&F?F.configurable:!B,enumerable:$===null&&F?F.enumerable:!$,value:W,writable:q===null&&F?F.writable:!q});else if(D||!$&&!q&&!B)K[z]=W;else throw new J("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.")}}}),ja=W1({"node_modules/has-property-descriptors/index.js"(Q,X){var Z=O$(),J=function G(){return!!Z};J.hasArrayLengthDefineBug=function G(){if(!Z)return null;try{return Z([],"length",{value:1}).length!==1}catch(Y){return!0}},X.exports=J}}),Sa=W1({"node_modules/set-function-length/index.js"(Q,X){var Z=H7(),J=Ea(),G=ja()(),Y=lM(),H=gX(),K=Z("%Math.floor%");X.exports=function z(W,$){if(typeof W!=="function")throw new H("`fn` is not a function");if(typeof $!=="number"||$<0||$>4294967295||K($)!==$)throw new H("`length` must be a positive 32-bit integer");var q=arguments.length>2&&!!arguments[2],B=!0,D=!0;if("length"in W&&Y){var F=Y(W,"length");if(F&&!F.configurable)B=!1;if(F&&!F.writable)D=!1}if(B||D||!q)if(G)J(W,"length",$,!0,!0);else J(W,"length",$);return W}}}),ka=W1({"node_modules/call-bind/index.js"(Q,X){var Z=A$(),J=H7(),G=Sa(),Y=gX(),H=J("%Function.prototype.apply%"),K=J("%Function.prototype.call%"),z=J("%Reflect.apply%",!0)||Z.call(K,H),W=O$(),$=J("%Math.max%");X.exports=function B(D){if(typeof D!=="function")throw new Y("a function is required");var F=z(Z,K,arguments);return G(F,1+$(0,D.length-(arguments.length-1)),!0)};var q=function B(){return z(Z,H,arguments)};if(W)W(X.exports,"apply",{value:q});else X.exports.apply=q}}),ya=W1({"node_modules/call-bind/callBound.js"(Q,X){var Z=H7(),J=ka(),G=J(Z("String.prototype.indexOf"));X.exports=function Y(H,K){var z=Z(H,!!K);if(typeof z==="function"&&G(H,".prototype.")>-1)return J(z);return z}}}),xa=W1({"node_modules/object-inspect/util.inspect.js"(Q,X){X.exports=require("util").inspect}}),va=W1({"node_modules/object-inspect/index.js"(Q,X){var Z=typeof Map==="function"&&Map.prototype,J=Object.getOwnPropertyDescriptor&&Z?Object.getOwnPropertyDescriptor(Map.prototype,"size"):null,G=Z&&J&&typeof J.get==="function"?J.get:null,Y=Z&&Map.prototype.forEach,H=typeof Set==="function"&&Set.prototype,K=Object.getOwnPropertyDescriptor&&H?Object.getOwnPropertyDescriptor(Set.prototype,"size"):null,z=H&&K&&typeof K.get==="function"?K.get:null,W=H&&Set.prototype.forEach,$=typeof WeakMap==="function"&&WeakMap.prototype,q=$?WeakMap.prototype.has:null,B=typeof WeakSet==="function"&&WeakSet.prototype,D=B?WeakSet.prototype.has:null,F=typeof WeakRef==="function"&&WeakRef.prototype,P=F?WeakRef.prototype.deref:null,N=Boolean.prototype.valueOf,C=Object.prototype.toString,L=Function.prototype.toString,V=String.prototype.match,M=String.prototype.slice,I=String.prototype.replace,E=String.prototype.toUpperCase,w=String.prototype.toLowerCase,A=RegExp.prototype.test,R=Array.prototype.concat,T=Array.prototype.join,S=Array.prototype.slice,v=Math.floor,h=typeof BigInt==="function"?BigInt.prototype.valueOf:null,x=Object.getOwnPropertySymbols,p=typeof Symbol==="function"&&typeof Symbol.iterator==="symbol"?Symbol.prototype.toString:null,n=typeof Symbol==="function"&&typeof Symbol.iterator==="object",t=typeof Symbol==="function"&&Symbol.toStringTag&&(typeof Symbol.toStringTag===n?"object":"symbol")?Symbol.toStringTag:null,Y1=Object.prototype.propertyIsEnumerable,G1=(typeof Reflect==="function"?Reflect.getPrototypeOf:Object.getPrototypeOf)||([].__proto__===Array.prototype?function($1){return $1.__proto__}:null);function V1($1,U1){if($1===1/0||$1===-1/0||$1!==$1||$1&&$1>-1000&&$1<1000||A.call(/e/,U1))return U1;var z0=/[0-9](?=(?:[0-9]{3})+(?![0-9]))/g;if(typeof $1==="number"){var L0=$1<0?-v(-$1):v($1);if(L0!==$1){var J0=String(L0),v1=M.call(U1,J0.length+1);return I.call(J0,z0,"$&_")+"."+I.call(I.call(v1,/([0-9]{3})/g,"$&_"),/_$/,"")}}return I.call(U1,z0,"$&_")}var C1=xa(),N1=C1.custom,j1=f(N1)?N1:null;X.exports=function $1(U1,z0,L0,J0){var v1=z0||{};if(Z1(v1,"quoteStyle")&&(v1.quoteStyle!=="single"&&v1.quoteStyle!=="double"))throw new TypeError('option "quoteStyle" must be "single" or "double"');if(Z1(v1,"maxStringLength")&&(typeof v1.maxStringLength==="number"?v1.maxStringLength<0&&v1.maxStringLength!==1/0:v1.maxStringLength!==null))throw new TypeError('option "maxStringLength", if provided, must be a positive integer, Infinity, or `null`');var W6=Z1(v1,"customInspect")?v1.customInspect:!0;if(typeof W6!=="boolean"&&W6!=="symbol")throw new TypeError("option \"customInspect\", if provided, must be `true`, `false`, or `'symbol'`");if(Z1(v1,"indent")&&v1.indent!==null&&v1.indent!=="\t"&&!(parseInt(v1.indent,10)===v1.indent&&v1.indent>0))throw new TypeError('option "indent" must be "\\t", an integer > 0, or `null`');if(Z1(v1,"numericSeparator")&&typeof v1.numericSeparator!=="boolean")throw new TypeError('option "numericSeparator", if provided, must be `true` or `false`');var j6=v1.numericSeparator;if(typeof U1==="undefined")return"undefined";if(U1===null)return"null";if(typeof U1==="boolean")return U1?"true":"false";if(typeof U1==="string")return X0(U1,v1);if(typeof U1==="number"){if(U1===0)return 1/0/U1>0?"0":"-0";var I6=String(U1);return j6?V1(U1,I6):I6}if(typeof U1==="bigint"){var i6=String(U1)+"n";return j6?V1(U1,i6):i6}var e8=typeof v1.depth==="undefined"?5:v1.depth;if(typeof L0==="undefined")L0=0;if(L0>=e8&&e8>0&&typeof U1==="object")return e(U1)?"[Array]":"[Object]";var _8=x0(v1,L0);if(typeof J0==="undefined")J0=[];else if(B1(J0,U1)>=0)return"[Circular]";function b0(d8,qQ,hQ){if(qQ)J0=S.call(J0),J0.push(qQ);if(hQ){var l9={depth:v1.depth};if(Z1(v1,"quoteStyle"))l9.quoteStyle=v1.quoteStyle;return $1(d8,l9,L0+1,J0)}return $1(d8,v1,L0+1,J0)}if(typeof U1==="function"&&!Q1(U1)){var R6=J1(U1),r0=U0(U1,b0);return"[Function"+(R6?": "+R6:" (anonymous)")+"]"+(r0.length>0?" { "+T.call(r0,", ")+" }":"")}if(f(U1)){var u0=n?I.call(String(U1),/^(Symbol\(.*\))_[^)]*$/,"$1"):p.call(U1);return typeof U1==="object"&&!n?B0(u0):u0}if(a1(U1)){var q6="<"+w.call(String(U1.nodeName)),M0=U1.attributes||[];for(var _0=0;_0",q6}if(e(U1)){if(U1.length===0)return"[]";var i0=U0(U1,b0);if(_8&&!D0(i0))return"["+R0(i0,_8)+"]";return"[ "+T.call(i0,", ")+" ]"}if(O1(U1)){var H6=U0(U1,b0);if(!("cause"in Error.prototype)&&"cause"in U1&&!Y1.call(U1,"cause"))return"{ ["+String(U1)+"] "+T.call(R.call("[cause]: "+b0(U1.cause),H6),", ")+" }";if(H6.length===0)return"["+String(U1)+"]";return"{ ["+String(U1)+"] "+T.call(H6,", ")+" }"}if(typeof U1==="object"&&W6){if(j1&&typeof U1[j1]==="function"&&C1)return C1(U1,{depth:e8-L0});else if(W6!=="symbol"&&typeof U1.inspect==="function")return U1.inspect()}if(L1(U1)){var B6=[];if(Y)Y.call(U1,function(d8,qQ){B6.push(b0(qQ,U1,!0)+" => "+b0(d8,U1))});return S0("Map",G.call(U1),B6,_8)}if(u1(U1)){var Z6=[];if(W)W.call(U1,function(d8){Z6.push(b0(d8,U1))});return S0("Set",z.call(U1),Z6,_8)}if(H1(U1))return Y0("WeakMap");if(s1(U1))return Y0("WeakSet");if(M1(U1))return Y0("WeakRef");if(k(U1))return B0(b0(Number(U1)));if(j(U1))return B0(b0(h.call(U1)));if(d(U1))return B0(N.call(U1));if(S1(U1))return B0(b0(String(U1)));if(typeof window!=="undefined"&&U1===window)return"{ [object Window] }";if(typeof globalThis!=="undefined"&&U1===globalThis||typeof global!=="undefined"&&U1===global)return"{ [object globalThis] }";if(!P1(U1)&&!Q1(U1)){var e0=U0(U1,b0),z6=G1?G1(U1)===Object.prototype:U1 instanceof Object||U1.constructor===Object,X6=U1 instanceof Object?"":"null prototype",n0=!z6&&t&&Object(U1)===U1&&t in U1?M.call(_(U1),8,-1):X6?"Object":"",U6=z6||typeof U1.constructor!=="function"?"":U1.constructor.name?U1.constructor.name+" ":"",gQ=U6+(n0||X6?"["+T.call(R.call([],n0||[],X6||[]),": ")+"] ":"");if(e0.length===0)return gQ+"{}";if(_8)return gQ+"{"+R0(e0,_8)+"}";return gQ+"{ "+T.call(e0,", ")+" }"}return String(U1)};function d1($1,U1,z0){var L0=(z0.quoteStyle||U1)==="double"?'"':"'";return L0+$1+L0}function D1($1){return I.call(String($1),/"/g,""")}function e($1){return _($1)==="[object Array]"&&(!t||!(typeof $1==="object"&&(t in $1)))}function P1($1){return _($1)==="[object Date]"&&(!t||!(typeof $1==="object"&&(t in $1)))}function Q1($1){return _($1)==="[object RegExp]"&&(!t||!(typeof $1==="object"&&(t in $1)))}function O1($1){return _($1)==="[object Error]"&&(!t||!(typeof $1==="object"&&(t in $1)))}function S1($1){return _($1)==="[object String]"&&(!t||!(typeof $1==="object"&&(t in $1)))}function k($1){return _($1)==="[object Number]"&&(!t||!(typeof $1==="object"&&(t in $1)))}function d($1){return _($1)==="[object Boolean]"&&(!t||!(typeof $1==="object"&&(t in $1)))}function f($1){if(n)return $1&&typeof $1==="object"&&$1 instanceof Symbol;if(typeof $1==="symbol")return!0;if(!$1||typeof $1!=="object"||!p)return!1;try{return p.call($1),!0}catch(U1){}return!1}function j($1){if(!$1||typeof $1!=="object"||!h)return!1;try{return h.call($1),!0}catch(U1){}return!1}var m=Object.prototype.hasOwnProperty||function($1){return $1 in this};function Z1($1,U1){return m.call($1,U1)}function _($1){return C.call($1)}function J1($1){if($1.name)return $1.name;var U1=V.call(L.call($1),/^function\s*([\w$]+)/);if(U1)return U1[1];return null}function B1($1,U1){if($1.indexOf)return $1.indexOf(U1);for(var z0=0,L0=$1.length;z0U1.maxStringLength){var z0=$1.length-U1.maxStringLength,L0="... "+z0+" more character"+(z0>1?"s":"");return X0(M.call($1,0,U1.maxStringLength),U1)+L0}var J0=I.call(I.call($1,/(['\\])/g,"\\$1"),/[\x00-\x1f]/g,t1);return d1(J0,"single",U1)}function t1($1){var U1=$1.charCodeAt(0),z0={8:"b",9:"t",10:"n",12:"f",13:"r"}[U1];if(z0)return"\\"+z0;return"\\x"+(U1<16?"0":"")+E.call(U1.toString(16))}function B0($1){return"Object("+$1+")"}function Y0($1){return $1+" { ? }"}function S0($1,U1,z0,L0){var J0=L0?R0(z0,L0):T.call(z0,", ");return $1+" ("+U1+") {"+J0+"}"}function D0($1){for(var U1=0;U1<$1.length;U1++)if(B1($1[U1],` -`)>=0)return!1;return!0}function x0($1,U1){var z0;if($1.indent==="\t")z0="\t";else if(typeof $1.indent==="number"&&$1.indent>0)z0=T.call(Array($1.indent+1)," ");else return null;return{base:z0,prev:T.call(Array(U1+1),z0)}}function R0($1,U1){if($1.length===0)return"";var z0=` -`+U1.prev+U1.base;return z0+T.call($1,","+z0)+` -`+U1.prev}function U0($1,U1){var z0=e($1),L0=[];if(z0){L0.length=$1.length;for(var J0=0;J0<$1.length;J0++)L0[J0]=Z1($1,J0)?U1($1[J0],$1):""}var v1=typeof x==="function"?x($1):[],W6;if(n){W6={};for(var j6=0;j61){var V=L.pop(),M=V.obj[V.prop];if(G(M)){var I=[];for(var E=0;E=48&&T<=57||T>=65&&T<=90||T>=97&&T<=122||E===Z.RFC1738&&(T===40||T===41)){A+=w.charAt(R);continue}if(T<128){A=A+Y[T];continue}if(T<2048){A=A+(Y[192|T>>6]+Y[128|T&63]);continue}if(T<55296||T>=57344){A=A+(Y[224|T>>12]+Y[128|T>>6&63]+Y[128|T&63]);continue}R+=1,T=65536+((T&1023)<<10|w.charCodeAt(R)&1023),A+=Y[240|T>>18]+Y[128|T>>12&63]+Y[128|T>>6&63]+Y[128|T&63]}return A},B=function C(L){var V=[{obj:{o:L},prop:"o"}],M=[];for(var I=0;I0?G1.join(",")||null:void 0}];else if(K(T))O1=T;else{var S1=Object.keys(G1);O1=S?S1.sort(S):S1}var k=E&&K(G1)&&G1.length===1?M+"[]":M;for(var d=0;d0?n+p:""}}}),fa=W1({"node_modules/qs/lib/parse.js"(Q,X){var Z=cM(),J=Object.prototype.hasOwnProperty,G=Array.isArray,Y={allowDots:!1,allowPrototypes:!1,allowSparse:!1,arrayLimit:20,charset:"utf-8",charsetSentinel:!1,comma:!1,decoder:Z.decode,delimiter:"&",depth:5,ignoreQueryPrefix:!1,interpretNumericEntities:!1,parameterLimit:1000,parseArrays:!0,plainObjects:!1,strictNullHandling:!1},H=function(F){return F.replace(/&#(\d+);/g,function(P,N){return String.fromCharCode(parseInt(N,10))})},K=function(F,P){if(F&&typeof F==="string"&&P.comma&&F.indexOf(",")>-1)return F.split(",");return F},z="utf8=%26%2310003%3B",W="utf8=%E2%9C%93",$=function F(P,N){var C={},L=N.ignoreQueryPrefix?P.replace(/^\?/,""):P,V=N.parameterLimit===1/0?void 0:N.parameterLimit,M=L.split(N.delimiter,V),I=-1,E,w=N.charset;if(N.charsetSentinel){for(E=0;E-1)v=G(v)?[v]:v;if(J.call(C,S))C[S]=Z.combine(C[S],v);else C[S]=v}return C},q=function(F,P,N,C){var L=C?P:K(P,N);for(var V=F.length-1;V>=0;--V){var M,I=F[V];if(I==="[]"&&N.parseArrays)M=[].concat(L);else{M=N.plainObjects?Object.create(null):{};var E=I.charAt(0)==="["&&I.charAt(I.length-1)==="]"?I.slice(1,-1):I,w=parseInt(E,10);if(!N.parseArrays&&E==="")M={0:L};else if(!isNaN(w)&&I!==E&&String(w)===E&&w>=0&&(N.parseArrays&&w<=N.arrayLimit))M=[],M[w]=L;else if(E!=="__proto__")M[E]=L}L=M}return L},B=function F(P,N,C,L){if(!P)return;var V=C.allowDots?P.replace(/\.([^.[]+)/g,"[$1]"):P,M=/(\[[^[\]]*])/,I=/(\[[^[\]]*])/g,E=C.depth>0&&M.exec(V),w=E?V.slice(0,E.index):V,A=[];if(w){if(!C.plainObjects&&J.call(Object.prototype,w)){if(!C.allowPrototypes)return}A.push(w)}var R=0;while(C.depth>0&&(E=I.exec(V))!==null&&R0)return K(q);else if(D==="number"&&isNaN(q)===!1)return B.long?W(q):z(q);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(q))};function K(q){if(q=String(q),q.length>100)return;var B=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(q);if(!B)return;var D=parseFloat(B[1]),F=(B[2]||"ms").toLowerCase();switch(F){case"years":case"year":case"yrs":case"yr":case"y":return D*H;case"days":case"day":case"d":return D*Y;case"hours":case"hour":case"hrs":case"hr":case"h":return D*G;case"minutes":case"minute":case"mins":case"min":case"m":return D*J;case"seconds":case"second":case"secs":case"sec":case"s":return D*Z;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return D;default:return}}function z(q){if(q>=Y)return Math.round(q/Y)+"d";if(q>=G)return Math.round(q/G)+"h";if(q>=J)return Math.round(q/J)+"m";if(q>=Z)return Math.round(q/Z)+"s";return q+"ms"}function W(q){return $(q,Y,"day")||$(q,G,"hour")||$(q,J,"minute")||$(q,Z,"second")||q+" ms"}function $(q,B,D){if(q=31||typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}Q.formatters.j=function(z){try{return JSON.stringify(z)}catch(W){return"[UnexpectedJSONParseError]: "+W.message}};function J(z){var W=this.useColors;if(z[0]=(W?"%c":"")+this.namespace+(W?" %c":" ")+z[0]+(W?"%c ":" ")+"+"+Q.humanize(this.diff),!W)return;var $="color: "+this.color;z.splice(1,0,$,"color: inherit");var q=0,B=0;z[0].replace(/%[a-zA-Z%]/g,function(D){if(D==="%%")return;if(q++,D==="%c")B=q}),z.splice(B,0,$)}function G(){return typeof console==="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function Y(z){try{if(z==null)Q.storage.removeItem("debug");else Q.storage.debug=z}catch(W){}}function H(){var z;try{z=Q.storage.debug}catch(W){}if(!z&&typeof process!=="undefined"&&"env"in process)z=process.env.DEBUG;return z}Q.enable(H());function K(){try{return window.localStorage}catch(z){}}}}),ua=W1({"node_modules/finalhandler/node_modules/debug/src/node.js"(Q,X){var Z=require("tty"),J=require("util");Q=X.exports=oM(),Q.init=B,Q.log=z,Q.formatArgs=K,Q.save=W,Q.load=$,Q.useColors=H,Q.colors=[6,2,3,4,5,1],Q.inspectOpts=Object.keys(process.env).filter(function(D){return/^debug_/i.test(D)}).reduce(function(D,F){var P=F.substring(6).toLowerCase().replace(/_([a-z])/g,function(C,L){return L.toUpperCase()}),N=process.env[F];if(/^(yes|on|true|enabled)$/i.test(N))N=!0;else if(/^(no|off|false|disabled)$/i.test(N))N=!1;else if(N==="null")N=null;else N=Number(N);return D[P]=N,D},{});var G=parseInt(process.env.DEBUG_FD,10)||2;if(G!==1&&G!==2)J.deprecate(function(){},"except for stderr(2) and stdout(1), any other usage of DEBUG_FD is deprecated. Override debug.log if you want to use a different log function (https://git.io/debug_fd)")();var Y=G===1?process.stdout:G===2?process.stderr:q(G);function H(){return"colors"in Q.inspectOpts?Boolean(Q.inspectOpts.colors):Z.isatty(G)}Q.formatters.o=function(D){return this.inspectOpts.colors=this.useColors,J.inspect(D,this.inspectOpts).split(` -`).map(function(F){return F.trim()}).join(" ")},Q.formatters.O=function(D){return this.inspectOpts.colors=this.useColors,J.inspect(D,this.inspectOpts)};function K(D){var F=this.namespace,P=this.useColors;if(P){var N=this.color,C=" \x1B[3"+N+";1m"+F+" \x1B[0m";D[0]=C+D[0].split(` -`).join(` -`+C),D.push("\x1B[3"+N+"m+"+Q.humanize(this.diff)+"\x1B[0m")}else D[0]=new Date().toUTCString()+" "+F+" "+D[0]}function z(){return Y.write(J.format.apply(J,arguments)+` -`)}function W(D){if(D==null)delete process.env.DEBUG;else process.env.DEBUG=D}function $(){return process.env.DEBUG}function q(D){var F,P=process.binding("tty_wrap");switch(P.guessHandleType(D)){case"TTY":if(F=new Z.WriteStream(D),F._type="tty",F._handle&&F._handle.unref)F._handle.unref();break;case"FILE":var N=require("fs");F=new N.SyncWriteStream(D,{autoClose:!1}),F._type="fs";break;case"PIPE":case"TCP":var C=require("net");if(F=new C.Socket({fd:D,readable:!1,writable:!0}),F.readable=!1,F.read=null,F._type="pipe",F._handle&&F._handle.unref)F._handle.unref();break;default:throw new Error("Implement me. Unknown stream file type!")}return F.fd=D,F._isStdio=!0,F}function B(D){D.inspectOpts={};var F=Object.keys(Q.inspectOpts);for(var P=0;P]/;X.exports=J;function J(G){var Y=""+G,H=Z.exec(Y);if(!H)return Y;var K,z="",W=0,$=0;for(W=H.index;W").replace(W,"  ");return` - - - -Error - - -
`+A+`
- - -`}X.exports=F;function F(w,A,R){var T=R||{},S=T.env||"production",v=T.onerror;return function(h){var x,p,n;if(!h&&M(A)){Z("cannot 404 after headers sent");return}if(h){if(n=C(h),n===void 0)n=V(A);else x=P(h);p=N(h,n,S)}else n=404,p="Cannot "+w.method+" "+J(L(w));if(Z("default %s",n),h&&v)q(v,h,w,A);if(M(A)){Z("cannot %d after headers sent",n),w.socket.destroy();return}I(w,A,n,x,p)}}function P(w){if(!w.headers||typeof w.headers!=="object")return;var A=Object.create(null),R=Object.keys(w.headers);for(var T=0;T=400&&w.status<600)return w.status;if(typeof w.statusCode==="number"&&w.statusCode>=400&&w.statusCode<600)return w.statusCode;return}function L(w){try{return H.original(w).pathname}catch(A){return"resource"}}function V(w){var A=w.statusCode;if(typeof A!=="number"||A<400||A>599)A=500;return A}function M(w){return typeof w.headersSent!=="boolean"?Boolean(w._header):w.headersSent}function I(w,A,R,T,S){function v(){var h=D(S);if(A.statusCode=R,A.statusMessage=K.message[R],A.removeHeader("Content-Encoding"),A.removeHeader("Content-Language"),A.removeHeader("Content-Range"),E(A,T),A.setHeader("Content-Security-Policy","default-src 'none'"),A.setHeader("X-Content-Type-Options","nosniff"),A.setHeader("Content-Type","text/html; charset=utf-8"),A.setHeader("Content-Length",Buffer.byteLength(h,"utf8")),w.method==="HEAD"){A.end();return}A.end(h,"utf8")}if(B(w)){v();return}z(w),Y(w,v),w.resume()}function E(w,A){if(!A)return;var R=Object.keys(A);for(var T=0;T0)return K(q);else if(D==="number"&&isNaN(q)===!1)return B.long?W(q):z(q);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(q))};function K(q){if(q=String(q),q.length>100)return;var B=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(q);if(!B)return;var D=parseFloat(B[1]),F=(B[2]||"ms").toLowerCase();switch(F){case"years":case"year":case"yrs":case"yr":case"y":return D*H;case"days":case"day":case"d":return D*Y;case"hours":case"hour":case"hrs":case"hr":case"h":return D*G;case"minutes":case"minute":case"mins":case"min":case"m":return D*J;case"seconds":case"second":case"secs":case"sec":case"s":return D*Z;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return D;default:return}}function z(q){if(q>=Y)return Math.round(q/Y)+"d";if(q>=G)return Math.round(q/G)+"h";if(q>=J)return Math.round(q/J)+"m";if(q>=Z)return Math.round(q/Z)+"s";return q+"ms"}function W(q){return $(q,Y,"day")||$(q,G,"hour")||$(q,J,"minute")||$(q,Z,"second")||q+" ms"}function $(q,B,D){if(q=31||typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}Q.formatters.j=function(z){try{return JSON.stringify(z)}catch(W){return"[UnexpectedJSONParseError]: "+W.message}};function J(z){var W=this.useColors;if(z[0]=(W?"%c":"")+this.namespace+(W?" %c":" ")+z[0]+(W?"%c ":" ")+"+"+Q.humanize(this.diff),!W)return;var $="color: "+this.color;z.splice(1,0,$,"color: inherit");var q=0,B=0;z[0].replace(/%[a-zA-Z%]/g,function(D){if(D==="%%")return;if(q++,D==="%c")B=q}),z.splice(B,0,$)}function G(){return typeof console==="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function Y(z){try{if(z==null)Q.storage.removeItem("debug");else Q.storage.debug=z}catch(W){}}function H(){var z;try{z=Q.storage.debug}catch(W){}if(!z&&typeof process!=="undefined"&&"env"in process)z=process.env.DEBUG;return z}Q.enable(H());function K(){try{return window.localStorage}catch(z){}}}}),na=W1({"node_modules/express/node_modules/debug/src/node.js"(Q,X){var Z=require("tty"),J=require("util");Q=X.exports=aM(),Q.init=q,Q.log=z,Q.formatArgs=H,Q.save=W,Q.load=$,Q.useColors=Y,Q.colors=[6,2,3,4,5,1];try{if(G=I$(),G&&G.level>=2)Q.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221]}catch(B){}var G;Q.inspectOpts=Object.keys(process.env).filter(function(B){return/^debug_/i.test(B)}).reduce(function(B,D){var F=D.substring(6).toLowerCase().replace(/_([a-z])/g,function(N,C){return C.toUpperCase()}),P=process.env[D];if(/^(yes|on|true|enabled)$/i.test(P))P=!0;else if(/^(no|off|false|disabled)$/i.test(P))P=!1;else if(P==="null")P=null;else P=Number(P);return B[F]=P,B},{});function Y(){return"colors"in Q.inspectOpts?Boolean(Q.inspectOpts.colors):Z.isatty(process.stderr.fd)}Q.formatters.o=function(B){return this.inspectOpts.colors=this.useColors,J.inspect(B,this.inspectOpts).split(` -`).map(function(D){return D.trim()}).join(" ")},Q.formatters.O=function(B){return this.inspectOpts.colors=this.useColors,J.inspect(B,this.inspectOpts)};function H(B){var D=this.namespace,F=this.useColors;if(F){var P=this.color,N="\x1B[3"+(P<8?P:"8;5;"+P),C=" "+N+";1m"+D+" \x1B[0m";B[0]=C+B[0].split(` -`).join(` -`+C),B.push(N+"m+"+Q.humanize(this.diff)+"\x1B[0m")}else B[0]=K()+D+" "+B[0]}function K(){if(Q.inspectOpts.hideDate)return"";else return new Date().toISOString()+" "}function z(){return process.stderr.write(J.format.apply(J,arguments)+` -`)}function W(B){if(B==null)delete process.env.DEBUG;else process.env.DEBUG=B}function $(){return process.env.DEBUG}function q(B){B.inspectOpts={};var D=Object.keys(Q.inspectOpts);for(var F=0;F=0;W--)switch(Y.charCodeAt(W)){case 32:if(z===H)z=H=W;break;case 44:if(z!==H)K.push(Y.substring(z,H));z=H=W;break;default:z=W;break}if(z!==H)K.push(Y.substring(z,H));return K}}}),sa=W1({"node_modules/ipaddr.js/lib/ipaddr.js"(Q,X){(function(){var Z,J,G,Y,H,K,z,W,$;if(J={},W=this,typeof X!=="undefined"&&X!==null&&X.exports)X.exports=J;else W.ipaddr=J;z=function(q,B,D,F){var P,N;if(q.length!==B.length)throw new Error("ipaddr: cannot match CIDR for objects with different lengths");P=0;while(F>0){if(N=D-F,N<0)N=0;if(q[P]>>N!==B[P]>>N)return!1;F-=D,P+=1}return!0},J.subnetMatch=function(q,B,D){var F,P,N,C,L;if(D==null)D="unicast";for(N in B){if(C=B[N],C[0]&&!(C[0]instanceof Array))C=[C];for(F=0,P=C.length;F=0;D=F+=-1)if(P=this.octets[D],P in L){if(C=L[P],N&&C!==0)return null;if(C!==8)N=!0;B+=C}else return null;return 32-B},q}(),G="(0?\\d+|0x[a-f0-9]+)",Y={fourOctet:new RegExp("^"+G+"\\."+G+"\\."+G+"\\."+G+"$","i"),longValue:new RegExp("^"+G+"$","i")},J.IPv4.parser=function(q){var B,D,F,P,N;if(D=function(C){if(C[0]==="0"&&C[1]!=="x")return parseInt(C,8);else return parseInt(C)},B=q.match(Y.fourOctet))return function(){var C,L,V,M;V=B.slice(1,6),M=[];for(C=0,L=V.length;C4294967295||N<0)throw new Error("ipaddr: address outside defined range");return function(){var C,L;L=[];for(P=C=0;C<=24;P=C+=8)L.push(N>>P&255);return L}().reverse()}else return null},J.IPv6=function(){function q(B,D){var F,P,N,C,L,V;if(B.length===16){this.parts=[];for(F=P=0;P<=14;F=P+=2)this.parts.push(B[F]<<8|B[F+1])}else if(B.length===8)this.parts=B;else throw new Error("ipaddr: ipv6 part count should be 8 or 16");V=this.parts;for(N=0,C=V.length;ND)B=F.index,D=F[0].length;if(D<0)return N;return N.substring(0,B)+"::"+N.substring(B+D)},q.prototype.toByteArray=function(){var B,D,F,P,N;B=[],N=this.parts;for(D=0,F=N.length;D>8),B.push(P&255);return B},q.prototype.toNormalizedString=function(){var B,D,F;if(B=function(){var P,N,C,L;C=this.parts,L=[];for(P=0,N=C.length;P>8,B&255,D>>8,D&255])},q.prototype.prefixLengthFromSubnetMask=function(){var B,D,F,P,N,C,L;L={0:16,32768:15,49152:14,57344:13,61440:12,63488:11,64512:10,65024:9,65280:8,65408:7,65472:6,65504:5,65520:4,65528:3,65532:2,65534:1,65535:0},B=0,N=!1;for(D=F=7;F>=0;D=F+=-1)if(P=this.parts[D],P in L){if(C=L[P],N&&C!==0)return null;if(C!==16)N=!0;B+=C}else return null;return 128-B},q}(),H="(?:[0-9a-f]+::?)+",$="%[0-9a-z]{1,}",K={zoneIndex:new RegExp($,"i"),native:new RegExp("^(::)?("+H+")?([0-9a-f]+)?(::)?("+$+")?$","i"),transitional:new RegExp("^((?:"+H+")|(?:::)(?:"+H+")?)"+(G+"\\."+G+"\\."+G+"\\."+G)+("("+$+")?$"),"i")},Z=function(q,B){var D,F,P,N,C,L;if(q.indexOf("::")!==q.lastIndexOf("::"))return null;if(L=(q.match(K.zoneIndex)||[])[0],L)L=L.substring(1),q=q.replace(/%.+$/,"");D=0,F=-1;while((F=q.indexOf(":",F+1))>=0)D++;if(q.substr(0,2)==="::")D--;if(q.substr(-2,2)==="::")D--;if(D>B)return null;C=B-D,N=":";while(C--)N+="0:";if(q=q.replace("::",N),q[0]===":")q=q.slice(1);if(q[q.length-1]===":")q=q.slice(0,-1);return B=function(){var V,M,I,E;I=q.split(":"),E=[];for(V=0,M=I.length;V=0&&B<=32)return F=[this.parse(D[1]),B],Object.defineProperty(F,"toString",{value:function(){return this.join("/")}}),F}throw new Error("ipaddr: string is not formatted like an IPv4 CIDR range")},J.IPv4.subnetMaskFromPrefixLength=function(q){var B,D,F;if(q=parseInt(q),q<0||q>32)throw new Error("ipaddr: invalid IPv4 prefix length");F=[0,0,0,0],D=0,B=Math.floor(q/8);while(D=0&&B<=128)return F=[this.parse(D[1]),B],Object.defineProperty(F,"toString",{value:function(){return this.join("/")}}),F}throw new Error("ipaddr: string is not formatted like an IPv6 CIDR range")},J.isValid=function(q){return J.IPv6.isValid(q)||J.IPv4.isValid(q)},J.parse=function(q){if(J.IPv6.isValid(q))return J.IPv6.parse(q);else if(J.IPv4.isValid(q))return J.IPv4.parse(q);else throw new Error("ipaddr: the address has neither IPv6 nor IPv4 format")},J.parseCIDR=function(q){var B;try{return J.IPv6.parseCIDR(q)}catch(D){B=D;try{return J.IPv4.parseCIDR(q)}catch(F){throw B=F,new Error("ipaddr: the address has neither IPv6 nor IPv4 CIDR format")}}},J.fromByteArray=function(q){var B=q.length;if(B===4)return new J.IPv4(q);else if(B===16)return new J.IPv6(q);else throw new Error("ipaddr: the binary input is neither an IPv6 nor IPv4 address")},J.process=function(q){var B=this.parse(q);if(B.kind()==="ipv6"&&B.isIPv4MappedAddress())return B.toIPv4Address();else return B}}).call(Q)}}),rM=W1({"node_modules/proxy-addr/index.js"(Q,X){X.exports=F,X.exports.all=z,X.exports.compile=W;var Z=aa(),J=sa(),G=/^[0-9]+$/,Y=J.isValid,H=J.parse,K={linklocal:["169.254.0.0/16","fe80::/10"],loopback:["127.0.0.1/8","::1/128"],uniquelocal:["10.0.0.0/8","172.16.0.0/12","192.168.0.0/16","fc00::/7"]};function z(L,V){var M=Z(L);if(!V)return M;if(typeof V!=="function")V=W(V);for(var I=0;IE)throw new TypeError("invalid range on address: "+L);return[I,w]}function D(L){var V=H(L),M=V.kind();return M==="ipv4"?V.prefixLengthFromSubnetMask():null}function F(L,V){if(!L)throw new TypeError("req argument is required");if(!V)throw new TypeError("trust argument is required");var M=z(L,V),I=M[M.length-1];return I}function P(){return!1}function N(L){return function V(M){if(!Y(M))return!1;var I=H(M),E,w=I.kind();for(var A=0;A-1:!0;if(C1)x=V1,E=E.slice(0,G1)}if(E)V.push(E),E="",R=!1;var N1=Y1==="+"||Y1==="*",j1=Y1==="?"||Y1==="*",d1=n||t,D1=x||w;V.push({name:p||M++,prefix:x,delimiter:D1,optional:j1,repeat:N1,pattern:d1?$(d1):"[^"+W(D1===w?D1:D1+w)+"]+?"})}if(E||I",this.params=void 0,this.path=void 0,this.regexp=J(B.strict?W:z(W),this.keys,B),this.regexp._slash=W==="/"&&B.end===!1}H.prototype.handleError=function W($,q,B,D){var F=this.handle;if(F.length!==4)return D($);try{var P=F($,q,B,D);if(Z(P))P.then(null,function(N){D(N||new Error("Rejected promise"))})}catch(N){D(N)}},H.prototype.handleRequest=function W($,q,B){var D=this.handle;if(D.length>3)return B();try{var F=D($,q,B);if(Z(F))F.then(null,function(P){B(P||new Error("Rejected promise"))})}catch(P){B(P)}},H.prototype.match=function W($){var q;if($!=null){if(this.regexp._slash)return this.params={},this.path="",!0;q=this.regexp.exec($)}if(!q)return this.params=void 0,this.path=void 0,!1;this.params={},this.path=q[0];var B=this.keys,D=this.params;for(var F=1;F=D.length)return q(C);if(++F>100)return H(N,C);var L,V;while(V!==!0&&B=Y1.length){setImmediate(C1,D1);return}if(++n>100)return setImmediate(N1,d1);var e=D(w);if(e==null)return C1(D1);var P1,Q1,O1;while(Q1!==!0&&T=0;R--)if(E[R+T]=E[R],R=v.length)return S();if(p=0,n=v[h++],x=n.name,t=R.params[x],Y1=E[x],G1=A[x],t===void 0||!Y1)return V1();if(G1&&(G1.match===t||G1.error&&G1.error!=="route"))return R.params[x]=G1.value,V1(G1.error);A[x]=G1={error:null,match:t,value:t},C1()}function C1(N1){var j1=Y1[p++];if(G1.value=R.params[n.name],N1){G1.error=N1,V1(N1);return}if(!j1)return V1();try{var d1=j1(R,T,C1,t,n.name);if(J(d1))d1.then(null,function(D1){C1(D1||new Error("Rejected promise"))})}catch(D1){C1(D1)}}V1()}function L(E,w){var A=new Array(arguments.length-2),R=new Array(arguments.length-2);for(var T=0;T1?'directories "'+x.root.slice(0,-1).join('", "')+'" or "'+x.root[x.root.length-1]+'"':'directory "'+x.root+'"',t=new Error('Failed to lookup view "'+E+'" in views '+n);return t.view=x,T(t)}if(h.cache)R[E]=x}M(x,h,T)},C.listen=function I(){var E=H.createServer(this);return E.listen.apply(E,arguments)};function V(I){if(this.get("env")!=="test")console.error(I.stack||I.toString())}function M(I,E,w){try{I.render(E,w)}catch(A){w(A)}}}}),Qs=W1({"node_modules/negotiator/lib/charset.js"(Q,X){X.exports=K,X.exports.preferredCharsets=K;var Z=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function J(q){var B=q.split(",");for(var D=0,F=0;D0}}}),Zs=W1({"node_modules/negotiator/lib/encoding.js"(Q,X){X.exports=K,X.exports.preferredEncodings=K;var Z=/^\s*([^\s;]+)\s*(?:;(.*))?$/;function J(q){var B=q.split(","),D=!1,F=1;for(var P=0,N=0;P0}}}),Xs=W1({"node_modules/negotiator/lib/language.js"(Q,X){X.exports=K,X.exports.preferredLanguages=K;var Z=/^\s*([^\s\-;]+)(?:-([^\s;]+))?\s*(?:;(.*))?$/;function J(q){var B=q.split(",");for(var D=0,F=0;D0}}}),Js=W1({"node_modules/negotiator/lib/mediaType.js"(Q,X){X.exports=K,X.exports.preferredMediaTypes=K;var Z=/^\s*([^\s\/;]+)\/([^;\s]+)\s*(?:;(.*))?$/;function J(P){var N=D(P);for(var C=0,L=0;C0)if(M.every(function(I){return N.params[I]=="*"||(N.params[I]||"").toLowerCase()==(L.params[I]||"").toLowerCase()}))V|=1;else return null;return{i:C,o:N.i,q:N.q,s:V}}function K(P,N){var C=J(P===void 0?"*/*":P||"");if(!N)return C.filter($).sort(z).map(W);var L=N.map(function V(M,I){return Y(M,C,I)});return L.filter($).sort(z).map(function V(M){return N[L.indexOf(M)]})}function z(P,N){return N.q-P.q||N.s-P.s||P.o-N.o||P.i-N.i||0}function W(P){return P.type+"/"+P.subtype}function $(P){return P.q>0}function q(P){var N=0,C=0;while((C=P.indexOf('"',C))!==-1)N++,C++;return N}function B(P){var N=P.indexOf("="),C,L;if(N===-1)C=P;else C=P.substr(0,N),L=P.substr(N+1);return[C,L]}function D(P){var N=P.split(",");for(var C=1,L=0;Cz-1)C=z-1;if(isNaN(N)||isNaN(C)||N>C||N<0)continue;D.push({start:N,end:C})}if(D.length<1)return-1;return $&&$.combine?J(D):D}function J(z){var W=z.map(G).sort(K);for(var $=0,q=1;qD.end+1)W[++$]=B;else if(B.end>D.end)D.end=B.end,D.index=Math.min(D.index,B.index)}W.length=$+1;var F=W.sort(H).map(Y);return F.type=z.type,F}function G(z,W){return{start:z.start,end:z.end,index:W}}function Y(z){return{start:z.start,end:z.end}}function H(z,W){return z.index-W.index}function K(z,W){return z.start-W.start}}}),Ws=W1({"node_modules/express/lib/request.js"(Q,X){var Z=Ys(),J=require("net").isIP,G=vX(),Y=require("http"),H=XI(),K=JI(),z=rq(),W=rM(),$=Object.create(Y.IncomingMessage.prototype);X.exports=$,$.get=$.header=function B(D){if(!D)throw new TypeError("name argument is required to req.get");if(typeof D!=="string")throw new TypeError("name must be a string to req.get");var F=D.toLowerCase();switch(F){case"referer":case"referrer":return this.headers.referrer||this.headers.referer;default:return this.headers[F]}},$.accepts=function(){var B=Z(this);return B.types.apply(B,arguments)},$.acceptsEncodings=function(){var B=Z(this);return B.encodings.apply(B,arguments)},$.acceptsCharsets=function(){var B=Z(this);return B.charsets.apply(B,arguments)},$.acceptsLanguages=function(){var B=Z(this);return B.languages.apply(B,arguments)},$.range=function B(D,F){var P=this.get("Range");if(!P)return;return K(D,P,F)},q($,"query",function B(){var D=this.app.get("query parser fn");if(!D)return Object.create(null);var F=z(this).query;return D(F)}),$.is=function B(D){var F=D;if(!Array.isArray(D)){F=new Array(arguments.length);for(var P=0;P=200&&F<300||F===304)return H(this.headers,{etag:D.get("ETag"),"last-modified":D.get("Last-Modified")});return!1}),q($,"stale",function B(){return!this.fresh}),q($,"xhr",function B(){var D=this.get("X-Requested-With")||"";return D.toLowerCase()==="xmlhttprequest"});function q(B,D,F){Object.defineProperty(B,D,{configurable:!0,enumerable:!0,get:F})}}}),qs=W1({"node_modules/content-disposition/index.js"(Q,X){X.exports=P,X.exports.parse=M;var Z=require("path").basename,J=j$().Buffer,G=/[\x00-\x20"'()*,/:;<=>?@[\\\]{}\x7f]/g,Y=/%[0-9A-Fa-f]{2}/,H=/%([0-9A-Fa-f]{2})/g,K=/[^\x20-\x7e\xa0-\xff]/g,z=/\\([\u0000-\u007f])/g,W=/([\\"])/g,$=/;[\x09\x20]*([!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*=[\x09\x20]*("(?:[\x20!\x23-\x5b\x5d-\x7e\x80-\xff]|\\[\x20-\x7e])*"|[!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*/g,q=/^[\x20-\x7e\x80-\xff]+$/,B=/^[!#$%&'*+.0-9A-Z^_`a-z|~-]+$/,D=/^([A-Za-z0-9!#$%&+\-^_`{}~]+)'(?:[A-Za-z]{2,3}(?:-[A-Za-z]{3}){0,3}|[A-Za-z]{4,8}|)'((?:%[0-9A-Fa-f]{2}|[A-Za-z0-9!#$&+.^_`|~-])+)$/,F=/^([!#$%&'*+.0-9A-Z^_`a-z|~-]+)[\x09\x20]*(?:$|;)/;function P(T,S){var v=S||{},h=v.type||"attachment",x=N(T,v.fallback);return C(new R(h,x))}function N(T,S){if(T===void 0)return;var v={};if(typeof T!=="string")throw new TypeError("filename must be a string");if(S===void 0)S=!0;if(typeof S!=="string"&&typeof S!=="boolean")throw new TypeError("fallback must be a string or boolean");if(typeof S==="string"&&K.test(S))throw new TypeError("fallback must be ISO-8859-1 string");var h=Z(T),x=q.test(h),p=typeof S!=="string"?S&&V(h):Z(S),n=typeof p==="string"&&p!==h;if(n||!x||Y.test(h))v["filename*"]=h;if(x||n)v.filename=n?p:h;return v}function C(T){var{parameters:S,type:v}=T;if(!v||typeof v!=="string"||!B.test(v))throw new TypeError("invalid type");var h=String(v).toLowerCase();if(S&&typeof S==="object"){var x,p=Object.keys(S).sort();for(var n=0;n0)return K(q);else if(D==="number"&&isNaN(q)===!1)return B.long?W(q):z(q);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(q))};function K(q){if(q=String(q),q.length>100)return;var B=/^((?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|years?|yrs?|y)?$/i.exec(q);if(!B)return;var D=parseFloat(B[1]),F=(B[2]||"ms").toLowerCase();switch(F){case"years":case"year":case"yrs":case"yr":case"y":return D*H;case"days":case"day":case"d":return D*Y;case"hours":case"hour":case"hrs":case"hr":case"h":return D*G;case"minutes":case"minute":case"mins":case"min":case"m":return D*J;case"seconds":case"second":case"secs":case"sec":case"s":return D*Z;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return D;default:return}}function z(q){if(q>=Y)return Math.round(q/Y)+"d";if(q>=G)return Math.round(q/G)+"h";if(q>=J)return Math.round(q/J)+"m";if(q>=Z)return Math.round(q/Z)+"s";return q+"ms"}function W(q){return $(q,Y,"day")||$(q,G,"hour")||$(q,J,"minute")||$(q,Z,"second")||q+" ms"}function $(q,B,D){if(q=31||typeof navigator!=="undefined"&&navigator.userAgent&&navigator.userAgent.toLowerCase().match(/applewebkit\/(\d+)/)}Q.formatters.j=function(z){try{return JSON.stringify(z)}catch(W){return"[UnexpectedJSONParseError]: "+W.message}};function J(z){var W=this.useColors;if(z[0]=(W?"%c":"")+this.namespace+(W?" %c":" ")+z[0]+(W?"%c ":" ")+"+"+Q.humanize(this.diff),!W)return;var $="color: "+this.color;z.splice(1,0,$,"color: inherit");var q=0,B=0;z[0].replace(/%[a-zA-Z%]/g,function(D){if(D==="%%")return;if(q++,D==="%c")B=q}),z.splice(B,0,$)}function G(){return typeof console==="object"&&console.log&&Function.prototype.apply.call(console.log,console,arguments)}function Y(z){try{if(z==null)Q.storage.removeItem("debug");else Q.storage.debug=z}catch(W){}}function H(){var z;try{z=Q.storage.debug}catch(W){}if(!z&&typeof process!=="undefined"&&"env"in process)z=process.env.DEBUG;return z}Q.enable(H());function K(){try{return window.localStorage}catch(z){}}}}),Us=W1({"node_modules/send/node_modules/debug/src/node.js"(Q,X){var Z=require("tty"),J=require("util");Q=X.exports=GI(),Q.init=q,Q.log=z,Q.formatArgs=H,Q.save=W,Q.load=$,Q.useColors=Y,Q.colors=[6,2,3,4,5,1];try{if(G=I$(),G&&G.level>=2)Q.colors=[20,21,26,27,32,33,38,39,40,41,42,43,44,45,56,57,62,63,68,69,74,75,76,77,78,79,80,81,92,93,98,99,112,113,128,129,134,135,148,149,160,161,162,163,164,165,166,167,168,169,170,171,172,173,178,179,184,185,196,197,198,199,200,201,202,203,204,205,206,207,208,209,214,215,220,221]}catch(B){}var G;Q.inspectOpts=Object.keys(process.env).filter(function(B){return/^debug_/i.test(B)}).reduce(function(B,D){var F=D.substring(6).toLowerCase().replace(/_([a-z])/g,function(N,C){return C.toUpperCase()}),P=process.env[D];if(/^(yes|on|true|enabled)$/i.test(P))P=!0;else if(/^(no|off|false|disabled)$/i.test(P))P=!1;else if(P==="null")P=null;else P=Number(P);return B[F]=P,B},{});function Y(){return"colors"in Q.inspectOpts?Boolean(Q.inspectOpts.colors):Z.isatty(process.stderr.fd)}Q.formatters.o=function(B){return this.inspectOpts.colors=this.useColors,J.inspect(B,this.inspectOpts).split(` -`).map(function(D){return D.trim()}).join(" ")},Q.formatters.O=function(B){return this.inspectOpts.colors=this.useColors,J.inspect(B,this.inspectOpts)};function H(B){var D=this.namespace,F=this.useColors;if(F){var P=this.color,N="\x1B[3"+(P<8?P:"8;5;"+P),C=" "+N+";1m"+D+" \x1B[0m";B[0]=C+B[0].split(` -`).join(` -`+C),B.push(N+"m+"+Q.humanize(this.diff)+"\x1B[0m")}else B[0]=K()+D+" "+B[0]}function K(){if(Q.inspectOpts.hideDate)return"";else return new Date().toISOString()+" "}function z(){return process.stderr.write(J.format.apply(J,arguments)+` -`)}function W(B){if(B==null)delete process.env.DEBUG;else process.env.DEBUG=B}function $(){return process.env.DEBUG}function q(B){B.inspectOpts={};var D=Object.keys(Q.inspectOpts);for(var F=0;F0)return z(B);else if(F==="number"&&isFinite(B))return D.long?$(B):W(B);throw new Error("val is not a non-empty string or a valid number. val="+JSON.stringify(B))};function z(B){if(B=String(B),B.length>100)return;var D=/^(-?(?:\d+)?\.?\d+) *(milliseconds?|msecs?|ms|seconds?|secs?|s|minutes?|mins?|m|hours?|hrs?|h|days?|d|weeks?|w|years?|yrs?|y)?$/i.exec(B);if(!D)return;var F=parseFloat(D[1]),P=(D[2]||"ms").toLowerCase();switch(P){case"years":case"year":case"yrs":case"yr":case"y":return F*K;case"weeks":case"week":case"w":return F*H;case"days":case"day":case"d":return F*Y;case"hours":case"hour":case"hrs":case"hr":case"h":return F*G;case"minutes":case"minute":case"mins":case"min":case"m":return F*J;case"seconds":case"second":case"secs":case"sec":case"s":return F*Z;case"milliseconds":case"millisecond":case"msecs":case"msec":case"ms":return F;default:return}}function W(B){var D=Math.abs(B);if(D>=Y)return Math.round(B/Y)+"d";if(D>=G)return Math.round(B/G)+"h";if(D>=J)return Math.round(B/J)+"m";if(D>=Z)return Math.round(B/Z)+"s";return B+"ms"}function $(B){var D=Math.abs(B);if(D>=Y)return q(B,D,Y,"day");if(D>=G)return q(B,D,G,"hour");if(D>=J)return q(B,D,J,"minute");if(D>=Z)return q(B,D,Z,"second");return B+" ms"}function q(B,D,F,P){var N=D>=F*1.5;return Math.round(B/F)+" "+P+(N?"s":"")}}}),YI=W1({"node_modules/send/index.js"(Q,X){var Z=W7(),J=Vs()("send"),G=dM(),Y=sq(),H=tq(),K=tM(),z=XI(),W=require("fs"),$=q7(),q=Ps(),B=O4(),D=JI(),F=require("path"),P=nq(),N=require("stream"),C=require("util"),L=F.extname,V=F.join,M=F.normalize,I=F.resolve,E=F.sep,w=/^ *bytes=/,A=31536000000,R=/(?:^|[\\/])\.\.(?:[\\/]|$)/;X.exports=T;function T(D1,e,P1){return new S(D1,e,P1)}function S(D1,e,P1){N.call(this);var Q1=P1||{};if(this.options=Q1,this.path=e,this.req=D1,this._acceptRanges=Q1.acceptRanges!==void 0?Boolean(Q1.acceptRanges):!0,this._cacheControl=Q1.cacheControl!==void 0?Boolean(Q1.cacheControl):!0,this._etag=Q1.etag!==void 0?Boolean(Q1.etag):!0,this._dotfiles=Q1.dotfiles!==void 0?Q1.dotfiles:"ignore",this._dotfiles!=="ignore"&&this._dotfiles!=="allow"&&this._dotfiles!=="deny")throw new TypeError('dotfiles option must be "allow", "deny", or "ignore"');this._extensions=Q1.extensions!==void 0?C1(Q1.extensions,"extensions option"):[],this._immutable=Q1.immutable!==void 0?Boolean(Q1.immutable):!1,this._index=Q1.index!==void 0?C1(Q1.index,"index option"):["index.html"],this._lastModified=Q1.lastModified!==void 0?Boolean(Q1.lastModified):!0,this._maxage=Q1.maxAge||Q1.maxage,this._maxage=typeof this._maxage==="string"?q(this._maxage):Number(this._maxage),this._maxage=!isNaN(this._maxage)?Math.min(Math.max(0,this._maxage),A):0,this._root=Q1.root?I(Q1.root):null}C.inherits(S,N),S.prototype.error=function D1(e,P1){if(V1(this,"error"))return this.emit("error",t(e,P1));var Q1=this.res,O1=P.message[e]||String(e),S1=n("Error",H(O1));if(v(Q1),P1&&P1.headers)d1(Q1,P1.headers);Q1.statusCode=e,Q1.setHeader("Content-Type","text/html; charset=UTF-8"),Q1.setHeader("Content-Length",Buffer.byteLength(S1)),Q1.setHeader("Content-Security-Policy","default-src 'none'"),Q1.setHeader("X-Content-Type-Options","nosniff"),Q1.end(S1)},S.prototype.hasTrailingSlash=function D1(){return this.path[this.path.length-1]==="/"},S.prototype.isConditionalGET=function D1(){return this.req.headers["if-match"]||this.req.headers["if-unmodified-since"]||this.req.headers["if-none-match"]||this.req.headers["if-modified-since"]},S.prototype.isPreconditionFailure=function D1(){var e=this.req,P1=this.res,Q1=e.headers["if-match"];if(Q1){var O1=P1.getHeader("ETag");return!O1||Q1!=="*"&&j1(Q1).every(function(d){return d!==O1&&d!=="W/"+O1&&"W/"+d!==O1})}var S1=N1(e.headers["if-unmodified-since"]);if(!isNaN(S1)){var k=N1(P1.getHeader("Last-Modified"));return isNaN(k)||k>S1}return!1},S.prototype.removeContentHeaderFields=function D1(){var e=this.res;e.removeHeader("Content-Encoding"),e.removeHeader("Content-Language"),e.removeHeader("Content-Length"),e.removeHeader("Content-Range"),e.removeHeader("Content-Type")},S.prototype.notModified=function D1(){var e=this.res;J("not modified"),this.removeContentHeaderFields(),e.statusCode=304,e.end()},S.prototype.headersAlreadySent=function D1(){var e=new Error("Can't set headers after they are sent.");J("headers already sent"),this.error(500,e)},S.prototype.isCachable=function D1(){var e=this.res.statusCode;return e>=200&&e<300||e===304},S.prototype.onStatError=function D1(e){switch(e.code){case"ENAMETOOLONG":case"ENOENT":case"ENOTDIR":this.error(404,e);break;default:this.error(500,e);break}},S.prototype.isFresh=function D1(){return z(this.req.headers,{etag:this.res.getHeader("ETag"),"last-modified":this.res.getHeader("Last-Modified")})},S.prototype.isRangeFresh=function D1(){var e=this.req.headers["if-range"];if(!e)return!0;if(e.indexOf('"')!==-1){var P1=this.res.getHeader("ETag");return Boolean(P1&&e.indexOf(P1)!==-1)}var Q1=this.res.getHeader("Last-Modified");return N1(Q1)<=N1(e)},S.prototype.redirect=function D1(e){var P1=this.res;if(V1(this,"directory")){this.emit("directory",P1,e);return}if(this.hasTrailingSlash()){this.error(403);return}var Q1=Y(h(this.path+"/")),O1=n("Redirecting",'Redirecting to '+H(Q1)+"");P1.statusCode=301,P1.setHeader("Content-Type","text/html; charset=UTF-8"),P1.setHeader("Content-Length",Buffer.byteLength(O1)),P1.setHeader("Content-Security-Policy","default-src 'none'"),P1.setHeader("X-Content-Type-Options","nosniff"),P1.setHeader("Location",Q1),P1.end(O1)},S.prototype.pipe=function D1(e){var P1=this._root;this.res=e;var Q1=Y1(this.path);if(Q1===-1)return this.error(400),e;if(~Q1.indexOf("\x00"))return this.error(400),e;var O1;if(P1!==null){if(Q1)Q1=M("."+E+Q1);if(R.test(Q1))return J('malicious path "%s"',Q1),this.error(403),e;O1=Q1.split(E),Q1=M(V(P1,Q1))}else{if(R.test(Q1))return J('malicious path "%s"',Q1),this.error(403),e;O1=M(Q1).split(E),Q1=I(Q1)}if(x(O1))switch(J('%s dotfile "%s"',this._dotfiles,Q1),this._dotfiles){case"allow":break;case"deny":return this.error(403),e;case"ignore":default:return this.error(404),e}if(this._index.length&&this.hasTrailingSlash())return this.sendIndex(Q1),e;return this.sendFile(Q1),e},S.prototype.send=function D1(e,P1){var Q1=P1.size,O1=this.options,S1={},k=this.res,d=this.req,f=d.headers.range,j=O1.start||0;if(k.headersSent){this.headersAlreadySent();return}if(J('pipe "%s"',e),this.setHeader(e,P1),this.type(e),this.isConditionalGET()){if(this.isPreconditionFailure()){this.error(412);return}if(this.isCachable()&&this.isFresh()){this.notModified();return}}if(Q1=Math.max(0,Q1-j),O1.end!==void 0){var m=O1.end-j+1;if(Q1>m)Q1=m}if(this._acceptRanges&&w.test(f)){if(f=D(Q1,f,{combine:!0}),!this.isRangeFresh())J("range stale"),f=-2;if(f===-1)return J("range unsatisfiable"),k.setHeader("Content-Range",p("bytes",Q1)),this.error(416,{headers:{"Content-Range":k.getHeader("Content-Range")}});if(f!==-2&&f.length===1)J("range %j",f),k.statusCode=206,k.setHeader("Content-Range",p("bytes",Q1,f[0])),j+=f[0].start,Q1=f[0].end-f[0].start+1}for(var Z1 in O1)S1[Z1]=O1[Z1];if(S1.start=j,S1.end=Math.max(j,j+Q1-1),k.setHeader("Content-Length",Q1),d.method==="HEAD"){k.end();return}this.stream(e,S1)},S.prototype.sendFile=function D1(e){var P1=0,Q1=this;J('stat "%s"',e),W.stat(e,function S1(k,d){if(k&&k.code==="ENOENT"&&!L(e)&&e[e.length-1]!==E)return O1(k);if(k)return Q1.onStatError(k);if(d.isDirectory())return Q1.redirect(e);Q1.emit("file",e,d),Q1.send(e,d)});function O1(S1){if(Q1._extensions.length<=P1)return S1?Q1.onStatError(S1):Q1.error(404);var k=e+"."+Q1._extensions[P1++];J('stat "%s"',k),W.stat(k,function(d,f){if(d)return O1(d);if(f.isDirectory())return O1();Q1.emit("file",k,f),Q1.send(k,f)})}},S.prototype.sendIndex=function D1(e){var P1=-1,Q1=this;function O1(S1){if(++P1>=Q1._index.length){if(S1)return Q1.onStatError(S1);return Q1.error(404)}var k=V(e,Q1._index[P1]);J('stat "%s"',k),W.stat(k,function(d,f){if(d)return O1(d);if(f.isDirectory())return O1();Q1.emit("file",k,f),Q1.send(k,f)})}O1()},S.prototype.stream=function D1(e,P1){var Q1=this,O1=this.res,S1=W.createReadStream(e,P1);this.emit("stream",S1),S1.pipe(O1);function k(){G(S1,!0)}B(O1,k),S1.on("error",function d(f){k(),Q1.onStatError(f)}),S1.on("end",function d(){Q1.emit("end")})},S.prototype.type=function D1(e){var P1=this.res;if(P1.getHeader("Content-Type"))return;var Q1=L(e),O1=$.contentType(Q1)||"application/octet-stream";J("content-type %s",O1),P1.setHeader("Content-Type",O1)},S.prototype.setHeader=function D1(e,P1){var Q1=this.res;if(this.emit("headers",Q1,e,P1),this._acceptRanges&&!Q1.getHeader("Accept-Ranges"))J("accept ranges"),Q1.setHeader("Accept-Ranges","bytes");if(this._cacheControl&&!Q1.getHeader("Cache-Control")){var O1="public, max-age="+Math.floor(this._maxage/1000);if(this._immutable)O1+=", immutable";J("cache-control %s",O1),Q1.setHeader("Cache-Control",O1)}if(this._lastModified&&!Q1.getHeader("Last-Modified")){var S1=P1.mtime.toUTCString();J("modified %s",S1),Q1.setHeader("Last-Modified",S1)}if(this._etag&&!Q1.getHeader("ETag")){var k=K(P1);J("etag %s",k),Q1.setHeader("ETag",k)}};function v(D1){var e=G1(D1);for(var P1=0;P11?"/"+D1.substr(e):D1}function x(D1){for(var e=0;e1&&P1[0]===".")return!0}return!1}function p(D1,e,P1){return D1+" "+(P1?P1.start+"-"+P1.end:"*")+"/"+e}function n(D1,e){return` - - - -`+D1+` - - -
`+e+`
- - -`}function t(D1,e){if(!e)return Z(D1);return e instanceof Error?Z(D1,e,{expose:!1}):Z(D1,e)}function Y1(D1){try{return decodeURIComponent(D1)}catch(e){return-1}}function G1(D1){return typeof D1.getHeaderNames!=="function"?Object.keys(D1._headers||{}):D1.getHeaderNames()}function V1(D1,e){var P1=typeof D1.listenerCount!=="function"?D1.listeners(e).length:D1.listenerCount(e);return P1>0}function C1(D1,e){var P1=[].concat(D1||[]);for(var Q1=0;Q199&&h<1000)Y("res.status("+JSON.stringify(h)+"): use res.status("+Math.floor(h)+") instead");return this.statusCode=h,this},A.links=function(v){var h=this.get("Link")||"";if(h)h+=", ";return this.set("Link",h+Object.keys(v).map(function(x){return"<"+v[x]+'>; rel="'+x+'"'}).join(", "))},A.send=function v(h){var x=h,p,n=this.req,t,Y1=this.app;switch(typeof x){case"string":if(!this.get("Content-Type"))this.type("html");break;case"boolean":case"number":case"object":if(x===null)x="";else if(Z.isBuffer(x)){if(!this.get("Content-Type"))this.type("bin")}else return this.json(x);break}if(typeof x==="string"){if(p="utf8",t=this.get("Content-Type"),typeof t==="string")this.set("Content-Type",L(t,"utf-8"))}var G1=Y1.get("etag fn"),V1=!this.get("ETag")&&typeof G1==="function",C1;if(x!==void 0){if(Z.isBuffer(x))C1=x.length;else if(!V1&&x.length<1000)C1=Z.byteLength(x,p);else x=Z.from(x,p),p=void 0,C1=x.length;this.set("Content-Length",C1)}var N1;if(V1&&C1!==void 0){if(N1=G1(x,p))this.set("ETag",N1)}if(n.fresh)this.statusCode=304;if(this.statusCode===204||this.statusCode===304)this.removeHeader("Content-Type"),this.removeHeader("Content-Length"),this.removeHeader("Transfer-Encoding"),x="";if(this.statusCode===205)this.set("Content-Length","0"),this.removeHeader("Transfer-Encoding"),x="";if(n.method==="HEAD")this.end();else this.end(x,p);return this},A.json=function v(h){var x=this.app,p=x.get("json escape"),n=x.get("json replacer"),t=x.get("json spaces"),Y1=S(h,n,t,p);if(!this.get("Content-Type"))this.set("Content-Type","application/json");return this.send(Y1)},A.jsonp=function v(h){var x=this.app,p=x.get("json escape"),n=x.get("json replacer"),t=x.get("json spaces"),Y1=S(h,n,t,p),G1=this.req.query[x.get("jsonp callback name")];if(!this.get("Content-Type"))this.set("X-Content-Type-Options","nosniff"),this.set("Content-Type","application/json");if(Array.isArray(G1))G1=G1[0];if(typeof G1==="string"&&G1.length!==0){if(this.set("X-Content-Type-Options","nosniff"),this.set("Content-Type","text/javascript"),G1=G1.replace(/[^\[\]\w$.]/g,""),Y1===void 0)Y1="";else if(typeof Y1==="string")Y1=Y1.replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029");Y1="/**/ typeof "+G1+" === 'function' && "+G1+"("+Y1+");"}return this.send(Y1)},A.sendStatus=function v(h){var x=D.message[h]||String(h);return this.statusCode=h,this.type("txt"),this.send(x)},A.sendFile=function v(h,x,p){var n=p,t=this.req,Y1=this,G1=t.next,V1=x||{};if(!h)throw new TypeError("path argument is required to res.sendFile");if(typeof h!=="string")throw new TypeError("path must be a string to res.sendFile");if(typeof x==="function")n=x,V1={};if(!V1.root&&!B(h))throw new TypeError("path must be absolute or specify root to res.sendFile");var C1=encodeURI(h),N1=M(t,C1,V1);T(Y1,N1,V1,function(j1){if(n)return n(j1);if(j1&&j1.code==="EISDIR")return G1();if(j1&&j1.code!=="ECONNABORTED"&&j1.syscall!=="write")G1(j1)})},A.download=function v(h,x,p,n){var t=n,Y1=x,G1=p||null;if(typeof x==="function")t=x,Y1=null,G1=null;else if(typeof p==="function")t=p,G1=null;if(typeof x==="object"&&(typeof p==="function"||p===void 0))Y1=null,G1=x;var V1={"Content-Disposition":J(Y1||h)};if(G1&&G1.headers){var C1=Object.keys(G1.headers);for(var N1=0;N10?h.accepts(p):!1;if(this.vary("Accept"),n)this.set("Content-Type",N(n).value),v[n](h,this,x);else if(v.default)v.default(h,this,x);else x(G(406,{types:C(p).map(function(t){return t.value})}));return this},A.attachment=function v(h){if(h)this.type(I(h));return this.set("Content-Disposition",J(h)),this},A.append=function v(h,x){var p=this.get(h),n=x;if(p)n=Array.isArray(p)?p.concat(x):Array.isArray(x)?[p].concat(x):[p,x];return this.set(h,n)},A.set=A.header=function v(h,x){if(arguments.length===2){var p=Array.isArray(x)?x.map(String):String(x);if(h.toLowerCase()==="content-type"){if(Array.isArray(p))throw new TypeError("Content-Type cannot be set to an Array");p=$.contentType(p)}this.setHeader(h,p)}else for(var n in h)this.set(n,h[n]);return this},A.get=function(v){return this.getHeader(v)},A.clearCookie=function v(h,x){var p=F({expires:new Date(1),path:"/"},x);return this.cookie(h,"",p)},A.cookie=function(v,h,x){var p=F({},x),n=this.req.secret,t=p.signed;if(t&&!n)throw new Error('cookieParser("secret") required for signed cookies');var Y1=typeof h==="object"?"j:"+JSON.stringify(h):String(h);if(t)Y1="s:"+P(Y1,n);if(p.maxAge!=null){var G1=p.maxAge-0;if(!isNaN(G1))p.expires=new Date(Date.now()+G1),p.maxAge=Math.floor(G1/1000)}if(p.path==null)p.path="/";return this.append("Set-Cookie",V.serialize(v,String(Y1),p)),this},A.location=function v(h){var x;if(h==="back")x=this.req.get("Referrer")||"/";else x=String(h);var p=R.exec(x),n=p?p[0].length+1:0;return x=x.slice(0,n)+H(x.slice(n)),this.set("Location",x)},A.redirect=function v(h){var x=h,p,n=302;if(arguments.length===2)n=arguments[0],x=arguments[1];if(x=this.location(x).get("Location"),this.format({text:function(){p=D.message[n]+". Redirecting to "+x},html:function(){var t=K(x);p="

"+D.message[n]+'. Redirecting to '+t+"

"},default:function(){p=""}}),this.statusCode=n,this.set("Content-Length",Z.byteLength(p)),this.req.method==="HEAD")this.end();else this.end(p)},A.vary=function(v){return w(this,v),this},A.render=function v(h,x,p){var n=this.req.app,t=p,Y1=x||{},G1=this.req,V1=this;if(typeof x==="function")t=x,Y1={};Y1._locals=V1.locals,t=t||function(C1,N1){if(C1)return G1.next(C1);V1.send(N1)},n.render(h,Y1,t)};function T(v,h,x,p){var n=!1,t;function Y1(){if(n)return;n=!0;var D1=new Error("Request aborted");D1.code="ECONNABORTED",p(D1)}function G1(){if(n)return;n=!0;var D1=new Error("EISDIR, read");D1.code="EISDIR",p(D1)}function V1(D1){if(n)return;n=!0,p(D1)}function C1(){if(n)return;n=!0,p()}function N1(){t=!1}function j1(D1){if(D1&&D1.code==="ECONNRESET")return Y1();if(D1)return V1(D1);if(n)return;setImmediate(function(){if(t!==!1&&!n){Y1();return}if(n)return;n=!0,p()})}function d1(){t=!0}if(h.on("directory",G1),h.on("end",C1),h.on("error",V1),h.on("file",N1),h.on("stream",d1),W(v,j1),x.headers)h.on("headers",function D1(e){var P1=x.headers,Q1=Object.keys(P1);for(var O1=0;O1&]/g,function(t){switch(t.charCodeAt(0)){case 60:return"\\u003c";case 62:return"\\u003e";case 38:return"\\u0026";default:return t}});return n}}}),Ds=W1({"node_modules/serve-static/index.js"(Q,X){var Z=sq(),J=tq(),G=rq(),Y=require("path").resolve,H=YI(),K=require("url");X.exports=z;function z(D,F){if(!D)throw new TypeError("root path required");if(typeof D!=="string")throw new TypeError("root path must be a string");var P=Object.create(F||null),N=P.fallthrough!==!1,C=P.redirect!==!1,L=P.setHeaders;if(L&&typeof L!=="function")throw new TypeError("option setHeaders must be function");P.maxage=P.maxage||P.maxAge||0,P.root=Y(D);var V=C?B():q();return function M(I,E,w){if(I.method!=="GET"&&I.method!=="HEAD"){if(N)return w();E.statusCode=405,E.setHeader("Allow","GET, HEAD"),E.setHeader("Content-Length","0"),E.end();return}var A=!N,R=G.original(I),T=G(I).pathname;if(T==="/"&&R.pathname.substr(-1)!=="/")T="";var S=H(I,T,P);if(S.on("directory",V),L)S.on("headers",L);if(N)S.on("file",function v(){A=!0});S.on("error",function v(h){if(A||!(h.statusCode<500)){w(h);return}w()}),S.pipe(E)}}function W(D){for(var F=0;F1?"/"+D.substr(F):D}function $(D,F){return` - - - -`+D+` - - -
`+F+`
- - -`}function q(){return function D(){this.error(404)}}function B(){return function D(F){if(this.hasTrailingSlash()){this.error(404);return}var P=G.original(this.req);P.path=null,P.pathname=W(P.pathname+"/");var N=Z(K.format(P)),C=$("Redirecting",'Redirecting to '+J(N)+"");F.statusCode=301,F.setHeader("Content-Type","text/html; charset=UTF-8"),F.setHeader("Content-Length",Buffer.byteLength(C)),F.setHeader("Content-Security-Policy","default-src 'none'"),F.setHeader("X-Content-Type-Options","nosniff"),F.setHeader("Location",N),F.end(C)}}}}),Ls=W1({"node_modules/express/lib/express.js"(Q,X){var Z=nM(),J=require("events").EventEmitter,G=ma(),Y=ea(),H=ZI(),K=Ws(),z=Fs();Q=X.exports=W;function W(){var $=function(q,B,D){$.handle(q,B,D)};return G($,J.prototype,!1),G($,Y,!1),$.request=Object.create(K,{app:{configurable:!0,enumerable:!0,writable:!0,value:$}}),$.response=Object.create(z,{app:{configurable:!0,enumerable:!0,writable:!0,value:$}}),$.init(),$}Q.application=Y,Q.request=K,Q.response=z,Q.Route=H.Route,Q.Router=H,Q.json=Z.json,Q.raw=Z.raw,Q.static=Ds(),Q.text=Z.text,Q.urlencoded=Z.urlencoded}}),Cs=W1({"node_modules/express/index.js"(Q,X){X.exports=Ls()}}),Ns=W1({"node_modules/object-assign/index.js"(Q,X){var Z=Object.getOwnPropertySymbols,J=Object.prototype.hasOwnProperty,G=Object.prototype.propertyIsEnumerable;function Y(K){if(K===null||K===void 0)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(K)}function H(){try{if(!Object.assign)return!1;var K=new String("abc");if(K[5]="de",Object.getOwnPropertyNames(K)[0]==="5")return!1;var z={};for(var W=0;W<10;W++)z["_"+String.fromCharCode(W)]=W;var $=Object.getOwnPropertyNames(z).map(function(B){return z[B]});if($.join("")!=="0123456789")return!1;var q={};if("abcdefghijklmnopqrst".split("").forEach(function(B){q[B]=B}),Object.keys(Object.assign({},q)).join("")!=="abcdefghijklmnopqrst")return!1;return!0}catch(B){return!1}}X.exports=H()?Object.assign:function(K,z){var W,$=Y(K),q;for(var B=1;B":function(Y,H){return Y>H},">=":function(Y,H){return Y>=H},"<":function(Y,H,K){return K===void 0?Y=Y)return[];else return K}};return J.is_logic=function(Y){return typeof Y==="object"&&Y!==null&&!Array.isArray(Y)&&Object.keys(Y).length===1},J.truthy=function(Y){if(Array.isArray(Y)&&Y.length===0)return!1;return!!Y},J.get_operator=function(Y){return Object.keys(Y)[0]},J.get_values=function(Y){return Y[J.get_operator(Y)]},J.apply=function(Y,H){if(Array.isArray(Y))return Y.map(function(N){return J.apply(N,H)});if(!J.is_logic(Y))return Y;var K=J.get_operator(Y),z=Y[K],W,$,q,B,D;if(!Array.isArray(z))z=[z];if(K==="if"||K=="?:"){for(W=0;W0){var F=String(K).split("."),P=G;for(W=0;W")}else if(W)q+="new "+(z||"");else if(z)q+=z;else H=!1,q+=K;if(H)q+=" ("+K+")";return q}function G(Y){var H=Y.receiver;return H.constructor&&H.constructor.name||null}}}),Rs=W1({"node_modules/response-time/node_modules/depd/lib/compat/event-listener-count.js"(Q,X){X.exports=Z;function Z(J,G){return J.listeners(G).length}}}),CM=W1({"node_modules/response-time/node_modules/depd/lib/compat/index.js"(Q,X){var Z=require("events").EventEmitter;J(X.exports,"callSiteToString",function Y(){var H=Error.stackTraceLimit,K={},z=Error.prepareStackTrace;function W(q,B){return B}Error.prepareStackTrace=W,Error.stackTraceLimit=2,Error.captureStackTrace(K);var $=K.stack.slice();return Error.prepareStackTrace=z,Error.stackTraceLimit=H,$[0].toString?G:Is()}),J(X.exports,"eventListenerCount",function Y(){return Z.listenerCount||Rs()});function J(Y,H,K){function z(){var W=K();return Object.defineProperty(Y,H,{configurable:!0,enumerable:!0,value:W}),W}Object.defineProperty(Y,H,{configurable:!0,enumerable:!0,get:z})}function G(Y){return Y.toString()}}}),As=W1({"node_modules/response-time/node_modules/depd/index.js"(exports,module){var callSiteToString=CM().callSiteToString,eventListenerCount=CM().eventListenerCount,relative=require("path").relative;module.exports=depd;var basePath=process.cwd();function containsNamespace(Q,X){var Z=Q.split(/[ ,]+/),J=String(X).toLowerCase();for(var G=0;G",Z=Q.getLineNumber(),J=Q.getColumnNumber();if(Q.isEval())X=Q.getEvalOrigin()+", "+X;var G=[X,Z,J];return G.callSite=Q,G.name=Q.getFunctionName(),G}function defaultMessage(Q){var{callSite:X,name:Z}=Q;if(!Z)Z="";var J=X.getThis(),G=J&&X.getTypeName();if(G==="Object")G=void 0;if(G==="Function")G=J.name||G;return G&&X.getMethodName()?G+"."+Z:Z}function formatPlain(Q,X,Z){var J=new Date().toUTCString(),G=J+" "+this._namespace+" deprecated "+Q;if(this._traced){for(var Y=0;Y1&&typeof arguments[1]==="string"?2:1,$=z>=W+1?arguments[W]:void 0;if(this.statusCode=K,Array.isArray($))G(this,$);else if($)Y(this,$);var q=new Array(Math.min(z,W));for(var B=0;BencodeURIComponent(Z).replace(/[!'()*]/g,(J)=>`%${J.charCodeAt(0).toString(16).toUpperCase()}`)}}),js=W1({"node_modules/decode-uri-component/index.js"(Q,X){var Z="%[a-f0-9]{2}",J=new RegExp("("+Z+")|([^%]+?)","gi"),G=new RegExp("("+Z+")+","gi");function Y(z,W){try{return[decodeURIComponent(z.join(""))]}catch(B){}if(z.length===1)return z;W=W||1;var $=z.slice(0,W),q=z.slice(W);return Array.prototype.concat.call([],Y($),Y(q))}function H(z){try{return decodeURIComponent(z)}catch(q){var W=z.match(J)||[];for(var $=1;${if(!(typeof Z==="string"&&typeof J==="string"))throw new TypeError("Expected the arguments to be of type `string`");if(J==="")return[Z];let G=Z.indexOf(J);if(G===-1)return[Z];return[Z.slice(0,G),Z.slice(G+J.length)]}}}),ks=W1({"node_modules/filter-obj/index.js"(Q,X){X.exports=function(Z,J){var G={},Y=Object.keys(Z),H=Array.isArray(J);for(var K=0;KL===null||L===void 0,H=Symbol("encodeFragmentIdentifier");function K(L){switch(L.arrayFormat){case"index":return(V)=>(M,I)=>{let E=M.length;if(I===void 0||L.skipNull&&I===null||L.skipEmptyString&&I==="")return M;if(I===null)return[...M,[$(V,L),"[",E,"]"].join("")];return[...M,[$(V,L),"[",$(E,L),"]=",$(I,L)].join("")]};case"bracket":return(V)=>(M,I)=>{if(I===void 0||L.skipNull&&I===null||L.skipEmptyString&&I==="")return M;if(I===null)return[...M,[$(V,L),"[]"].join("")];return[...M,[$(V,L),"[]=",$(I,L)].join("")]};case"colon-list-separator":return(V)=>(M,I)=>{if(I===void 0||L.skipNull&&I===null||L.skipEmptyString&&I==="")return M;if(I===null)return[...M,[$(V,L),":list="].join("")];return[...M,[$(V,L),":list=",$(I,L)].join("")]};case"comma":case"separator":case"bracket-separator":{let V=L.arrayFormat==="bracket-separator"?"[]=":"=";return(M)=>(I,E)=>{if(E===void 0||L.skipNull&&E===null||L.skipEmptyString&&E==="")return I;if(E=E===null?"":E,I.length===0)return[[$(M,L),V,$(E,L)].join("")];return[[I,$(E,L)].join(L.arrayFormatSeparator)]}}default:return(V)=>(M,I)=>{if(I===void 0||L.skipNull&&I===null||L.skipEmptyString&&I==="")return M;if(I===null)return[...M,$(V,L)];return[...M,[$(V,L),"=",$(I,L)].join("")]}}}function z(L){let V;switch(L.arrayFormat){case"index":return(M,I,E)=>{if(V=/\[(\d*)\]$/.exec(M),M=M.replace(/\[\d*\]$/,""),!V){E[M]=I;return}if(E[M]===void 0)E[M]={};E[M][V[1]]=I};case"bracket":return(M,I,E)=>{if(V=/(\[\])$/.exec(M),M=M.replace(/\[\]$/,""),!V){E[M]=I;return}if(E[M]===void 0){E[M]=[I];return}E[M]=[].concat(E[M],I)};case"colon-list-separator":return(M,I,E)=>{if(V=/(:list)$/.exec(M),M=M.replace(/:list$/,""),!V){E[M]=I;return}if(E[M]===void 0){E[M]=[I];return}E[M]=[].concat(E[M],I)};case"comma":case"separator":return(M,I,E)=>{let w=typeof I==="string"&&I.includes(L.arrayFormatSeparator),A=typeof I==="string"&&!w&&q(I,L).includes(L.arrayFormatSeparator);I=A?q(I,L):I;let R=w||A?I.split(L.arrayFormatSeparator).map((T)=>q(T,L)):I===null?I:q(I,L);E[M]=R};case"bracket-separator":return(M,I,E)=>{let w=/(\[\])$/.test(M);if(M=M.replace(/\[\]$/,""),!w){E[M]=I?q(I,L):I;return}let A=I===null?[]:I.split(L.arrayFormatSeparator).map((R)=>q(R,L));if(E[M]===void 0){E[M]=A;return}E[M]=[].concat(E[M],A)};default:return(M,I,E)=>{if(E[M]===void 0){E[M]=I;return}E[M]=[].concat(E[M],I)}}}function W(L){if(typeof L!=="string"||L.length!==1)throw new TypeError("arrayFormatSeparator must be single character string")}function $(L,V){if(V.encode)return V.strict?X(L):encodeURIComponent(L);return L}function q(L,V){if(V.decode)return Z(L);return L}function B(L){if(Array.isArray(L))return L.sort();if(typeof L==="object")return B(Object.keys(L)).sort((V,M)=>Number(V)-Number(M)).map((V)=>L[V]);return L}function D(L){let V=L.indexOf("#");if(V!==-1)L=L.slice(0,V);return L}function F(L){let V="",M=L.indexOf("#");if(M!==-1)V=L.slice(M);return V}function P(L){L=D(L);let V=L.indexOf("?");if(V===-1)return"";return L.slice(V+1)}function N(L,V){if(V.parseNumbers&&!Number.isNaN(Number(L))&&(typeof L==="string"&&L.trim()!==""))L=Number(L);else if(V.parseBooleans&&L!==null&&(L.toLowerCase()==="true"||L.toLowerCase()==="false"))L=L.toLowerCase()==="true";return L}function C(L,V){V=Object.assign({decode:!0,sort:!0,arrayFormat:"none",arrayFormatSeparator:",",parseNumbers:!1,parseBooleans:!1},V),W(V.arrayFormatSeparator);let M=z(V),I=Object.create(null);if(typeof L!=="string")return I;if(L=L.trim().replace(/^[?#&]/,""),!L)return I;for(let E of L.split("&")){if(E==="")continue;let[w,A]=J(V.decode?E.replace(/\+/g," "):E,"=");A=A===void 0?null:["comma","separator","bracket-separator"].includes(V.arrayFormat)?A:q(A,V),M(q(w,V),A,I)}for(let E of Object.keys(I)){let w=I[E];if(typeof w==="object"&&w!==null)for(let A of Object.keys(w))w[A]=N(w[A],V);else I[E]=N(w,V)}if(V.sort===!1)return I;return(V.sort===!0?Object.keys(I).sort():Object.keys(I).sort(V.sort)).reduce((E,w)=>{let A=I[w];if(Boolean(A)&&typeof A==="object"&&!Array.isArray(A))E[w]=B(A);else E[w]=A;return E},Object.create(null))}Q.extract=P,Q.parse=C,Q.stringify=(L,V)=>{if(!L)return"";V=Object.assign({encode:!0,strict:!0,arrayFormat:"none",arrayFormatSeparator:","},V),W(V.arrayFormatSeparator);let M=(A)=>V.skipNull&&Y(L[A])||V.skipEmptyString&&L[A]==="",I=K(V),E={};for(let A of Object.keys(L))if(!M(A))E[A]=L[A];let w=Object.keys(E);if(V.sort!==!1)w.sort(V.sort);return w.map((A)=>{let R=L[A];if(R===void 0)return"";if(R===null)return $(A,V);if(Array.isArray(R)){if(R.length===0&&V.arrayFormat==="bracket-separator")return $(A,V)+"[]";return R.reduce(I(A),[]).join("&")}return $(A,V)+"="+$(R,V)}).filter((A)=>A.length>0).join("&")},Q.parseUrl=(L,V)=>{V=Object.assign({decode:!0},V);let[M,I]=J(L,"#");return Object.assign({url:M.split("?")[0]||"",query:C(P(L),V)},V&&V.parseFragmentIdentifier&&I?{fragmentIdentifier:q(I,V)}:{})},Q.stringifyUrl=(L,V)=>{V=Object.assign({encode:!0,strict:!0,[H]:!0},V);let M=D(L.url).split("?")[0]||"",I=Q.extract(L.url),E=Q.parse(I,{sort:!1}),w=Object.assign(E,L.query),A=Q.stringify(w,V);if(A)A=`?${A}`;let R=F(L.url);if(L.fragmentIdentifier)R=`#${V[H]?$(L.fragmentIdentifier,V):L.fragmentIdentifier}`;return`${M}${A}${R}`},Q.pick=(L,V,M)=>{M=Object.assign({parseFragmentIdentifier:!0,[H]:!1},M);let{url:I,query:E,fragmentIdentifier:w}=Q.parseUrl(L,M);return Q.stringifyUrl({url:I,query:G(E,V),fragmentIdentifier:w},M)},Q.exclude=(L,V,M)=>{let I=Array.isArray(V)?(E)=>!V.includes(E):(E,w)=>!V(E,w);return Q.pick(L,I,M)}}}),xs=W1({"node_modules/glob-to-regexp/index.js"(Q,X){X.exports=function(Z,J){if(typeof Z!=="string")throw new TypeError("Expected a string");var G=String(Z),Y="",H=J?!!J.extended:!1,K=J?!!J.globstar:!1,z=!1,W=J&&typeof J.flags==="string"?J.flags:"",$;for(var q=0,B=G.length;q1&&(D==="/"||D===void 0)&&(P==="/"||P===void 0);if(N)Y+="((?:[^/]*(?:/|$))*)",q++;else Y+="([^/]*)"}break;default:Y+=$}if(!W||!~W.indexOf("g"))Y="^"+Y+"$";return new RegExp(Y,W)}}});Io(y$,{default:()=>ss,getAPI:()=>rs});var Q8=c6(require("obsidian")),vs=c6(require("https")),gs=c6(require("http")),yQ=c6(bM()),_q=c6(require("obsidian")),L6=c6(go()),hs=c6(ho()),fs=c6(bM()),U$=c6(Cs()),bs=c6(require("http")),ms=c6(Ts()),_s=c6(q7()),X7=c6(nM()),V$=c6(Ms()),ds=c6(ws()),us=c6(ys()),ps=c6(xs()),NM=c6(require("path")),l0;(function(Q){Q[Q.TextContentEncodingRequired=40010]="TextContentEncodingRequired",Q[Q.ContentTypeSpecificationRequired=40011]="ContentTypeSpecificationRequired",Q[Q.InvalidContentForContentType=40015]="InvalidContentForContentType",Q[Q.InvalidContentInsertionPositionValue=40050]="InvalidContentInsertionPositionValue",Q[Q.MissingHeadingHeader=40051]="MissingHeadingHeader",Q[Q.InvalidHeadingHeader=40052]="InvalidHeadingHeader",Q[Q.PeriodIsNotEnabled=40060]="PeriodIsNotEnabled",Q[Q.InvalidFilterQuery=40070]="InvalidFilterQuery",Q[Q.ApiKeyAuthorizationRequired=40101]="ApiKeyAuthorizationRequired",Q[Q.PeriodDoesNotExist=40460]="PeriodDoesNotExist",Q[Q.PeriodicNoteDoesNotExist=40461]="PeriodicNoteDoesNotExist",Q[Q.RequestMethodValidOnlyForFiles=40510]="RequestMethodValidOnlyForFiles"})(l0||(l0={}));function ls(Q,X){let Z=[...X].reverse(),J=[];for(let[G,Y]of Q.headings.entries()){J[Y.level]=Y,J.splice(Y.level+1);let H=[...J.map((z)=>z.heading)].reverse(),K=!0;for(let[z,W]of Z.entries())if(H[z]!=W){K=!1;break}if(K){let z=Y.position.end,W=Q.headings.slice(G+1).find((q)=>q.level<=Y.level),$=W==null?void 0:W.position.start;return{start:z,end:$}}}return null}function cs(Q,X,Z,J){var G,Y;let H=Z===!1?(Y=(G=X.end)==null?void 0:G.line)!=null?Y:Q.length:X.start.line+1;if(!J||Z)return H;while(Q[H-1]==="")H--;return H}function is(Q){if(Q instanceof Uint8Array)return Q.buffer.slice(Q.byteOffset,Q.byteOffset+Q.byteLength);if(Q instanceof DataView)return Q.buffer.slice(Q.byteOffset,Q.byteOffset+Q.byteLength);if(Q instanceof ArrayBuffer)return Q;return new TextEncoder().encode(JSON.stringify(Q)).buffer}function qI(Q){return(Q.validity.notAfter.getTime()-new Date().getTime())/86400000}function HI(Q){let X=Q.getExtension("subjectAltName"),Z=!1;if(X&&X.altNames)X.altNames.forEach((J)=>{if(J.type===7&&J.value==="\x00\x00\x00\x00")Z=!0});return!Z}var dq="obsidian-local-rest-api.crt",zI={port:27124,insecurePort:27123,enableInsecureServer:!1},ns={[l0.ApiKeyAuthorizationRequired]:"Authorization required. Find your API Key in the 'Local REST API' section of your Obsidian settings.",[l0.ContentTypeSpecificationRequired]:"Content-Type header required; this API accepts data in multiple content-types and you must indicate the content-type of your request body via the Content-Type header.",[l0.InvalidContentInsertionPositionValue]:"Invalid 'Content-Insertion-Position' header value.",[l0.InvalidContentForContentType]:"Your request body could not be processed as the content-type specified in your Content-Type header.",[l0.InvalidHeadingHeader]:"No heading in specified file could be found matching the heading specified in 'Heading' header.",[l0.MissingHeadingHeader]:"'Heading' header is required for identifying where to insert content.",[l0.PeriodDoesNotExist]:"Specified period does not exist.",[l0.PeriodIsNotEnabled]:"Specified period is not enabled.",[l0.PeriodicNoteDoesNotExist]:"Periodic note does not exist for the specified period.",[l0.RequestMethodValidOnlyForFiles]:"Request method is valid only for file paths, not directories.",[l0.TextContentEncodingRequired]:"Incoming content must be text data and have an appropriate text/* Content-type header set (e.g. text/markdown).",[l0.InvalidFilterQuery]:"The query you provided could not be processed."},_9;(function(Q){Q.json="application/json",Q.markdown="text/markdown",Q.olrapiNoteJson="application/vnd.olrapi.note+json",Q.jsonLogic="application/vnd.olrapi.jsonlogic+json",Q.dataviewDql="application/vnd.olrapi.dataview.dql+txt"})(_9||(_9={}));var TM="Authorization",CZ="127.0.0.1",MM="https://raw.githubusercontent.com/coddingtonbear/obsidian-local-rest-api/main/LICENSE",J7="1024mb",os=class{constructor(Q,X){this.unregistered=!1,this.router=Q,this.onUnregister=X,this.unregistered=!1}addRoute(Q){if(this.unregistered)throw new Error("Routes cannot be added after API extension has been unregistered.");return this.router.route(Q)}unregister(){this.onUnregister(),this.unregistered=!0}},as=class{constructor(Q,X,Z){this.apiExtensions=[],this.app=Q,this.manifest=X,this.api=U$.default(),this.settings=Z,this.apiExtensionRouter=U$.default.Router(),this.api.set("json spaces",2),V$.default.add_operation("glob",(J,G)=>{if(typeof G==="string"&&typeof J==="string")return ps.default(J).test(G);return!1}),V$.default.add_operation("regexp",(J,G)=>{if(typeof G==="string"&&typeof J==="string")return new RegExp(J).test(G);return!1})}registerApiExtension(Q){let X=void 0;for(let{manifest:Z,api:J}of this.apiExtensions)if(JSON.stringify(Z)===JSON.stringify(Q)){X=J;break}if(!X){let Z=U$.default.Router();this.apiExtensionRouter.use(Z),X=new os(Z,()=>{let J=this.apiExtensions.findIndex(({manifest:G})=>JSON.stringify(Q)===JSON.stringify(G));if(J!==-1)this.apiExtensions.splice(J,1),this.apiExtensionRouter.stack.splice(J,1)}),this.apiExtensions.push({manifest:Q,api:X})}return X}requestIsAuthenticated(Q){var X;if(Q.get((X=this.settings.authorizationHeaderName)!=null?X:"Authorization")===`Bearer ${this.settings.apiKey}`)return!0;return!1}authenticationMiddleware(Q,X,Z){return T0(this,null,function*(){if(!["/",`/${dq}`].includes(Q.path)&&!this.requestIsAuthenticated(Q)){this.returnCannedResponse(X,{errorCode:l0.ApiKeyAuthorizationRequired});return}Z()})}getFileMetadataObject(Q){return T0(this,null,function*(){var X,Z,J;let G=this.app.metadataCache.getFileCache(Q),Y=K0({},(X=G.frontmatter)!=null?X:{});delete Y.position;let H=(J=((Z=G.tags)!=null?Z:[]).filter((W)=>W).map((W)=>W.tag))!=null?J:[];return{tags:[...Array.isArray(Y.tags)?Y.tags:[],...H].filter((W)=>W).map((W)=>W.toString().replace(/^#/,"")).filter((W,$,q)=>q.indexOf(W)===$),frontmatter:Y,stat:Q.stat,path:Q.path,content:yield this.app.vault.cachedRead(Q)}})}getResponseMessage({statusCode:Q=400,message:X,errorCode:Z}){let J=[];if(Z)J.push(ns[Z]);else J.push(bs.default.STATUS_CODES[Q]);if(X)J.push(X);return J.join(` -`)}getStatusCode({statusCode:Q,errorCode:X}){if(Q)return Q;return Math.floor(X/100)}returnCannedResponse(Q,{statusCode:X,message:Z,errorCode:J}){let G={message:this.getResponseMessage({statusCode:X,message:Z,errorCode:J}),errorCode:J!=null?J:X*100};Q.status(this.getStatusCode({statusCode:X,errorCode:J})).json(G)}root(Q,X){let Z;try{Z=fs.default.pki.certificateFromPem(this.settings.crypto.cert)}catch(J){}X.status(200).json({status:"OK",manifest:this.manifest,versions:{obsidian:_q.apiVersion,self:this.manifest.version},service:"Obsidian Local REST API",authenticated:this.requestIsAuthenticated(Q),certificateInfo:this.requestIsAuthenticated(Q)&&Z?{validityDays:qI(Z),regenerateRecommended:!HI(Z)}:void 0,apiExtensions:this.requestIsAuthenticated(Q)?this.apiExtensions.map(({manifest:J})=>J):void 0})}_vaultGet(Q,X,Z){return T0(this,null,function*(){if(!Q||Q.endsWith("/")){let J=[...new Set(this.app.vault.getFiles().map((G)=>G.path).filter((G)=>G.startsWith(Q)).map((G)=>{let Y=G.slice(Q.length);if(Y.indexOf("/")>-1)return Y.slice(0,Y.indexOf("/")+1);return Y}))];if(J.sort(),J.length===0){this.returnCannedResponse(Z,{statusCode:404});return}Z.json({files:J})}else if((yield this.app.vault.adapter.exists(Q))&&(yield this.app.vault.adapter.stat(Q)).type==="file"){let G=yield this.app.vault.adapter.readBinary(Q),Y=_s.default.lookup(Q);if(Z.set({"Content-Disposition":`attachment; filename="${encodeURI(Q).replace(",","%2C")}"`,"Content-Type":`${Y}`+(Y==_9.markdown?"; charset=utf-8":"")}),X.headers.accept===_9.olrapiNoteJson){let H=this.app.vault.getAbstractFileByPath(Q);Z.setHeader("Content-Type",_9.olrapiNoteJson),Z.send(JSON.stringify(yield this.getFileMetadataObject(H),null,2));return}Z.send(Buffer.from(G))}else{this.returnCannedResponse(Z,{statusCode:404});return}})}vaultGet(Q,X){return T0(this,null,function*(){let Z=Q.params[0];return this._vaultGet(Z,Q,X)})}_vaultPut(Q,X,Z){return T0(this,null,function*(){if(!Q||Q.endsWith("/")){this.returnCannedResponse(Z,{errorCode:l0.RequestMethodValidOnlyForFiles});return}try{yield this.app.vault.createFolder(NM.default.dirname(Q))}catch(J){}if(typeof X.body==="string")yield this.app.vault.adapter.write(Q,X.body);else yield this.app.vault.adapter.writeBinary(Q,is(X.body));this.returnCannedResponse(Z,{statusCode:204});return})}vaultPut(Q,X){return T0(this,null,function*(){let Z=Q.params[0];return this._vaultPut(Z,Q,X)})}_vaultPatch(Q,X,Z){return T0(this,null,function*(){let J=X.get("Heading-Boundary")||"::",G=(X.get("Heading")||"").split(J).filter(Boolean),Y=X.get("Content-Insertion-Position"),H=!1,K=!1;if(!Q||Q.endsWith("/")){this.returnCannedResponse(Z,{errorCode:l0.RequestMethodValidOnlyForFiles});return}if(Y===void 0)H=!1;else if(Y==="beginning")H=!0;else if(Y==="end")H=!1;else{this.returnCannedResponse(Z,{errorCode:l0.InvalidContentInsertionPositionValue});return}if(typeof X.body!="string"){this.returnCannedResponse(Z,{errorCode:l0.TextContentEncodingRequired});return}if(typeof X.get("Content-Insertion-Ignore-Newline")=="string")K=X.get("Content-Insertion-Ignore-Newline").toLowerCase()=="true";if(!G.length){this.returnCannedResponse(Z,{errorCode:l0.MissingHeadingHeader});return}let z=this.app.vault.getAbstractFileByPath(Q);if(!(z instanceof _q.TFile)){this.returnCannedResponse(Z,{statusCode:404});return}let W=this.app.metadataCache.getFileCache(z),$=ls(W,G);if(!$){this.returnCannedResponse(Z,{errorCode:l0.InvalidHeadingHeader});return}let B=(yield this.app.vault.read(z)).split(` -`),D=cs(B,$,H,K);B.splice(D,0,X.body);let F=B.join(` -`);yield this.app.vault.adapter.write(Q,F),Z.status(200).send(F)})}vaultPatch(Q,X){return T0(this,null,function*(){let Z=Q.params[0];return this._vaultPatch(Z,Q,X)})}_vaultPost(Q,X,Z){return T0(this,null,function*(){if(!Q||Q.endsWith("/")){this.returnCannedResponse(Z,{errorCode:l0.RequestMethodValidOnlyForFiles});return}if(typeof X.body!="string"){this.returnCannedResponse(Z,{errorCode:l0.TextContentEncodingRequired});return}try{yield this.app.vault.createFolder(NM.default.dirname(Q))}catch(Y){}let J="",G=this.app.vault.getAbstractFileByPath(Q);if(G instanceof _q.TFile){if(J=yield this.app.vault.read(G),!J.endsWith(` -`))J+=` -`}J+=X.body,yield this.app.vault.adapter.write(Q,J),this.returnCannedResponse(Z,{statusCode:204});return})}vaultPost(Q,X){return T0(this,null,function*(){let Z=Q.params[0];return this._vaultPost(Z,Q,X)})}_vaultDelete(Q,X,Z){return T0(this,null,function*(){if(!Q||Q.endsWith("/")){this.returnCannedResponse(Z,{errorCode:l0.RequestMethodValidOnlyForFiles});return}if(!(yield this.app.vault.adapter.exists(Q))){this.returnCannedResponse(Z,{statusCode:404});return}yield this.app.vault.adapter.remove(Q),this.returnCannedResponse(Z,{statusCode:204});return})}vaultDelete(Q,X){return T0(this,null,function*(){let Z=Q.params[0];return this._vaultDelete(Z,Q,X)})}getPeriodicNoteInterface(){return{daily:{settings:L6.default.getDailyNoteSettings(),loaded:L6.default.appHasDailyNotesPluginLoaded(),create:L6.default.createDailyNote,get:L6.default.getDailyNote,getAll:L6.default.getAllDailyNotes},weekly:{settings:L6.default.getWeeklyNoteSettings(),loaded:L6.default.appHasWeeklyNotesPluginLoaded(),create:L6.default.createWeeklyNote,get:L6.default.getWeeklyNote,getAll:L6.default.getAllWeeklyNotes},monthly:{settings:L6.default.getMonthlyNoteSettings(),loaded:L6.default.appHasMonthlyNotesPluginLoaded(),create:L6.default.createMonthlyNote,get:L6.default.getMonthlyNote,getAll:L6.default.getAllMonthlyNotes},quarterly:{settings:L6.default.getQuarterlyNoteSettings(),loaded:L6.default.appHasQuarterlyNotesPluginLoaded(),create:L6.default.createQuarterlyNote,get:L6.default.getQuarterlyNote,getAll:L6.default.getAllQuarterlyNotes},yearly:{settings:L6.default.getYearlyNoteSettings(),loaded:L6.default.appHasYearlyNotesPluginLoaded(),create:L6.default.createYearlyNote,get:L6.default.getYearlyNote,getAll:L6.default.getAllYearlyNotes}}}periodicGetInterface(Q){let X=this.getPeriodicNoteInterface();if(!X[Q])return[null,l0.PeriodDoesNotExist];if(!X[Q].loaded)return[null,l0.PeriodIsNotEnabled];return[X[Q],null]}periodicGetNote(Q){let[X,Z]=this.periodicGetInterface(Q);if(Z)return[null,Z];let J=window.moment(Date.now()),G=X.getAll(),Y=X.get(J,G);if(!Y)return[null,l0.PeriodicNoteDoesNotExist];return[Y,null]}periodicGetOrCreateNote(Q){return T0(this,null,function*(){let[X,Z]=this.periodicGetNote(Q),J=X;if(Z===l0.PeriodicNoteDoesNotExist){let[G]=this.periodicGetInterface(Q),Y=window.moment(Date.now());J=yield G.create(Y),yield new Promise((K)=>{let z=null,W=setInterval(()=>{if(z=this.app.metadataCache.getFileCache(J),z)clearInterval(W),K(z)},100)})}else if(Z)return[null,Z];return[J,null]})}redirectToVaultPath(Q,X,Z,J){let G=Q.path;return Z.set("Content-Location",encodeURI(G)),J(G,X,Z)}periodicGet(Q,X){return T0(this,null,function*(){let[Z,J]=this.periodicGetNote(Q.params.period);if(J){this.returnCannedResponse(X,{errorCode:J});return}return this.redirectToVaultPath(Z,Q,X,this._vaultGet.bind(this))})}periodicPut(Q,X){return T0(this,null,function*(){let[Z,J]=yield this.periodicGetOrCreateNote(Q.params.period);if(J){this.returnCannedResponse(X,{errorCode:J});return}return this.redirectToVaultPath(Z,Q,X,this._vaultPut.bind(this))})}periodicPost(Q,X){return T0(this,null,function*(){let[Z,J]=yield this.periodicGetOrCreateNote(Q.params.period);if(J){this.returnCannedResponse(X,{errorCode:J});return}return this.redirectToVaultPath(Z,Q,X,this._vaultPost.bind(this))})}periodicPatch(Q,X){return T0(this,null,function*(){let[Z,J]=yield this.periodicGetOrCreateNote(Q.params.period);if(J){this.returnCannedResponse(X,{errorCode:J});return}return this.redirectToVaultPath(Z,Q,X,this._vaultPatch.bind(this))})}periodicDelete(Q,X){return T0(this,null,function*(){let[Z,J]=this.periodicGetNote(Q.params.period);if(J){this.returnCannedResponse(X,{errorCode:J});return}return this.redirectToVaultPath(Z,Q,X,this._vaultDelete.bind(this))})}activeFileGet(Q,X){return T0(this,null,function*(){let Z=this.app.workspace.getActiveFile();return this.redirectToVaultPath(Z,Q,X,this._vaultGet.bind(this))})}activeFilePut(Q,X){return T0(this,null,function*(){let Z=this.app.workspace.getActiveFile();return this.redirectToVaultPath(Z,Q,X,this._vaultPut.bind(this))})}activeFilePost(Q,X){return T0(this,null,function*(){let Z=this.app.workspace.getActiveFile();return this.redirectToVaultPath(Z,Q,X,this._vaultPost.bind(this))})}activeFilePatch(Q,X){return T0(this,null,function*(){let Z=this.app.workspace.getActiveFile();return this.redirectToVaultPath(Z,Q,X,this._vaultPatch.bind(this))})}activeFileDelete(Q,X){return T0(this,null,function*(){let Z=this.app.workspace.getActiveFile();return this.redirectToVaultPath(Z,Q,X,this._vaultDelete.bind(this))})}commandGet(Q,X){return T0(this,null,function*(){let Z=[];for(let G in this.app.commands.commands)Z.push({id:G,name:this.app.commands.commands[G].name});let J={commands:Z};X.json(J)})}commandPost(Q,X){return T0(this,null,function*(){if(!this.app.commands.commands[Q.params.commandId]){this.returnCannedResponse(X,{statusCode:404});return}try{this.app.commands.executeCommandById(Q.params.commandId)}catch(J){this.returnCannedResponse(X,{statusCode:500,message:J.message});return}this.returnCannedResponse(X,{statusCode:204});return})}searchSimplePost(Q,X){return T0(this,null,function*(){var Z;let J=[],G=Q.query.query,Y=(Z=parseInt(Q.query.contextLength,10))!=null?Z:100,H=_q.prepareSimpleSearch(G);for(let K of this.app.vault.getMarkdownFiles()){let z=yield this.app.vault.cachedRead(K),W=H(z);if(W){let $=[];for(let q of W.matches)$.push({match:{start:q[0],end:q[1]},context:z.slice(Math.max(q[0]-Y,0),q[1]+Y)});J.push({filename:K.path,score:W.score,matches:$})}}J.sort((K,z)=>K.score>z.score?1:-1),X.json(J)})}valueIsSaneTruthy(Q){if(Q===void 0||Q===null)return!1;else if(Array.isArray(Q))return Q.length>0;else if(typeof Q==="object")return Object.keys(Q).length>0;return Boolean(Q)}searchQueryPost(Q,X){return T0(this,null,function*(){let Z=hs.getAPI(),J={[_9.dataviewDql]:()=>T0(this,null,function*(){let Y=[],H=yield Z.tryQuery(Q.body),K=Z.evaluationContext.settings.tableIdColumnName;if(H.type!=="table")throw new Error("Only TABLE dataview queries are supported.");if(!H.headers.includes(K))throw new Error("TABLE WITHOUT ID queries are not supported.");for(let z of H.values){let W={};H.headers.forEach(($,q)=>{if($!==K)W[$]=z[q]}),Y.push({filename:z[0].path,result:W})}return Y}),[_9.jsonLogic]:()=>T0(this,null,function*(){let Y=[];for(let H of this.app.vault.getMarkdownFiles()){let K=yield this.getFileMetadataObject(H);try{let z=V$.default.apply(Q.body,K);if(this.valueIsSaneTruthy(z))Y.push({filename:H.path,result:z})}catch(z){throw new Error(`${z.message} (while processing ${H.path})`)}}return Y})},G=Q.headers["content-type"];if(!J[G]){this.returnCannedResponse(X,{errorCode:l0.ContentTypeSpecificationRequired});return}try{let Y=yield J[G]();X.json(Y)}catch(Y){this.returnCannedResponse(X,{errorCode:l0.InvalidFilterQuery,message:`${Y.message}`});return}})}openPost(Q,X){return T0(this,null,function*(){let Z=Q.params[0],J=us.default.parseUrl(Q.originalUrl,{parseBooleans:!0}).query,G=Boolean(J.newLeaf);this.app.workspace.openLinkText(Z,"/",G),X.json()})}certificateGet(Q,X){return T0(this,null,function*(){X.set("Content-type",`application/octet-stream; filename="${dq}"`),X.status(200).send(this.settings.crypto.cert)})}notFoundHandler(Q,X,Z){return T0(this,null,function*(){this.returnCannedResponse(X,{statusCode:404});return})}errorHandler(Q,X,Z,J){return T0(this,null,function*(){if(Q instanceof SyntaxError){this.returnCannedResponse(Z,{errorCode:l0.InvalidContentForContentType});return}this.returnCannedResponse(Z,{statusCode:500,message:Q.message});return})}setupRouter(){this.api.use((Q,X,Z)=>{let J=X.send;X.send=function(G,...Y){return console.log(`[REST API] ${Q.method} ${Q.url} => ${X.statusCode}`),J.apply(X,[G,...Y])},Z()}),this.api.use(ds.default()),this.api.use(ms.default()),this.api.use(this.authenticationMiddleware.bind(this)),this.api.use(X7.default.text({type:"text/*",limit:J7})),this.api.use(X7.default.text({type:_9.dataviewDql,limit:J7})),this.api.use(X7.default.json({type:_9.json,limit:J7})),this.api.use(X7.default.json({type:_9.olrapiNoteJson,limit:J7})),this.api.use(X7.default.json({type:_9.jsonLogic,limit:J7})),this.api.use(X7.default.raw({type:"*/*",limit:J7})),this.api.route("/active/").get(this.activeFileGet.bind(this)).put(this.activeFilePut.bind(this)).patch(this.activeFilePatch.bind(this)).post(this.activeFilePost.bind(this)).delete(this.activeFileDelete.bind(this)),this.api.route("/vault/(.*)").get(this.vaultGet.bind(this)).put(this.vaultPut.bind(this)).patch(this.vaultPatch.bind(this)).post(this.vaultPost.bind(this)).delete(this.vaultDelete.bind(this)),this.api.route("/periodic/:period/").get(this.periodicGet.bind(this)).put(this.periodicPut.bind(this)).patch(this.periodicPatch.bind(this)).post(this.periodicPost.bind(this)).delete(this.periodicDelete.bind(this)),this.api.route("/commands/").get(this.commandGet.bind(this)),this.api.route("/commands/:commandId/").post(this.commandPost.bind(this)),this.api.route("/search/").post(this.searchQueryPost.bind(this)),this.api.route("/search/simple/").post(this.searchSimplePost.bind(this)),this.api.route("/open/(.*)").post(this.openPost.bind(this)),this.api.get(`/${dq}`,this.certificateGet.bind(this)),this.api.get("/",this.root.bind(this)),this.api.use(this.apiExtensionRouter),this.api.use(this.notFoundHandler.bind(this)),this.api.use(this.errorHandler.bind(this))}},ss=class extends Q8.Plugin{constructor(){super(...arguments);this.secureServer=null,this.insecureServer=null}onload(){return T0(this,null,function*(){if(this.refreshServerState=this.debounce(this._refreshServerState.bind(this),1000),yield this.loadSettings(),this.requestHandler=new as(this.app,this.manifest,this.settings),this.requestHandler.setupRouter(),!this.settings.apiKey)this.settings.apiKey=yQ.default.md.sha256.create().update(yQ.default.random.getBytesSync(128)).digest().toHex(),this.saveSettings();if(!this.settings.crypto){let Q=new Date,X=new Date;Q.setDate(X.getDate()+365);let Z=yQ.default.pki.rsa.generateKeyPair(2048),J=[{name:"commonName",value:"Obsidian Local REST API"}],G=yQ.default.pki.createCertificate();G.setIssuer(J),G.setSubject(J);let Y=[{type:7,ip:CZ}];if(this.settings.bindingHost&&this.settings.bindingHost!=="0.0.0.0")Y.push({type:7,ip:this.settings.bindingHost});if(this.settings.subjectAltNames){for(let H of this.settings.subjectAltNames.split(` -`))if(H.trim())Y.push({type:2,value:H.trim()})}G.setExtensions([{name:"basicConstraints",cA:!0,critical:!0},{name:"keyUsage",keyCertSign:!0,digitalSignature:!0,nonRepudiation:!0,keyEncipherment:!1,dataEncipherment:!1,critical:!0},{name:"extKeyUsage",serverAuth:!0,clientAuth:!0,codeSigning:!0,emailProtection:!0,timeStamping:!0},{name:"nsCertType",client:!0,server:!0,email:!0,objsign:!0,sslCA:!0,emailCA:!0,objCA:!0},{name:"subjectAltName",altNames:Y}]),G.serialNumber="1",G.publicKey=Z.publicKey,G.validity.notAfter=Q,G.validity.notBefore=X,G.sign(Z.privateKey,yQ.default.md.sha256.create()),this.settings.crypto={cert:yQ.pki.certificateToPem(G),privateKey:yQ.pki.privateKeyToPem(Z.privateKey),publicKey:yQ.pki.publicKeyToPem(Z.publicKey)},this.saveSettings()}this.addSettingTab(new ts(this.app,this)),this.refreshServerState(),this.app.workspace.trigger("obsidian-local-rest-api:loaded")})}getPublicApi(Q){if(!Q.id||!Q.name||!Q.version)throw new Error("PluginManifest instance must include a defined id, name, and version to be accempted.");return console.log("[REST API] Added new API extension",Q),this.requestHandler.registerApiExtension(Q)}debounce(Q,X){let Z;return(...J)=>{clearTimeout(Z),Z=setTimeout(()=>Q(...J),X)}}_refreshServerState(){var Q,X,Z,J,G;if(this.secureServer)this.secureServer.close(),this.secureServer=null;if((Q=this.settings.enableSecureServer)!=null?Q:!0)this.secureServer=vs.createServer({key:this.settings.crypto.privateKey,cert:this.settings.crypto.cert},this.requestHandler.api),this.secureServer.listen(this.settings.port,(X=this.settings.bindingHost)!=null?X:CZ),console.log(`[REST API] Listening on https://${(Z=this.settings.bindingHost)!=null?Z:CZ}:${this.settings.port}/`);if(this.insecureServer)this.insecureServer.close(),this.insecureServer=null;if(this.settings.enableInsecureServer)this.insecureServer=gs.createServer(this.requestHandler.api),this.insecureServer.listen(this.settings.insecurePort,(J=this.settings.bindingHost)!=null?J:CZ),console.log(`[REST API] Listening on http://${(G=this.settings.bindingHost)!=null?G:CZ}:${this.settings.insecurePort}/`)}onunload(){if(this.secureServer)this.secureServer.close();if(this.insecureServer)this.insecureServer.close()}loadSettings(){return T0(this,null,function*(){this.settings=Object.assign({},zI,yield this.loadData())})}saveSettings(){return T0(this,null,function*(){yield this.saveData(this.settings)})}},ts=class extends Q8.PluginSettingTab{constructor(Q,X){super(Q,X);this.showAdvancedSettings=!1,this.plugin=X}display(){var Q;let{containerEl:X}=this;X.replaceChildren();let Z=yQ.default.pki.certificateFromPem(this.plugin.settings.crypto.cert),J=qI(Z),G=!HI(Z);X.empty(),X.classList.add("obsidian-local-rest-api-settings"),X.createEl("h2",{text:"Local REST API"}),X.createEl("h3",{text:"How to Access"});let Y=X.createEl("div");Y.classList.add("api-key-display");let H=Y.createEl("p");H.innerHTML=` - You can access Obsidian Local REST API via the following URLs: - `;let z=Y.createEl("table",{cls:"api-urls"}).createEl("tbody"),W=z.createEl("tr",this.plugin.settings.enableSecureServer===!1?{cls:"disabled",title:"Disabled. You can enable this in 'Settings' below."}:{title:"Enabled"}),$=`https://127.0.0.1:${this.plugin.settings.port}/`;W.innerHTML=` - - ${this.plugin.settings.enableSecureServer===!1?"❌":"✅"} - - - Encrypted (HTTPS) API URL

- - Requires that this certificate be - configured as a trusted certificate authority for - your browser. See wiki for more information. - - - `;let q=W.createEl("td",{cls:"url"});if(q.innerHTML=` - ${$} (copy)
- `,this.plugin.settings.subjectAltNames){for(let C of this.plugin.settings.subjectAltNames.split(` -`))if(C.trim()){let L=`https://${C.trim()}:${this.plugin.settings.port}/`;q.innerHTML+=` - ${L} (copy)
- `}}let B=z.createEl("tr",this.plugin.settings.enableInsecureServer===!1?{cls:"disabled",title:"Disabled. You can enable this in 'Settings' below."}:{title:"Enabled"}),D=`http://127.0.0.1:${this.plugin.settings.insecurePort}/`;B.innerHTML=` - - ${this.plugin.settings.enableInsecureServer===!1?"❌":"✅"} - - - Non-encrypted (HTTP) API URL - - `;let F=B.createEl("td",{cls:"url"});if(F.innerHTML=` - ${D} (copy)
- `,this.plugin.settings.subjectAltNames){for(let C of this.plugin.settings.subjectAltNames.split(` -`))if(C.trim()){let L=`http://${C.trim()}:${this.plugin.settings.insecurePort}/`;F.innerHTML+=` - ${L} (copy)
- `}}let P=Y.createEl("p");P.innerHTML=` - Your API Key must be passed in requests via an authorization header - (copy): - `,Y.createEl("pre",{text:this.plugin.settings.apiKey}),Y.createEl("p",{text:"For example, the following request will return all notes in the root directory of your vault:"}),Y.createEl("pre",{text:`GET /vault/ HTTP/1.1 -${(Q=this.plugin.settings.authorizationHeaderName)!=null?Q:"Authorization"}: Bearer ${this.plugin.settings.apiKey}`});let N=Y.createEl("p");if(N.innerHTML=` - Comprehensive documentation of what API endpoints are available can - be found in - the online docs. - `,X.createEl("h3",{text:"Settings"}),J<0){let C=Y.createEl("div");C.classList.add("certificate-expired"),C.innerHTML=` - Your certificate has expired! - You must re-generate your certificate below by pressing - the "Re-generate Certificates" button below in - order to connect securely to this API. - `}else if(J<30){let C=Y.createEl("div");C.classList.add("certificate-expiring-soon"),C.innerHTML=` - Your certificate will expire in ${Math.floor(J)} day${Math.floor(J)===1?"":"s"}s! - You should re-generate your certificate below by pressing - the "Re-generate Certificates" button below in - order to continue to connect securely to this API. - `}if(G){let C=Y.createEl("div");C.classList.add("certificate-regeneration-recommended"),C.innerHTML=` - You should re-generate your certificate! - Your certificate was generated using earlier standards than - are currently used by Obsidian Local REST API. Some systems - or tools may not accept your certificate with its current - configuration, and re-generating your certificate may - improve compatibility with such tools. To re-generate your - certificate, press the "Re-generate Certificates" button - below. - `}if(new Q8.Setting(X).setName("Enable Non-encrypted (HTTP) Server").setDesc("Enables a non-encrypted (HTTP) server on the port designated below. By default this plugin requires a secure HTTPS connection, but in safe environments you may turn on the non-encrypted server to simplify interacting with the API. Interactions with the API will still require the API Key shown above. Under no circumstances is it recommended that you expose this service to the internet, especially if you turn on this feature!").addToggle((C)=>C.onChange((L)=>{let V=this.plugin.settings.enableInsecureServer;if(this.plugin.settings.enableInsecureServer=L,this.plugin.saveSettings(),this.plugin.refreshServerState(),L!==V)this.display()}).setValue(this.plugin.settings.enableInsecureServer)),new Q8.Setting(X).setName("Reset All Cryptography").setDesc(`Pressing this button will cause your certificate, - private key, public key, and API key to be regenerated. - This settings panel will be closed when you press this.`).addButton((C)=>{C.setWarning().setButtonText("Reset All Crypto").onClick(()=>{delete this.plugin.settings.apiKey,delete this.plugin.settings.crypto,this.plugin.saveSettings(),this.plugin.unload(),this.plugin.load()})}),new Q8.Setting(X).setName("Re-generate Certificates").setDesc(`Pressing this button will cause your certificate, - private key, and public key to be re-generated, but your API key will remain unchanged. - This settings panel will be closed when you press this.`).addButton((C)=>{C.setWarning().setButtonText("Re-generate Certificates").onClick(()=>{delete this.plugin.settings.crypto,this.plugin.saveSettings(),this.plugin.unload(),this.plugin.load()})}),new Q8.Setting(X).setName("Restore Default Settings").setDesc(`Pressing this button will reset this plugin's - settings to defaults. - This settings panel will be closed when you press this.`).addButton((C)=>{C.setWarning().setButtonText("Restore Defaults").onClick(()=>{this.plugin.settings=Object.assign({},zI),this.plugin.saveSettings(),this.plugin.unload(),this.plugin.load()})}),new Q8.Setting(X).setName("Show advanced settings").setDesc("Advanced settings are dangerous and may make your environment less secure.").addToggle((C)=>{C.onChange((L)=>{if(this.showAdvancedSettings!==L)this.showAdvancedSettings=L,this.display()}).setValue(this.showAdvancedSettings)}),this.showAdvancedSettings){X.createEl("hr"),X.createEl("h3",{text:"Advanced Settings"}),X.createEl("p",{text:` - The settings below are potentially dangerous and - are intended for use only by people who know what - they are doing. Do not change any of these settings if - you do not understand what that setting is used for - and what security impacts changing that setting will have. - `});let C=X.createEl("p");C.createEl("span",{text:` - Use of this software is licensed to you under the - MIT license, and it is important that you understand that - this license provides you with no warranty. - For the complete license text please see - `}),C.createEl("a",{href:MM,text:MM}),C.createEl("span",{text:"."}),new Q8.Setting(X).setName("Enable Encrypted (HTTPs) Server").setDesc(` - This controls whether the HTTPs server is enabled. You almost certainly want to leave this switch in its default state ('on'), - but may find it useful to turn this switch off for - troubleshooting. - `).addToggle((L)=>{var V;return L.onChange((M)=>{let I=this.plugin.settings.enableSecureServer;if(this.plugin.settings.enableSecureServer=M,this.plugin.saveSettings(),this.plugin.refreshServerState(),M!==I)this.display()}).setValue((V=this.plugin.settings.enableSecureServer)!=null?V:!0)}),new Q8.Setting(X).setName("Encrypted (HTTPS) Server Port").setDesc("This configures the port on which your REST API will listen for HTTPS connections. It is recommended that you leave this port with its default setting as tools integrating with this API may expect the default port to be in use. Under no circumstances is it recommended that you expose this service directly to the internet.").addText((L)=>L.onChange((V)=>{this.plugin.settings.port=parseInt(V,10),this.plugin.saveSettings(),this.plugin.refreshServerState()}).setValue(this.plugin.settings.port.toString())),new Q8.Setting(X).setName("Non-encrypted (HTTP) Server Port").addText((L)=>L.onChange((V)=>{this.plugin.settings.insecurePort=parseInt(V,10),this.plugin.saveSettings(),this.plugin.refreshServerState()}).setValue(this.plugin.settings.insecurePort.toString())),new Q8.Setting(X).setName("API Key").addText((L)=>{L.onChange((V)=>{this.plugin.settings.apiKey=V,this.plugin.saveSettings(),this.plugin.refreshServerState()}).setValue(this.plugin.settings.apiKey)}),new Q8.Setting(X).setName("Certificate Hostnames").setDesc(` - List of extra hostnames to add - to your certificate's \`subjectAltName\` field. - One hostname per line. - You must click the "Re-generate Certificates" button above after changing this value - for this to have an effect. This is useful for - situations in which you are accessing Obsidian - from a hostname other than the host on which - it is running. - `).addTextArea((L)=>L.onChange((V)=>{this.plugin.settings.subjectAltNames=V,this.plugin.saveSettings()}).setValue(this.plugin.settings.subjectAltNames)),new Q8.Setting(X).setName("Certificate").addTextArea((L)=>L.onChange((V)=>{this.plugin.settings.crypto.cert=V,this.plugin.saveSettings(),this.plugin.refreshServerState()}).setValue(this.plugin.settings.crypto.cert)),new Q8.Setting(X).setName("Public Key").addTextArea((L)=>L.onChange((V)=>{this.plugin.settings.crypto.publicKey=V,this.plugin.saveSettings(),this.plugin.refreshServerState()}).setValue(this.plugin.settings.crypto.publicKey)),new Q8.Setting(X).setName("Private Key").addTextArea((L)=>L.onChange((V)=>{this.plugin.settings.crypto.privateKey=V,this.plugin.saveSettings(),this.plugin.refreshServerState()}).setValue(this.plugin.settings.crypto.privateKey)),new Q8.Setting(X).setName("Authorization Header").addText((L)=>{var V;L.onChange((M)=>{if(M!==TM)this.plugin.settings.authorizationHeaderName=M;else delete this.plugin.settings.authorizationHeaderName;this.plugin.saveSettings(),this.plugin.refreshServerState()}).setValue((V=this.plugin.settings.authorizationHeaderName)!=null?V:TM)}),new Q8.Setting(X).setName("Binding Host").addText((L)=>{var V;L.onChange((M)=>{if(M!==CZ)this.plugin.settings.bindingHost=M;else delete this.plugin.settings.bindingHost;this.plugin.saveSettings(),this.plugin.refreshServerState()}).setValue((V=this.plugin.settings.bindingHost)!=null?V:CZ)})}}},rs=(Q,X)=>{let Z=Q.plugins.plugins["obsidian-local-rest-api"];if(Z)return Z.getPublicApi(X)};/*! - * accepts - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2015 Douglas Christopher Wilson - * MIT Licensed - *//*! - * body-parser - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2014-2015 Douglas Christopher Wilson - * MIT Licensed - *//*! - * body-parser - * Copyright(c) 2014-2015 Douglas Christopher Wilson - * MIT Licensed - *//*! - * bytes - * Copyright(c) 2012-2014 TJ Holowaychuk - * Copyright(c) 2015 Jed Watson - * MIT Licensed - *//*! - * content-disposition - * Copyright(c) 2014-2017 Douglas Christopher Wilson - * MIT Licensed - *//*! - * content-type - * Copyright(c) 2015 Douglas Christopher Wilson - * MIT Licensed - *//*! - * cookie - * Copyright(c) 2012-2014 Roman Shtylman - * Copyright(c) 2015 Douglas Christopher Wilson - * MIT Licensed - *//*! - * depd - * Copyright(c) 2014 Douglas Christopher Wilson - * MIT Licensed - *//*! - * depd - * Copyright(c) 2014-2015 Douglas Christopher Wilson - * MIT Licensed - *//*! - * depd - * Copyright(c) 2014-2017 Douglas Christopher Wilson - * MIT Licensed - *//*! - * depd - * Copyright(c) 2014-2018 Douglas Christopher Wilson - * MIT Licensed - *//*! - * depd - * Copyright(c) 2015 Douglas Christopher Wilson - * MIT Licensed - *//*! - * destroy - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2015-2022 Douglas Christopher Wilson - * MIT Licensed - *//*! - * ee-first - * Copyright(c) 2014 Jonathan Ong - * MIT Licensed - *//*! - * encodeurl - * Copyright(c) 2016 Douglas Christopher Wilson - * MIT Licensed - *//*! - * escape-html - * Copyright(c) 2012-2013 TJ Holowaychuk - * Copyright(c) 2015 Andreas Lubbe - * Copyright(c) 2015 Tiancheng "Timothy" Gu - * MIT Licensed - *//*! - * etag - * Copyright(c) 2014-2016 Douglas Christopher Wilson - * MIT Licensed - *//*! - * express - * Copyright(c) 2009-2013 TJ Holowaychuk - * Copyright(c) 2013 Roman Shtylman - * Copyright(c) 2014-2015 Douglas Christopher Wilson - * MIT Licensed - *//*! - * express - * Copyright(c) 2009-2013 TJ Holowaychuk - * Copyright(c) 2014-2015 Douglas Christopher Wilson - * MIT Licensed - *//*! - * finalhandler - * Copyright(c) 2014-2022 Douglas Christopher Wilson - * MIT Licensed - *//*! - * forwarded - * Copyright(c) 2014-2017 Douglas Christopher Wilson - * MIT Licensed - *//*! - * fresh - * Copyright(c) 2012 TJ Holowaychuk - * Copyright(c) 2016-2017 Douglas Christopher Wilson - * MIT Licensed - *//*! - * http-errors - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2016 Douglas Christopher Wilson - * MIT Licensed - *//*! - * media-typer - * Copyright(c) 2014 Douglas Christopher Wilson - * MIT Licensed - *//*! - * merge-descriptors - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2015 Douglas Christopher Wilson - * MIT Licensed - *//*! - * methods - * Copyright(c) 2013-2014 TJ Holowaychuk - * Copyright(c) 2015-2016 Douglas Christopher Wilson - * MIT Licensed - *//*! - * mime-db - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2015-2022 Douglas Christopher Wilson - * MIT Licensed - *//*! - * mime-types - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2015 Douglas Christopher Wilson - * MIT Licensed - *//*! - * negotiator - * Copyright(c) 2012 Federico Romero - * Copyright(c) 2012-2014 Isaac Z. Schlueter - * Copyright(c) 2015 Douglas Christopher Wilson - * MIT Licensed - *//*! - * on-finished - * Copyright(c) 2013 Jonathan Ong - * Copyright(c) 2014 Douglas Christopher Wilson - * MIT Licensed - *//*! - * on-headers - * Copyright(c) 2014 Douglas Christopher Wilson - * MIT Licensed - *//*! - * parseurl - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2014-2017 Douglas Christopher Wilson - * MIT Licensed - *//*! - * proxy-addr - * Copyright(c) 2014-2016 Douglas Christopher Wilson - * MIT Licensed - *//*! - * range-parser - * Copyright(c) 2012-2014 TJ Holowaychuk - * Copyright(c) 2015-2016 Douglas Christopher Wilson - * MIT Licensed - *//*! - * raw-body - * Copyright(c) 2013-2014 Jonathan Ong - * Copyright(c) 2014-2022 Douglas Christopher Wilson - * MIT Licensed - *//*! - * response-time - * Copyright(c) 2011 TJ Holowaychuk - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2014-2015 Douglas Christopher Wilson - * MIT Licensed - *//*! - * router - * Copyright(c) 2013 Roman Shtylman - * Copyright(c) 2014-2022 Douglas Christopher Wilson - * MIT Licensed - *//*! - * send - * Copyright(c) 2012 TJ Holowaychuk - * Copyright(c) 2014-2022 Douglas Christopher Wilson - * MIT Licensed - *//*! - * serve-static - * Copyright(c) 2010 Sencha Inc. - * Copyright(c) 2011 TJ Holowaychuk - * Copyright(c) 2014-2016 Douglas Christopher Wilson - * MIT Licensed - *//*! - * statuses - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2016 Douglas Christopher Wilson - * MIT Licensed - *//*! - * toidentifier - * Copyright(c) 2016 Douglas Christopher Wilson - * MIT Licensed - *//*! - * type-is - * Copyright(c) 2014 Jonathan Ong - * Copyright(c) 2014-2015 Douglas Christopher Wilson - * MIT Licensed - *//*! - * unpipe - * Copyright(c) 2015 Douglas Christopher Wilson - * MIT Licensed - *//*! - * vary - * Copyright(c) 2014-2017 Douglas Christopher Wilson - * MIT Licensed - *//*! safe-buffer. MIT License. Feross Aboukhadijeh */});var hX=r((kL1,LI)=>{var Zt=Number.MAX_SAFE_INTEGER||9007199254740991,Xt=["major","premajor","minor","preminor","patch","prepatch","prerelease"];LI.exports={MAX_LENGTH:256,MAX_SAFE_COMPONENT_LENGTH:16,MAX_SAFE_BUILD_LENGTH:250,MAX_SAFE_INTEGER:Zt,RELEASE_TYPES:Xt,SEMVER_SPEC_VERSION:"2.0.0",FLAG_INCLUDE_PRERELEASE:1,FLAG_LOOSE:2}});var fX=r((yL1,CI)=>{var Jt=typeof process==="object"&&process.env&&process.env.NODE_DEBUG&&/\bsemver\b/i.test(process.env.NODE_DEBUG)?(...Q)=>console.error("SEMVER",...Q):()=>{};CI.exports=Jt});var K7=r((vQ,NI)=>{var{MAX_SAFE_COMPONENT_LENGTH:m$,MAX_SAFE_BUILD_LENGTH:Gt,MAX_LENGTH:Yt}=hX(),Wt=fX();vQ=NI.exports={};var qt=vQ.re=[],Ht=vQ.safeRe=[],i1=vQ.src=[],n1=vQ.t={},zt=0,_$="[a-zA-Z0-9-]",Kt=[["\\s",1],["\\d",Yt],[_$,Gt]],$t=(Q)=>{for(let[X,Z]of Kt)Q=Q.split(`${X}*`).join(`${X}{0,${Z}}`).split(`${X}+`).join(`${X}{1,${Z}}`);return Q},I0=(Q,X,Z)=>{let J=$t(X),G=zt++;Wt(Q,G,X),n1[Q]=G,i1[G]=X,qt[G]=new RegExp(X,Z?"g":void 0),Ht[G]=new RegExp(J,Z?"g":void 0)};I0("NUMERICIDENTIFIER","0|[1-9]\\d*");I0("NUMERICIDENTIFIERLOOSE","\\d+");I0("NONNUMERICIDENTIFIER",`\\d*[a-zA-Z-]${_$}*`);I0("MAINVERSION",`(${i1[n1.NUMERICIDENTIFIER]})\\.(${i1[n1.NUMERICIDENTIFIER]})\\.(${i1[n1.NUMERICIDENTIFIER]})`);I0("MAINVERSIONLOOSE",`(${i1[n1.NUMERICIDENTIFIERLOOSE]})\\.(${i1[n1.NUMERICIDENTIFIERLOOSE]})\\.(${i1[n1.NUMERICIDENTIFIERLOOSE]})`);I0("PRERELEASEIDENTIFIER",`(?:${i1[n1.NUMERICIDENTIFIER]}|${i1[n1.NONNUMERICIDENTIFIER]})`);I0("PRERELEASEIDENTIFIERLOOSE",`(?:${i1[n1.NUMERICIDENTIFIERLOOSE]}|${i1[n1.NONNUMERICIDENTIFIER]})`);I0("PRERELEASE",`(?:-(${i1[n1.PRERELEASEIDENTIFIER]}(?:\\.${i1[n1.PRERELEASEIDENTIFIER]})*))`);I0("PRERELEASELOOSE",`(?:-?(${i1[n1.PRERELEASEIDENTIFIERLOOSE]}(?:\\.${i1[n1.PRERELEASEIDENTIFIERLOOSE]})*))`);I0("BUILDIDENTIFIER",`${_$}+`);I0("BUILD",`(?:\\+(${i1[n1.BUILDIDENTIFIER]}(?:\\.${i1[n1.BUILDIDENTIFIER]})*))`);I0("FULLPLAIN",`v?${i1[n1.MAINVERSION]}${i1[n1.PRERELEASE]}?${i1[n1.BUILD]}?`);I0("FULL",`^${i1[n1.FULLPLAIN]}$`);I0("LOOSEPLAIN",`[v=\\s]*${i1[n1.MAINVERSIONLOOSE]}${i1[n1.PRERELEASELOOSE]}?${i1[n1.BUILD]}?`);I0("LOOSE",`^${i1[n1.LOOSEPLAIN]}$`);I0("GTLT","((?:<|>)?=?)");I0("XRANGEIDENTIFIERLOOSE",`${i1[n1.NUMERICIDENTIFIERLOOSE]}|x|X|\\*`);I0("XRANGEIDENTIFIER",`${i1[n1.NUMERICIDENTIFIER]}|x|X|\\*`);I0("XRANGEPLAIN",`[v=\\s]*(${i1[n1.XRANGEIDENTIFIER]})(?:\\.(${i1[n1.XRANGEIDENTIFIER]})(?:\\.(${i1[n1.XRANGEIDENTIFIER]})(?:${i1[n1.PRERELEASE]})?${i1[n1.BUILD]}?)?)?`);I0("XRANGEPLAINLOOSE",`[v=\\s]*(${i1[n1.XRANGEIDENTIFIERLOOSE]})(?:\\.(${i1[n1.XRANGEIDENTIFIERLOOSE]})(?:\\.(${i1[n1.XRANGEIDENTIFIERLOOSE]})(?:${i1[n1.PRERELEASELOOSE]})?${i1[n1.BUILD]}?)?)?`);I0("XRANGE",`^${i1[n1.GTLT]}\\s*${i1[n1.XRANGEPLAIN]}$`);I0("XRANGELOOSE",`^${i1[n1.GTLT]}\\s*${i1[n1.XRANGEPLAINLOOSE]}$`);I0("COERCEPLAIN",`(^|[^\\d])(\\d{1,${m$}})(?:\\.(\\d{1,${m$}}))?(?:\\.(\\d{1,${m$}}))?`);I0("COERCE",`${i1[n1.COERCEPLAIN]}(?:$|[^\\d])`);I0("COERCEFULL",i1[n1.COERCEPLAIN]+`(?:${i1[n1.PRERELEASE]})?(?:${i1[n1.BUILD]})?(?:$|[^\\d])`);I0("COERCERTL",i1[n1.COERCE],!0);I0("COERCERTLFULL",i1[n1.COERCEFULL],!0);I0("LONETILDE","(?:~>?)");I0("TILDETRIM",`(\\s*)${i1[n1.LONETILDE]}\\s+`,!0);vQ.tildeTrimReplace="$1~";I0("TILDE",`^${i1[n1.LONETILDE]}${i1[n1.XRANGEPLAIN]}$`);I0("TILDELOOSE",`^${i1[n1.LONETILDE]}${i1[n1.XRANGEPLAINLOOSE]}$`);I0("LONECARET","(?:\\^)");I0("CARETTRIM",`(\\s*)${i1[n1.LONECARET]}\\s+`,!0);vQ.caretTrimReplace="$1^";I0("CARET",`^${i1[n1.LONECARET]}${i1[n1.XRANGEPLAIN]}$`);I0("CARETLOOSE",`^${i1[n1.LONECARET]}${i1[n1.XRANGEPLAINLOOSE]}$`);I0("COMPARATORLOOSE",`^${i1[n1.GTLT]}\\s*(${i1[n1.LOOSEPLAIN]})$|^$`);I0("COMPARATOR",`^${i1[n1.GTLT]}\\s*(${i1[n1.FULLPLAIN]})$|^$`);I0("COMPARATORTRIM",`(\\s*)${i1[n1.GTLT]}\\s*(${i1[n1.LOOSEPLAIN]}|${i1[n1.XRANGEPLAIN]})`,!0);vQ.comparatorTrimReplace="$1$2$3";I0("HYPHENRANGE",`^\\s*(${i1[n1.XRANGEPLAIN]})\\s+-\\s+(${i1[n1.XRANGEPLAIN]})\\s*$`);I0("HYPHENRANGELOOSE",`^\\s*(${i1[n1.XRANGEPLAINLOOSE]})\\s+-\\s+(${i1[n1.XRANGEPLAINLOOSE]})\\s*$`);I0("STAR","(<|>)?=?\\s*\\*");I0("GTE0","^\\s*>=\\s*0\\.0\\.0\\s*$");I0("GTE0PRE","^\\s*>=\\s*0\\.0\\.0-0\\s*$")});var X3=r((xL1,TI)=>{var Bt=Object.freeze({loose:!0}),Ut=Object.freeze({}),Vt=(Q)=>{if(!Q)return Ut;if(typeof Q!=="object")return Bt;return Q};TI.exports=Vt});var d$=r((vL1,RI)=>{var MI=/^[0-9]+$/,II=(Q,X)=>{let Z=MI.test(Q),J=MI.test(X);if(Z&&J)Q=+Q,X=+X;return Q===X?0:Z&&!J?-1:J&&!Z?1:QII(X,Q);RI.exports={compareIdentifiers:II,rcompareIdentifiers:Pt}});var $8=r((gL1,EI)=>{var J3=fX(),{MAX_LENGTH:AI,MAX_SAFE_INTEGER:G3}=hX(),{safeRe:OI,t:wI}=K7(),Ft=X3(),{compareIdentifiers:$7}=d$();class u9{constructor(Q,X){if(X=Ft(X),Q instanceof u9)if(Q.loose===!!X.loose&&Q.includePrerelease===!!X.includePrerelease)return Q;else Q=Q.version;else if(typeof Q!=="string")throw new TypeError(`Invalid version. Must be a string. Got type "${typeof Q}".`);if(Q.length>AI)throw new TypeError(`version is longer than ${AI} characters`);J3("SemVer",Q,X),this.options=X,this.loose=!!X.loose,this.includePrerelease=!!X.includePrerelease;let Z=Q.trim().match(X.loose?OI[wI.LOOSE]:OI[wI.FULL]);if(!Z)throw new TypeError(`Invalid Version: ${Q}`);if(this.raw=Q,this.major=+Z[1],this.minor=+Z[2],this.patch=+Z[3],this.major>G3||this.major<0)throw new TypeError("Invalid major version");if(this.minor>G3||this.minor<0)throw new TypeError("Invalid minor version");if(this.patch>G3||this.patch<0)throw new TypeError("Invalid patch version");if(!Z[4])this.prerelease=[];else this.prerelease=Z[4].split(".").map((J)=>{if(/^[0-9]+$/.test(J)){let G=+J;if(G>=0&&G=0)if(typeof this.prerelease[G]==="number")this.prerelease[G]++,G=-2;if(G===-1){if(X===this.prerelease.join(".")&&Z===!1)throw new Error("invalid increment argument: identifier already exists");this.prerelease.push(J)}}if(X){let G=[X,J];if(Z===!1)G=[X];if($7(this.prerelease[0],X)===0){if(isNaN(this.prerelease[1]))this.prerelease=G}else this.prerelease=G}break}default:throw new Error(`invalid increment argument: ${Q}`)}if(this.raw=this.format(),this.build.length)this.raw+=`+${this.build.join(".")}`;return this}}EI.exports=u9});var IZ=r((hL1,SI)=>{var jI=$8(),Dt=(Q,X,Z=!1)=>{if(Q instanceof jI)return Q;try{return new jI(Q,X)}catch(J){if(!Z)return null;throw J}};SI.exports=Dt});var yI=r((fL1,kI)=>{var Lt=IZ(),Ct=(Q,X)=>{let Z=Lt(Q,X);return Z?Z.version:null};kI.exports=Ct});var vI=r((bL1,xI)=>{var Nt=IZ(),Tt=(Q,X)=>{let Z=Nt(Q.trim().replace(/^[=v]+/,""),X);return Z?Z.version:null};xI.exports=Tt});var fI=r((mL1,hI)=>{var gI=$8(),Mt=(Q,X,Z,J,G)=>{if(typeof Z==="string")G=J,J=Z,Z=void 0;try{return new gI(Q instanceof gI?Q.version:Q,Z).inc(X,J,G).version}catch(Y){return null}};hI.exports=Mt});var _I=r((_L1,mI)=>{var bI=IZ(),It=(Q,X)=>{let Z=bI(Q,null,!0),J=bI(X,null,!0),G=Z.compare(J);if(G===0)return null;let Y=G>0,H=Y?Z:J,K=Y?J:Z,z=!!H.prerelease.length;if(!!K.prerelease.length&&!z){if(!K.patch&&!K.minor)return"major";if(H.patch)return"patch";if(H.minor)return"minor";return"major"}let $=z?"pre":"";if(Z.major!==J.major)return $+"major";if(Z.minor!==J.minor)return $+"minor";if(Z.patch!==J.patch)return $+"patch";return"prerelease"};mI.exports=It});var uI=r((dL1,dI)=>{var Rt=$8(),At=(Q,X)=>new Rt(Q,X).major;dI.exports=At});var lI=r((uL1,pI)=>{var Ot=$8(),wt=(Q,X)=>new Ot(Q,X).minor;pI.exports=wt});var iI=r((pL1,cI)=>{var Et=$8(),jt=(Q,X)=>new Et(Q,X).patch;cI.exports=jt});var oI=r((lL1,nI)=>{var St=IZ(),kt=(Q,X)=>{let Z=St(Q,X);return Z&&Z.prerelease.length?Z.prerelease:null};nI.exports=kt});var L9=r((cL1,sI)=>{var aI=$8(),yt=(Q,X,Z)=>new aI(Q,Z).compare(new aI(X,Z));sI.exports=yt});var rI=r((iL1,tI)=>{var xt=L9(),vt=(Q,X,Z)=>xt(X,Q,Z);tI.exports=vt});var QR=r((nL1,eI)=>{var gt=L9(),ht=(Q,X)=>gt(Q,X,!0);eI.exports=ht});var Y3=r((oL1,XR)=>{var ZR=$8(),ft=(Q,X,Z)=>{let J=new ZR(Q,Z),G=new ZR(X,Z);return J.compare(G)||J.compareBuild(G)};XR.exports=ft});var GR=r((aL1,JR)=>{var bt=Y3(),mt=(Q,X)=>Q.sort((Z,J)=>bt(Z,J,X));JR.exports=mt});var WR=r((sL1,YR)=>{var _t=Y3(),dt=(Q,X)=>Q.sort((Z,J)=>_t(J,Z,X));YR.exports=dt});var bX=r((tL1,qR)=>{var ut=L9(),pt=(Q,X,Z)=>ut(Q,X,Z)>0;qR.exports=pt});var W3=r((rL1,HR)=>{var lt=L9(),ct=(Q,X,Z)=>lt(Q,X,Z)<0;HR.exports=ct});var u$=r((eL1,zR)=>{var it=L9(),nt=(Q,X,Z)=>it(Q,X,Z)===0;zR.exports=nt});var p$=r((QC1,KR)=>{var ot=L9(),at=(Q,X,Z)=>ot(Q,X,Z)!==0;KR.exports=at});var q3=r((ZC1,$R)=>{var st=L9(),tt=(Q,X,Z)=>st(Q,X,Z)>=0;$R.exports=tt});var H3=r((XC1,BR)=>{var rt=L9(),et=(Q,X,Z)=>rt(Q,X,Z)<=0;BR.exports=et});var l$=r((JC1,UR)=>{var Qr=u$(),Zr=p$(),Xr=bX(),Jr=q3(),Gr=W3(),Yr=H3(),Wr=(Q,X,Z,J)=>{switch(X){case"===":if(typeof Q==="object")Q=Q.version;if(typeof Z==="object")Z=Z.version;return Q===Z;case"!==":if(typeof Q==="object")Q=Q.version;if(typeof Z==="object")Z=Z.version;return Q!==Z;case"":case"=":case"==":return Qr(Q,Z,J);case"!=":return Zr(Q,Z,J);case">":return Xr(Q,Z,J);case">=":return Jr(Q,Z,J);case"<":return Gr(Q,Z,J);case"<=":return Yr(Q,Z,J);default:throw new TypeError(`Invalid operator: ${X}`)}};UR.exports=Wr});var PR=r((GC1,VR)=>{var qr=$8(),Hr=IZ(),{safeRe:z3,t:K3}=K7(),zr=(Q,X)=>{if(Q instanceof qr)return Q;if(typeof Q==="number")Q=String(Q);if(typeof Q!=="string")return null;X=X||{};let Z=null;if(!X.rtl)Z=Q.match(X.includePrerelease?z3[K3.COERCEFULL]:z3[K3.COERCE]);else{let z=X.includePrerelease?z3[K3.COERCERTLFULL]:z3[K3.COERCERTL],W;while((W=z.exec(Q))&&(!Z||Z.index+Z[0].length!==Q.length)){if(!Z||W.index+W[0].length!==Z.index+Z[0].length)Z=W;z.lastIndex=W.index+W[1].length+W[2].length}z.lastIndex=-1}if(Z===null)return null;let J=Z[2],G=Z[3]||"0",Y=Z[4]||"0",H=X.includePrerelease&&Z[5]?`-${Z[5]}`:"",K=X.includePrerelease&&Z[6]?`+${Z[6]}`:"";return Hr(`${J}.${G}.${Y}${H}${K}`,X)};VR.exports=zr});var LR=r((YC1,DR)=>{class FR{constructor(){this.max=1000,this.map=new Map}get(Q){let X=this.map.get(Q);if(X===void 0)return;else return this.map.delete(Q),this.map.set(Q,X),X}delete(Q){return this.map.delete(Q)}set(Q,X){if(!this.delete(Q)&&X!==void 0){if(this.map.size>=this.max){let J=this.map.keys().next().value;this.delete(J)}this.map.set(Q,X)}return this}}DR.exports=FR});var C9=r((WC1,MR)=>{var Kr=/\s+/g;class mX{constructor(Q,X){if(X=Br(X),Q instanceof mX)if(Q.loose===!!X.loose&&Q.includePrerelease===!!X.includePrerelease)return Q;else return new mX(Q.raw,X);if(Q instanceof c$)return this.raw=Q.value,this.set=[[Q]],this.formatted=void 0,this;if(this.options=X,this.loose=!!X.loose,this.includePrerelease=!!X.includePrerelease,this.raw=Q.trim().replace(Kr," "),this.set=this.raw.split("||").map((Z)=>this.parseRange(Z.trim())).filter((Z)=>Z.length),!this.set.length)throw new TypeError(`Invalid SemVer Range: ${this.raw}`);if(this.set.length>1){let Z=this.set[0];if(this.set=this.set.filter((J)=>!NR(J[0])),this.set.length===0)this.set=[Z];else if(this.set.length>1){for(let J of this.set)if(J.length===1&&Cr(J[0])){this.set=[J];break}}}this.formatted=void 0}get range(){if(this.formatted===void 0){this.formatted="";for(let Q=0;Q0)this.formatted+="||";let X=this.set[Q];for(let Z=0;Z0)this.formatted+=" ";this.formatted+=X[Z].toString().trim()}}}return this.formatted}format(){return this.range}toString(){return this.range}parseRange(Q){let Z=((this.options.includePrerelease&&Dr)|(this.options.loose&&Lr))+":"+Q,J=CR.get(Z);if(J)return J;let G=this.options.loose,Y=G?m8[C8.HYPHENRANGELOOSE]:m8[C8.HYPHENRANGE];Q=Q.replace(Y,jr(this.options.includePrerelease)),C6("hyphen replace",Q),Q=Q.replace(m8[C8.COMPARATORTRIM],Vr),C6("comparator trim",Q),Q=Q.replace(m8[C8.TILDETRIM],Pr),C6("tilde trim",Q),Q=Q.replace(m8[C8.CARETTRIM],Fr),C6("caret trim",Q);let H=Q.split(" ").map(($)=>Nr($,this.options)).join(" ").split(/\s+/).map(($)=>Er($,this.options));if(G)H=H.filter(($)=>{return C6("loose invalid filter",$,this.options),!!$.match(m8[C8.COMPARATORLOOSE])});C6("range list",H);let K=new Map,z=H.map(($)=>new c$($,this.options));for(let $ of z){if(NR($))return[$];K.set($.value,$)}if(K.size>1&&K.has(""))K.delete("");let W=[...K.values()];return CR.set(Z,W),W}intersects(Q,X){if(!(Q instanceof mX))throw new TypeError("a Range is required");return this.set.some((Z)=>{return TR(Z,X)&&Q.set.some((J)=>{return TR(J,X)&&Z.every((G)=>{return J.every((Y)=>{return G.intersects(Y,X)})})})})}test(Q){if(!Q)return!1;if(typeof Q==="string")try{Q=new Ur(Q,this.options)}catch(X){return!1}for(let X=0;XQ.value==="<0.0.0-0",Cr=(Q)=>Q.value==="",TR=(Q,X)=>{let Z=!0,J=Q.slice(),G=J.pop();while(Z&&J.length)Z=J.every((Y)=>{return G.intersects(Y,X)}),G=J.pop();return Z},Nr=(Q,X)=>{return C6("comp",Q,X),Q=Ir(Q,X),C6("caret",Q),Q=Tr(Q,X),C6("tildes",Q),Q=Ar(Q,X),C6("xrange",Q),Q=wr(Q,X),C6("stars",Q),Q},N8=(Q)=>!Q||Q.toLowerCase()==="x"||Q==="*",Tr=(Q,X)=>{return Q.trim().split(/\s+/).map((Z)=>Mr(Z,X)).join(" ")},Mr=(Q,X)=>{let Z=X.loose?m8[C8.TILDELOOSE]:m8[C8.TILDE];return Q.replace(Z,(J,G,Y,H,K)=>{C6("tilde",Q,J,G,Y,H,K);let z;if(N8(G))z="";else if(N8(Y))z=`>=${G}.0.0 <${+G+1}.0.0-0`;else if(N8(H))z=`>=${G}.${Y}.0 <${G}.${+Y+1}.0-0`;else if(K)C6("replaceTilde pr",K),z=`>=${G}.${Y}.${H}-${K} <${G}.${+Y+1}.0-0`;else z=`>=${G}.${Y}.${H} <${G}.${+Y+1}.0-0`;return C6("tilde return",z),z})},Ir=(Q,X)=>{return Q.trim().split(/\s+/).map((Z)=>Rr(Z,X)).join(" ")},Rr=(Q,X)=>{C6("caret",Q,X);let Z=X.loose?m8[C8.CARETLOOSE]:m8[C8.CARET],J=X.includePrerelease?"-0":"";return Q.replace(Z,(G,Y,H,K,z)=>{C6("caret",Q,G,Y,H,K,z);let W;if(N8(Y))W="";else if(N8(H))W=`>=${Y}.0.0${J} <${+Y+1}.0.0-0`;else if(N8(K))if(Y==="0")W=`>=${Y}.${H}.0${J} <${Y}.${+H+1}.0-0`;else W=`>=${Y}.${H}.0${J} <${+Y+1}.0.0-0`;else if(z)if(C6("replaceCaret pr",z),Y==="0")if(H==="0")W=`>=${Y}.${H}.${K}-${z} <${Y}.${H}.${+K+1}-0`;else W=`>=${Y}.${H}.${K}-${z} <${Y}.${+H+1}.0-0`;else W=`>=${Y}.${H}.${K}-${z} <${+Y+1}.0.0-0`;else if(C6("no pr"),Y==="0")if(H==="0")W=`>=${Y}.${H}.${K}${J} <${Y}.${H}.${+K+1}-0`;else W=`>=${Y}.${H}.${K}${J} <${Y}.${+H+1}.0-0`;else W=`>=${Y}.${H}.${K} <${+Y+1}.0.0-0`;return C6("caret return",W),W})},Ar=(Q,X)=>{return C6("replaceXRanges",Q,X),Q.split(/\s+/).map((Z)=>Or(Z,X)).join(" ")},Or=(Q,X)=>{Q=Q.trim();let Z=X.loose?m8[C8.XRANGELOOSE]:m8[C8.XRANGE];return Q.replace(Z,(J,G,Y,H,K,z)=>{C6("xRange",Q,J,G,Y,H,K,z);let W=N8(Y),$=W||N8(H),q=$||N8(K),B=q;if(G==="="&&B)G="";if(z=X.includePrerelease?"-0":"",W)if(G===">"||G==="<")J="<0.0.0-0";else J="*";else if(G&&B){if($)H=0;if(K=0,G===">")if(G=">=",$)Y=+Y+1,H=0,K=0;else H=+H+1,K=0;else if(G==="<=")if(G="<",$)Y=+Y+1;else H=+H+1;if(G==="<")z="-0";J=`${G+Y}.${H}.${K}${z}`}else if($)J=`>=${Y}.0.0${z} <${+Y+1}.0.0-0`;else if(q)J=`>=${Y}.${H}.0${z} <${Y}.${+H+1}.0-0`;return C6("xRange return",J),J})},wr=(Q,X)=>{return C6("replaceStars",Q,X),Q.trim().replace(m8[C8.STAR],"")},Er=(Q,X)=>{return C6("replaceGTE0",Q,X),Q.trim().replace(m8[X.includePrerelease?C8.GTE0PRE:C8.GTE0],"")},jr=(Q)=>(X,Z,J,G,Y,H,K,z,W,$,q,B)=>{if(N8(J))Z="";else if(N8(G))Z=`>=${J}.0.0${Q?"-0":""}`;else if(N8(Y))Z=`>=${J}.${G}.0${Q?"-0":""}`;else if(H)Z=`>=${Z}`;else Z=`>=${Z}${Q?"-0":""}`;if(N8(W))z="";else if(N8($))z=`<${+W+1}.0.0-0`;else if(N8(q))z=`<${W}.${+$+1}.0-0`;else if(B)z=`<=${W}.${$}.${q}-${B}`;else if(Q)z=`<${W}.${$}.${+q+1}-0`;else z=`<=${z}`;return`${Z} ${z}`.trim()},Sr=(Q,X,Z)=>{for(let J=0;J0){let G=Q[J].semver;if(G.major===X.major&&G.minor===X.minor&&G.patch===X.patch)return!0}}return!1}return!0}});var _X=r((qC1,ER)=>{var dX=Symbol("SemVer ANY");class $3{static get ANY(){return dX}constructor(Q,X){if(X=IR(X),Q instanceof $3)if(Q.loose===!!X.loose)return Q;else Q=Q.value;if(Q=Q.trim().split(/\s+/).join(" "),n$("comparator",Q,X),this.options=X,this.loose=!!X.loose,this.parse(Q),this.semver===dX)this.value="";else this.value=this.operator+this.semver.version;n$("comp",this)}parse(Q){let X=this.options.loose?RR[AR.COMPARATORLOOSE]:RR[AR.COMPARATOR],Z=Q.match(X);if(!Z)throw new TypeError(`Invalid comparator: ${Q}`);if(this.operator=Z[1]!==void 0?Z[1]:"",this.operator==="=")this.operator="";if(!Z[2])this.semver=dX;else this.semver=new OR(Z[2],this.options.loose)}toString(){return this.value}test(Q){if(n$("Comparator.test",Q,this.options.loose),this.semver===dX||Q===dX)return!0;if(typeof Q==="string")try{Q=new OR(Q,this.options)}catch(X){return!1}return i$(Q,this.operator,this.semver,this.options)}intersects(Q,X){if(!(Q instanceof $3))throw new TypeError("a Comparator is required");if(this.operator===""){if(this.value==="")return!0;return new wR(Q.value,X).test(this.value)}else if(Q.operator===""){if(Q.value==="")return!0;return new wR(this.value,X).test(Q.semver)}if(X=IR(X),X.includePrerelease&&(this.value==="<0.0.0-0"||Q.value==="<0.0.0-0"))return!1;if(!X.includePrerelease&&(this.value.startsWith("<0.0.0")||Q.value.startsWith("<0.0.0")))return!1;if(this.operator.startsWith(">")&&Q.operator.startsWith(">"))return!0;if(this.operator.startsWith("<")&&Q.operator.startsWith("<"))return!0;if(this.semver.version===Q.semver.version&&this.operator.includes("=")&&Q.operator.includes("="))return!0;if(i$(this.semver,"<",Q.semver,X)&&this.operator.startsWith(">")&&Q.operator.startsWith("<"))return!0;if(i$(this.semver,">",Q.semver,X)&&this.operator.startsWith("<")&&Q.operator.startsWith(">"))return!0;return!1}}ER.exports=$3;var IR=X3(),{safeRe:RR,t:AR}=K7(),i$=l$(),n$=fX(),OR=$8(),wR=C9()});var uX=r((HC1,jR)=>{var kr=C9(),yr=(Q,X,Z)=>{try{X=new kr(X,Z)}catch(J){return!1}return X.test(Q)};jR.exports=yr});var kR=r((zC1,SR)=>{var xr=C9(),vr=(Q,X)=>new xr(Q,X).set.map((Z)=>Z.map((J)=>J.value).join(" ").trim().split(" "));SR.exports=vr});var xR=r((KC1,yR)=>{var gr=$8(),hr=C9(),fr=(Q,X,Z)=>{let J=null,G=null,Y=null;try{Y=new hr(X,Z)}catch(H){return null}return Q.forEach((H)=>{if(Y.test(H)){if(!J||G.compare(H)===-1)J=H,G=new gr(J,Z)}}),J};yR.exports=fr});var gR=r(($C1,vR)=>{var br=$8(),mr=C9(),_r=(Q,X,Z)=>{let J=null,G=null,Y=null;try{Y=new mr(X,Z)}catch(H){return null}return Q.forEach((H)=>{if(Y.test(H)){if(!J||G.compare(H)===1)J=H,G=new br(J,Z)}}),J};vR.exports=_r});var bR=r((BC1,fR)=>{var o$=$8(),dr=C9(),hR=bX(),ur=(Q,X)=>{Q=new dr(Q,X);let Z=new o$("0.0.0");if(Q.test(Z))return Z;if(Z=new o$("0.0.0-0"),Q.test(Z))return Z;Z=null;for(let J=0;J{let K=new o$(H.semver.version);switch(H.operator){case">":if(K.prerelease.length===0)K.patch++;else K.prerelease.push(0);K.raw=K.format();case"":case">=":if(!Y||hR(K,Y))Y=K;break;case"<":case"<=":break;default:throw new Error(`Unexpected operation: ${H.operator}`)}}),Y&&(!Z||hR(Z,Y)))Z=Y}if(Z&&Q.test(Z))return Z;return null};fR.exports=ur});var _R=r((UC1,mR)=>{var pr=C9(),lr=(Q,X)=>{try{return new pr(Q,X).range||"*"}catch(Z){return null}};mR.exports=lr});var B3=r((VC1,lR)=>{var cr=$8(),pR=_X(),{ANY:ir}=pR,nr=C9(),or=uX(),dR=bX(),uR=W3(),ar=H3(),sr=q3(),tr=(Q,X,Z,J)=>{Q=new cr(Q,J),X=new nr(X,J);let G,Y,H,K,z;switch(Z){case">":G=dR,Y=ar,H=uR,K=">",z=">=";break;case"<":G=uR,Y=sr,H=dR,K="<",z="<=";break;default:throw new TypeError('Must provide a hilo val of "<" or ">"')}if(or(Q,X,J))return!1;for(let W=0;W{if(D.semver===ir)D=new pR(">=0.0.0");if(q=q||D,B=B||D,G(D.semver,q.semver,J))q=D;else if(H(D.semver,B.semver,J))B=D}),q.operator===K||q.operator===z)return!1;if((!B.operator||B.operator===K)&&Y(Q,B.semver))return!1;else if(B.operator===z&&H(Q,B.semver))return!1}return!0};lR.exports=tr});var iR=r((PC1,cR)=>{var rr=B3(),er=(Q,X,Z)=>rr(Q,X,">",Z);cR.exports=er});var oR=r((FC1,nR)=>{var Qe=B3(),Ze=(Q,X,Z)=>Qe(Q,X,"<",Z);nR.exports=Ze});var tR=r((DC1,sR)=>{var aR=C9(),Xe=(Q,X,Z)=>{return Q=new aR(Q,Z),X=new aR(X,Z),Q.intersects(X,Z)};sR.exports=Xe});var eR=r((LC1,rR)=>{var Je=uX(),Ge=L9();rR.exports=(Q,X,Z)=>{let J=[],G=null,Y=null,H=Q.sort(($,q)=>Ge($,q,Z));for(let $ of H)if(Je($,X,Z)){if(Y=$,!G)G=$}else{if(Y)J.push([G,Y]);Y=null,G=null}if(G)J.push([G,null]);let K=[];for(let[$,q]of J)if($===q)K.push($);else if(!q&&$===H[0])K.push("*");else if(!q)K.push(`>=${$}`);else if($===H[0])K.push(`<=${q}`);else K.push(`${$} - ${q}`);let z=K.join(" || "),W=typeof X.raw==="string"?X.raw:String(X);return z.length{var QA=C9(),s$=_X(),{ANY:a$}=s$,pX=uX(),t$=L9(),Ye=(Q,X,Z={})=>{if(Q===X)return!0;Q=new QA(Q,Z),X=new QA(X,Z);let J=!1;Q:for(let G of Q.set){for(let Y of X.set){let H=qe(G,Y,Z);if(J=J||H!==null,H)continue Q}if(J)return!1}return!0},We=[new s$(">=0.0.0-0")],ZA=[new s$(">=0.0.0")],qe=(Q,X,Z)=>{if(Q===X)return!0;if(Q.length===1&&Q[0].semver===a$)if(X.length===1&&X[0].semver===a$)return!0;else if(Z.includePrerelease)Q=We;else Q=ZA;if(X.length===1&&X[0].semver===a$)if(Z.includePrerelease)return!0;else X=ZA;let J=new Set,G,Y;for(let D of Q)if(D.operator===">"||D.operator===">=")G=XA(G,D,Z);else if(D.operator==="<"||D.operator==="<=")Y=JA(Y,D,Z);else J.add(D.semver);if(J.size>1)return null;let H;if(G&&Y){if(H=t$(G.semver,Y.semver,Z),H>0)return null;else if(H===0&&(G.operator!==">="||Y.operator!=="<="))return null}for(let D of J){if(G&&!pX(D,String(G),Z))return null;if(Y&&!pX(D,String(Y),Z))return null;for(let F of X)if(!pX(D,String(F),Z))return!1;return!0}let K,z,W,$,q=Y&&!Z.includePrerelease&&Y.semver.prerelease.length?Y.semver:!1,B=G&&!Z.includePrerelease&&G.semver.prerelease.length?G.semver:!1;if(q&&q.prerelease.length===1&&Y.operator==="<"&&q.prerelease[0]===0)q=!1;for(let D of X){if($=$||D.operator===">"||D.operator===">=",W=W||D.operator==="<"||D.operator==="<=",G){if(B){if(D.semver.prerelease&&D.semver.prerelease.length&&D.semver.major===B.major&&D.semver.minor===B.minor&&D.semver.patch===B.patch)B=!1}if(D.operator===">"||D.operator===">="){if(K=XA(G,D,Z),K===D&&K!==G)return!1}else if(G.operator===">="&&!pX(G.semver,String(D),Z))return!1}if(Y){if(q){if(D.semver.prerelease&&D.semver.prerelease.length&&D.semver.major===q.major&&D.semver.minor===q.minor&&D.semver.patch===q.patch)q=!1}if(D.operator==="<"||D.operator==="<="){if(z=JA(Y,D,Z),z===D&&z!==Y)return!1}else if(Y.operator==="<="&&!pX(Y.semver,String(D),Z))return!1}if(!D.operator&&(Y||G)&&H!==0)return!1}if(G&&W&&!Y&&H!==0)return!1;if(Y&&$&&!G&&H!==0)return!1;if(B||q)return!1;return!0},XA=(Q,X,Z)=>{if(!Q)return X;let J=t$(Q.semver,X.semver,Z);return J>0?Q:J<0?X:X.operator===">"&&Q.operator===">="?X:Q},JA=(Q,X,Z)=>{if(!Q)return X;let J=t$(Q.semver,X.semver,Z);return J<0?Q:J>0?X:X.operator==="<"&&Q.operator==="<="?X:Q};GA.exports=Ye});var zA=r((NC1,HA)=>{var r$=K7(),WA=hX(),He=$8(),qA=d$(),ze=IZ(),Ke=yI(),$e=vI(),Be=fI(),Ue=_I(),Ve=uI(),Pe=lI(),Fe=iI(),De=oI(),Le=L9(),Ce=rI(),Ne=QR(),Te=Y3(),Me=GR(),Ie=WR(),Re=bX(),Ae=W3(),Oe=u$(),we=p$(),Ee=q3(),je=H3(),Se=l$(),ke=PR(),ye=_X(),xe=C9(),ve=uX(),ge=kR(),he=xR(),fe=gR(),be=bR(),me=_R(),_e=B3(),de=iR(),ue=oR(),pe=tR(),le=eR(),ce=YA();HA.exports={parse:ze,valid:Ke,clean:$e,inc:Be,diff:Ue,major:Ve,minor:Pe,patch:Fe,prerelease:De,compare:Le,rcompare:Ce,compareLoose:Ne,compareBuild:Te,sort:Me,rsort:Ie,gt:Re,lt:Ae,eq:Oe,neq:we,gte:Ee,lte:je,cmp:Se,coerce:ke,Comparator:ye,Range:xe,satisfies:ve,toComparators:ge,maxSatisfying:he,minSatisfying:fe,minVersion:be,validRange:me,outside:_e,gtr:de,ltr:ue,intersects:pe,simplifyRange:le,subset:ce,SemVer:He,re:r$.re,src:r$.src,tokens:r$.t,SEMVER_SPEC_VERSION:WA.SEMVER_SPEC_VERSION,RELEASE_TYPES:WA.RELEASE_TYPES,compareIdentifiers:qA.compareIdentifiers,rcompareIdentifiers:qA.rcompareIdentifiers}});var $11={};LJ($11,{default:()=>WB});module.exports=Ww($11);var gZ=(Q)=>Array.isArray(Q)?Q:[Q],KU=(Q,X)=>{let Z=[[],[]];for(let J of Q)if(X(J))Z[0].push(J);else Z[1].push(J);return Z},CJ=Array,PQ=(Q,X)=>Q.includes(X);var h0=(Q,X,Z)=>{if(Q===void 0)return X===void 0?[]:Array.isArray(X)?X:[X];if(Z?.prepend)if(Array.isArray(X))Q.unshift(...X);else Q.unshift(X);else if(Array.isArray(X))Q.push(...X);else Q.push(X);return Q},bQ=(Q,X)=>{if(X===void 0||X===null)return Q??[];if(Q===void 0||Q===null)return gZ(X);return Q.concat(X)};var FQ=(Q,X,Z)=>{if(Q===void 0)return Array.isArray(X)?X:[X];let J=Z?.isEqual??((G,Y)=>G===Y);return gZ(X).forEach((G)=>{if(!Q.some((Y)=>J(Y,G)))Q.push(G)}),Q},NJ=(Q,X)=>Q.reduce((Z,J)=>{let G=J[X];return Z[G]=h0(Z[G],J),Z},{}),hZ=(Q,X,Z)=>Q.length===X.length&&Q.every(Z?.isEqual?(J,G)=>Z.isEqual(J,X[G]):(J,G)=>J===X[G]);var M8=(Q,X)=>P8(Q)===X,P8=(Q)=>{let X=typeof Q;return X==="object"?Q===null?"null":"object":X==="function"?"object":X},Y9={boolean:"boolean",null:"null",undefined:"undefined",bigint:"a bigint",number:"a number",object:"an object",string:"a string",symbol:"a symbol"},$U={...Y9,function:"a function"};var w0=(Q,X)=>{let Z=Array.isArray(Q),J=Object.entries(Q).flatMap((Y,H)=>{let K=Z?X(H,Y[1]):X(...Y,H);return Array.isArray(K[0])||K.length===0?K:[K]}),G=Object.fromEntries(J);return typeof J[0]?.[0]==="number"?Object.values(G):G};var d3=Object.entries;var a6=(Q,X)=>(Q in X);class u3{constructor(Q){Object.assign(this,Q)}}var BU=class{};class O7 extends BU{}var qw=(Q,X)=>{let Z={},J={},G;for(G in Q)if(G in X)Z[G]=Q[G];else J[G]=Q[G];return[Z,J]};var UU=(Q,X)=>qw(Q,X)[1],O9=(Q)=>Object.keys(Q).length===0,w7=(Q)=>[...Object.entries(Q),...Object.getOwnPropertySymbols(Q).map((X)=>[X,Q[X]])],VU=(Q,X)=>Object.defineProperties(Q,Object.getOwnPropertyDescriptors(X));var h4=Symbol("represents an uninitialized value");var p3={Array,Boolean,Date,Error,Function,Map,Number,Promise,RegExp,Set,String,WeakMap,WeakSet},l3=globalThis.File??Blob,c3={ArrayBuffer,Blob,File:l3,FormData,Headers,Request,Response,URL},Hw={Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array,BigInt64Array,BigUint64Array},f4={...p3,...c3,...Hw,String,Number,Boolean},E7=(Q)=>{let X=Object.getPrototypeOf(Q);while(X?.constructor&&(!a6(X.constructor.name,f4)||!(Q instanceof f4[X.constructor.name])))X=Object.getPrototypeOf(X);let Z=X?.constructor?.name;if(Z===void 0||Z==="Object")return;return Z},j7=(Q)=>typeof Q==="object"&&Q!==null?E7(Q)??"object":P8(Q);var G6=Array.isArray,zw={Array:"an array",Function:"a function",Date:"a Date",RegExp:"a RegExp",Error:"an Error",Map:"a Map",Set:"a Set",String:"a String object",Number:"a Number object",Boolean:"a Boolean object",Promise:"a Promise",WeakMap:"a WeakMap",WeakSet:"a WeakSet"},Kw={ArrayBuffer:"an ArrayBuffer instance",Blob:"a Blob instance",File:"a File instance",FormData:"a FormData instance",Headers:"a Headers instance",Request:"a Request instance",Response:"a Response instance",URL:"a URL instance"},$w={Int8Array:"an Int8Array",Uint8Array:"a Uint8Array",Uint8ClampedArray:"a Uint8ClampedArray",Int16Array:"an Int16Array",Uint16Array:"a Uint16Array",Int32Array:"an Int32Array",Uint32Array:"a Uint32Array",Float32Array:"a Float32Array",Float64Array:"a Float64Array",BigInt64Array:"a BigInt64Array",BigUint64Array:"a BigUint64Array"},PU={...zw,...Kw,...$w},S7=(Q)=>{let X=Object(Q).name??null;return X&&a6(X,f4)&&f4[X]===Q?X:null};var i3=(Q,X)=>{let Z=Q.prototype;while(Z!==null){if(Z===X.prototype)return!0;Z=Object.getPrototypeOf(Z)}return!1};var FU=(Q)=>DU(Q,new Map),DU=(Q,X)=>{if(typeof Q!=="object"||Q===null)return Q;if(X?.has(Q))return X.get(Q);let Z=S7(Q.constructor);if(Z==="Date")return new Date(Q.getTime());if(Z&&Z!=="Array")return Q;let J=Array.isArray(Q)?Q.slice():Object.create(Object.getPrototypeOf(Q)),G=Object.getOwnPropertyDescriptors(Q);if(X){X.set(Q,J);for(let Y in G)G[Y].value=DU(G[Y].value,X)}return Object.defineProperties(J,G),J};class LU extends Error{}var a0=(Q)=>b4(Q,LU),b4=(Q,X=Error)=>{throw new X(Q)};class TJ extends Error{name="ParseError"}var I1=(Q)=>b4(Q,TJ),fZ=(Q)=>` ${Q}`;var Bw=(Q)=>{let X=h4;return()=>X===h4?X=Q():X},mQ=(Q)=>typeof Q==="function"&&Q.length===0;var CU=class extends Function{constructor(...Q){let X=Q.slice(0,-1),Z=Q.at(-1);try{super(...X,Z)}catch(J){return a0(`Encountered an unexpected error while compiling your definition: - Message: ${J} - Source: (${Q.slice(0,-1)}) => { - ${Q.at(-1)} - }`)}}};class _Q{constructor(Q,...[X]){return Object.assign(Object.setPrototypeOf(Q.bind(X?.bind??this),this.constructor.prototype),X?.attach)}}var NU=Bw(()=>{try{return new Function("return false")()}catch{return!0}});var TU=fZ("arkInferred");var y11=fZ("args");class X8{constructor(){}}var MU=(Q)=>Q[0].toUpperCase()+Q.slice(1);var n3=(Q)=>new RegExp(Uw(Q),typeof Q==="string"?"":Q.flags);var Uw=(Q)=>{return`^(?:${typeof Q==="string"?Q:Q.source})$`};var DQ={negativeLookahead:(Q)=>`(?!${Q})`,nonCapturingGroup:(Q)=>`(?:${Q})`},k7="\\",dQ={" ":1,"\n":1,"\t":1};var Vw=/^-0\.?0*$/.source,RU=/[1-9]\d*/.source,Pw=/\.\d+/.source,Fw=/\.\d*[1-9]/.source,AU=(Q)=>n3(DQ.negativeLookahead(Vw)+DQ.nonCapturingGroup("-?"+DQ.nonCapturingGroup(DQ.nonCapturingGroup("0|"+RU)+DQ.nonCapturingGroup(Q.decimalPattern)+"?")+(Q.allowDecimalOnly?"":"|"+Q.decimalPattern)+"?")),IU=AU({decimalPattern:Fw,allowDecimalOnly:!1}),Dw=IU.test.bind(IU),OU=AU({decimalPattern:Pw,allowDecimalOnly:!0}),Lw=/^-?\d*\.?\d*$/,Cw=(Q)=>Q.length!==0&&Lw.test(Q),y7=n3(DQ.negativeLookahead("^-0$")+"-?"+DQ.nonCapturingGroup(DQ.nonCapturingGroup("0|"+RU))),Nw=y7.test.bind(y7),o3=/^-?\d+$/,Tw=o3.test.bind(o3),wU={number:"a number",bigint:"a bigint",integer:"an integer"},EU=(Q,X)=>`'${Q}' was parsed as ${wU[X]} but could not be narrowed to a literal value. Avoid unnecessary leading or trailing zeros and other abnormal notation`,Mw=(Q,X)=>X==="number"?Dw(Q):Nw(Q),Iw=(Q,X)=>X==="number"?Number(Q):Number.parseInt(Q),Rw=(Q,X)=>X==="number"?Cw(Q):Tw(Q),jU=(Q,X)=>a3(Q,"number",X),SU=(Q,X)=>a3(Q,"number",{...X,strict:!0}),kU=(Q,X)=>a3(Q,"integer",X),a3=(Q,X,Z)=>{let J=Iw(Q,X);if(!Number.isNaN(J)){if(Rw(Q,X)){if(Z?.strict)return Mw(Q,X)?J:I1(EU(Q,X));return J}}return Z?.errorOnFail?I1(Z?.errorOnFail===!0?`Failed to parse ${wU[X]} from '${Q}'`:Z?.errorOnFail):void 0},yU=(Q)=>{if(Q[Q.length-1]!=="n")return;let X=Q.slice(0,-1),Z;try{Z=BigInt(X)}catch{return}if(y7.test(X))return Z;if(o3.test(X))return I1(EU(Q,"bigint"))};var Aw="0.30.0",Ow={version:Aw,filename:"mcp-tools-for-obsidian.ts",FileConstructor:l3},m4=Ow,xU=new WeakMap,s3=Object.create(null),x7=(Q)=>{let X=xU.get(Q);if(X)return X;let Z=ww(Q);if(s3[Z])Z=`${Z}${s3[Z]++}`;else s3[Z]=1;return m4[Z]=Q,xU.set(Q,Z),Z},bZ=(Q)=>/^[a-zA-Z_$][a-zA-Z_$0-9]*$/.test(Q),ww=(Q)=>{switch(typeof Q){case"object":{if(Q===null)break;let X=E7(Q)??"object";return X[0].toLowerCase()+X.slice(1)}case"function":return bZ(Q.name)?Q.name:"fn";case"symbol":return Q.description&&bZ(Q.description)?Q.description:"symbol"}return a0(`Unexpected attempt to register serializable value of type ${P8(Q)}`)};var MJ=(Q)=>typeof Q==="string"?JSON.stringify(Q):typeof Q==="bigint"?`${Q}n`:`${Q}`;var vU=(Q,X={})=>v7(Q,{onUndefined:"$ark.undefined",onBigInt:(Z)=>`$ark.bigint-${Z}`,...X},[]);var O0=(Q,X)=>{switch(P8(Q)){case"object":let Z=Q,J=Z.constructor.name;return J==="Object"||J==="Array"?JSON.stringify(v7(Z,IJ,[]),null,X):Z instanceof Date?_4(Z):typeof Z.expression==="string"?Z.expression:J;case"symbol":return IJ.onSymbol(Q);default:return MJ(Q)}},IJ={onCycle:()=>"(cycle)",onSymbol:(Q)=>`Symbol(${x7(Q)})`,onFunction:(Q)=>`Function(${x7(Q)})`},v7=(Q,X,Z)=>{switch(P8(Q)){case"object":{let J=Q;if("toJSON"in J&&typeof J.toJSON==="function")return J.toJSON();if(typeof J==="function")return IJ.onFunction(J);if(Z.includes(J))return"(cycle)";let G=[...Z,J];if(Array.isArray(J))return J.map((H)=>v7(H,X,G));if(J instanceof Date)return J.toDateString();let Y={};for(let H in J)Y[H]=v7(J[H],X,G);for(let H of Object.getOwnPropertySymbols(J))Y[X.onSymbol?.(H)??H.toString()]=v7(J[H],X,G);return Y}case"symbol":return IJ.onSymbol(Q);case"bigint":return X.onBigInt?.(Q)??`${Q}n`;case"undefined":return X.onUndefined??"undefined";default:return Q}},_4=(Q)=>{let X=Q.getFullYear(),Z=Q.getMonth(),J=Q.getDate(),G=Q.getHours(),Y=Q.getMinutes(),H=Q.getSeconds(),K=Q.getMilliseconds();if(Z===0&&J===1&&G===0&&Y===0&&H===0&&K===0)return`${X}`;let z=`${Ew[Z]} ${J}, ${X}`;if(G===0&&Y===0&&H===0&&K===0)return z;let W=Q.toLocaleTimeString(),$=W.endsWith(" AM")||W.endsWith(" PM")?W.slice(-3):"";if($)W=W.slice(0,-$.length);if(K)W+=`.${Sw(K,3)}`;else if(jw.test(W))W=W.slice(0,-3);return`${W+$}, ${z}`},Ew=["January","February","March","April","May","June","July","August","September","October","November","December"],jw=/:\d\d:00$/,Sw=(Q,X)=>String(Q).padStart(X,"0");var gU=(Q,X,...[Z])=>{let J=Z?.stringifySymbol??O0,G=Q;switch(typeof X){case"string":G=bZ(X)?Q===""?X:`${Q}.${X}`:`${Q}[${JSON.stringify(X)}]`;break;case"number":G=`${Q}[${X}]`;break;case"symbol":G=`${Q}[${J(X)}]`;break;default:if(Z?.stringifyNonKey)G=`${Q}[${Z.stringifyNonKey(X)}]`;else I1(`${O0(X)} must be a PropertyKey or stringifyNonKey must be passed to options`)}return G},d4=(Q,...X)=>Q.reduce((Z,J)=>gU(Z,J,...X),"");class u4 extends CJ{cache={};constructor(...Q){super();this.push(...Q)}stringify(){if(this.cache.stringify)return this.cache.stringify;return this.cache.stringify=d4(this)}stringifyAncestors(){if(this.cache.stringifyAncestors)return this.cache.stringifyAncestors;let Q="",X=[Q];return this.forEach((Z)=>{Q=gU(Q,Z),X.push(Q)}),this.cache.stringifyAncestors=X}}class t3{chars;i;def;constructor(Q){this.def=Q,this.chars=[...Q],this.i=0}shift(){return this.chars[this.i++]??""}get lookahead(){return this.chars[this.i]??""}get nextLookahead(){return this.chars[this.i+1]??""}get length(){return this.chars.length}shiftUntil(Q){let X="";while(this.lookahead){if(Q(this,X))if(X[X.length-1]===k7)X=X.slice(0,-1);else break;X+=this.shift()}return X}shiftUntilLookahead(Q){return typeof Q==="string"?this.shiftUntil((X)=>X.lookahead===Q):this.shiftUntil((X)=>(X.lookahead in Q))}shiftUntilNonWhitespace(){return this.shiftUntil(()=>!(this.lookahead in dQ))}jumpToIndex(Q){this.i=Q<0?this.length+Q:Q}jumpForward(Q){this.i+=Q}get location(){return this.i}get unscanned(){return this.chars.slice(this.i,this.length).join("")}get scanned(){return this.chars.slice(0,this.i).join("")}sliceChars(Q,X){return this.chars.slice(Q,X).join("")}lookaheadIs(Q){return this.lookahead===Q}lookaheadIsIn(Q){return this.lookahead in Q}}var Y01=Symbol("implementedTraits");var r3="$ark",e3=2;while(r3 in globalThis)r3=`$ark${e3++}`;var hU=r3;globalThis[hU]=m4;var E1=m4;if(e3!==2){let Q=globalThis,X=[Q.$ark];for(let G=2;G1)console.warn(`File ${G} was initialized multiple times, likely due to being imported from both CJS and ESM contexts.`);if(J.length>1)console.warn("Registries were initialized at the following paths:"+J.map((G)=>` ${G} (@ark/util version ${Z[G][0].version})`).join(` -`))}var kw=(Q)=>`${hU}.${Q}`,g6=(Q)=>kw(x7(Q));class RJ extends O7{argNames;body="";constructor(...Q){super();this.argNames=Q;for(let X of Q){if(X in this)throw new Error(`Arg name '${X}' would overwrite an existing property on FunctionBody`);this[X]=X}}indentation=0;indent(){return this.indentation+=4,this}dedent(){return this.indentation-=4,this}prop(Q,X=!1){return QH(Q,X)}index(Q,X=!1){return fU(`${Q}`,X)}line(Q){return this.body+=`${" ".repeat(this.indentation)}${Q} -`,this}const(Q,X){return this.line(`const ${Q} = ${X}`),this}let(Q,X){return this.line(`let ${Q} = ${X}`)}set(Q,X){return this.line(`${Q} = ${X}`)}if(Q,X){return this.block(`if (${Q})`,X)}elseIf(Q,X){return this.block(`else if (${Q})`,X)}else(Q){return this.block("else",Q)}for(Q,X,Z=0){return this.block(`for (let i = ${Z}; ${Q}; i++)`,X)}forIn(Q,X){return this.block(`for (const k in ${Q})`,X)}block(Q,X,Z=""){return this.line(`${Q} {`),this.indent(),X(this),this.dedent(),this.line(`}${Z}`)}return(Q=""){return this.line(`return ${Q}`)}write(Q="anonymous"){return`${Q}(${this.argNames.join(", ")}) { -${this.body}}`}compile(){return new CU(...this.argNames,this.body)}}var LQ=(Q)=>M8(Q,"object")||typeof Q==="symbol"?g6(Q):MJ(Q),QH=(Q,X=!1)=>{if(typeof Q==="string"&&bZ(Q))return`${X?"?":""}.${Q}`;return fU(yw(Q),X)},yw=(Q)=>typeof Q==="symbol"?g6(Q):JSON.stringify(Q),fU=(Q,X=!1)=>`${X?"?.":""}[${Q}]`;class AJ extends RJ{path=[];discriminants=[];traversalKind;constructor(Q){super("data","ctx");this.traversalKind=Q}invoke(Q,X){let Z=X?.arg??this.data,J=typeof Q==="string"?!0:this.requiresContextFor(Q),G=typeof Q==="string"?Q:Q.id;if(J)return`${this.referenceToId(G,X)}(${Z}, ${this.ctx})`;return`${this.referenceToId(G,X)}(${Z})`}referenceToId(Q,X){let Z=X?.kind??this.traversalKind,J=`this.${Q}${Z}`;return X?.bind?`${J}.bind(${X?.bind})`:J}requiresContextFor(Q){return this.traversalKind==="Apply"||Q.allowsRequiresContext}initializeErrorCount(){return this.const("errorCount","ctx.currentErrorCount")}returnIfFail(){return this.if("ctx.currentErrorCount > errorCount",()=>this.return())}returnIfFailFast(){return this.if("ctx.failFast && ctx.currentErrorCount > errorCount",()=>this.return())}traverseKey(Q,X,Z){let J=this.requiresContextFor(Z);if(J)this.line(`${this.ctx}.path.push(${Q})`);if(this.check(Z,{arg:X}),J)this.line(`${this.ctx}.path.pop()`);return this}check(Q,X){return this.traversalKind==="Allows"?this.if(`!${this.invoke(Q,X)}`,()=>this.return(!1)):this.line(this.invoke(Q,X))}}var OJ=(Q)=>w0(Q,(X,Z)=>[X,G6(Z)?[...Z]:Z]),I8=fZ("arkKind"),r1=(Q,X)=>Q?.[I8]===X,F6=(Q)=>r1(Q,"root")||r1(Q,"constraint");var bU=["unit","proto","domain"],mZ=["required","optional","index","sequence"],ZH=["pattern","divisor","exactLength","max","min","maxLength","minLength","before","after"],wJ=[...ZH,...mZ,"structure","predicate"],_Z=["alias","union","morph","unit","intersection","proto","domain"],xw=[..._Z,...wJ],EJ=w0(wJ,(Q,X)=>[X,1]),mU=w0([...mZ,"undeclared"],(Q,X)=>[X,1]),_U=w0(xw,(Q,X)=>[X,Q]),dZ=(Q)=>typeof Q==="string"&&(Q in _U);var uZ=(Q)=>_U[Q],jJ=(Q)=>_Z.slice(uZ(Q)+1),d01=[...jJ("union"),"alias"],u01=[...jJ("morph"),"alias"],CQ=(Q)=>{if(typeof Q==="string"||typeof Q==="boolean"||Q===null)return Q;if(typeof Q==="number"){if(Number.isNaN(Q))return"NaN";if(Q===Number.POSITIVE_INFINITY)return"Infinity";if(Q===Number.NEGATIVE_INFINITY)return"-Infinity";return Q}return LQ(Q)},uQ=(Q)=>{let X="{ ";for(let[Z,J]of Object.entries(Q))X+=`${Z}: ${LQ(J)}, `;return X+" }"},N0=(Q)=>{let X=Q;if(X.hasAssociatedError)X.defaults.expected??=(Z)=>("description"in Z)?Z.description:X.defaults.description(Z),X.defaults.actual??=(Z)=>O0(Z),X.defaults.problem??=(Z)=>`must be ${Z.expected}${Z.actual?` (was ${Z.actual})`:""}`,X.defaults.message??=(Z)=>{if(Z.path.length===0)return Z.problem;let J=`${Z.propString} ${Z.problem}`;if(J[0]==="[")return`value at ${J}`;return J};return X};E1.config??={};var vw=(Q,X)=>{let Z={...Q},J;for(J in X)Z[J]=dZ(J)?{...Q[J],...X[J]}:X[J];return Z},dU=(Q,X)=>{if(!X)return Q;return vw(Q,X)},uU=(Q)=>dU(dU(E1.defaultConfig,E1.config),Q);class p4 extends O7{[I8]="error";path;data;nodeConfig;input;constructor(Q,X){super();this.input=Q,VU(this,Q);let Z=X.data;if(Q.code==="union")Q.errors=Q.errors.flatMap((J)=>J.hasCode("union")?J.errors:J);this.nodeConfig=X.config[this.code],this.path=Q.relativePath?new u4(...X.path,...Q.relativePath):Q.path?new u4(...Q.path):new u4(...X.path),this.data="data"in Q?Q.data:Z}hasCode(Q){return this.code===Q}get propString(){return d4(this.path)}get expected(){return this.input.expected??this.nodeConfig.expected?.(this.input)}get actual(){return this.input.actual??this.nodeConfig.actual?.(this.data)}get problem(){return this.input.problem??this.nodeConfig.problem(this)}get message(){return this.input.message??this.nodeConfig.message(this)}toString(){return this.message}throw(){throw this}}class R8 extends CJ{ctx;constructor(Q){super();this.ctx=Q}byPath=Object.create(null);byAncestorPath=Object.create(null);count=0;mutable=this;add(Q){if(this.includes(Q))return;this._add(Q)}affectsPath(Q){if(this.length===0)return!1;return Q.stringifyAncestors().some((X)=>(X in this.byPath))||Q.stringify()in this.byAncestorPath}_add(Q){let X=this.byPath[Q.propString];if(X){let Z=new p4({code:"intersection",errors:X.hasCode("intersection")?[...X.errors,Q]:[X,Q]},this.ctx),J=this.indexOf(X);this.mutable[J===-1?this.length:J]=Z,this.byPath[Q.propString]=Z,this.addAncestorPaths(Q)}else this.byPath[Q.propString]=Q,this.addAncestorPaths(Q),this.mutable.push(Q);this.count++}addAncestorPaths(Q){Q.path.stringifyAncestors().forEach((X)=>{this.byAncestorPath[X]=h0(this.byAncestorPath[X],Q)})}merge(Q){Q.forEach((X)=>{if(this.includes(X))return;this._add(new p4({...X,path:[...this.ctx.path,...X.path]},this.ctx))})}get summary(){return this.toString()}get message(){return this.toString()}get issues(){return this}toString(){return this.join(` -`)}throw(){throw new AggregateError(this,this.message)}}class SJ{path=[];queuedMorphs=[];errors=new R8(this);branches=[];seen={};root;config;constructor(Q,X){this.root=Q,this.config=X}get currentBranch(){return this.branches.at(-1)}queueMorphs(Q){let X={path:new u4(...this.path),morphs:Q};if(this.currentBranch)this.currentBranch.queuedMorphs.push(X);else this.queuedMorphs.push(X)}finalize(){if(!this.queuedMorphs.length)return this.hasError()?this.errors:this.root;if(typeof this.root==="object"&&this.root!==null&&this.config.clone)this.root=this.config.clone(this.root);return this.applyQueuedMorphs(),this.hasError()?this.errors:this.root}applyQueuedMorphs(){while(this.queuedMorphs.length){let Q=this.queuedMorphs;this.queuedMorphs=[];for(let{path:X,morphs:Z}of Q){if(this.errors.affectsPath(X))continue;this.applyMorphsAtPath(X,Z)}}}applyMorphsAtPath(Q,X){let Z=Q.at(-1),J;if(Z!==void 0){J=this.root;for(let G=0;G{if(!Z)return X();Z.path.push(Q);let J=X();return Z.path.pop(),J};class g7 extends _Q{attachments;$;constructor(Q,X){super((Z,J)=>{if(!this.includesMorph&&!this.allowsRequiresContext&&this.allows(Z))return Z;if(J)return this.traverseApply(Z,J),J.hasError()?J.errors:J.data;let G=new SJ(Z,this.$.resolvedConfig);return this.traverseApply(Z,G),G.finalize()},{attach:Q});this.attachments=Q,this.$=X}withMeta(Q){return this.$.node(this.kind,{...this.inner,meta:typeof Q==="function"?Q({...this.meta}):Q})}includesMorph=this.kind==="morph"||this.hasKind("optional")&&this.hasDefault()||this.hasKind("sequence")&&this.defaultablesLength!==0||this.hasKind("structure")&&this.undeclared==="delete"||this.children.some((Q)=>Q.includesMorph);hasContextualPredicate=this.hasKind("predicate")&&this.inner.predicate.length!==1||this.children.some((Q)=>Q.hasContextualPredicate);isCyclic=this.kind==="alias"||this.children.some((Q)=>Q.isCyclic);allowsRequiresContext=this.hasContextualPredicate||this.isCyclic;referencesById=this.children.reduce((Q,X)=>Object.assign(Q,X.referencesById),{[this.id]:this});cacheGetter(Q,X){return Object.defineProperty(this,Q,{value:X}),X}get description(){let Q=this.$?.resolvedConfig[this.kind].description??E1.config[this.kind]?.description??E1.defaultConfig[this.kind].description;return this.cacheGetter("description",this.meta?.description??Q(this))}get references(){return Object.values(this.referencesById)}get shallowReferences(){return this.cacheGetter("shallowReferences",this.hasKind("structure")?[this,...this.children]:this.children.reduce((Q,X)=>fw(Q,X.shallowReferences),[this]))}get shallowMorphs(){return this.cacheGetter("shallowMorphs",this.shallowReferences.filter((Q)=>Q.hasKind("morph")).sort((Q,X)=>Q.expressionpZ(Q,X.flatRefs),[]).sort((Q,X)=>Q.path.length>X.path.length?1:Q.path.lengthX.propString?1:Q.propString{if(this.allowsRequiresContext)return this.traverseAllows(Q,new SJ(Q,this.$.resolvedConfig));return this.traverseAllows(Q)};traverse(Q){return this(Q)}get in(){return this.cacheGetter("in",this.getIo("in"))}get out(){return this.cacheGetter("out",this.getIo("out"))}getIo(Q){if(!this.includesMorph)return this;let X={};for(let[Z,J]of this.innerEntries){let G=this.impl.keys[Z];if(G.reduceIo)G.reduceIo(Q,X,J);else if(G.child){let Y=J;X[Z]=G6(Y)?Y.map((H)=>H[Q]):Y[Q]}else X[Z]=J}return this.$.node(this.kind,X)}toJSON(){return this.json}toString(){return this.expression}equals(Q){let X=F6(Q)?Q:this.$.parseDefinition(Q);return this.innerHash===X.innerHash}ifEquals(Q){return this.equals(Q)?this:void 0}hasKind(Q){return this.kind===Q}assertHasKind(Q){if(this.kind!==Q)b4(`${this.kind} node was not of asserted kind ${Q}`);return this}hasKindIn(...Q){return Q.includes(this.kind)}assertHasKindIn(...Q){if(!PQ(Q,this.kind))b4(`${this.kind} node was not one of asserted kinds ${Q}`);return this}isBasis(){return PQ(bU,this.kind)}isConstraint(){return PQ(wJ,this.kind)}isStructural(){return PQ(mZ,this.kind)}isRefinement(){return PQ(ZH,this.kind)}isRoot(){return PQ(_Z,this.kind)}isUnknown(){return this.hasKind("intersection")&&this.children.length===0}isNever(){return this.hasKind("union")&&this.children.length===0}hasUnit(Q){return this.hasKind("unit")&&this.allows(Q)}hasOpenIntersection(){return this.impl.intersectionIsOpen}get nestableExpression(){return this.expression}firstReference(Q){return this.references.find((X)=>X!==this&&Q(X))}firstReferenceOrThrow(Q){return this.firstReference(Q)??b4(`${this.id} had no references matching predicate ${Q}`)}firstReferenceOfKind(Q){return this.firstReference((X)=>X.hasKind(Q))}firstReferenceOfKindOrThrow(Q){return this.firstReference((X)=>X.kind===Q)??b4(`${this.id} had no ${Q} references`)}transform(Q,X){return this._transform(Q,{...X,seen:{},path:[],parseOptions:{prereduced:X?.prereduced??!1},undeclaredKeyHandling:void 0})}_transform(Q,X){let Z=X.bindScope??this.$;if(X.seen[this.id])return this.$.lazilyResolve(X.seen[this.id]);if(X.shouldTransform?.(this,X)===!1)return this;let J;if(X.seen[this.id]=()=>J,this.hasKind("structure")&&this.undeclared!==X.undeclaredKeyHandling)X={...X,undeclaredKeyHandling:this.undeclared};let G=w0(this.inner,(H,K)=>{if(!this.impl.keys[H].child)return[H,K];let z=K;if(!G6(z)){let $=z._transform(Q,X);return $?[H,$]:[]}if(z.length===0)return[H,K];let W=z.flatMap(($)=>{return $._transform(Q,X)??[]});return W.length?[H,W]:[]});delete X.seen[this.id];let Y=Q(this.kind,G,X);if(Y===null)return null;if(F6(Y))return J=Y;if(O9(Y)&&!O9(this.inner))return null;if((this.kind==="required"||this.kind==="optional"||this.kind==="index")&&!("value"in Y))return X.undeclaredKeyHandling?{...Y,value:E1.intrinsic.unknown}:null;if(this.kind==="morph")Y.in??=E1.intrinsic.unknown;return J=Z.node(this.kind,Y,X.parseOptions)}configureShallowDescendants(Q){return this.$.finalize(this.transform((X,Z)=>({...Z,meta:Q}),{shouldTransform:(X)=>X.kind!=="structure"}))}}var gw=(Q)=>d4(Q,{stringifyNonKey:(X)=>X.expression}),w9=(Q,X)=>({path:Q,node:X,propString:gw(Q)}),hw=(Q,X)=>Q.propString===X.propString&&Q.node.equals(X.node),pZ=(Q,X)=>FQ(Q,X,{isEqual:hw}),fw=(Q,X)=>FQ(Q,X,{isEqual:(Z,J)=>Z.equals(J)});class p1 extends Array{static init(Q,X,Z,J){return new p1({kind:Q,l:X,r:Z,path:J?.path??[],optional:J?.optional??!1})}add(Q,X,Z,J){return this.push({kind:Q,l:X,r:Z,path:J?.path??[],optional:J?.optional??!1}),this}describeReasons(){if(this.length===1){let{path:Q,l:X,r:Z}=this[0],J=d4(Q);return JH(`Intersection${J&&` at ${J}`} of ${pU(X,Z)}`)}return`The following intersections result in unsatisfiable types: -• ${this.map(({path:Q,l:X,r:Z})=>`${Q}: ${pU(X,Z)}`).join(` -• `)}`}throw(){return I1(this.describeReasons())}invert(){return this.map((Q)=>({...Q,l:Q.r,r:Q.l}))}withPrefixKey(Q,X){return this.map((Z)=>({...Z,path:[Q,...Z.path],optional:Z.optional||X==="optional"}))}toNeverIfDisjoint(){return E1.intrinsic.never}}var pU=(Q,X)=>`${XH(Q)} and ${XH(X)}`,XH=(Q)=>F6(Q)?Q.expression:G6(Q)?Q.map(XH).join(" | ")||"never":String(Q),JH=(Q)=>`${Q} results in an unsatisfiable type`;var lZ={},i8=(Q,X,Z)=>$6(Q,X,{$:Z,invert:!1,pipe:!1}),YH=(Q,X,Z)=>$6(Q,X,{$:Z,invert:!1,pipe:!0}),$6=(Q,X,Z)=>{let J=Z.pipe?"|>":"&",G=`${Q.hash}${J}${X.hash}`;if(lZ[G]!==void 0)return lZ[G];if(!Z.pipe){let K=`${X.hash}${J}${Q.hash}`;if(lZ[K]!==void 0){let z=lZ[K],W=z instanceof p1?z.invert():z;return lZ[G]=W,W}}let Y=!Z.pipe||!Q.includesMorph&&!X.includesMorph;if(Y&&Q.equals(X))return Q;let H=Y?GH(Q,X,Z):Q.hasKindIn(..._Z)?bw(Q,X,Z):GH(Q,X,Z);if(F6(H)){if(Q.equals(H))H=Q;else if(X.equals(H))H=X}return lZ[G]=H,H},GH=(Q,X,Z)=>{let J=Q.precedenceQ.includesMorph||X.includesMorph?Z.invert?lU(X,Q,Z):lU(Q,X,Z):GH(Q,X,Z),lU=(Q,X,Z)=>Q.distribute((J)=>mw(J,X,Z),(J)=>{let G=J.filter(F6);if(G.length===0)return p1.init("union",Q.branches,X.branches);if(G.lengthK.in.equals(G[z].in)))return Z.$.parseSchema(G);let Y;if(G.length===1){let K=G[0];if(!Y)return K;return Z.$.node("morph",{...K.inner,in:K.in.withMeta(Y)})}let H={branches:G};if(Y)H.meta=Y;return Z.$.parseSchema(H)}),mw=(Q,X,Z)=>{if(Q.hasKind("morph")){let G=[...Q.morphs];if(Q.lastMorphIfNode){let Y=$6(Q.lastMorphIfNode,X,Z);if(Y instanceof p1)return Y;G[G.length-1]=Y}else G.push(X);return Z.$.node("morph",{morphs:G,in:Q.inner.in})}if(X.hasKind("morph")){let G=$6(Q,X.in,Z);if(G instanceof p1)return G;return Z.$.node("morph",{morphs:[X],in:G})}return Z.$.node("morph",{morphs:[X],in:Q})};class W9 extends g7{constructor(Q,X){super(Q,X);Object.defineProperty(this,I8,{value:"constraint",enumerable:!1})}impliedSiblings;intersect(Q){return i8(this,Q,this.$)}}class NQ extends W9{traverseApply=(Q,X)=>{if(!this.traverseAllows(Q,X))X.error(this.errorContext)};compile(Q){if(Q.traversalKind==="Allows")Q.return(this.compiledCondition);else Q.if(this.compiledNegation,()=>Q.line(`${Q.ctx}.error(${this.compiledErrorContext})`))}get errorContext(){return{code:this.kind,description:this.description,...this.inner}}get compiledErrorContext(){return uQ(this.errorContext)}}var J8=(Q)=>(X,Z)=>{if(G6(X)){if(X.length===0)return;let G=X.map((Y)=>Z.$.node(Q,Y));if(Q==="predicate")return G;return G.sort((Y,H)=>Y.hash{let X=Q.r.shift();if(!X){let J=Q.l.length===0&&Q.kind==="structure"?E1.intrinsic.unknown.internal:Q.ctx.$.node(Q.kind,Object.assign(Q.baseInner,_w(Q.l)),{prereduced:!0});for(let G of Q.roots){if(J instanceof p1)return J;J=$6(G,J,Q.ctx)}return J}let Z=!1;for(let J=0;JFQ(Q.r,J));return cZ(Q)},iZ=(Q)=>{return Object.entries(Q).flatMap(([Z,J])=>(Z in EJ)?J:[]).sort((Z,J)=>Z.precedenceJ.precedence?1:Z.kind==="predicate"&&J.kind==="predicate"?0:Z.hash{let X={};for(let Z of Q)if(Z.hasOpenIntersection())X[Z.kind]=h0(X[Z.kind],Z);else{if(X[Z.kind])return a0(`Unexpected intersection of closed refinements of kind ${Z.kind}`);X[Z.kind]=Z}return X},cU=(...Q)=>I1(iU(...Q)),iU=(Q,X,Z)=>`${MU(Q)} operand must be ${X.description} (was ${Z.exclude(X).description})`;var nU=(Q,X,Z)=>new pQ(Q,X,Z,Z,null);class kJ extends _Q{}class pQ extends _Q{[I8]="generic";paramDefs;bodyDef;$;arg$;baseInstantiation;hkt;description;constructor(Q,X,Z,J,G){super((...Y)=>{let H=w0(this.names,(K,z)=>{let W=this.arg$.parse(Y[K]);if(!W.extends(this.constraints[K]))I1(dw(z,this.constraints[K].expression,W.expression));return[z,W]});if(this.defIsLazy()){let K=this.bodyDef(H);return this.$.parse(K)}return this.$.parse(X,{args:H})});this.paramDefs=Q,this.bodyDef=X,this.$=Z,this.arg$=J,this.hkt=G,this.description=G?new G().description??`a generic type for ${G.constructor.name}`:"a generic type",this.baseInstantiation=this(...this.constraints)}defIsLazy(){return this.bodyDef instanceof kJ}cacheGetter(Q,X){return Object.defineProperty(this,Q,{value:X}),X}get json(){return this.cacheGetter("json",{params:this.params.map((Q)=>Q[1].isUnknown()?Q[0]:[Q[0],Q[1].json]),body:vU(this.bodyDef)})}get params(){return this.cacheGetter("params",this.paramDefs.map((Q)=>typeof Q==="string"?[Q,E1.intrinsic.unknown]:[Q[0],this.$.parse(Q[1])]))}get names(){return this.cacheGetter("names",this.params.map((Q)=>Q[0]))}get constraints(){return this.cacheGetter("constraints",this.params.map((Q)=>Q[1]))}get internal(){return this}get referencesById(){return this.baseInstantiation.internal.referencesById}get references(){return this.baseInstantiation.internal.references}}var dw=(Q,X,Z)=>`${Q} must be assignable to ${X} (was ${Z})`;var N6=(Q)=>{let X=typeof Q==="string"?{description:Q}:Q,Z=`${X.description} is not convertible to JSON Schema`;if(X.reason)Z+=` because ${X.reason}`;return Z},oU=(Q)=>N6({description:`Morph ${Q}`,reason:"it represents a transformation, while JSON Schema only allows validation. Consider creating a Schema from one of its endpoints using `.in` or `.out`."}),aU=(Q)=>N6({description:Q,reason:"cyclic types are not yet convertible to JSON Schema. If this feature is important to you, please add your feedback at https://github.com/arktypeio/arktype/issues/1087"}),lQ=(Q,X)=>a0(`Unexpected JSON Schema input for ${Q}: ${O0(X)}`);var uw=N0({kind:"predicate",hasAssociatedError:!0,collapsibleKey:"predicate",keys:{predicate:{}},normalize:(Q)=>typeof Q==="function"?{predicate:Q}:Q,defaults:{description:(Q)=>`valid according to ${Q.predicate.name||"an anonymous predicate"}`},intersectionIsOpen:!0,intersections:{predicate:()=>null}});class sU extends W9{serializedPredicate=g6(this.predicate);compiledCondition=`${this.serializedPredicate}(data, ctx)`;compiledNegation=`!${this.compiledCondition}`;impliedBasis=null;expression=this.serializedPredicate;traverseAllows=this.predicate;errorContext={code:"predicate",description:this.description};compiledErrorContext=uQ(this.errorContext);traverseApply=(Q,X)=>{if(!this.predicate(Q,X)&&!X.hasError())X.error(this.errorContext)};compile(Q){if(Q.traversalKind==="Allows"){Q.return(this.compiledCondition);return}Q.if(`${this.compiledNegation} && !ctx.hasError()`,()=>Q.line(`ctx.error(${this.compiledErrorContext})`))}reduceJsonSchema(){return I1(N6({description:`Predicate ${this.expression}`}))}}var WH={implementation:uw,Node:sU};var pw=N0({kind:"divisor",collapsibleKey:"rule",keys:{rule:{}},normalize:(Q)=>typeof Q==="number"?{rule:Q}:Q,hasAssociatedError:!0,defaults:{description:(Q)=>Q.rule===1?"an integer":`a multiple of ${Q.rule}`},intersections:{divisor:(Q,X,Z)=>Z.$.node("divisor",{rule:Math.abs(Q.rule*X.rule/lw(Q.rule,X.rule))})}});class tU extends NQ{traverseAllows=(Q)=>Q%this.rule===0;compiledCondition=`data % ${this.rule} === 0`;compiledNegation=`data % ${this.rule} !== 0`;impliedBasis=E1.intrinsic.number.internal;expression=`% ${this.rule}`;reduceJsonSchema(Q){if(Q.type="integer",this.rule===1)return Q;return Q.multipleOf=this.rule,Q}}var qH={implementation:pw,Node:tU};var lw=(Q,X)=>{let Z,J=Q,G=X;while(G!==0)Z=G,G=J%G,J=Z;return J};class n8 extends NQ{boundOperandKind=ow[this.kind];compiledActual=this.boundOperandKind==="value"?"data":this.boundOperandKind==="length"?"data.length":"data.valueOf()";comparator=aw(this.kind,this.exclusive);numericLimit=this.rule.valueOf();expression=`${this.comparator} ${this.rule}`;compiledCondition=`${this.compiledActual} ${this.comparator} ${this.numericLimit}`;compiledNegation=`${this.compiledActual} ${cw[this.comparator]} ${this.numericLimit}`;stringLimit=this.boundOperandKind==="date"?sw(this.numericLimit):`${this.numericLimit}`;limitKind=this.comparator["0"]==="<"?"upper":"lower";isStricterThan(Q){return(this.limitKind==="upper"?this.numericLimitQ.numericLimit)||this.numericLimit===Q.numericLimit&&this.exclusive===!0&&!Q.exclusive}overlapsRange(Q){if(this.isStricterThan(Q))return!1;if(this.numericLimit===Q.numericLimit&&(this.exclusive||Q.exclusive))return!1;return!0}overlapIsUnit(Q){return this.numericLimit===Q.numericLimit&&!this.exclusive&&!Q.exclusive}}var cw={"<":">=","<=":">",">":"<=",">=":"<"},iw={min:"max",minLength:"maxLength",after:"before"},yJ={parse:(Q)=>Q||void 0},xJ=(Q)=>(X)=>{if(typeof X==="number")return{rule:X};let{exclusive:Z,...J}=X;return Z?{...J,rule:Q==="minLength"?J.rule+1:J.rule-1}:J},vJ=(Q)=>(X)=>{if(typeof X==="number"||typeof X==="string"||X instanceof Date)return{rule:X};let{exclusive:Z,...J}=X;if(!Z)return J;let G=typeof J.rule==="number"?J.rule:typeof J.rule==="string"?new Date(J.rule).valueOf():J.rule.valueOf();return Z?{...J,rule:Q==="after"?G+1:G-1}:J},gJ=(Q)=>typeof Q==="string"||typeof Q==="number"?new Date(Q):Q,nw=(Q,X)=>`${Q} bound must be a positive integer (was ${X})`,nZ=(Q)=>(X)=>{if(!Number.isInteger(X)||X<0)I1(nw(Q,X));return X},ow={min:"value",max:"value",minLength:"length",maxLength:"length",after:"date",before:"date"},aw=(Q,X)=>`${a6(Q,iw)?">":"<"}${X?"":"="}`,sw=(Q)=>typeof Q==="string"?Q:new Date(Q).toLocaleString(),rU=(Q)=>`Bounded expression ${Q} must be exactly one of number, string, Array, or Date`;var tw=N0({kind:"after",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:gJ,serialize:(Q)=>Q.toISOString()}},normalize:vJ("after"),defaults:{description:(Q)=>`${Q.collapsibleLimitString} or later`,actual:_4},intersections:{after:(Q,X)=>Q.isStricterThan(X)?Q:X}});class eU extends n8{impliedBasis=E1.intrinsic.Date.internal;collapsibleLimitString=_4(this.rule);traverseAllows=(Q)=>Q>=this.rule;reduceJsonSchema(){return I1(N6("Date instance"))}}var HH={implementation:tw,Node:eU};var rw=N0({kind:"before",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:gJ,serialize:(Q)=>Q.toISOString()}},normalize:vJ("before"),defaults:{description:(Q)=>`${Q.collapsibleLimitString} or earlier`,actual:_4},intersections:{before:(Q,X)=>Q.isStricterThan(X)?Q:X,after:(Q,X,Z)=>Q.overlapsRange(X)?Q.overlapIsUnit(X)?Z.$.node("unit",{unit:Q.rule}):null:p1.init("range",Q,X)}});class QV extends n8{collapsibleLimitString=_4(this.rule);traverseAllows=(Q)=>Q<=this.rule;impliedBasis=E1.intrinsic.Date.internal;reduceJsonSchema(){return I1(N6("Date instance"))}}var zH={implementation:rw,Node:QV};var ew=N0({kind:"exactLength",collapsibleKey:"rule",keys:{rule:{parse:nZ("exactLength")}},normalize:(Q)=>typeof Q==="number"?{rule:Q}:Q,hasAssociatedError:!0,defaults:{description:(Q)=>`exactly length ${Q.rule}`,actual:(Q)=>`${Q.length}`},intersections:{exactLength:(Q,X,Z)=>p1.init("unit",Z.$.node("unit",{unit:Q.rule}),Z.$.node("unit",{unit:X.rule}),{path:["length"]}),minLength:(Q,X)=>Q.rule>=X.rule?Q:p1.init("range",Q,X),maxLength:(Q,X)=>Q.rule<=X.rule?Q:p1.init("range",Q,X)}});class ZV extends NQ{traverseAllows=(Q)=>Q.length===this.rule;compiledCondition=`data.length === ${this.rule}`;compiledNegation=`data.length !== ${this.rule}`;impliedBasis=E1.intrinsic.lengthBoundable.internal;expression=`== ${this.rule}`;reduceJsonSchema(Q){switch(Q.type){case"string":return Q.minLength=this.rule,Q.maxLength=this.rule,Q;case"array":return Q.minItems=this.rule,Q.maxItems=this.rule,Q;default:return lQ("exactLength",Q)}}}var KH={implementation:ew,Node:ZV};var QE=N0({kind:"max",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{},exclusive:yJ},normalize:(Q)=>typeof Q==="number"?{rule:Q}:Q,defaults:{description:(Q)=>`${Q.exclusive?"less than":"at most"} ${Q.rule}`},intersections:{max:(Q,X)=>Q.isStricterThan(X)?Q:X,min:(Q,X,Z)=>Q.overlapsRange(X)?Q.overlapIsUnit(X)?Z.$.node("unit",{unit:Q.rule}):null:p1.init("range",Q,X)}});class XV extends n8{impliedBasis=E1.intrinsic.number.internal;traverseAllows=this.exclusive?(Q)=>QQ<=this.rule;reduceJsonSchema(Q){if(this.exclusive)Q.exclusiveMaximum=this.rule;else Q.maximum=this.rule;return Q}}var $H={implementation:QE,Node:XV};var ZE=N0({kind:"maxLength",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:nZ("maxLength")}},reduce:(Q,X)=>Q.rule===0?X.node("exactLength",Q):void 0,normalize:xJ("maxLength"),defaults:{description:(Q)=>`at most length ${Q.rule}`,actual:(Q)=>`${Q.length}`},intersections:{maxLength:(Q,X)=>Q.isStricterThan(X)?Q:X,minLength:(Q,X,Z)=>Q.overlapsRange(X)?Q.overlapIsUnit(X)?Z.$.node("exactLength",{rule:Q.rule}):null:p1.init("range",Q,X)}});class JV extends n8{impliedBasis=E1.intrinsic.lengthBoundable.internal;traverseAllows=(Q)=>Q.length<=this.rule;reduceJsonSchema(Q){switch(Q.type){case"string":return Q.maxLength=this.rule,Q;case"array":return Q.maxItems=this.rule,Q;default:return lQ("maxLength",Q)}}}var BH={implementation:ZE,Node:JV};var XE=N0({kind:"min",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{},exclusive:yJ},normalize:(Q)=>typeof Q==="number"?{rule:Q}:Q,defaults:{description:(Q)=>`${Q.exclusive?"more than":"at least"} ${Q.rule}`},intersections:{min:(Q,X)=>Q.isStricterThan(X)?Q:X}});class GV extends n8{impliedBasis=E1.intrinsic.number.internal;traverseAllows=this.exclusive?(Q)=>Q>this.rule:(Q)=>Q>=this.rule;reduceJsonSchema(Q){if(this.exclusive)Q.exclusiveMinimum=this.rule;else Q.minimum=this.rule;return Q}}var UH={implementation:XE,Node:GV};var JE=N0({kind:"minLength",collapsibleKey:"rule",hasAssociatedError:!0,keys:{rule:{parse:nZ("minLength")}},reduce:(Q)=>Q.rule===0?E1.intrinsic.unknown:void 0,normalize:xJ("minLength"),defaults:{description:(Q)=>Q.rule===1?"non-empty":`at least length ${Q.rule}`,actual:(Q)=>Q.length===0?"":`${Q.length}`},intersections:{minLength:(Q,X)=>Q.isStricterThan(X)?Q:X}});class YV extends n8{impliedBasis=E1.intrinsic.lengthBoundable.internal;traverseAllows=(Q)=>Q.length>=this.rule;reduceJsonSchema(Q){switch(Q.type){case"string":return Q.minLength=this.rule,Q;case"array":return Q.minItems=this.rule,Q;default:return lQ("minLength",Q)}}}var VH={implementation:JE,Node:YV};var WV={min:UH.implementation,max:$H.implementation,minLength:VH.implementation,maxLength:BH.implementation,exactLength:KH.implementation,after:HH.implementation,before:zH.implementation},qV={min:UH.Node,max:$H.Node,minLength:VH.Node,maxLength:BH.Node,exactLength:KH.Node,after:HH.Node,before:zH.Node};var GE=N0({kind:"pattern",collapsibleKey:"rule",keys:{rule:{},flags:{}},normalize:(Q)=>typeof Q==="string"?{rule:Q}:Q instanceof RegExp?Q.flags?{rule:Q.source,flags:Q.flags}:{rule:Q.source}:Q,hasAssociatedError:!0,intersectionIsOpen:!0,defaults:{description:(Q)=>`matched by ${Q.rule}`},intersections:{pattern:()=>null}});class HV extends NQ{instance=new RegExp(this.rule,this.flags);expression=`${this.instance}`;traverseAllows=this.instance.test.bind(this.instance);compiledCondition=`${this.expression}.test(data)`;compiledNegation=`!${this.compiledCondition}`;impliedBasis=E1.intrinsic.string.internal;reduceJsonSchema(Q){if(Q.pattern)return I1(N6(`Intersection of patterns ${Q.pattern} & ${this.rule}`));return Q.pattern=this.rule,Q}}var PH={implementation:GE,Node:HV};var h7=(Q,X)=>{let Z=YE(Q);if(X&&!X.includes(Z))return I1(`Root of kind ${Z} should be one of ${X}`);return Z},YE=(Q)=>{if(r1(Q,"root"))return Q.kind;if(typeof Q==="string")return Q[0]==="$"?"alias":"domain";if(typeof Q==="function")return"proto";if(typeof Q!=="object"||Q===null)return I1(zV(Q));if("morphs"in Q)return"morph";if("branches"in Q||G6(Q))return"union";if("unit"in Q)return"unit";if("reference"in Q)return"alias";let X=Object.keys(Q);if(X.length===0||X.some((Z)=>(Z in EJ)))return"intersection";if("proto"in Q)return"proto";if("domain"in Q)return"domain";return I1(zV(Q))},zV=(Q)=>`${O0(Q)} is not a valid type schema`,KV={},WE=(Q)=>G6(Q)?Q.map((X)=>X.collapsibleJson):Q.collapsibleJson,F8={};E1.nodesByRegisteredId=F8;var FH=(Q)=>{return KV[Q]??=0,`${Q}${++KV[Q]}`},DH=(Q)=>{let X=oZ[Q.kind],Z={},{meta:J,...G}=Q.def,Y=J===void 0?{}:typeof J==="string"?{description:J}:J,H=d3(G).sort(([z],[W])=>dZ(z)?dZ(W)?uZ(z)-uZ(W):1:dZ(W)?-1:z{if(z.startsWith("meta.")){let $=z.slice(5);return Y[$]=W,!1}return!0});for(let z of H){let W=z[0],$=X.keys[W];if(!$)return I1(`Key ${W} is not valid on ${Q.kind} schema`);let q=$.parse?$.parse(z[1],Q):z[1];if(q!==h4&&(q!==void 0||$.preserveUndefined))Z[W]=q}if(X.reduce&&!Q.prereduced){let z=X.reduce(Z,Q.$);if(z){if(z instanceof p1)return z.throw();return qE(z,Y)}}return LH(Q.id,Q.kind,Z,Y,Q.$)},LH=(Q,X,Z,J,G,Y)=>{let H=oZ[X],K=d3(Z),z=[],W={};if(K.forEach(([C,L])=>{let V=H.keys[C],M=V.serialize??(V.child?WE:CQ);if(W[C]=M(L),V.child===!0){let I=L;if(G6(I))z.push(...I);else z.push(I)}else if(typeof V.child==="function")z.push(...V.child(L))}),H.finalizeInnerJson)W=H.finalizeInnerJson(W);let $={...W},q={};if(!O9(J))q=w0(J,(C,L)=>[C,C==="examples"?L:CQ(L)]),$.meta=hJ(q,"description",!0);W=hJ(W,H.collapsibleKey,!1);let B=JSON.stringify({kind:X,...W});$=hJ($,H.collapsibleKey,!1);let D=hJ($,H.collapsibleKey,!0),F=JSON.stringify({kind:X,...$});if(G.nodesByHash[F]&&!Y)return G.nodesByHash[F];let P={id:Q,kind:X,impl:H,inner:Z,innerEntries:K,innerJson:W,innerHash:B,meta:J,metaJson:q,json:$,hash:F,collapsibleJson:D,children:z};for(let C in Z)if(C!=="in"&&C!=="out")P[C]=Z[C];let N=new BV[X](P,G);return G.nodesByHash[F]=N},$V=(Q,X)=>{if(Q.id===X)return Q;if(F6(F8[X]))a0(`Unexpected attempt to overwrite node id ${X}`);return LH(X,Q.kind,Q.inner,Q.meta,Q.$,!0)},qE=(Q,X,Z)=>{if(Z&&F6(F8[Z]))a0(`Unexpected attempt to overwrite node id ${Z}`);return LH(Z??FH(X.alias??Q.kind),Q.kind,Q.inner,X,Q.$)},hJ=(Q,X,Z)=>{let J=Object.keys(Q);if(J.length===1&&J[0]===X){let G=Q[X];if(Z)return G;if(M8(G,"object")&&(Object.keys(G).length===1||Array.isArray(G)))return G}return Q};var f7=(Q,X,Z)=>{if(Q.key!==X.key)return null;let J=Q.key,G=$6(Q.value,X.value,Z),Y=Q.required||X.required?"required":"optional";if(G instanceof p1)if(Y==="optional")G=E1.intrinsic.never.internal;else return G.withPrefixKey(Q.key,Q.required&&X.required?"required":"optional");if(Y==="required")return Z.$.node("required",{key:J,value:G});let H=Q.hasDefault()?X.hasDefault()?Q.default===X.default?Q.default:I1(CH(Q.default,X.default)):Q.default:X.hasDefault()?X.default:h4;return Z.$.node("optional",{key:J,value:G,default:H})};class b7 extends W9{required=this.kind==="required";optional=this.kind==="optional";impliedBasis=E1.intrinsic.object.internal;serializedKey=LQ(this.key);compiledKey=typeof this.key==="string"?this.key:this.serializedKey;get flatRefs(){return h0(this.value.flatRefs.map((Q)=>w9([this.key,...Q.path],Q.node)),w9([this.key],this.value))}_transform(Q,X){X.path.push(this.key);let Z=super._transform(Q,X);return X.path.pop(),Z}hasDefault(){return"default"in this.inner}traverseAllows=(Q,X)=>{if(this.key in Q)return A8(this.key,()=>this.value.traverseAllows(Q[this.key],X),X);return this.optional};traverseApply=(Q,X)=>{if(this.key in Q)A8(this.key,()=>this.value.traverseApply(Q[this.key],X),X);else if(this.hasKind("required"))X.error(this.errorContext);else if(this.hasDefault())X.queueMorphs(this.defaultValueMorphs)};compile(Q){if(Q.if(`${this.serializedKey} in data`,()=>Q.traverseKey(this.serializedKey,`data${Q.prop(this.key)}`,this.value)),this.hasKind("required"))Q.else(()=>{if(Q.traversalKind==="Apply")return Q.line(`ctx.error(${this.compiledErrorContext})`);else return Q.return(!1)});else if(Q.traversalKind==="Apply"&&this.hasDefault())Q.else(()=>Q.line(`ctx.queueMorphs(${this.defaultValueMorphsReference})`));if(Q.traversalKind==="Allows")Q.return(!0)}}var CH=(Q,X)=>`Invalid intersection of default values ${O0(Q)} & ${O0(X)}`;var HE=N0({kind:"optional",hasAssociatedError:!1,intersectionIsOpen:!0,keys:{key:{},value:{child:!0,parse:(Q,X)=>X.$.parseSchema(Q)},default:{preserveUndefined:!0}},normalize:(Q)=>Q,defaults:{description:(Q)=>`${Q.compiledKey}?: ${Q.value.description}`},intersections:{optional:f7}});class UV extends b7{constructor(...Q){super(...Q);if("default"in this.inner)_7(this.value,this.inner.default,this.key)}get outProp(){if(!this.hasDefault())return this;let{default:Q,...X}=this.inner;return this.cacheGetter("outProp",this.$.node("required",X,{prereduced:!0}))}expression=this.hasDefault()?`${this.compiledKey}: ${this.value.expression} = ${O0(this.inner.default)}`:`${this.compiledKey}?: ${this.value.expression}`;defaultValueMorphs=this.hasDefault()?NH(this.key,this.value,this.default):[];defaultValueMorphsReference=g6(this.defaultValueMorphs)}var m7={implementation:HE,Node:UV},NH=(Q,X,Z)=>{if(typeof Z==="function")return[X.includesMorph?(G,Y)=>{return A8(Q,()=>X(G[Q]=Z(),Y),Y),G}:(G)=>{return G[Q]=Z(),G}];let J=X.includesMorph?X.assert(Z):Z;return[M8(J,"object")?(G,Y)=>{return A8(Q,()=>X(G[Q]=Z,Y),Y),G}:(G)=>{return G[Q]=J,G}]},_7=(Q,X,Z)=>{let J=mQ(X);if(M8(X,"object")&&!J)I1(zE(Z));let G=Q.in(J?X():X);if(G instanceof R8){if(Z!==null)G.forEach((H)=>H.path.unshift(Z));let Y=Z===null?`Default ${G.message}`:`Default for ${G.message}`;I1(Y)}return X},zE=(Q)=>{return`Non-primitive default ${Q===null?"":typeof Q==="number"?`for value at [${Q}] `:`for ${LQ(Q)} `}must be specified as a function like () => ({my: 'object'})`};class q9 extends g7{constructor(Q,X){super(Q,X);Object.defineProperty(this,I8,{value:"root",enumerable:!1})}assert=(Q)=>{let X=this.traverse(Q);return X instanceof R8?X.throw():X};get internal(){return this}get "~standard"(){return{vendor:"arktype",version:1,validate:(Q)=>{let X=this(Q);if(X instanceof R8)return X;return{value:X}}}}as(){return this}brand(Q){if(Q==="")return I1(KE);return this}brandAttributes(){return this}unbrandAttributes(){return this}readonly(){return this}branches=this.hasKind("union")?this.inner.branches:[this];distribute(Q,X){let Z=this.branches.map(Q);return X?.(Z)??Z}toJsonSchema(){let Q=this.innerToJsonSchema();return Object.assign(Q,this.metaJson)}intersect(Q){let X=this.$.parseDefinition(Q),Z=this.rawIntersect(X);if(Z instanceof p1)return Z;return this.$.finalize(Z)}rawIntersect(Q){return i8(this,Q,this.$)}toNeverIfDisjoint(){return this}and(Q){let X=this.intersect(Q);return X instanceof p1?X.throw():X}rawAnd(Q){let X=this.rawIntersect(Q);return X instanceof p1?X.throw():X}or(Q){let X=this.$.parseDefinition(Q);return this.$.finalize(this.rawOr(X))}rawOr(Q){let X=[...this.branches,...Q.branches];return this.$.node("union",X)}map(Q){return this.$.schema(this.applyStructuralOperation("map",[Q]))}pick(...Q){return this.$.schema(this.applyStructuralOperation("pick",Q))}omit(...Q){return this.$.schema(this.applyStructuralOperation("omit",Q))}required(){return this.$.schema(this.applyStructuralOperation("required",[]))}partial(){return this.$.schema(this.applyStructuralOperation("partial",[]))}_keyof;keyof(){if(this._keyof)return this._keyof;let Q=this.applyStructuralOperation("keyof",[]).reduce((X,Z)=>X.intersect(Z).toNeverIfDisjoint(),E1.intrinsic.unknown.internal);if(Q.branches.length===0)I1(JH(`keyof ${this.expression}`));return this._keyof=this.$.finalize(Q)}get props(){if(this.branches.length!==1)return I1($E(this.expression));return[...this.applyStructuralOperation("props",[])[0]]}merge(Q){let X=this.$.parseDefinition(Q);return this.$.schema(X.distribute((Z)=>this.applyStructuralOperation("merge",[VV(Z)??I1(PV("merge",Z.expression))])))}applyStructuralOperation(Q,X){return this.distribute((Z)=>{if(Z.equals(E1.intrinsic.object)&&Q!=="merge")return Z;let J=VV(Z);if(!J)I1(PV(Q,Z.expression));if(Q==="keyof")return J.keyof();if(Q==="get")return J.get(...X);if(Q==="props")return J.props;let G=Q==="required"?"require":Q==="partial"?"optionalize":Q;return this.$.node("intersection",{...Z.inner,structure:J[G](...X)})})}get(...Q){if(Q[0]===void 0)return this;return this.$.schema(this.applyStructuralOperation("get",Q))}extract(Q){let X=this.$.parseDefinition(Q);return this.$.schema(this.branches.filter((Z)=>Z.extends(X)))}exclude(Q){let X=this.$.parseDefinition(Q);return this.$.schema(this.branches.filter((Z)=>!Z.extends(X)))}array(){return this.$.schema({proto:Array,sequence:this},{prereduced:!0})}overlaps(Q){return!(this.intersect(Q)instanceof p1)}extends(Q){let X=this.intersect(Q);return!(X instanceof p1)&&this.equals(X)}ifExtends(Q){return this.extends(Q)?this:void 0}subsumes(Q){return this.$.parseDefinition(Q).extends(this)}configure(Q){return this.configureShallowDescendants(Q)}describe(Q){return this.configure({description:Q})}optional(){return[this,"?"]}default(Q){return _7(this,Q,null),[this,"=",Q]}from(Q){return this.assert(Q)}_pipe(...Q){return Q.reduce((X,Z)=>X.pipeOnce(Z),this)}tryPipe(...Q){return Q.reduce((X,Z)=>X.pipeOnce(r1(Z,"root")?Z:(J,G)=>{try{return Z(J,G)}catch(Y){return G.error({code:"predicate",predicate:Z,actual:`aborted due to error: - ${Y} -`})}}),this)}pipe=Object.assign(this._pipe.bind(this),{try:this.tryPipe.bind(this)});to(Q){return this.$.finalize(this.toNode(this.$.parseDefinition(Q)))}toNode(Q){let X=YH(this,Q,this.$);if(X instanceof p1)return X.throw();return X}pipeOnce(Q){if(r1(Q,"root"))return this.toNode(Q);return this.distribute((X)=>X.hasKind("morph")?this.$.node("morph",{in:X.inner.in,morphs:[...X.morphs,Q]}):this.$.node("morph",{in:X,morphs:[Q]}),this.$.parseSchema)}get flatMorphs(){return this.cacheGetter("flatMorphs",this.flatRefs.reduce((Q,X)=>pZ(Q,X.node.hasKind("union")?X.node.branches.filter((Z)=>Z.hasKind("morph")).map((Z)=>({path:X.path,propString:X.propString,node:Z})):X.node.hasKind("morph")?X:[]),[]))}narrow(Q){return this.constrainOut("predicate",Q)}constrain(Q,X){return this._constrain("root",Q,X)}constrainIn(Q,X){return this._constrain("in",Q,X)}constrainOut(Q,X){return this._constrain("out",Q,X)}_constrain(Q,X,Z){let J=this.$.node(X,Z);if(J.isRoot())return J.isUnknown()?this:a0(`Unexpected constraint node ${J}`);let G=Q==="root"?this:this[Q];if(G.hasKind("morph")||J.impliedBasis&&!G.extends(J.impliedBasis))return cU(X,J.impliedBasis,this);let Y=this.$.node("intersection",{[J.kind]:J}),H=Q==="out"?YH(this,Y,this.$):i8(this,Y,this.$);if(H instanceof p1)H.throw();return this.$.finalize(H)}onUndeclaredKey(Q){let X=typeof Q==="string"?Q:Q.rule,Z=typeof Q==="string"?!1:Q.deep;return this.$.finalize(this.transform((J,G)=>J==="structure"?X==="ignore"?UU(G,{undeclared:1}):{...G,undeclared:X}:G,Z?void 0:{shouldTransform:(J)=>!PQ(mZ,J.kind)}))}onDeepUndeclaredKey(Q){return this.onUndeclaredKey({rule:Q,deep:!0})}satisfying(Q){return this.constrain("predicate",Q)}divisibleBy(Q){return this.constrain("divisor",Q)}matching(Q){return this.constrain("pattern",Q)}atLeast(Q){return this.constrain("min",Q)}atMost(Q){return this.constrain("max",Q)}moreThan(Q){return this.constrain("min",aZ(Q))}lessThan(Q){return this.constrain("max",aZ(Q))}atLeastLength(Q){return this.constrain("minLength",Q)}atMostLength(Q){return this.constrain("maxLength",Q)}moreThanLength(Q){return this.constrain("minLength",aZ(Q))}lessThanLength(Q){return this.constrain("maxLength",aZ(Q))}exactlyLength(Q){return this.constrain("exactLength",Q)}atOrAfter(Q){return this.constrain("after",Q)}atOrBefore(Q){return this.constrain("before",Q)}laterThan(Q){return this.constrain("after",aZ(Q))}earlierThan(Q){return this.constrain("before",aZ(Q))}}var KE="Expected a non-empty brand name after #",aZ=(Q)=>typeof Q==="object"&&!(Q instanceof Date)?{...Q,exclusive:!0}:{rule:Q,exclusive:!0},d7=(Q,X)=>r1(X,"root")?r1(Q,"root")?Q.extends(X):X.allows(Q):r1(Q,"root")?Q.hasUnit(X):X===Q,VV=(Q)=>{if(Q.hasKind("morph"))return null;if(Q.hasKind("intersection"))return Q.inner.structure??(Q.basis?.domain==="object"?Q.$.bindReference(E1.intrinsic.emptyStructure):null);if(Q.isBasis()&&Q.domain==="object")return Q.$.bindReference(E1.intrinsic.emptyStructure);return null},$E=(Q)=>`Props cannot be extracted from a union. Use .distribute to extract props from each branch instead. Received: -${Q}`,PV=(Q,X)=>`${Q} operand must be an object (was ${X})`;var o9=(Q,X)=>w0(jJ(Q),(Z,J)=>[J,X]);var BE=(Q)=>typeof Q==="string"?{reference:Q}:Q,FV=(Q)=>Q instanceof p1?E1.intrinsic.never.internal:Q,UE=N0({kind:"alias",hasAssociatedError:!1,collapsibleKey:"reference",keys:{reference:{serialize:(Q)=>Q.startsWith("$")?Q:`$ark.${Q}`},resolve:{}},normalize:BE,defaults:{description:(Q)=>Q.reference},intersections:{alias:(Q,X,Z)=>Z.$.lazilyResolve(()=>FV($6(Q.resolution,X.resolution,Z)),`${Q.reference}${Z.pipe?"=>":"&"}${X.reference}`),...o9("alias",(Q,X,Z)=>{if(X.isUnknown())return Q;if(X.isNever())return X;return Z.$.lazilyResolve(()=>FV($6(Q.resolution,X,Z)),`${Q.reference}${Z.pipe?"=>":"&"}${X.id}`)})}});class DV extends q9{expression=this.reference;structure=void 0;get resolution(){let Q=this._resolve();return F8[this.id]=Q}_resolve(){if(this.resolve)return this.resolve();if(this.reference[0]==="$")return this.$.resolveRoot(this.reference.slice(1));let Q=this.reference,X=F8[Q],Z=[];while(r1(X,"context")){if(Z.includes(X.id))return I1(VE(X.id,Z));Z.push(X.id),X=F8[X.id]}if(!r1(X,"root"))return a0(`Unexpected resolution for reference ${this.reference} -Seen: [${Z.join("->")}] -Resolution: ${O0(X)}`);return X}get resolutionId(){if(this.reference.includes("&")||this.reference.includes("=>"))return this.resolution.id;if(this.reference[0]!=="$")return this.reference;let Q=this.reference.slice(1),X=this.$.resolutions[Q];if(typeof X==="string")return X;if(r1(X,"root"))return X.id;return a0(`Unexpected resolution for reference ${this.reference}: ${O0(X)}`)}get shortDescription(){return Y9.object}innerToJsonSchema(){return I1(aU(this.expression))}traverseAllows=(Q,X)=>{let Z=X.seen[this.reference];if(Z?.includes(Q))return!0;return X.seen[this.reference]=h0(Z,Q),this.resolution.traverseAllows(Q,X)};traverseApply=(Q,X)=>{let Z=X.seen[this.reference];if(Z?.includes(Q))return;X.seen[this.reference]=h0(Z,Q),this.resolution.traverseApply(Q,X)};compile(Q){let X=this.resolutionId;Q.if(`ctx.seen.${X} && ctx.seen.${X}.includes(data)`,()=>Q.return(!0)),Q.if(`!ctx.seen.${X}`,()=>Q.line(`ctx.seen.${X} = []`)),Q.line(`ctx.seen.${X}.push(data)`),Q.return(Q.invoke(X))}}var VE=(Q,X)=>`Alias '${Q}' has a shallow resolution cycle: ${[...X,Q].join("->")}`,u7={implementation:UE,Node:DV};class l4 extends q9{traverseApply=(Q,X)=>{if(!this.traverseAllows(Q,X))X.error(this.errorContext)};get errorContext(){return{code:this.kind,description:this.description,...this.inner}}get compiledErrorContext(){return uQ(this.errorContext)}compile(Q){if(Q.traversalKind==="Allows")Q.return(this.compiledCondition);else Q.if(this.compiledNegation,()=>Q.line(`${Q.ctx}.error(${this.compiledErrorContext})`))}}var PE=N0({kind:"domain",hasAssociatedError:!0,collapsibleKey:"domain",keys:{domain:{}},normalize:(Q)=>typeof Q==="string"?{domain:Q}:Q,defaults:{description:(Q)=>Y9[Q.domain],actual:(Q)=>Y9[P8(Q)]},intersections:{domain:(Q,X)=>p1.init("domain",Q,X)}});class LV extends l4{traverseAllows=(Q)=>P8(Q)===this.domain;compiledCondition=this.domain==="object"?'((typeof data === "object" && data !== null) || typeof data === "function")':`typeof data === "${this.domain}"`;compiledNegation=this.domain==="object"?'((typeof data !== "object" || data === null) && typeof data !== "function")':`typeof data !== "${this.domain}"`;expression=this.domain;get shortDescription(){return Y9[this.domain]}innerToJsonSchema(){if(this.domain==="bigint"||this.domain==="symbol")return I1(N6(this.domain));return{type:this.domain}}}var TH={implementation:PE,Node:LV};var FE=N0({kind:"intersection",hasAssociatedError:!0,normalize:(Q)=>{if(F6(Q))return Q;let{structure:X,...Z}=Q,J=!!X,G=X??{},Y=w0(Z,(H,K)=>{if(a6(H,mU)){if(J)I1(`Flattened structure key ${H} cannot be specified alongside a root 'structure' key.`);return G[H]=K,[]}return[H,K]});if(r1(G,"constraint")||!O9(G))Y.structure=G;return Y},finalizeInnerJson:({structure:Q,...X})=>M8(Q,"object")?{...Q,...X}:X,keys:{domain:{child:!0,parse:(Q,X)=>X.$.node("domain",Q)},proto:{child:!0,parse:(Q,X)=>X.$.node("proto",Q)},structure:{child:!0,parse:(Q,X)=>X.$.node("structure",Q),serialize:(Q)=>{if(!Q.sequence?.minLength)return Q.collapsibleJson;let{sequence:X,...Z}=Q.collapsibleJson,{minVariadicLength:J,...G}=X,Y=G.variadic&&Object.keys(G).length===1?G.variadic:G;return{...Z,sequence:Y}}},divisor:{child:!0,parse:J8("divisor")},max:{child:!0,parse:J8("max")},min:{child:!0,parse:J8("min")},maxLength:{child:!0,parse:J8("maxLength")},minLength:{child:!0,parse:J8("minLength")},exactLength:{child:!0,parse:J8("exactLength")},before:{child:!0,parse:J8("before")},after:{child:!0,parse:J8("after")},pattern:{child:!0,parse:J8("pattern")},predicate:{child:!0,parse:J8("predicate")}},reduce:(Q,X)=>fJ({},Q,{$:X,invert:!1,pipe:!1}),defaults:{description:(Q)=>Q.children.length===0?"unknown":Q.structure?.description??Q.children.map((X)=>X.description).join(" and "),expected:(Q)=>` • ${Q.errors.map((X)=>X.expected).join(` - • `)}`,problem:(Q)=>`(${Q.actual}) must be... -${Q.expected}`},intersections:{intersection:(Q,X,Z)=>fJ(Q,X,Z),...o9("intersection",(Q,X,Z)=>{if(Q.children.length===0)return X;let{domain:J,proto:G,...Y}=Q.inner,H=G??J,K=H?$6(H,X,Z):X;return K instanceof p1?K:Q?.basis?.equals(K)?Q:Q.$.node("intersection",{...Y,[K.kind]:K},{prereduced:!0})})}});class CV extends q9{basis=this.domain??this.proto??null;refinements=this.children.filter((Q)=>Q.isRefinement());get expression(){let Q=this.structure?.expression||`${this.basis?this.basis.nestableExpression+" ":""}${this.refinements.join(" & ")}`||"unknown";if(Q==="Array == 0")Q="[]";return this.cacheGetter("expression",Q)}get shortDescription(){return this.basis?.shortDescription??"present"}innerToJsonSchema(){return this.children.reduce((Q,X)=>X.isBasis()?X.toJsonSchema():X.reduceJsonSchema(Q),{})}traverseAllows=(Q,X)=>this.children.every((Z)=>Z.traverseAllows(Q,X));traverseApply=(Q,X)=>{let Z=X.currentErrorCount;if(this.basis){if(this.basis.traverseApply(Q,X),X.currentErrorCount>Z)return}if(this.refinements.length){for(let J=0;JZ)return;if(this.refinements.at(-1).traverseApply(Q,X),X.currentErrorCount>Z)return}if(this.structure){if(this.structure.traverseApply(Q,X),X.currentErrorCount>Z)return}if(this.predicate){for(let J=0;JZ)return;this.predicate.at(-1).traverseApply(Q,X)}};compile(Q){if(Q.traversalKind==="Allows"){this.children.forEach((X)=>Q.check(X)),Q.return(!0);return}if(Q.initializeErrorCount(),this.basis){if(Q.check(this.basis),this.children.length>1)Q.returnIfFail()}if(this.refinements.length){for(let X=0;X{if(r1(Q,"root")&&Q.hasKind("intersection"))return fJ(Q.inner,X,Z);if(r1(X,"root")&&X.hasKind("intersection"))return fJ(Q,X.inner,Z);let J={},G=Q.proto??Q.domain,Y=X.proto??X.domain,H=G?Y?$6(G,Y,Z):G:Y;if(H instanceof p1)return H;if(H)J[H.kind]=H;return cZ({kind:"intersection",baseInner:J,l:iZ(Q),r:iZ(X),roots:[],ctx:Z})};var DE=N0({kind:"morph",hasAssociatedError:!1,keys:{in:{child:!0,parse:(Q,X)=>X.$.parseSchema(Q)},morphs:{parse:gZ,serialize:(Q)=>Q.map((X)=>r1(X,"root")?X.json:g6(X))},declaredIn:{child:!1,serialize:(Q)=>Q.json},declaredOut:{child:!1,serialize:(Q)=>Q.json}},normalize:(Q)=>Q,defaults:{description:(Q)=>`a morph from ${Q.in.description} to ${Q.out?.description??"unknown"}`},intersections:{morph:(Q,X,Z)=>{if(!Q.hasEqualMorphs(X))return I1(LE(Q.expression,X.expression));let J=$6(Q.in,X.in,Z);if(J instanceof p1)return J;let G={morphs:Q.morphs};if(Q.declaredIn||X.declaredIn){let Y=$6(Q.in,X.in,Z);if(Y instanceof p1)return Y.throw();else G.declaredIn=Y}if(Q.declaredOut||X.declaredOut){let Y=$6(Q.out,X.out,Z);if(Y instanceof p1)return Y.throw();else G.declaredOut=Y}return J.distribute((Y)=>Z.$.node("morph",{...G,in:Y}),Z.$.parseSchema)},...o9("morph",(Q,X,Z)=>{let J=Q.inner.in?$6(Q.inner.in,X,Z):X;return J instanceof p1?J:J.equals(Q.inner.in)?Q:Z.$.node("morph",{...Q.inner,in:J})})}});class NV extends q9{serializedMorphs=this.morphs.map(g6);compiledMorphs=`[${this.serializedMorphs}]`;lastMorph=this.inner.morphs.at(-1);lastMorphIfNode=r1(this.lastMorph,"root")?this.lastMorph:void 0;introspectableIn=this.inner.in;introspectableOut=this.lastMorphIfNode?Object.assign(this.referencesById,this.lastMorphIfNode.referencesById)&&this.lastMorphIfNode.out:void 0;get in(){return this.declaredIn??this.inner.in?.in??E1.intrinsic.unknown.internal}get out(){return this.declaredOut??this.introspectableOut??E1.intrinsic.unknown.internal}declareIn(Q){return this.$.node("morph",{...this.inner,declaredIn:Q})}declareOut(Q){return this.$.node("morph",{...this.inner,declaredOut:Q})}expression=`(In: ${this.in.expression}) => Out<${this.out.expression}>`;get shortDescription(){return this.in.shortDescription}innerToJsonSchema(){return I1(oU(this.expression))}compile(Q){if(Q.traversalKind==="Allows"){if(!this.introspectableIn)return;Q.return(Q.invoke(this.introspectableIn));return}if(this.introspectableIn)Q.line(Q.invoke(this.introspectableIn));Q.line(`ctx.queueMorphs(${this.compiledMorphs})`)}traverseAllows=(Q,X)=>!this.introspectableIn||this.introspectableIn.traverseAllows(Q,X);traverseApply=(Q,X)=>{if(this.introspectableIn)this.introspectableIn.traverseApply(Q,X);X.queueMorphs(this.morphs)};hasEqualMorphs(Q){return hZ(this.morphs,Q.morphs,{isEqual:(X,Z)=>X===Z||r1(X,"root")&&r1(Z,"root")&&X.equals(Z)})}}var IH={implementation:DE,Node:NV},LE=(Q,X)=>`The intersection of distinct morphs at a single path is indeterminate: -Left: ${Q} -Right: ${X}`;var CE=N0({kind:"proto",hasAssociatedError:!0,collapsibleKey:"proto",keys:{proto:{serialize:(Q)=>S7(Q)??CQ(Q)}},normalize:(Q)=>typeof Q==="string"?{proto:f4[Q]}:typeof Q==="function"?F6(Q)?Q:{proto:Q}:typeof Q.proto==="string"?{...Q,proto:f4[Q.proto]}:Q,defaults:{description:(Q)=>Q.builtinName?PU[Q.builtinName]:`an instance of ${Q.proto.name}`,actual:(Q)=>j7(Q)},intersections:{proto:(Q,X)=>i3(Q.proto,X.proto)?Q:i3(X.proto,Q.proto)?X:p1.init("proto",Q,X),domain:(Q,X)=>X.domain==="object"?Q:p1.init("domain",E1.intrinsic.object.internal,X)}});class TV extends l4{builtinName=S7(this.proto);serializedConstructor=this.json.proto;compiledCondition=`data instanceof ${this.serializedConstructor}`;compiledNegation=`!(${this.compiledCondition})`;innerToJsonSchema(){switch(this.builtinName){case"Array":return{type:"array"};default:return I1(N6(this.description))}}traverseAllows=(Q)=>Q instanceof this.proto;expression=this.proto.name;domain="object";get shortDescription(){return this.description}}var RH={implementation:CE,Node:TV};var NE=N0({kind:"union",hasAssociatedError:!0,collapsibleKey:"branches",keys:{ordered:{},branches:{child:!0,parse:(Q,X)=>{let Z=[];if(Q.forEach((J)=>{(r1(J,"root")?J.branches:X.$.parseSchema(J).branches).forEach((Y)=>{if(Y.hasKind("morph")){let H=Z.findIndex((K)=>K.hasKind("morph")&&K.hasEqualMorphs(Y));if(H===-1)Z.push(Y);else{let K=Z[H];Z[H]=X.$.node("morph",{...K.inner,in:K.in.rawOr(Y.in)})}}else Z.push(Y)})}),!X.def.ordered)Z.sort((J,G)=>J.hashG6(Q)?{branches:Q}:Q,reduce:(Q,X)=>{let Z=OE(Q);if(Z.length===1)return Z[0];if(Z.length===Q.branches.length)return;return X.node("union",{...Q,branches:Z},{prereduced:!0})},defaults:{description:(Q)=>Q.distribute((X)=>X.description,sZ),expected:(Q)=>{let X=NJ(Q.errors,"propString"),Z=Object.entries(X).map(([J,G])=>{let Y=[];G.forEach((z)=>FQ(Y,z.expected));let H=sZ(Y),K=G.every((z)=>z.actual===G[0].actual)?G[0].actual:O0(G[0].data);return`${J&&`${J} `}must be ${H}${K&&` (was ${K})`}`});return sZ(Z)},problem:(Q)=>Q.expected,message:(Q)=>Q.problem},intersections:{union:(Q,X,Z)=>{if(Q.isNever!==X.isNever)return p1.init("presence",Q,X);let J;if(Q.ordered){if(X.ordered)I1(SE(Q.expression,X.expression));if(J=AH(X.branches,Q.branches,Z),J instanceof p1)J.invert()}else J=AH(Q.branches,X.branches,Z);if(J instanceof p1)return J;return Z.$.parseSchema(Q.ordered||X.ordered?{branches:J,ordered:!0}:{branches:J})},...o9("union",(Q,X,Z)=>{let J=AH(Q.branches,[X],Z);if(J instanceof p1)return J;if(J.length===1)return J[0];return Z.$.parseSchema(Q.ordered?{branches:J,ordered:!0}:{branches:J})})}});class MV extends q9{isBoolean=this.branches.length===2&&this.branches[0].hasUnit(!1)&&this.branches[1].hasUnit(!0);get branchGroups(){let Q=[],X=-1;return this.branches.forEach((Z)=>{if(Z.hasKind("unit")&&Z.domain==="boolean"){if(X===-1)X=Q.length,Q.push(Z);else Q[X]=E1.intrinsic.boolean;return}Q.push(Z)}),Q}unitBranches=this.branches.filter((Q)=>Q.in.hasKind("unit"));discriminant=this.discriminate();discriminantJson=this.discriminant?IE(this.discriminant):null;expression=this.distribute((Q)=>Q.nestableExpression,AE);get shortDescription(){return this.distribute((Q)=>Q.shortDescription,sZ)}innerToJsonSchema(){return{anyOf:this.branchGroups.map((Q)=>Q.equals(E1.intrinsic.boolean)?{type:"boolean"}:Q.toJsonSchema())}}traverseAllows=(Q,X)=>this.branches.some((Z)=>Z.traverseAllows(Q,X));traverseApply=(Q,X)=>{let Z=[];for(let J=0;J{for(let z in Z){let W=Z[z],$=z==="default"?z:`case ${z}`;Q.line(`${$}: return ${W===!0?W:Q.invoke(W)}`)}return Q}),Q.traversalKind==="Allows"){Q.return(!1);return}let G=sZ(this.discriminant.kind==="domain"?J.map((z)=>{let W=z.slice(1,-1);return W==="function"?Y9.object:Y9[W]}):J),Y=this.discriminant.path.map((z)=>typeof z==="string"?JSON.stringify(z):g6(z)),H=JSON.stringify(G),K=this.discriminant.kind==="domain"?`${TE}[${X}]`:`${ME}(${X})`;Q.line(`ctx.error({ - expected: ${H}, - actual: ${K}, - relativePath: [${Y}] -})`)}compileIndiscriminable(Q){if(Q.traversalKind==="Apply")Q.const("errors","[]"),this.branches.forEach((X)=>Q.line("ctx.pushBranch()").line(Q.invoke(X)).if("!ctx.hasError()",()=>Q.return(X.includesMorph?"ctx.queuedMorphs.push(...ctx.popBranch().queuedMorphs)":"ctx.popBranch()")).line("errors.push(ctx.popBranch().error)")),Q.line('ctx.error({ code: "union", errors })');else this.branches.forEach((X)=>Q.if(`${Q.invoke(X)}`,()=>Q.return(!0))),Q.return(!1)}get nestableExpression(){return this.isBoolean?"boolean":`(${this.expression})`}discriminate(){if(this.branches.length<2)return null;if(this.unitBranches.length===this.branches.length){let Y=w0(this.unitBranches,(H,K)=>[`${K.in.serializedValue}`,K.hasKind("morph")?K:!0]);return{kind:"unit",path:[],optionallyChainedPropString:"data",cases:Y}}let Q=[];for(let Y=0;YhZ(F.path,$.path)&&F.kind===$.kind);if(!D)Q.push({kind:$.kind,cases:{[q]:[H],[B]:[z]},path:$.path});else D.cases[q]=FQ(D.cases[q],H),D.cases[B]=FQ(D.cases[B],z)}}}let X=Q.sort((Y,H)=>Object.keys(Y.cases).length-Object.keys(H.cases).length).at(-1);if(!X)return null;let Z=[...this.branches],J={kind:X.kind,path:X.path,optionallyChainedPropString:IV(X.path)},G=w0(X.cases,(Y,H)=>{let K=[];Z=Z.filter((W)=>!H.includes(W));for(let W of H){let $=EE(W,J);if($===null)return[Y,!0];K.push($)}let z=K.length===1?K[0]:this.$.node("union",K);return Object.assign(this.referencesById,z.referencesById),[Y,z]});if(Z.length)G.default=this.$.node("union",Z,{prereduced:!0}),Object.assign(this.referencesById,G.default.referencesById);return Object.assign(J,{cases:G})}}var IV=(Q)=>Q.reduce((X,Z)=>X+QH(Z,!0),"data"),TE=g6($U),ME=g6(O0),OH={implementation:NE,Node:MV},IE=(Q)=>({kind:Q.kind,path:Q.path.map((X)=>typeof X==="string"?X:LQ(X)),cases:w0(Q.cases,(X,Z)=>[X,Z===!0?Z:Z.hasKind("union")&&Z.discriminantJson?Z.discriminantJson:Z.json])}),RE={delimiter:" | ",finalDelimiter:" | "},AE=(Q)=>sZ(Q,RE),sZ=(Q,X)=>{let Z=X?.delimiter??", ",J=X?.finalDelimiter??" or ";if(Q.length===0)return"never";if(Q.length===1)return Q[0];if(Q.length===2&&Q[0]==="false"&&Q[1]==="true"||Q[0]==="true"&&Q[1]==="false")return"boolean";let G={},Y=Q.filter((K)=>G[K]?!1:G[K]=!0),H=Y.pop();return`${Y.join(Z)}${Y.length?J:""}${H}`},AH=(Q,X,Z)=>{let J=X.map(()=>[]);for(let Y=0;YY?.flatMap((K)=>K.branches)??X[H]);return G.length===0?p1.init("union",Q,X):G},OE=({branches:Q,ordered:X})=>{if(Q.length<2)return Q;let Z=Q.map(()=>!0);for(let J=0;JZ[G])},wE=(Q,X)=>{if((Q.includesMorph||X.includesMorph)&&(!hZ(Q.shallowMorphs,X.shallowMorphs,{isEqual:(Z,J)=>Z.hasEqualMorphs(J)})||!hZ(Q.flatMorphs,X.flatMorphs,{isEqual:(Z,J)=>Z.propString===J.propString&&Z.node.hasEqualMorphs(J.node)})))I1(jE(Q.expression,X.expression))},EE=(Q,X)=>Q.transform((Z,J)=>{if(Z==="domain"||Z==="unit")return null;return J},{shouldTransform:(Z,J)=>{let G=IV(J.path);if(!X.optionallyChainedPropString.startsWith(G))return!1;if(Z.hasKind("domain")&&Z.domain==="object")return!0;if((Z.hasKind("domain")||X.kind==="unit")&&G===X.optionallyChainedPropString)return!0;return Z.children.length!==0&&Z.kind!=="index"}}),jE=(Q,X)=>`An unordered union of a type including a morph and a type with overlapping input is indeterminate: -Left: ${Q} -Right: ${X}`,SE=(Q,X)=>`The intersection of two ordered unions is indeterminate: -Left: ${Q} -Right: ${X}`;var kE=N0({kind:"unit",hasAssociatedError:!0,keys:{unit:{preserveUndefined:!0,serialize:(Q)=>Q instanceof Date?Q.toISOString():CQ(Q)}},normalize:(Q)=>Q,defaults:{description:(Q)=>O0(Q.unit),problem:({expected:Q,actual:X})=>`${Q===X?`must be reference equal to ${Q} (serialized to the same value)`:`must be ${Q} (was ${X})`}`},intersections:{unit:(Q,X)=>p1.init("unit",Q,X),...o9("unit",(Q,X)=>{if(X.allows(Q.unit))return Q;let Z=X.hasKind("intersection")?X.basis:X;if(Z){let J=Z.hasKind("domain")?Z:E1.intrinsic.object;if(Q.domain!==J.domain){let G=Q.domain==="undefined"||Q.domain==="null"||Q.domain==="boolean"?Q.domain:E1.intrinsic[Q.domain];return p1.init("domain",G,J)}}return p1.init("assignability",Q,X.hasKind("intersection")?X.children.find((J)=>!J.allows(Q.unit)):X)})}});class AV extends l4{compiledValue=this.json.unit;serializedValue=typeof this.unit==="string"||this.unit instanceof Date?JSON.stringify(this.compiledValue):`${this.compiledValue}`;compiledCondition=RV(this.unit,this.serializedValue);compiledNegation=RV(this.unit,this.serializedValue,"negated");expression=O0(this.unit);domain=P8(this.unit);get shortDescription(){return this.domain==="object"?Y9.object:this.description}innerToJsonSchema(){return E1.intrinsic.jsonPrimitive.allows(this.unit)?{const:this.unit}:I1(N6(this.shortDescription))}traverseAllows=this.unit instanceof Date?(Q)=>Q instanceof Date&&Q.toISOString()===this.compiledValue:Number.isNaN(this.unit)?(Q)=>Number.isNaN(Q):(Q)=>Q===this.unit}var wH={implementation:kE,Node:AV},RV=(Q,X,Z)=>{if(Q instanceof Date){let J=`data instanceof Date && data.toISOString() === ${X}`;return Z?`!(${J})`:J}if(Number.isNaN(Q))return`${Z?"!":""}Number.isNaN(data)`;return`data ${Z?"!":"="}== ${X}`};var yE=N0({kind:"index",hasAssociatedError:!1,intersectionIsOpen:!0,keys:{signature:{child:!0,parse:(Q,X)=>{let Z=X.$.parseSchema(Q);if(!Z.extends(E1.intrinsic.key))return I1(vE(Z.expression));let J=Z.branches.filter((G)=>G.hasKind("unit"));if(J.length)return I1(xE(J.map((G)=>O0(G.unit))));return Z}},value:{child:!0,parse:(Q,X)=>X.$.parseSchema(Q)}},normalize:(Q)=>Q,defaults:{description:(Q)=>`[${Q.signature.expression}]: ${Q.value.description}`},intersections:{index:(Q,X,Z)=>{if(Q.signature.equals(X.signature)){let J=$6(Q.value,X.value,Z),G=J instanceof p1?E1.intrinsic.never.internal:J;return Z.$.node("index",{signature:Q.signature,value:G})}if(Q.signature.extends(X.signature)&&Q.value.subsumes(X.value))return X;if(X.signature.extends(Q.signature)&&X.value.subsumes(Q.value))return Q;return null}}});class OV extends W9{impliedBasis=E1.intrinsic.object.internal;expression=`[${this.signature.expression}]: ${this.value.expression}`;traverseAllows=(Q,X)=>w7(Q).every((Z)=>{if(this.signature.traverseAllows(Z[0],X))return A8(Z[0],()=>this.value.traverseAllows(Z[1],X),X);return!0});traverseApply=(Q,X)=>w7(Q).forEach((Z)=>{if(this.signature.traverseAllows(Z[0],X))A8(Z[0],()=>this.value.traverseApply(Z[1],X),X)});_transform(Q,X){X.path.push(this.signature);let Z=super._transform(Q,X);return X.path.pop(),Z}get flatRefs(){return h0(this.value.flatRefs.map((Q)=>w9([this.signature,...Q.path],Q.node)),w9([this.signature],this.value))}compile(){}}var EH={implementation:yE,Node:OV},xE=(Q)=>`Index keys ${Q.join(", ")} should be specified as named props.`,vE=(Q)=>`Indexed key definition '${Q}' must be a string or symbol`;var gE=N0({kind:"required",hasAssociatedError:!0,intersectionIsOpen:!0,keys:{key:{},value:{child:!0,parse:(Q,X)=>X.$.parseSchema(Q)}},normalize:(Q)=>Q,defaults:{description:(Q)=>`${Q.compiledKey}: ${Q.value.description}`,expected:(Q)=>Q.missingValueDescription,actual:()=>"missing"},intersections:{required:f7,optional:f7}});class wV extends b7{expression=`${this.compiledKey}: ${this.value.expression}`;errorContext=Object.freeze({code:"required",missingValueDescription:this.value.shortDescription,relativePath:[this.key]});compiledErrorContext=uQ(this.errorContext)}var jH={implementation:gE,Node:wV};var hE=N0({kind:"sequence",hasAssociatedError:!1,collapsibleKey:"variadic",keys:{prefix:{child:!0,parse:(Q,X)=>{if(Q.length===0)return;return Q.map((Z)=>X.$.parseSchema(Z))}},optionals:{child:!0,parse:(Q,X)=>{if(Q.length===0)return;return Q.map((Z)=>X.$.parseSchema(Z))}},defaultables:{child:(Q)=>Q.map((X)=>X[0]),parse:(Q,X)=>{if(Q.length===0)return;return Q.map((Z)=>{let J=X.$.parseSchema(Z[0]);return _7(J,Z[1],null),[J,Z[1]]})},serialize:(Q)=>Q.map((X)=>[X[0].collapsibleJson,CQ(X[1])])},variadic:{child:!0,parse:(Q,X)=>X.$.parseSchema(Q,X)},minVariadicLength:{parse:(Q)=>Q===0?void 0:Q},postfix:{child:!0,parse:(Q,X)=>{if(Q.length===0)return;return Q.map((Z)=>X.$.parseSchema(Z))}}},normalize:(Q)=>{if(typeof Q==="string")return{variadic:Q};if("variadic"in Q||"prefix"in Q||"defaultables"in Q||"optionals"in Q||"postfix"in Q||"minVariadicLength"in Q){if(Q.postfix?.length){if(!Q.variadic)return I1(bE);if(Q.optionals?.length||Q.defaultables?.length)return I1(kH)}if(Q.minVariadicLength&&!Q.variadic)return I1("minVariadicLength may not be specified without a variadic element");return Q}return{variadic:Q}},reduce:(Q,X)=>{let Z=Q.minVariadicLength??0,J=Q.prefix?.slice()??[],G=Q.defaultables?.slice()??[],Y=Q.optionals?.slice()??[],H=Q.postfix?.slice()??[];if(Q.variadic){while(Y.at(-1)?.equals(Q.variadic))Y.pop();if(Y.length===0&&G.length===0)while(J.at(-1)?.equals(Q.variadic))J.pop(),Z++;while(H[0]?.equals(Q.variadic))H.shift(),Z++}else if(Y.length===0&&G.length===0)J.push(...H.splice(0));if(Z!==Q.minVariadicLength||Q.prefix&&Q.prefix.length!==J.length)return X.node("sequence",{...Q,prefix:J,defaultables:G,optionals:Y,postfix:H,minVariadicLength:Z},{prereduced:!0})},defaults:{description:(Q)=>{if(Q.isVariadicOnly)return`${Q.variadic.nestableExpression}[]`;return`[${Q.tuple.map((Z)=>Z.kind==="defaultables"?`${Z.node.nestableExpression} = ${O0(Z.default)}`:Z.kind==="optionals"?`${Z.node.nestableExpression}?`:Z.kind==="variadic"?`...${Z.node.nestableExpression}[]`:Z.node.expression).join(", ")}]`}},intersections:{sequence:(Q,X,Z)=>{let J=p7({l:Q.tuple,r:X.tuple,disjoint:new p1,result:[],fixedVariants:[],ctx:Z}),G=J.disjoint.length===0?[J,...J.fixedVariants]:J.fixedVariants;return G.length===0?J.disjoint:G.length===1?Z.$.node("sequence",EV(G[0].result)):Z.$.node("union",G.map((Y)=>({proto:Array,sequence:EV(Y.result)})))}}});class jV extends W9{impliedBasis=E1.intrinsic.Array.internal;tuple=fE(this.inner);prefixLength=this.prefix?.length??0;defaultablesLength=this.defaultables?.length??0;optionalsLength=this.optionals?.length??0;postfixLength=this.postfix?.length??0;prevariadic=this.tuple.filter((Q)=>Q.kind==="prefix"||Q.kind==="defaultables"||Q.kind==="optionals");variadicOrPostfix=bQ(this.variadic&&[this.variadic],this.postfix);isVariadicOnly=this.prevariadic.length+this.postfixLength===0;minVariadicLength=this.inner.minVariadicLength??0;minLength=this.prefixLength+this.minVariadicLength+this.postfixLength;minLengthNode=this.minLength===0?null:this.$.node("minLength",this.minLength);maxLength=this.variadic?null:this.tuple.length;maxLengthNode=this.maxLength===null?null:this.$.node("maxLength",this.maxLength);impliedSiblings=this.minLengthNode?this.maxLengthNode?[this.minLengthNode,this.maxLengthNode]:[this.minLengthNode]:this.maxLengthNode?[this.maxLengthNode]:[];defaultValueMorphs=this.defaultables?.map(([Q,X],Z)=>NH(this.prefixLength+Z,Q,X))??[];defaultValueMorphsReference=g6(this.defaultValueMorphs);elementAtIndex(Q,X){if(X=Z)return{kind:"postfix",node:this.postfix[X-Z]};return{kind:"variadic",node:this.variadic??a0(`Unexpected attempt to access index ${X} on ${this}`)}}traverseAllows=(Q,X)=>{for(let Z=0;Z{let Z=0;for(;Zthis.elementAtIndex(Q,Z).node.traverseApply(Q[Z],X),X);for(;Zh0(X.node.flatRefs.map((J)=>w9([`${Z}`,...J.path],J.node)),w9([`${Z}`],X.node)))),pZ(Q,this.variadicOrPostfix.flatMap((X)=>h0(X.flatRefs.map((Z)=>w9([E1.intrinsic.nonNegativeIntegerString.internal,...Z.path],Z.node)),w9([E1.intrinsic.nonNegativeIntegerString.internal],X)))),Q}get element(){return this.cacheGetter("element",this.$.node("union",this.children))}compile(Q){if(this.prefix?.forEach((X,Z)=>Q.traverseKey(`${Z}`,`data[${Z}]`,X)),this.defaultables?.forEach((X,Z)=>{let J=`${Z+this.prefixLength}`;Q.if(`${J} >= ${Q.data}.length`,()=>Q.traversalKind==="Allows"?Q.return(!0):Q.return(`ctx.queueMorphs(${this.defaultValueMorphsReference}[${Z}])`)),Q.traverseKey(J,`data[${J}]`,X[0])}),this.optionals?.forEach((X,Z)=>{let J=`${Z+this.prefixLength+this.defaultablesLength}`;Q.if(`${J} >= ${Q.data}.length`,()=>Q.traversalKind==="Allows"?Q.return(!0):Q.return()),Q.traverseKey(J,`data[${J}]`,X)}),this.variadic){if(this.postfix)Q.const("firstPostfixIndex",`${Q.data}.length${this.postfix?`- ${this.postfix.length}`:""}`);Q.for(`i < ${this.postfix?"firstPostfixIndex":"data.length"}`,()=>Q.traverseKey("i","data[i]",this.variadic),this.prevariadic.length),this.postfix?.forEach((X,Z)=>{let J=`firstPostfixIndex + ${Z}`;Q.traverseKey(J,`data[${J}]`,X)})}if(Q.traversalKind==="Allows")Q.return(!0)}_transform(Q,X){X.path.push(E1.intrinsic.nonNegativeIntegerString.internal);let Z=super._transform(Q,X);return X.path.pop(),Z}expression=this.description;reduceJsonSchema(Q){if(this.prefix)Q.prefixItems=this.prefix.map((X)=>X.toJsonSchema());if(this.optionals)I1(N6(`Optional tuple element${this.optionalsLength>1?"s":""} ${this.optionals.join(", ")}`));if(this.variadic){if(Q.items=this.variadic?.toJsonSchema(),this.minLength)Q.minItems=this.minLength;if(this.maxLength)Q.maxItems=this.maxLength}else Q.items=!1,delete Q.minItems,delete Q.maxItems;if(this.postfix)I1(N6(`Postfix tuple element${this.postfixLength>1?"s":""} ${this.postfix.join(", ")}`));return Q}}var SH={implementation:hE,Node:jV},fE=(Q)=>{let X=[];if(Q.prefix?.forEach((Z)=>X.push({kind:"prefix",node:Z})),Q.defaultables?.forEach(([Z,J])=>X.push({kind:"defaultables",node:Z,default:J})),Q.optionals?.forEach((Z)=>X.push({kind:"optionals",node:Z})),Q.variadic)X.push({kind:"variadic",node:Q.variadic});return Q.postfix?.forEach((Z)=>X.push({kind:"postfix",node:Z})),X},EV=(Q)=>Q.reduce((X,Z)=>{if(Z.kind==="variadic")X.variadic=Z.node;else if(Z.kind==="defaultables")X.defaultables=h0(X.defaultables,[[Z.node,Z.default]]);else X[Z.kind]=h0(X[Z.kind],Z.node);return X},{}),kH="A postfix required element cannot follow an optional or defaultable element",bE="A postfix element requires a variadic element",p7=(Q)=>{let[X,...Z]=Q.l,[J,...G]=Q.r;if(!X||!J)return Q;let Y=Z.at(-1)?.kind==="postfix",H=G.at(-1)?.kind==="postfix",K=X.kind==="prefix"||J.kind==="prefix"?"prefix":X.kind==="postfix"||J.kind==="postfix"?"postfix":X.kind==="variadic"&&J.kind==="variadic"?"variadic":Y||H?"prefix":X.kind==="defaultables"||J.kind==="defaultables"?"defaultables":"optionals";if(X.kind==="prefix"&&J.kind==="variadic"&&H){let q=p7({...Q,fixedVariants:[],r:G.map((B)=>({...B,kind:"prefix"}))});if(q.disjoint.length===0)Q.fixedVariants.push(q)}else if(J.kind==="prefix"&&X.kind==="variadic"&&Y){let q=p7({...Q,fixedVariants:[],l:Z.map((B)=>({...B,kind:"prefix"}))});if(q.disjoint.length===0)Q.fixedVariants.push(q)}let z=$6(X.node,J.node,Q.ctx);if(z instanceof p1)if(K==="prefix"||K==="postfix")Q.disjoint.push(...z.withPrefixKey(K==="prefix"?`${Q.result.length}`:`-${Z.length+1}`,"required")),Q.result=[...Q.result,{kind:K,node:E1.intrinsic.never.internal}];else if(K==="optionals"||K==="defaultables")return Q;else return p7({...Q,fixedVariants:[],l:Z.map((q)=>({...q,kind:"prefix"})),r:Z.map((q)=>({...q,kind:"prefix"}))});else if(K==="defaultables"){if(X.kind==="defaultables"&&J.kind==="defaultables"&&X.default!==J.default)I1(CH(X.default,J.default));Q.result=[...Q.result,{kind:K,node:z,default:X.kind==="defaultables"?X.default:J.kind==="defaultables"?J.default:a0(`Unexpected defaultable intersection from ${X.kind} and ${J.kind} elements.`)}]}else Q.result=[...Q.result,{kind:K,node:z}];let W=Q.l.length,$=Q.r.length;if(X.kind!=="variadic"||W>=$&&(J.kind==="variadic"||$===1))Q.l=Z;if(J.kind!=="variadic"||$>=W&&(X.kind==="variadic"||W===1))Q.r=G;return p7(Q)};var yH="^(?:0|[1-9]\\d*)$",mE=new RegExp(yH),SV=g6(mE);var yV=(Q)=>(X)=>{if(X.props.length||X.index){let Z=X.index?.map(String)??[];if(X.props.forEach((G)=>Z.push(G[Q])),X.undeclared)Z.push(`+ (undeclared): ${X.undeclared}`);let J=`{ ${Z.join(", ")} }`;return X.sequence?`${J} & ${X.sequence.description}`:J}return X.sequence?.description??"{}"},_E=yV("description"),dE=yV("expression"),uE=N0({kind:"structure",hasAssociatedError:!1,normalize:(Q,X)=>{if(!Q.undeclared&&X.resolvedConfig.onUndeclaredKey!=="ignore")return{...Q,undeclared:X.resolvedConfig.onUndeclaredKey};return Q},keys:{required:{child:!0,parse:J8("required"),reduceIo:(Q,X,Z)=>{X.required=h0(X.required,Z.map((J)=>J[Q]));return}},optional:{child:!0,parse:J8("optional"),reduceIo:(Q,X,Z)=>{if(Q==="in"){X.optional=Z.map((J)=>J.in);return}Z.forEach((J)=>X[J.outProp.kind]=h0(X[J.outProp.kind],J.outProp.out))}},index:{child:!0,parse:J8("index")},sequence:{child:!0,parse:J8("sequence")},undeclared:{parse:(Q)=>Q==="ignore"?void 0:Q}},defaults:{description:_E},intersections:{structure:(Q,X,Z)=>{let J={...Q.inner},G={...X.inner},Y=new p1;if(Q.undeclared){let z=Q.keyof();if(X.requiredKeys.forEach((W)=>{if(!z.allows(W))Y.add("presence",E1.intrinsic.never.internal,X.propsByKey[W].value,{path:[W]})}),G.optional)G.optional=G.optional.filter((W)=>z.allows(W.key));if(G.index)G.index=G.index.flatMap((W)=>{if(W.signature.extends(z))return W;let $=i8(z,W.signature,Z.$);if($ instanceof p1)return[];let q=bJ($,W.value,Z.$);if(q.required)G.required=bQ(G.required,q.required);if(q.optional)G.optional=bQ(G.optional,q.optional);return q.index??[]})}if(X.undeclared){let z=X.keyof();if(Q.requiredKeys.forEach((W)=>{if(!z.allows(W))Y.add("presence",Q.propsByKey[W].value,E1.intrinsic.never.internal,{path:[W]})}),J.optional)J.optional=J.optional.filter((W)=>z.allows(W.key));if(J.index)J.index=J.index.flatMap((W)=>{if(W.signature.extends(z))return W;let $=i8(z,W.signature,Z.$);if($ instanceof p1)return[];let q=bJ($,W.value,Z.$);if(q.required)J.required=bQ(J.required,q.required);if(q.optional)J.optional=bQ(J.optional,q.optional);return q.index??[]})}let H={};if(Q.undeclared||X.undeclared)H.undeclared=Q.undeclared==="reject"||X.undeclared==="reject"?"reject":"delete";let K=cZ({kind:"structure",baseInner:H,l:iZ(J),r:iZ(G),roots:[],ctx:Z});if(K instanceof p1)Y.push(...K);if(Y.length)return Y;return K}}});class xV extends W9{impliedBasis=E1.intrinsic.object.internal;impliedSiblings=this.children.flatMap((Q)=>Q.impliedSiblings??[]);props=bQ(this.required,this.optional);propsByKey=w0(this.props,(Q,X)=>[X.key,X]);propsByKeyReference=g6(this.propsByKey);expression=dE(this);requiredKeys=this.required?.map((Q)=>Q.key)??[];optionalKeys=this.optional?.map((Q)=>Q.key)??[];literalKeys=[...this.requiredKeys,...this.optionalKeys];_keyof;keyof(){if(this._keyof)return this._keyof;let Q=this.$.units(this.literalKeys).branches;return this.index?.forEach(({signature:X})=>{Q=Q.concat(X.branches)}),this._keyof=this.$.node("union",Q)}map(Q){return this.$.node("structure",this.props.flatMap(Q).reduce((X,Z)=>{let J=this.propsByKey[Z.key];if(F6(Z)){if(Z.kind!=="required"&&Z.kind!=="optional")return I1(`Map result must have kind "required" or "optional" (was ${Z.kind})`);return X[Z.kind]=h0(X[Z.kind],Z),X}let G=Z.kind??J?.kind??"required",Y=w0(Z,(H,K)=>(H in m7.implementation.keys)?[H,K]:[]);return X[G]=h0(X[G],this.$.node(G,Y)),X},{}))}assertHasKeys(Q){let X=Q.filter((Z)=>!d7(Z,this.keyof()));if(X.length)return I1(kV(this.expression,X))}get(Q,...X){let Z,J=!1,G=pE(Q);if((typeof G==="string"||typeof G==="symbol")&&this.propsByKey[G])Z=this.propsByKey[G].value,J=this.propsByKey[G].required;if(this.index?.forEach((H)=>{if(d7(G,H.signature))Z=Z?.and(H.value)??H.value}),this.sequence&&d7(G,E1.intrinsic.nonNegativeIntegerString))if(r1(G,"root")){if(this.sequence.variadic)Z=Z?.and(this.sequence.element)??this.sequence.element}else{let H=Number.parseInt(G);if(HZ.hasKind("required")?this.$.node("optional",Z.inner):Z)})}require(){let{optional:Q,...X}=this.inner;return this.$.node("structure",{...X,required:this.props.map((Z)=>Z.hasKind("optional")?{key:Z.key,value:Z.value}:Z)})}merge(Q){let X=this.filterKeys("omit",[Q.keyof()]);if(Q.required)X.required=h0(X.required,Q.required);if(Q.optional)X.optional=h0(X.optional,Q.optional);if(Q.index)X.index=h0(X.index,Q.index);if(Q.sequence)X.sequence=Q.sequence;if(Q.undeclared)X.undeclared=Q.undeclared;else delete X.undeclared;return this.$.node("structure",X)}filterKeys(Q,X){let Z=OJ(this.inner),J=(G)=>{let Y=X.some((H)=>d7(G,H));return Q==="pick"?Y:!Y};if(Z.required)Z.required=Z.required.filter((G)=>J(G.key));if(Z.optional)Z.optional=Z.optional.filter((G)=>J(G.key));if(Z.index)Z.index=Z.index.filter((G)=>J(G.signature));return Z}traverseAllows=(Q,X)=>this._traverse("Allows",Q,X);traverseApply=(Q,X)=>this._traverse("Apply",Q,X);_traverse=(Q,X,Z)=>{let J=Z?.currentErrorCount??0;for(let Y=0;YJ)return!1;if(this.sequence){if(Q==="Allows"){if(!this.sequence.traverseAllows(X,Z))return!1}else if(this.sequence.traverseApply(X,Z),Z.failFast&&Z.currentErrorCount>J)return!1}if(!this.exhaustive)return!0;let G=Object.keys(X);G.push(...Object.getOwnPropertySymbols(X));for(let Y=0;Yz.value.traverseAllows(X[H],Z),Z))return!1}else if(A8(H,()=>z.value.traverseApply(X[H],Z),Z),Z.failFast&&Z.currentErrorCount>J)return!1;K=!0}}if(this.undeclared){if(K||=H in this.propsByKey,K||=this.sequence!==void 0&&typeof H==="string"&&E1.intrinsic.nonNegativeIntegerString.allows(H),!K){if(Q==="Allows")return!1;if(this.undeclared==="reject")Z.error({expected:"removed",actual:"",relativePath:[H]});else Z.queueMorphs([(z)=>{return delete z[H],z}]);if(Z.failFast)return!1}}}return!0};compile(Q){if(Q.traversalKind==="Apply")Q.initializeErrorCount();if(this.props.forEach((X)=>{if(Q.check(X),Q.traversalKind==="Apply")Q.returnIfFailFast()}),this.sequence){if(Q.check(this.sequence),Q.traversalKind==="Apply")Q.returnIfFailFast()}if(this.exhaustive)Q.const("keys","Object.keys(data)"),Q.line("keys.push(...Object.getOwnPropertySymbols(data))"),Q.for("i < keys.length",()=>this.compileExhaustiveEntry(Q));if(Q.traversalKind==="Allows")Q.return(!0)}compileExhaustiveEntry(Q){if(Q.const("k","keys[i]"),this.undeclared)Q.let("matched",!1);if(this.index?.forEach((X)=>{Q.if(`${Q.invoke(X.signature,{arg:"k",kind:"Allows"})}`,()=>{if(Q.traverseKey("k","data[k]",X.value),this.undeclared)Q.set("matched",!0);return Q})}),this.undeclared){if(this.props?.length!==0)Q.line(`matched ||= k in ${this.propsByKeyReference}`);if(this.sequence)Q.line(`matched ||= typeof k === "string" && ${SV}.test(k)`);Q.if("!matched",()=>{if(Q.traversalKind==="Allows")return Q.return(!1);return this.undeclared==="reject"?Q.line('ctx.error({ expected: "removed", actual: "", relativePath: [k] })').if("ctx.failFast",()=>Q.return()):Q.line("ctx.queueMorphs([data => { delete data[k]; return data }])")})}return Q}reduceJsonSchema(Q){switch(Q.type){case"object":return this.reduceObjectJsonSchema(Q);case"array":if(this.props.length||this.index)I1(N6(`Additional properties on array ${this.expression}`));return this.sequence?.reduceJsonSchema(Q)??Q;default:return lQ("structure",Q)}}reduceObjectJsonSchema(Q){if(this.props.length){if(Q.properties={},this.props.forEach((X)=>{if(typeof X.key==="symbol")return I1(N6(`Sybolic key ${X.serializedKey}`));Q.properties[X.key]=X.value.toJsonSchema()}),this.requiredKeys.length)Q.required=this.requiredKeys}if(this.index?.forEach((X)=>{if(X.signature.equals(E1.intrinsic.string))return Q.additionalProperties=X.value.toJsonSchema();if(!X.signature.extends(E1.intrinsic.string))return I1(N6(`Symbolic index signature ${X.signature.exclude(E1.intrinsic.string)}`));X.signature.branches.forEach((Z)=>{if(!Z.hasKind("intersection")||Z.pattern?.length!==1)return I1(N6(`Index signature ${Z}`));Q.patternProperties??={},Q.patternProperties[Z.pattern[0].rule]=X.value.toJsonSchema()})}),this.undeclared&&!Q.additionalProperties)Q.additionalProperties=!1;return Q}}var xH={implementation:uE,Node:xV},pE=(Q)=>{if(r1(Q,"root")&&Q.hasKind("unit"))Q=Q.unit;if(typeof Q==="number")Q=`${Q}`;return Q},lE=(Q,X)=>`${Q} is not allowed as an array index on ${X}. Use the 'nonNegativeIntegerString' keyword instead.`,bJ=(Q,X,Z)=>{let[J,G]=KU(Q.branches,(H)=>H.hasKind("unit"));if(!J.length)return{index:Z.node("index",{signature:Q,value:X})};let Y={};if(J.forEach((H)=>{let K=Z.node("required",{key:H.unit,value:X});Y[K.kind]=h0(Y[K.kind],K)}),G.length)Y.index=Z.node("index",{signature:G,value:X});return Y},cE=(Q)=>r1(Q,"root")?Q.expression:O0(Q),kV=(Q,X)=>`Key${X.length===1?"":"s"} ${X.map(cE).join(", ")} ${X.length===1?"does":"do"} not exist on ${Q}`;var oZ={...WV,alias:u7.implementation,domain:TH.implementation,unit:wH.implementation,proto:RH.implementation,union:OH.implementation,morph:IH.implementation,intersection:MH.implementation,divisor:qH.implementation,pattern:PH.implementation,predicate:WH.implementation,required:jH.implementation,optional:m7.implementation,index:EH.implementation,sequence:SH.implementation,structure:xH.implementation};E1.defaultConfig=Object.assign(w0(oZ,(Q,X)=>[Q,X.defaults]),{jitless:NU(),clone:FU,onUndeclaredKey:"ignore"});var BV={...qV,alias:u7.Node,domain:TH.Node,unit:wH.Node,proto:RH.Node,union:OH.Node,morph:IH.Node,intersection:MH.Node,divisor:qH.Node,pattern:PH.Node,predicate:WH.Node,required:jH.Node,optional:m7.Node,index:EH.Node,sequence:SH.Node,structure:xH.Node};class c4 extends u3{get[I8](){return"module"}}var vH=(Q,X)=>new c4(w0(Q,(Z,J)=>[Z,r1(J,"module")?vH(J,X):X.bindReference(J)]));var iE=(Q)=>G6(Q)?Q:("branches"in Q)&&G6(Q.branches)?Q.branches:void 0,nE=(Q,X)=>I1(`Node of kind ${X} is not valid as a ${Q} definition`),vV=(Q)=>`#${Q} duplicates public alias ${Q}`,gV={};E1.ambient??={};var hV;class mJ{config;resolvedConfig;id=`${Object.keys(gV).length}$`;get[I8](){return"scope"}referencesById={};references=[];resolutions={};json={};exportedNames=[];aliases={};resolved=!1;nodesByHash={};constructor(Q,X){this.config=X??{},this.resolvedConfig=uU(X),Object.entries(Q).map((J)=>this.preparseOwnAliasEntry(...J)).forEach(([J,G])=>{let Y=J;if(J[0]==="#"){if(Y=J.slice(1),Y in this.aliases)I1(vV(Y));this.aliases[Y]=G}else{if(Y in this.aliases)I1(vV(J));this.aliases[Y]=G,this.exportedNames.push(Y)}if(!r1(G,"module")&&!r1(G,"generic")&&!mQ(G)){let H=this.preparseOwnDefinitionFormat(G,{alias:Y});if(r1(H,"root"))this.resolutions[Y]=this.bindReference(H);else this.resolutions[Y]=this.createParseContext(H).id}}),hV??=this.node("union",{branches:["string","number","object","bigint","symbol",{unit:!0},{unit:!1},{unit:void 0},{unit:null}]},{prereduced:!0}),this.nodesByHash[hV.hash]=this.node("intersection",{},{prereduced:!0}),gV[this.id]=this}get internal(){return this}defineSchema(Q){return Q}generic=(...Q)=>{let X=this;return(Z,J)=>new pQ(Q,J?new kJ(Z):Z,X,X,J??null)};units=(Q,X)=>{let Z=[];for(let G of Q)if(!Z.includes(G))Z.push(G);let J=Z.map((G)=>this.node("unit",{unit:G},X));return this.node("union",J,{...X,prereduced:!0})};lazyResolutions=[];lazilyResolve(Q,X){let Z=this.node("alias",{reference:X??"synthetic",resolve:Q},{prereduced:!0});if(!this.resolved)this.lazyResolutions.push(Z);return Z}schema=(Q,X)=>this.finalize(this.parseSchema(Q,X));parseSchema=(Q,X)=>this.node(h7(Q),Q,X);preparseNode(Q,X,Z){let J=typeof Q==="string"?Q:h7(X,Q);if(F6(X)&&X.kind===J)return X;if(J==="alias"&&!Z?.prereduced){let{reference:H}=u7.implementation.normalize(X,this);if(H.startsWith("$")){let K=this.resolveRoot(H.slice(1));X=K,J=K.kind}}else if(J==="union"&&M8(X,"object")){let H=iE(X);if(H?.length===1)X=H[0],J=h7(X)}let Y=oZ[J].normalize?.(X,this)??X;if(F6(Y))return Y.kind===J?Y:nE(J,Y.kind);return{...Z,$:this,kind:J,def:Y,prefix:Z.alias??J}}bindReference(Q){let X=Q.$===this?Q:F6(Q)?new Q.constructor(Q.attachments,this):new pQ(Q.params,Q.bodyDef,Q.$,this,Q.hkt);if(!this.resolved)Object.assign(this.referencesById,X.referencesById);return X}resolveRoot(Q){return this.maybeResolveRoot(Q)??I1(fH(Q))}maybeResolveRoot(Q){let X=this.maybeResolve(Q);if(r1(X,"generic"))return;return X}maybeResolveSubalias(Q){return gH(this.aliases,Q)??gH(this.ambient,Q)}get ambient(){return E1.ambient}maybeResolve(Q){let X=this.resolutions[Q];if(X){if(typeof X!=="string")return X;let J=F8[X];if(r1(J,"root"))return this.resolutions[Q]=J;if(r1(J,"context")){if(J.phase==="resolving")return this.node("alias",{reference:`$${Q}`},{prereduced:!0});if(J.phase==="resolved")return a0(`Unexpected resolved context for was uncached by its scope: ${O0(J)}`);J.phase="resolving";let G=this.bindReference(this.parseOwnDefinitionFormat(J.def,J));return J.phase="resolved",F8[G.id]=G,F8[J.id]=G,this.resolutions[Q]=G}return a0(`Unexpected nodesById entry for ${X}: ${O0(J)}`)}let Z=this.aliases[Q]??this.ambient?.[Q];if(!Z)return this.maybeResolveSubalias(Q);if(Z=this.normalizeRootScopeValue(Z),r1(Z,"generic"))return this.resolutions[Q]=this.bindReference(Z);if(r1(Z,"module"))if(Z.root)return this.resolutions[Q]=this.bindReference(Z.root);else return I1(_V(Q));return this.resolutions[Q]=this.parse(Z,{alias:Q})}createParseContext(Q){let X=Q.id??FH(Q.prefix);return F8[X]=Object.assign(Q,{[I8]:"context",$:this,id:X,phase:"unresolved"})}import(...Q){return new c4(w0(this.export(...Q),(X,Z)=>[`#${X}`,Z]))}precompilation;_exportedResolutions;_exports;export(...Q){if(!this._exports){this._exports={};for(let Z of this.exportedNames){let J=this.aliases[Z];this._exports[Z]=r1(J,"module")?vH(J,this):fV(this.maybeResolve(Z))}if(this.lazyResolutions.forEach((Z)=>Z.resolution),this.resolvedConfig.ambient===!0)Object.assign(E1.ambient,this._exports);else if(typeof this.resolvedConfig.ambient==="string")Object.assign(E1.ambient,{[this.resolvedConfig.ambient]:new c4({...this._exports})});if(this._exportedResolutions=mV(this,this._exports),Object.assign(this.json,bV(this._exportedResolutions)),Object.assign(this.resolutions,this._exportedResolutions),this.references=Object.values(this.referencesById),!this.resolvedConfig.jitless)this.precompilation=uV(this.references),dV(this.references,this.precompilation);this.resolved=!0}let X=Q.length?Q:this.exportedNames;return new c4(w0(X,(Z,J)=>[J,this._exports[J]]))}resolve(Q){return this.export()[Q]}node=(Q,X,Z={})=>{let J=this.preparseNode(Q,X,Z);if(F6(J))return this.bindReference(J);let G=this.createParseContext(J);return F8[G.id]=this.bindReference(DH(G))};parse=(Q,X={})=>this.finalize(this.parseDefinition(Q,X));parseDefinition(Q,X={}){if(r1(Q,"root"))return this.bindReference(Q);let Z=this.preparseOwnDefinitionFormat(Q,X);if(r1(Z,"root"))return this.bindReference(Z);let J=this.createParseContext(Z);F8[J.id]=J;let G=this.bindReference(this.parseOwnDefinitionFormat(Q,J));if(G.isCyclic)G=$V(G,J.id);return F8[J.id]=G,G}finalize(Q){if(fV(Q),!Q.precompilation&&!this.resolvedConfig.jitless)aE(Q.references);return Q}}class hH extends mJ{parseOwnDefinitionFormat(Q,X){return DH(X)}preparseOwnDefinitionFormat(Q,X){return this.preparseNode(h7(Q),Q,X)}preparseOwnAliasEntry(Q,X){return[Q,X]}normalizeRootScopeValue(Q){return Q}}var fV=(Q)=>{return Q.references.filter((X)=>X.hasKind("alias")).forEach((X)=>{Object.assign(X.referencesById,X.resolution.referencesById),Q.references.forEach((Z)=>{if(X.id in Z.referencesById)Object.assign(Z.referencesById,X.referencesById)})}),Q},bV=(Q)=>w0(Q,(X,Z)=>[X,r1(Z,"root")||r1(Z,"generic")?Z.json:r1(Z,"module")?bV(Z):a0(`Unexpected resolution ${O0(Z)}`)]),gH=(Q,X)=>{let Z=X.indexOf(".");if(Z===-1)return;let J=X.slice(0,Z),G=Q[J];if(G===void 0)return;if(!r1(G,"module"))return I1(oE(J));let Y=X.slice(Z+1),H=G[Y];if(H===void 0)return gH(G,Y);if(r1(H,"root")||r1(H,"generic"))return H;if(r1(H,"module"))return H.root??I1(_V(X));a0(`Unexpected resolution for alias '${X}': ${O0(H)}`)},_J=(Q,X)=>new hH(Q,X),l7=new hH({});var mV=(Q,X)=>{let Z={};for(let J in X){let G=X[J];if(r1(G,"module")){let Y=mV(Q,G),H=w0(Y,(K,z)=>[`${J}.${K}`,z]);Object.assign(Z,H)}else if(r1(G,"root")||r1(G,"generic"))Z[J]=G;else a0(`Unexpected scope resolution ${O0(G)}`)}return Z},fH=(Q)=>`'${Q}' is unresolvable`,oE=(Q)=>`'${Q}' must reference a module to be accessed using dot syntax`,_V=(Q)=>`Reference to submodule '${Q}' must specify an alias`,aE=(Q)=>dV(Q,uV(Q)),dV=(Q,X)=>{let Z=sE(X);for(let J of Q){if(J.precompilation)continue;if(J.traverseAllows=Z[`${J.id}Allows`].bind(Z),J.isRoot()&&!J.allowsRequiresContext)J.allows=J.traverseAllows;J.traverseApply=Z[`${J.id}Apply`].bind(Z),J.precompilation=X}},sE=(Q)=>new RJ().return(Q).compile()(),uV=(Q)=>Q.reduce((X,Z)=>{let J=new AJ("Allows").indent();Z.compile(J);let G=J.write(`${Z.id}Allows`),Y=new AJ("Apply").indent();Z.compile(Y);let H=Y.write(`${Z.id}Apply`);return`${X}${G}, -${H}, -`},`{ -`)+"}";l7.export();var{schema:s0,node:tZ,defineSchema:e41,generic:H9}=l7;var pV=_J({bigint:"bigint",boolean:[{unit:!1},{unit:!0}],false:{unit:!1},never:[],null:{unit:null},number:"number",object:"object",string:"string",symbol:"symbol",true:{unit:!0},unknown:{},undefined:{unit:void 0},Array,Date},{prereducedAliases:!0}).export();E1.intrinsic={...pV};var lV=_J({integer:{domain:"number",divisor:1},lengthBoundable:["string",Array],key:["string","symbol"],nonNegativeIntegerString:{domain:"string",pattern:yH}},{prereducedAliases:!0}).export();Object.assign(E1.intrinsic,lV);var tE=_J({jsonPrimitive:["string","number",{unit:!0},{unit:!1},{unit:null}],jsonObject:{domain:"object",index:{signature:"string",value:"$jsonData"}},jsonArray:{proto:Array,sequence:"$jsonData"},jsonData:["$jsonPrimitive","$jsonObject","$jsonArray"],json:["$jsonObject","$jsonArray"]},{prereducedAliases:!0}).export(),P0={...pV,...lV,...tE,emptyStructure:tZ("structure",{},{prereduced:!0})};E1.intrinsic={...P0};var iV=(Q)=>typeof Q==="string"&&Q[0]==="d"&&(Q[1]==="'"||Q[1]==='"')&&Q.at(-1)===Q[1],cV=(Q)=>Q.toString()!=="Invalid Date",nV=(Q)=>Q.slice(2,-1),bH=(Q)=>`'${Q}' could not be parsed by the Date constructor`,oV=(Q,X)=>rE(Q,X),rE=(Q,X)=>{let Z=new Date(Q);if(cV(Z))return Z;let J=jU(Q);if(J!==void 0){let G=new Date(J);if(cV(G))return G}return X?I1(X===!0?bH(Q):X):void 0};var mH=(Q,X)=>{let Z=Q.scanner.shiftUntil(eE[sV[X]]);if(Q.scanner.lookahead==="")return Q.error(Z2(Z,X));if(Q.scanner.shift(),X==="/"){try{new RegExp(Z)}catch(J){I1(String(J))}Q.root=Q.ctx.$.node("intersection",{domain:"string",pattern:Z},{prereduced:!0})}else if(a6(X,_H))Q.root=Q.ctx.$.node("unit",{unit:Z});else{let J=oV(Z,bH(Z));Q.root=Q.ctx.$.node("unit",{meta:Z,unit:J})}},_H={"'":1,'"':1},aV={"/":1,"'":1,'"':1},sV={"d'":"'",'d"':'"',"'":"'",'"':'"',"/":"/"},eE={"'":(Q)=>Q.lookahead==="'",'"':(Q)=>Q.lookahead==='"',"/":(Q)=>Q.lookahead==="/"},Q2={'"':"double-quote","'":"single-quote","/":"forward slash"},Z2=(Q,X)=>`${X}${Q} requires a closing ${Q2[sV[X]]}`;var tV=(Q)=>`Private type references should not include '#'. Use '${Q}' instead.`,dJ="Optional definitions like 'string?' are only valid as properties in an object or tuple",uJ="Defaultable definitions like 'number = 0' are only valid as properties in an object or tuple";var rV={">":!0,">=":!0},eV={"<":!0,"<=":!0};var rZ={"<":">",">":"<","<=":">=",">=":"<=","==":"=="},QP=(Q)=>`Unmatched )${Q===""?"":` before ${Q}`}`,pJ=(Q)=>`Missing ${Q}`,ZP=(Q,X)=>`Left bounds are only valid when paired with right bounds (try ...${X}${Q})`,lJ=(Q)=>`Left-bounded expressions must specify their limits using < or <= (was ${Q})`,XP=(Q,X,Z,J)=>`An expression may have at most one left bound (parsed ${Q}${rZ[X]}, ${Z}${rZ[J]})`;var JP=(Q,X,Z)=>GP(Q,X,Z,[]),GP=(Q,X,Z,J)=>{let G=Z.parseUntilFinalizer();if(J.push(G.root),G.finalizer===">"){if(J.length!==X.params.length)return Z.error(dH(Q,X.names,J.map((Y)=>Y.expression)));return J}if(G.finalizer===",")return GP(Q,X,Z,J);return G.error(pJ(">"))},dH=(Q,X,Z)=>`${Q}<${X.join(", ")}> requires exactly ${X.length} args (got ${Z.length}${Z.length===0?"":`: ${Z.join(", ")}`})`;var uH=(Q)=>{let X=Q.scanner.shiftUntilNextTerminator();if(X==="keyof")Q.addPrefix("keyof");else Q.root=J2(Q,X)},X2=(Q,X,Z)=>{if(Z.scanner.shiftUntilNonWhitespace(),Z.scanner.shift()!=="<")return Z.error(dH(Q,X.names,[]));let G=JP(Q,X,Z);return X(...G)},J2=(Q,X)=>G2(Q,X)??Y2(Q,X)??Q.error(X===""?Q.scanner.lookahead==="#"?tV(Q.shiftedByOne().scanner.shiftUntilNextTerminator()):pH(Q):fH(X)),G2=(Q,X)=>{if(Q.ctx.args?.[X]){let J=Q.ctx.args[X];if(typeof J!=="string")return J;return Q.ctx.$.node("alias",{reference:J},{prereduced:!0})}let Z=Q.ctx.$.maybeResolve(X);if(r1(Z,"root"))return Z;if(Z===void 0)return;if(r1(Z,"generic"))return X2(X,Z,Q);return I1(`Unexpected resolution ${O0(Z)}`)},Y2=(Q,X)=>{let Z=SU(X);if(Z!==void 0)return Q.ctx.$.node("unit",{unit:Z});let J=yU(X);if(J!==void 0)return Q.ctx.$.node("unit",{unit:J})},pH=(Q)=>{let X=Q.previousOperator();return X?lH(X,Q.scanner.unscanned):W2(Q.scanner.unscanned)},lH=(Q,X="")=>`Token '${Q}' requires a right operand${X?` before '${X}'`:""}`,W2=(Q)=>`Expected an expression${Q?` before '${Q}'`:""}`;var cH=(Q)=>Q.scanner.lookahead===""?Q.error(pH(Q)):Q.scanner.lookahead==="("?Q.shiftedByOne().reduceGroupOpen():Q.scanner.lookaheadIsIn(aV)?mH(Q,Q.scanner.shift()):Q.scanner.lookaheadIsIn(dQ)?cH(Q.shiftedByOne()):Q.scanner.lookahead==="d"?Q.scanner.nextLookahead in _H?mH(Q,`${Q.scanner.shift()}${Q.scanner.shift()}`):uH(Q):uH(Q);class TQ extends t3{shiftUntilNextTerminator(){return this.shiftUntilNonWhitespace(),this.shiftUntil(()=>(this.lookahead in TQ.terminatingChars))}static terminatingChars={"<":1,">":1,"=":1,"|":1,"&":1,")":1,"[":1,"%":1,",":1,":":1,"?":1,"#":1,...dQ};static finalizingLookaheads={">":1,",":1,"":1,"=":1,"?":1};static lookaheadIsFinalizing=(Q,X)=>Q===">"?X[0]==="="?X[1]==="=":X.trimStart()===""||a6(X.trimStart()[0],TQ.terminatingChars):Q==="="?X[0]!=="=":Q===","||Q==="?"}var WP=(Q,X)=>{let Z=q2(Q,X);if(Q.root.hasKind("unit")){if(typeof Q.root.unit==="number"){Q.reduceLeftBound(Q.root.unit,Z),Q.unsetRoot();return}if(Q.root.unit instanceof Date){let J=`d'${Q.root.description??Q.root.unit.toISOString()}'`;Q.unsetRoot(),Q.reduceLeftBound(J,Z);return}}return z2(Q,Z)},qP={"<":1,">":1,"=":1},q2=(Q,X)=>Q.scanner.lookaheadIs("=")?`${X}${Q.scanner.shift()}`:X;var YP=(Q,X,Z,J)=>{if(Z.extends(E1.intrinsic.number)){if(typeof X!=="number")return I1(iH(Q,X,J));return Q==="=="?["min","max"]:Q[0]===">"?["min"]:["max"]}if(Z.extends(E1.intrinsic.lengthBoundable)){if(typeof X!=="number")return I1(iH(Q,X,J));return Q==="=="?["exactLength"]:Q[0]===">"?["minLength"]:["maxLength"]}if(Z.extends(E1.intrinsic.Date))return Q==="=="?["after","before"]:Q[0]===">"?["after"]:["before"];return I1(rU(Z.expression))},H2=(Q)=>({rule:iV(Q.limit)?nV(Q.limit):Q.limit,exclusive:Q.comparator.length===1}),z2=(Q,X)=>{let Z=Q.unsetRoot(),J=Q.scanner.location;Q.parseOperand();let G=Q.unsetRoot(),Y=Q.scanner.sliceChars(J,Q.scanner.location);if(Q.root=Z,!G.hasKind("unit")||typeof G.unit!=="number"&&!(G.unit instanceof Date))return Q.error(iH(X,Y,"right"));let H=G.unit,K=X.length===1,z=YP(X,typeof H==="number"?H:Y,Z,"right");for(let $ of z)Q.constrainRoot($,X==="=="?{rule:H}:{rule:H,exclusive:K});if(!Q.branches.leftBound)return;if(!a6(X,eV))return Q.error(lJ(X));let W=YP(Q.branches.leftBound.comparator,Q.branches.leftBound.limit,Z,"left");Q.constrainRoot(W[0],H2(Q.branches.leftBound)),Q.branches.leftBound=null},iH=(Q,X,Z)=>`Comparator ${Z==="left"?rZ[Q]:Q} must be ${Z==="left"?"preceded":"followed"} by a corresponding literal (was ${X})`;var HP=(Q)=>{Q.scanner.shiftUntilNonWhitespace();let X=Q.scanner.shiftUntilNextTerminator();Q.root=Q.root.brand(X)};var KP=(Q)=>{let X=Q.scanner.shiftUntilNextTerminator(),Z=kU(X,{errorOnFail:zP(X)});if(Z===0)Q.error(zP(0));Q.root=Q.root.constrain("divisor",Z)},zP=(Q)=>`% operator must be followed by a non-zero integer literal (was ${Q})`;var nH=(Q)=>{let X=Q.scanner.shift();return X===""?Q.finalize(""):X==="["?Q.scanner.shift()==="]"?Q.setRoot(Q.root.array()):Q.error(K2):X==="|"||X==="&"?Q.pushRootToBranch(X):X===")"?Q.finalizeGroup():TQ.lookaheadIsFinalizing(X,Q.scanner.unscanned)?Q.finalize(X):a6(X,qP)?WP(Q,X):X==="%"?KP(Q):X==="#"?HP(Q):(X in dQ)?nH(Q):Q.error(cJ(X))},cJ=(Q,X="")=>`'${Q}' is not allowed here${X&&` (should be ${X})`}`,K2="Missing expected ']'";var $P=(Q)=>{let X=Q.unsetRoot();Q.parseOperand();let Z=Q.unsetRoot();if(!Z.hasKind("unit"))return Q.error($2(Z.expression));let J=Z.unit instanceof Date?()=>new Date(Z.unit):Z.unit;return[X,"=",J]},$2=(Q)=>`Default value '${Q}' must a literal value`;var oH=(Q,X)=>{let Z=X.$.maybeResolveRoot(Q);if(Z)return Z;let J=Q.endsWith("[]")?X.$.maybeResolveRoot(Q.slice(0,-2))?.array():void 0;if(J)return J;let G=new eZ(new TQ(Q),X),Y=B2(G);if(G.finalizer===">")I1(cJ(">"));return Y},B2=(Q)=>{Q.parseOperand();let X=c7(Q).root;if(!X)return a0(`Root was unexpectedly unset after parsing string '${Q.scanner.scanned}'`);if(Q.finalizer==="=")X=$P(Q);else if(Q.finalizer==="?")X=[X,"?"];if(Q.scanner.shiftUntilNonWhitespace(),Q.scanner.lookahead)I1(cJ(Q.scanner.lookahead));return X},c7=(Q)=>{while(Q.finalizer===void 0)U2(Q);return Q},U2=(Q)=>Q.hasRoot()?Q.parseOperator():Q.parseOperand();class eZ{root;branches={prefixes:[],leftBound:null,intersection:null,union:null};finalizer;groups=[];scanner;ctx;constructor(Q,X){this.scanner=Q,this.ctx=X}error(Q){return I1(Q)}hasRoot(){return this.root!==void 0}setRoot(Q){this.root=Q}unsetRoot(){let Q=this.root;return this.root=void 0,Q}constrainRoot(...Q){this.root=this.root.constrain(Q[0],Q[1])}finalize(Q){if(this.groups.length)return this.error(pJ(")"));this.finalizeBranches(),this.finalizer=Q}reduceLeftBound(Q,X){let Z=rZ[X];if(!a6(Z,rV))return this.error(lJ(X));if(this.branches.leftBound)return this.error(XP(this.branches.leftBound.limit,this.branches.leftBound.comparator,Q,Z));this.branches.leftBound={comparator:Z,limit:Q}}finalizeBranches(){if(this.assertRangeUnset(),this.branches.union)this.pushRootToBranch("|"),this.root=this.branches.union;else if(this.branches.intersection)this.pushRootToBranch("&"),this.root=this.branches.intersection;else this.applyPrefixes()}finalizeGroup(){this.finalizeBranches();let Q=this.groups.pop();if(!Q)return this.error(QP(this.scanner.unscanned));this.branches=Q}addPrefix(Q){this.branches.prefixes.push(Q)}applyPrefixes(){while(this.branches.prefixes.length){let Q=this.branches.prefixes.pop();this.root=Q==="keyof"?this.root.keyof():a0(`Unexpected prefix '${Q}'`)}}pushRootToBranch(Q){this.assertRangeUnset(),this.applyPrefixes();let X=this.root;if(this.branches.intersection=this.branches.intersection?.rawAnd(X)??X,Q==="|")this.branches.union=this.branches.union?.rawOr(this.branches.intersection)??this.branches.intersection,this.branches.intersection=null;this.root=void 0}parseUntilFinalizer(){return c7(new eZ(this.scanner,this.ctx))}parseOperator(){return nH(this)}parseOperand(){return cH(this)}assertRangeUnset(){if(this.branches.leftBound)return this.error(ZP(this.branches.leftBound.limit,this.branches.leftBound.comparator))}reduceGroupOpen(){this.groups.push(this.branches),this.branches={prefixes:[],leftBound:null,union:null,intersection:null}}previousOperator(){return this.branches.leftBound?.comparator??this.branches.prefixes.at(-1)??(this.branches.intersection?"&":this.branches.union?"|":void 0)}shiftedByOne(){return this.scanner.shift(),this}}var V2="An empty string is not a valid generic parameter name",iJ=(Q,X,Z)=>{Q.shiftUntilNonWhitespace();let J=Q.shiftUntilNextTerminator();if(J===""){if(Q.lookahead===""&&X.length)return X;return I1(V2)}return Q.shiftUntilNonWhitespace(),P2(Q,J,X,Z)},BP="extends ",P2=(Q,X,Z,J)=>{if(Q.shiftUntilNonWhitespace(),Q.unscanned.startsWith(BP))Q.jumpForward(BP.length);else{if(Q.lookahead===",")Q.shift();return Z.push(X),iJ(Q,Z,J)}let G=c7(new eZ(Q,J));return Z.push([X,G.root]),iJ(Q,Z,J)};var nJ=(Q,X)=>{if(G6(Q)){if(Q[1]==="=")return[X.$.parseOwnDefinitionFormat(Q[0],X),"=",Q[2]];if(Q[1]==="?")return[X.$.parseOwnDefinitionFormat(Q[0],X),"?"]}return oJ(Q,X)},UP="Only required keys may make their values optional, e.g. { [mySymbol]: ['number', '?'] }",VP="Only required keys may specify default values, e.g. { value: 'number = 0' }";var PP=(Q,X)=>{let Z,J={},G=w7(Q);for(let[H,K]of G){let z=L2(H);if(z.kind==="spread"){if(!O9(J))return I1(D2);let D=X.$.parseOwnDefinitionFormat(K,X);if(!D.hasKind("intersection")||!D.structure)return I1(C2(D.expression));Z=D.structure;continue}if(z.kind==="undeclared"){if(K!=="reject"&&K!=="delete"&&K!=="ignore")I1(F2(K));J.undeclared=K;continue}let W=nJ(K,X),$=z;if(z.kind==="required"){if(!G6(W))aH(J,"required",{key:z.normalized,value:W},X);else aH(J,"optional",W[1]==="="?{key:z.normalized,value:W[0],default:W[2]}:{key:z.normalized,value:W[0]},X);continue}if(G6(W)){if(W[1]==="?")I1(UP);if(W[1]==="=")I1(VP)}if(z.kind==="optional"){aH(J,"optional",{key:z.normalized,value:W},X);continue}let q=X.$.parseOwnDefinitionFormat($.normalized,X),B=bJ(q,W,X.$);if(B.index)J.index=h0(J.index,B.index);if(B.required)J.required=h0(J.required,B.required)}let Y=X.$.node("structure",J);return X.$.parseSchema({domain:"object",structure:Z?.merge(Y)??Y})},aH=(Q,X,Z,J)=>{Q[X]=h0(Q[X],J.$.node(X,Z))},F2=(Q)=>`Value of '+' key must be 'reject', 'delete', or 'ignore' (was ${O0(Q)})`,D2="Spread operator may only be used as the first key in an object",L2=(Q)=>typeof Q==="symbol"?{kind:"required",normalized:Q}:Q.at(-1)==="?"?Q.at(-2)===k7?{kind:"required",normalized:`${Q.slice(0,-2)}?`}:{kind:"optional",normalized:Q.slice(0,-1)}:Q[0]==="["&&Q.at(-1)==="]"?{kind:"index",normalized:Q.slice(1,-1)}:Q[0]===k7&&Q[1]==="["&&Q.at(-1)==="]"?{kind:"required",normalized:Q.slice(1)}:Q==="..."?{kind:"spread"}:Q==="+"?{kind:"undeclared"}:{kind:"required",normalized:Q==="\\..."?"...":Q==="\\+"?"+":Q},C2=(Q)=>`Spread operand must resolve to an object literal type (was ${Q})`;var LP=(Q,X)=>O2(Q)?TP[Q[0]](Q,X):M2(Q)?NP[Q[1]](Q,X):null,N2=(Q,X)=>X.$.parseOwnDefinitionFormat(Q[1],X).keyof(),FP=(Q,X)=>{if(Q[2]===void 0)return I1(lH(Q[1],""));let Z=X.$.parseOwnDefinitionFormat(Q[0],X),J=X.$.parseOwnDefinitionFormat(Q[2],X);if(Q[1]==="|")return X.$.node("union",{branches:[Z,J]});let G=i8(Z,J,X.$);if(G instanceof p1)return G.throw();return G},T2=(Q,X)=>X.$.parseOwnDefinitionFormat(Q[0],X).array(),M2=(Q)=>NP[Q[1]]!==void 0,I2=(Q,X)=>{if(typeof Q[2]!=="function")return I1(CP("=>",Q[2]));return X.$.parseOwnDefinitionFormat(Q[0],X).pipe(Q[2])},CP=(Q,X)=>`${Q===":"?"Narrow":"Morph"} expression requires a function following '${Q}' (was ${typeof X})`,R2=(Q,X)=>{if(typeof Q[2]!=="function")return I1(CP(":",Q[2]));return X.$.parseOwnDefinitionFormat(Q[0],X).constrain("predicate",Q[2])},A2=(Q,X)=>X.$.parseOwnDefinitionFormat(Q[0],X).configureShallowDescendants(Q[2]),NP={"[]":T2,"|":FP,"&":FP,":":R2,"=>":I2,"@":A2,"=":()=>I1(uJ),"?":()=>I1(dJ)},TP={keyof:N2,instanceof:(Q,X)=>{if(typeof Q[1]!=="function")return I1(DP(j7(Q[1])));let Z=Q.slice(1).map((J)=>typeof J==="function"?X.$.node("proto",{proto:J}):I1(DP(j7(J))));return Z.length===1?Z[0]:X.$.node("union",{branches:Z})},"===":(Q,X)=>X.$.units(Q.slice(1))},O2=(Q)=>TP[Q[0]]!==void 0,DP=(Q)=>`Expected a constructor following 'instanceof' operator (was ${Q})`;var RP=(Q,X)=>{let Z=[{}],J=0;while(JH.distribute(($)=>E2(OJ(W),$)))}else Z=Z.map((W)=>{if(K==="?")return AP(W,H);if(K==="=")return w2(W,H,z);return sH(W,H)})}return X.$.parseSchema(Z.map((G)=>O9(G)?{proto:Array,exactLength:0}:{proto:Array,sequence:G}))},sH=(Q,X)=>{if(Q.defaultables||Q.optionals)return I1(Q.variadic?kH:S2);if(Q.variadic)Q.postfix=h0(Q.postfix,X);else Q.prefix=h0(Q.prefix,X);return Q},AP=(Q,X)=>{if(Q.variadic)return I1(OP);return Q.optionals=h0(Q.optionals,X),Q},w2=(Q,X,Z)=>{if(Q.variadic)return I1(OP);if(Q.optionals)return I1(k2);return Q.defaultables=h0(Q.defaultables,[[X,Z]]),Q},MP=(Q,X)=>{if(Q.postfix)I1(IP);if(Q.variadic){if(!Q.variadic.equals(X))I1(IP)}else Q.variadic=X.internal;return Q},E2=(Q,X)=>{let Z=X.firstReferenceOfKind("sequence");if(!Z)return MP(Q,E1.intrinsic.unknown);if(Z.prefix?.forEach((J)=>sH(Q,J)),Z.optionals?.forEach((J)=>AP(Q,J)),Z.variadic)MP(Q,Z.variadic);return Z.postfix?.forEach((J)=>sH(Q,J)),Q},j2=(Q)=>`Spread element must be an array (was ${Q})`,IP="A tuple may have at most one variadic element",S2="A required element may not follow an optional element",OP="An optional element may not follow a variadic element";var k2="A defaultable element may not follow an optional element without a default";var y2={},oJ=(Q,X)=>{if(typeof Q==="string"){if(X.args&&Object.keys(X.args).some((J)=>Q.includes(J)))return oH(Q,X);let Z=y2[X.$.id]??={};return Z[Q]??=oH(Q,X)}return M8(Q,"object")?x2(Q,X):I1(tH(P8(Q)))},x2=(Q,X)=>{let Z=E7(Q);switch(Z){case void 0:if(r1(Q,"root"))return Q;return PP(Q,X);case"Array":return v2(Q,X);case"RegExp":return X.$.node("intersection",{domain:"string",pattern:Q},{prereduced:!0});case"Function":{let J=mQ(Q)?Q():Q;if(r1(J,"root"))return J;return I1(tH("Function"))}default:return I1(tH(Z??O0(Q)))}},v2=(Q,X)=>LP(Q,X)??RP(Q,X),tH=(Q)=>`Type definitions must be strings or objects (was ${Q})`;class rH extends _Q{constructor(Q){let X=Object.assign({errors:R8,hkt:X8,$:Q,raw:Q.parse,module:Q.constructor.module,scope:Q.constructor.scope,define:Q.define,generic:Q.generic,schema:Q.schema,keywords:Q.ambient,unit:Q.unit,enumerated:Q.enumerated,instanceOf:Q.instanceOf},Q.ambientAttachments);super((...Z)=>{if(Z.length===1)return Q.parse(Z[0]);if(Z.length===2&&typeof Z[0]==="string"&&Z[0][0]==="<"&&Z[0].at(-1)===">"){let J=Z[0].slice(1,-1),G=Q.parseGenericParams(J,{});return new pQ(G,Z[1],Q,Q,null)}return Q.parse(Z)},{bind:Q,attach:X})}}var aJ=E1;class sJ extends mJ{cacheGetter(Q,X){return Object.defineProperty(this,Q,{value:X}),X}get ambientAttachments(){if(!aJ.typeAttachments)return;return this.cacheGetter("ambientAttachments",w0(aJ.typeAttachments,(Q,X)=>[Q,this.bindReference(X)]))}preparseOwnAliasEntry(Q,X){let Z=Q.indexOf("<");if(Z===-1)return[Q,X];if(Q.at(-1)!==">")I1("'>' must be the last character of a generic declaration in a scope");let J=Q.slice(0,Z),G=Q.slice(Z+1,-1);return[J,()=>{let Y=this.parseGenericParams(G,{alias:J});return nU(Y,X,this)}]}parseGenericParams(Q,X){return iJ(new TQ(Q),[],this.createParseContext({...X,def:Q,prefix:"generic"}))}normalizeRootScopeValue(Q){if(mQ(Q)&&!r1(Q,"generic"))return Q();return Q}preparseOwnDefinitionFormat(Q,X){return{...X,def:Q,prefix:X.alias??"type"}}parseOwnDefinitionFormat(Q,X){if(!(X.alias&&(X.alias in this.aliases))&&!X.args)X.args={this:X.id};let J=oJ(Q,X);if(G6(J)){if(J[1]==="=")return I1(uJ);if(J[1]==="?")return I1(dJ)}return J}unit=(Q)=>this.units([Q]);enumerated=(...Q)=>this.units(Q);instanceOf=(Q)=>this.node("proto",{proto:Q},{prereduced:!0});type=new rH(this);declare=()=>({type:this.type});define(Q){return Q}static scope=(Q,X={})=>new sJ(Q,X);static module=(Q,X={})=>this.scope(Q,X).export()}var eH=Object.assign(sJ.scope,{define:(Q)=>Q}),k0=sJ;class wP extends X8{}var g2=H9(["base",P0.object],["props",P0.object])((Q)=>Q.base.merge(Q.props),wP),Qz=k0.module({Key:P0.key,Merge:g2});class EP extends X8{}var h2=H9("element")((Q)=>{let X=Q.element.exclude(P0.Array),Z=X.array();return X.rawOr(Z).pipe(gZ).distribute((J)=>J.assertHasKind("morph").declareOut(Z),s0)},EP),jP=k0.module({root:P0.Array,readonly:"root",index:P0.nonNegativeIntegerString,liftFrom:h2});var Zz=s0(["string",m4.FileConstructor]),f2=Zz.rawOr(Zz.array()),SP=s0({meta:"an object representing parsed form data",domain:"object",index:{signature:"string",value:f2}}),kP=k0.module({root:["instanceof",FormData],value:Zz,parsed:SP,parse:s0({in:FormData,morphs:(Q)=>{let X={};for(let[Z,J]of Q)if(Z in X){let G=X[Z];if(typeof G==="string"||G instanceof m4.FileConstructor)X[Z]=[G,J];else G.push(J)}else X[Z]=J;return X},declaredOut:SP})});var yP=k0.module({Int8:["instanceof",Int8Array],Uint8:["instanceof",Uint8Array],Uint8Clamped:["instanceof",Uint8ClampedArray],Int16:["instanceof",Int16Array],Uint16:["instanceof",Uint16Array],Int32:["instanceof",Int32Array],Uint32:["instanceof",Uint32Array],Float32:["instanceof",Float32Array],Float64:["instanceof",Float64Array],BigInt64:["instanceof",BigInt64Array],BigUint64:["instanceof",BigUint64Array]});var b2={Boolean:1,Number:1,String:1},tJ=k0.module({...w0({...p3,...c3},(Q,X)=>(Q in b2)?[]:[Q,["instanceof",X]]),Array:jP,TypedArray:yP,FormData:kP});var m2=s0({domain:{domain:"number",meta:"a number representing a Unix timestamp"},divisor:{rule:1,meta:"an integer representing a Unix timestamp"},min:{rule:-8640000000000000,meta:"a Unix timestamp after -8640000000000000"},max:{rule:8640000000000000,meta:"a Unix timestamp before 8640000000000000"},meta:"an integer representing a safe Unix timestamp"}),_2=s0({domain:"number",divisor:1}),rJ=k0.module({root:P0.number,integer:_2,epoch:m2,safe:s0({domain:"number",min:Number.MIN_SAFE_INTEGER,max:Number.MAX_SAFE_INTEGER,predicate:{predicate:(Q)=>!Number.isNaN(Q),meta:"a safe number"}}),NaN:["===",Number.NaN],Infinity:["===",Number.POSITIVE_INFINITY],NegativeInfinity:["===",Number.NEGATIVE_INFINITY]});var T6=(Q,X)=>tZ("intersection",{domain:"string",pattern:{rule:Q.source,flags:Q.flags,meta:X}}),xP=T6(y7,"a well-formed integer string"),lP=k0.module({root:xP,parse:s0({in:xP,morphs:(Q,X)=>{let Z=Number.parseInt(Q);return Number.isSafeInteger(Z)?Z:X.error("an integer in the range Number.MIN_SAFE_INTEGER to Number.MAX_SAFE_INTEGER")},declaredOut:P0.integer})}),d2=k0.module({root:T6(/^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=)?$/,"base64-encoded"),url:T6(/^(?:[A-Za-z0-9_-]{4})*(?:[A-Za-z0-9_-]{2}(?:==|%3D%3D)?|[A-Za-z0-9_-]{3}(?:=|%3D)?)?$/,"base64url-encoded")}),vP=T6(/^[A-Z].*$/,"capitalized"),u2=k0.module({root:s0({in:"string",morphs:(Q)=>Q.charAt(0).toUpperCase()+Q.slice(1),declaredOut:vP}),preformatted:vP}),p2=(Q)=>{let X=Q.replace(/[- ]+/g,""),Z=0,J,G,Y=!1;for(let H=X.length-1;H>=0;H--){if(J=X.substring(H,H+1),G=Number.parseInt(J,10),Y)if(G*=2,G>=10)Z+=G%10+1;else Z+=G;else Z+=G;Y=!Y}return!!(Z%10===0?X:!1)},l2=/^(?:4[0-9]{12}(?:[0-9]{3,6})?|5[1-5][0-9]{14}|(222[1-9]|22[3-9][0-9]|2[3-6][0-9]{2}|27[01][0-9]|2720)[0-9]{12}|6(?:011|5[0-9][0-9])[0-9]{12,15}|3[47][0-9]{13}|3(?:0[0-5]|[68][0-9])[0-9]{11}|(?:2131|1800|35\d{3})\d{11}|6[27][0-9]{14}|^(81[0-9]{14,17}))$/,c2=s0({domain:"string",pattern:{meta:"a credit card number",rule:l2.source},predicate:{meta:"a credit card number",predicate:p2}});var i2=/^([+-]?\d{4}(?!\d{2}\b))((-?)((0[1-9]|1[0-2])(\3([12]\d|0[1-9]|3[01]))?|W([0-4]\d|5[0-3])(-?[1-7])?|(00[1-9]|0[1-9]\d|[12]\d{2}|3([0-5]\d|6[1-6])))([T]((([01]\d|2[0-3])((:?)[0-5]\d)?|24:?00)([.,]\d+(?!:))?)?(\17[0-5]\d([.,]\d+)?)?([zZ]|([+-])([01]\d|2[0-3]):?([0-5]\d)?)?)?)?$/;var n2=(Q)=>!Number.isNaN(new Date(Q).valueOf()),gP=s0({domain:"string",predicate:{meta:"a parsable date",predicate:n2}}).assertHasKind("intersection"),hP=lP.root.internal.narrow((Q,X)=>{let Z=Number.parseInt(Q),J=rJ.epoch(Z);if(J instanceof R8)return X.errors.merge(J),!1;return!0}).withMeta({description:"an integer string representing a safe Unix timestamp"}).assertHasKind("intersection"),o2=k0.module({root:hP,parse:s0({in:hP,morphs:(Q)=>new Date(Q),declaredOut:P0.Date})}),fP=T6(i2,"an ISO 8601 (YYYY-MM-DDTHH:mm:ss.sssZ) date").internal.assertHasKind("intersection"),a2=k0.module({root:fP,parse:s0({in:fP,morphs:(Q)=>new Date(Q),declaredOut:P0.Date})}),s2=k0.module({root:gP,parse:s0({declaredIn:gP,in:"string",morphs:(Q,X)=>{let Z=new Date(Q);if(Number.isNaN(Z.valueOf()))return X.error("a parsable date");return Z},declaredOut:P0.Date}),iso:a2,epoch:o2}),t2=T6(/^[A-Za-z0-9._%+-]+@[A-Za-z0-9.-]+\.[A-Za-z]{2,}$/,"an email address"),bP="(?:[0-9]|[1-9][0-9]|1[0-9][0-9]|2[0-4][0-9]|25[0-5])",cQ=`(${bP}[.]){3}${bP}`,r2=new RegExp(`^${cQ}$`),h6="(?:[0-9a-fA-F]{1,4})",e2=new RegExp(`^((?:${h6}:){7}(?:${h6}|:)|(?:${h6}:){6}(?:${cQ}|:${h6}|:)|(?:${h6}:){5}(?::${cQ}|(:${h6}){1,2}|:)|(?:${h6}:){4}(?:(:${h6}){0,1}:${cQ}|(:${h6}){1,3}|:)|(?:${h6}:){3}(?:(:${h6}){0,2}:${cQ}|(:${h6}){1,4}|:)|(?:${h6}:){2}(?:(:${h6}){0,3}:${cQ}|(:${h6}){1,5}|:)|(?:${h6}:){1}(?:(:${h6}){0,4}:${cQ}|(:${h6}){1,6}|:)|(?::((?::${h6}){0,5}:${cQ}|(?::${h6}){1,7}|:)))(%[0-9a-zA-Z.]{1,})?$`),Qj=k0.module({root:["v4 | v6","@","an IP address"],v4:T6(r2,"an IPv4 address"),v6:T6(e2,"an IPv6 address")}),i7="a JSON string",cP=(Q)=>{if(!(Q instanceof SyntaxError))throw Q;return`must be ${i7} (${Q})`},Zj=s0({domain:"string",predicate:{meta:i7,predicate:(Q,X)=>{try{return JSON.parse(Q),!0}catch(Z){return X.reject({code:"predicate",expected:i7,problem:cP(Z)})}}}}),Xj=(Q,X)=>{if(Q.length===0)return X.error({code:"predicate",expected:i7,actual:"empty"});try{return JSON.parse(Q)}catch(Z){return X.error({code:"predicate",expected:i7,problem:cP(Z)})}},Jj=k0.module({root:Zj,parse:s0({in:"string",morphs:Xj,declaredOut:P0.json})}),mP=T6(/^[a-z]*$/,"only lowercase letters"),Gj=k0.module({root:s0({in:"string",morphs:(Q)=>Q.toLowerCase(),declaredOut:mP}),preformatted:mP}),iP=["NFC","NFD","NFKC","NFKD"],n7=w0(iP,(Q,X)=>[X,s0({domain:"string",predicate:(Z)=>Z.normalize(X)===Z,meta:`${X}-normalized unicode`})]),eJ=w0(iP,(Q,X)=>[X,s0({in:"string",morphs:(Z)=>Z.normalize(X),declaredOut:n7[X]})]),Yj=k0.module({root:eJ.NFC,preformatted:n7.NFC}),Wj=k0.module({root:eJ.NFD,preformatted:n7.NFD}),qj=k0.module({root:eJ.NFKC,preformatted:n7.NFKC}),Hj=k0.module({root:eJ.NFKD,preformatted:n7.NFKD}),zj=k0.module({root:"NFC",NFC:Yj,NFD:Wj,NFKC:qj,NFKD:Hj}),_P=T6(OU,"a well-formed numeric string"),Kj=k0.module({root:_P,parse:s0({in:_P,morphs:(Q)=>Number.parseFloat(Q),declaredOut:P0.number})}),$j=/^(0|[1-9]\d*)\.(0|[1-9]\d*)\.(0|[1-9]\d*)(?:-((?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*)(?:\.(?:0|[1-9]\d*|\d*[a-zA-Z-][0-9a-zA-Z-]*))*))?(?:\+([0-9a-zA-Z-]+(?:\.[0-9a-zA-Z-]+)*))?$/,Bj=T6($j,"a semantic version (see https://semver.org/)"),dP=T6(/^\S.*\S$|^\S?$/,"trimmed"),Uj=k0.module({root:s0({in:"string",morphs:(Q)=>Q.trim(),declaredOut:dP}),preformatted:dP}),uP=T6(/^[A-Z]*$/,"only uppercase letters"),Vj=k0.module({root:s0({in:"string",morphs:(Q)=>Q.toUpperCase(),declaredOut:uP}),preformatted:uP}),Pj=(Q)=>{if(URL.canParse)return URL.canParse(Q);try{return new URL(Q),!0}catch{return!1}},pP=s0({domain:"string",predicate:{meta:"a URL string",predicate:Pj}}),Fj=k0.module({root:pP,parse:s0({declaredIn:pP,in:"string",morphs:(Q,X)=>{try{return new URL(Q)}catch{return X.error("a URL string")}},declaredOut:s0(URL)})}),Dj=k0.module({root:["versioned | nil | max","@","a UUID"],"#nil":"'00000000-0000-0000-0000-000000000000'","#max":"'ffffffff-ffff-ffff-ffff-ffffffffffff'","#versioned":/[0-9a-f]{8}-[0-9a-f]{4}-[1-8][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}/i,v1:T6(/^[0-9a-f]{8}-[0-9a-f]{4}-1[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,"a UUIDv1"),v2:T6(/^[0-9a-f]{8}-[0-9a-f]{4}-2[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,"a UUIDv2"),v3:T6(/^[0-9a-f]{8}-[0-9a-f]{4}-3[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,"a UUIDv3"),v4:T6(/^[0-9a-f]{8}-[0-9a-f]{4}-4[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,"a UUIDv4"),v5:T6(/^[0-9a-f]{8}-[0-9a-f]{4}-5[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,"a UUIDv5"),v6:T6(/^[0-9a-f]{8}-[0-9a-f]{4}-6[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,"a UUIDv6"),v7:T6(/^[0-9a-f]{8}-[0-9a-f]{4}-7[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,"a UUIDv7"),v8:T6(/^[0-9a-f]{8}-[0-9a-f]{4}-8[0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}$/i,"a UUIDv8")}),nP=k0.module({root:P0.string,alpha:T6(/^[A-Za-z]*$/,"only letters"),alphanumeric:T6(/^[A-Za-z\d]*$/,"only letters and digits 0-9"),base64:d2,capitalize:u2,creditCard:c2,date:s2,digits:T6(/^\d*$/,"only digits 0-9"),email:t2,integer:lP,ip:Qj,json:Jj,lower:Gj,normalize:zj,numeric:Kj,semver:Bj,trim:Uj,upper:Vj,url:Fj,uuid:Dj});var Xz=k0.module({bigint:P0.bigint,boolean:P0.boolean,false:P0.false,never:P0.never,null:P0.null,number:P0.number,object:P0.object,string:P0.string,symbol:P0.symbol,true:P0.true,unknown:P0.unknown,undefined:P0.undefined}),oP=k0.module({root:P0.unknown,any:P0.unknown}),Lj=k0.module({root:P0.json,stringify:tZ("morph",{in:P0.json,morphs:(Q)=>JSON.stringify(Q),declaredOut:P0.string})}),aP=k0.module({root:P0.object,json:Lj});class sP extends X8{description="a generic type that instantiates an object from a single index signature and corresponding value type"}var Cj=H9(["K",P0.key],"V")((Q)=>({domain:"object",index:{signature:Q.K,value:Q.V}}),sP);class tP extends X8{}var Nj=H9(["T",P0.object],["K",P0.key])((Q)=>Q.T.pick(Q.K),tP);class rP extends X8{}var Tj=H9(["T",P0.object],["K",P0.key])((Q)=>Q.T.omit(Q.K),rP);class eP extends X8{}var Mj=H9(["T",P0.object])((Q)=>Q.T.partial(),eP);class QF extends X8{}var Ij=H9(["T",P0.object])((Q)=>Q.T.required(),QF);class ZF extends X8{}var Rj=H9("T","U")((Q)=>Q.T.exclude(Q.U),ZF);class XF extends X8{}var Aj=H9("T","U")((Q)=>Q.T.extract(Q.U),XF),Jz=k0.module({Exclude:Rj,Extract:Aj,Omit:Tj,Partial:Mj,Pick:Nj,Record:Cj,Required:Ij});aJ.typeAttachments={...Xz,Key:Qz.Key,Record:Jz.Record,Array:tJ.Array.root,Date:tJ.Date};var i4=eH({...Xz,...Jz,...tJ,...Qz,string:nP,number:rJ,object:aP,unknown:oP},{prereducedAliases:!0,ambient:!0}),Oj=i4.export(),c1=i4.type,wj=i4.generic,PX1=i4.schema,Ej=i4.define,jj=i4.declare;var w4=require("obsidian");var Gz=(Q,X=(Z)=>Z===void 0)=>{if(!Q)return{};return Object.keys(Q).reduce((J,G)=>{if(X(Q[G]))return J;else return J[G]=Q[G],J},{})};var F3=Z8(zq());var $q=require("fs"),jN=require("fs/promises"),f5=require("os"),b5=require("path");function SN(Q,X){switch(f5.platform()){case"darwin":return b5.resolve(f5.homedir(),"Library","Logs",Q,X);case"win32":return b5.resolve(f5.homedir(),"AppData","Local","Logs",Q,X);case"linux":return b5.resolve(f5.homedir(),".local","share","logs",Q,X);default:throw new Error("Unsupported operating system")}}var ui=(Q)=>{if(!$q.existsSync(Q))$q.mkdirSync(Q,{recursive:!0})},CK=["DEBUG","INFO","WARN","ERROR","FATAL"],pi=c1.enumerated(...CK),li=(Q,X,Z)=>{let J=new Date().toISOString(),G=Object.keys(Z).length?` -${JSON.stringify(Z,null,2)}`:"";return`${J} [${Q.padEnd(5)}] ${JSON.stringify(X)}${G} -`},ci=c1({appName:"string",filename:"string",level:pi}),Kq=ci.pipe((Q)=>{let X=SN(Q.appName,Q.filename),Z=CK.slice(CK.indexOf(Q.level));return{...Q,levels:Z,filename:X}});function kN(Q){let X=Kq.assert(Q),Z={},J=[],G=(q,B,D)=>{if(!X.levels.includes(q))return;ui(b5.dirname(SN(X.appName,X.filename))),J.push(jN.appendFile(X.filename,li(q,B,{...Z,...D??{}})))},$={debug:(q,B)=>G("DEBUG",q,B),info:(q,B)=>G("INFO",q,B),warn:(q,B)=>G("WARN",q,B),error:(q,B)=>G("ERROR",q,B),fatal:(q,B)=>G("FATAL",q,B),flush(){return Promise.all(J)},get config(){return{...X}},set config(q){X=Kq.assert({...X,...q}),$.debug("Updated logger configuration",{config:X})},set meta(q){Z=q}};return $}var Bq={};LJ(Bq,{MIME_TYPE_OLRAPI_NOTE_JSON:()=>qn,ApiVaultFileResponse:()=>Zn,ApiVaultDirectoryResponse:()=>Qn,ApiTemplateExecutionResponse:()=>Wn,ApiTemplateExecutionParams:()=>Yn,ApiStatusResponse:()=>oi,ApiSmartSearchResult:()=>vN,ApiSmartSearchResponse:()=>ti,ApiSimpleSearchResponse:()=>si,ApiSimpleSearchMatch:()=>xN,ApiSearchResponse:()=>ai,ApiSearchParameters:()=>ri,ApiPatchParameters:()=>Xn,ApiNoteJson:()=>ni,ApiNoContentResponse:()=>Gn,ApiError:()=>ii,ApiContentResponse:()=>Jn,ApiCommandsResponse:()=>ei,ApiCommand:()=>gN});var ii=c1({errorCode:"number",message:"string"}),ni=c1({content:"string",frontmatter:"Record",path:"string",stat:{ctime:"number",mtime:"number",size:"number"},tags:"string[]"}),yN=c1({id:"string",name:"string",version:"string",minAppVersion:"string",description:"string",author:"string",authorUrl:"string",isDesktopOnly:"boolean",dir:"string"}),oi=c1({status:"string",manifest:yN,versions:{obsidian:"string",self:"string"},service:"string",authenticated:"boolean",certificateInfo:{validityDays:"number",regenerateRecommended:"boolean"},apiExtensions:yN.array()}),ai=c1({filename:"string",result:"string|number|string[]|object|boolean"}).array(),xN=c1({match:{start:"number",end:"number"},context:"string"}),si=c1({filename:"string",matches:xN.array(),score:"number"}).array(),vN=c1({path:"string",text:"string",score:"number",breadcrumbs:"string"}),ti=c1({results:vN.array()}),ri=c1({query:"string",filter:{folders:"string[]?",excludeFolders:"string[]?",limit:"number?"}}),gN=c1({id:"string",name:"string"}),ei=c1({commands:gN.array()}),Qn=c1({files:"string[]"}),Zn=c1({frontmatter:{tags:"string[]",description:"string?"},content:"string",path:"string",stat:{ctime:"number",mtime:"number",size:"number"},tags:"string[]"}),Xn=c1({operation:c1("'append' | 'prepend' | 'replace'").describe("Specifies how to modify the content: append (add after), prepend (add before), or replace existing content"),targetType:c1("'heading' | 'block' | 'frontmatter'").describe("Identifies what to modify: a section under a heading, a referenced block, or a frontmatter field"),target:c1("string").describe("The identifier - either heading path (e.g. 'Heading 1::Subheading 1:1'), block reference ID, or frontmatter field name"),"targetDelimiter?":c1("string").describe("The separator used in heading paths to indicate nesting (default '::')"),"trimTargetWhitespace?":c1("boolean").describe("Whether to remove whitespace from target identifier before matching (default: false)"),content:c1("string").describe("The actual content to insert, append, or use as replacement"),"contentType?":c1("'text/markdown' | 'application/json'").describe("Format of the content - use application/json for structured data like table rows or frontmatter values")}),Jn=c1("string").describe("Content"),Gn=c1("unknown").describe("No Content"),Yn=c1({name:c1("string").describe("The full vault path to the template file"),arguments:"Record","createFile?":c1("boolean").describe("Whether to create a new file from the template"),"targetPath?":c1("string").describe("Path to save the file; required if createFile is true")}),Wn=c1({message:"string",content:"string"}),qn="application/vnd.olrapi.note+json";var Uq={};LJ(Uq,{SmartSearchFilter:()=>Hn});var Hn=c1({"exclude_key?":c1("string").describe("A single key to exclude."),"exclude_keys?":c1("string[]").describe("An array of keys to exclude. If exclude_key is provided, it's added to this array."),"exclude_key_starts_with?":c1("string").describe("Exclude keys starting with this string."),"exclude_key_starts_with_any?":c1("string[]").describe("Exclude keys starting with any of these strings."),"exclude_key_includes?":c1("string").describe("Exclude keys that include this string."),"key_ends_with?":c1("string").describe("Include only keys ending with this string."),"key_starts_with?":c1("string").describe("Include only keys starting with this string."),"key_starts_with_any?":c1("string[]").describe("Include only keys starting with any of these strings."),"key_includes?":c1("string").describe("Include only keys that include this string."),"limit?":c1("number").describe("Limit the number of search results.")});var Vq={};LJ(Vq,{RunMode:()=>hN,FunctionsMode:()=>fN});var hN;((H)=>{H[H.CreateNewFromTemplate=0]="CreateNewFromTemplate";H[H.AppendActiveFile=1]="AppendActiveFile";H[H.OverwriteFile=2]="OverwriteFile";H[H.OverwriteActiveFile=3]="OverwriteActiveFile";H[H.DynamicProcessor=4]="DynamicProcessor";H[H.StartupTemplate=5]="StartupTemplate"})(hN||={});var fN;((Z)=>{Z[Z.INTERNAL=0]="INTERNAL";Z[Z.USER_INTERNAL=1]="USER_INTERNAL"})(fN||={});var zn=c1({name:"string","description?":"string","required?":"boolean"}),zq1=c1({name:"string","description?":c1("string").describe("Description of the prompt"),"arguments?":zn.array()}),Kn=c1("'mcp-tools-prompt'"),Kq1=c1({tags:c1("string[]").narrow((Q)=>Q.some(Kn.allows)),"description?":c1("string")}),$n=c1({type:"'MISSING_REQUIRED_ARG'|'INVALID_ARG_VALUE'",message:"string","argumentName?":"string"}),$q1=c1({content:"string","errors?":$n.array()});var Bn=c1({query:c1("string>0").describe("A search phrase for semantic search"),"filter?":{"folders?":c1("string[]").describe('An array of folder names to include. For example, ["Public", "Work"]'),"excludeFolders?":c1("string[]").describe('An array of folder names to exclude. For example, ["Private", "Archive"]'),"limit?":c1("number>0").describe("The maximum number of results to return")}}),bN=c1("string.json.parse").to(Bn),Pq1=c1({results:c1({path:"string",text:"string",score:"number",breadcrumbs:"string"}).array()}),mN=c1({query:"string",filter:Uq.SmartSearchFilter});var b1=!1;var K9=Array.isArray,dN=Array.prototype.indexOf,KX=Array.from,NK=Object.keys,_6=Object.defineProperty,k9=Object.getOwnPropertyDescriptor,Pq=Object.getOwnPropertyDescriptors,TK=Object.prototype,uN=Array.prototype,P4=Object.getPrototypeOf;var y9=()=>{};function pN(Q){return Q()}function GZ(Q){for(var X=0;X0){let G=Array.from(KZ);var J=jQ;_5(!0);try{for(let Y of G){if((Y.f&x6)!==0)G8(Y,a8);if(N4(Y))u5(Y)}}finally{_5(J)}KZ.clear()}}return X}function LT(Q,X){var Z=Q.reactions;if(Z===null)return;var J=C4(),G=Z.length;for(var Y=0;YZ.line)return G.component}}return null}var Dn=Symbol("ADD_OWNER");function LX(){let Q=kK()?.[2];if(Q)(SK[Q.file]??=[]).push({start:Q,end:null,component:null})}function CX(Q){let X=kK()?.[2];if(X){let Z=SK[X.file],J=Z[Z.length-1];J.end=X,J.component=Q}}function xK(Q,X){if(X.owners===null)return;while(Q){if(Q.owners===null){X.owners=null;break}for(let Z of Q.owners)X.owners.add(Z);Q=Q.parent}}function IT(Q,X){if(Q.owners===null)return!0;return Q.owners.has(X)||Q.parent!==null&&IT(Q.parent,X)}function RT(Q){return Q?.owners?.values().next().value??RT(Q.parent)}var Ln=!1;function AT(Q){if(Ln)return;let X=yK();if(X&&!IT(Q,X)){let Z=RT(Q);if(Z[f0]!==X[f0])jK(X[f0],Z[f0]);else jK()}}function T4(Q,X=null,Z){var J=null;if(b1&&XQ)J=EQ("CreatedAt");if(typeof Q!=="object"||Q===null||S8 in Q)return Q;let G=P4(Q);if(G!==TK&&G!==uN)return Q;var Y=new Map,H=K9(Q),K=d6(0);if(H)Y.set("length",d6(Q.length,J));var z;if(b1)if(z={parent:X,owners:null},Z){let W=Z.v?.[HZ]?.owners;z.owners=W?new Set(W):null}else z.owners=X===null?j0!==null?new Set([j0.function]):null:new Set;return new Proxy(Q,{defineProperty(W,$,q){if(!("value"in q)||q.configurable===!1||q.enumerable===!1||q.writable===!1)XT();var B=Y.get($);if(B===void 0)B=d6(q.value,J),Y.set($,B);else Y6(B,T4(q.value,z));return!0},deleteProperty(W,$){var q=Y.get($);if(q===void 0){if($ in W)Y.set($,d6(f6,J))}else{if(H&&typeof $==="string"){var B=Y.get("length"),D=Number($);if(Number.isInteger(D)&&D=V.v)Y6(V,M+1)}OT(K)}return!0},ownKeys(W){G0(K);var $=Reflect.ownKeys(W).filter((D)=>{var F=Y.get(D);return F===void 0||F.v!==f6});for(var[q,B]of Y)if(B.v!==f6&&!(q in W))$.push(q);return $},setPrototypeOf(){JT()}})}function OT(Q,X=1){Y6(Q,Q.v+X)}function n5(Q){if(Q!==null&&typeof Q==="object"&&S8 in Q)return Q[S8];return Q}function wT(){let{prototype:Q,__svelte_cleanup:X}=Array;if(X)X();let{indexOf:Z,lastIndexOf:J,includes:G}=Q;Q.indexOf=function(Y,H){let K=Z.call(this,Y,H);if(K===-1){for(let z=H??0;z{Q.indexOf=Z,Q.lastIndexOf=J,Q.includes=G}}function SQ(Q,X,Z=!0){try{if(Q===X!==(n5(Q)===n5(X)))DX(Z?"===":"!==")}catch{}return Q===X===Z}var vK,ET,jT,ST;function Aq(){if(vK!==void 0)return;vK=window,ET=document;var Q=Element.prototype,X=Node.prototype;if(jT=k9(X,"firstChild").get,ST=k9(X,"nextSibling").get,Q.__click=void 0,Q.__className="",Q.__attributes=null,Q.__styles=null,Q.__e=void 0,Text.prototype.__t=void 0,b1)Q.__svelte_meta=null,wT()}function v8(Q=""){return document.createTextNode(Q)}function q8(Q){return jT.call(Q)}function W8(Q){return ST.call(Q)}function g8(Q,X){if(!H0)return q8(Q);var Z=q8(F0);if(Z===null)Z=F0.appendChild(v8());else if(X&&Z.nodeType!==3){var J=v8();return Z?.before(J),O6(J),J}return O6(Z),Z}function YQ(Q,X){if(!H0){var Z=q8(Q);if(Z instanceof Comment&&Z.data==="")return W8(Z);return Z}if(X&&F0?.nodeType!==3){var J=v8();return F0?.before(J),O6(J),J}return F0}function V9(Q,X=1,Z=!1){let J=H0?F0:Q;var G;while(X--)G=J,J=W8(J);if(!H0)return J;var Y=J?.nodeType;if(Z&&Y!==3){var H=v8();if(J===null)G?.after(H);else J.before(H);return O6(H),H}return O6(J),J}function NX(Q){Q.textContent=""}function $Z(Q){var X=l6|D8;if($0===null)X|=v9;else $0.f|=Lq;var Z=E0!==null&&(E0.f&l6)!==0?E0:null;let J={children:null,ctx:j0,deps:null,equals:Nq,f:X,fn:Q,reactions:null,rv:0,v:null,wv:0,parent:Z??$0};if(b1&&XQ)J.created=EQ("CreatedAt");if(Z!==null)(Z.children??=[]).push(J);return J}function TX(Q){let X=$Z(Q);return X.equals=m5,X}function hK(Q){var X=Q.children;if(X!==null){Q.children=null;for(var Z=0;Z{e6(X)}}function kT(Q){let X=UZ(x9,Q,!0);return(Z={})=>{return new Promise((J)=>{if(Z.outro)b9(X,()=>{e6(X),J(void 0)});else e6(X),J(void 0)})}}function f9(Q){return UZ(Fq,Q,!1)}function x8(Q){return UZ(YZ,Q,!0)}function M4(Q){if(b1)_6(Q,"name",{value:"{expression}"});return h8(Q)}function h8(Q,X=0){return UZ(YZ|WZ|X,Q,!0)}function H8(Q,X=!0){return UZ(YZ|j8,Q,!0,X)}function uK(Q){var X=Q.teardown;if(X!==null){let Z=Eq,J=E0;mK(!0),L8(null);try{X.call(null)}finally{mK(Z),L8(J)}}}function pK(Q){var X=Q.deriveds;if(X!==null){Q.deriveds=null;for(var Z=0;Z{if(e6(Q),X)X()})}function iK(Q,X){var Z=Q.length;if(Z>0){var J=()=>--Z||X();for(var G of Q)G.out(J)}else X()}function wq(Q,X,Z){if((Q.f&s8)!==0)return;if(Q.f^=s8,Q.transitions!==null){for(let H of Q.transitions)if(H.is_global||Z)X.push(H)}var J=Q.first;while(J!==null){var G=J.next,Y=(J.f&g9)!==0||(J.f&j8)!==0;wq(J,X,Y?Z:!1),J=G}}function I4(Q){xT(Q,!0)}function xT(Q,X){if((Q.f&s8)===0)return;if(Q.f^=s8,(Q.f&x6)===0)Q.f^=x6;if(N4(Q))G8(Q,D8),p5(Q);var Z=Q.first;while(Z!==null){var J=Z.next,G=(Z.f&g9)!==0||(Z.f&j8)!==0;xT(Z,G?X:!1),Z=J}if(Q.transitions!==null){for(let Y of Q.transitions)if(Y.is_global||X)Y.in()}}var jq=!1,gT=!1,nK=[],vT=[];function hT(){jq=!1;let Q=nK.slice();nK=[],GZ(Q)}function Tn(){gT=!1;let Q=vT.slice();vT=[],GZ(Q)}function P9(Q){if(!jq)jq=!0,queueMicrotask(hT);nK.push(Q)}function fT(){if(jq)hT();if(gT)Tn()}function Sq(Q){if(b1){let X=new Error(`lifecycle_outside_component -\`${Q}(...)\` can only be used during component initialisation -https://svelte.dev/e/lifecycle_outside_component`);throw X.name="Svelte error",X}else throw new Error("https://svelte.dev/e/lifecycle_outside_component")}function bT(Q){if(b1){let X=new Error(`store_invalid_shape -\`${Q}\` is not a store with a \`subscribe\` method -https://svelte.dev/e/store_invalid_shape`);throw X.name="Svelte error",X}else throw new Error("https://svelte.dev/e/store_invalid_shape")}var pT=0,Rn=1,mT=new WeakSet,kq=!1,yq=pT,IX=!1,a5=null,jQ=!1,Eq=!1;function _5(Q){jQ=Q}function mK(Q){Eq=Q}var VZ=[],s5=0,RX=[],E0=null;function L8(Q){E0=Q}var $0=null;function u6(Q){$0=Q}var h9=null;function CT(Q){h9=Q}var f8=null,r8=0,JQ=null;function NT(Q){JQ=Q}var lT=1,xq=0,kQ=!1,UX=null;var j0=null;var U9=null;function VX(){return++lT}function C4(){return!ZQ||j0!==null&&j0.l===null}function N4(Q){var X=Q.f;if((X&D8)!==0)return!0;if((X&a8)!==0){var Z=Q.deps,J=(X&v9)!==0;if(Z!==null){var G,Y,H=(X&$X)!==0,K=J&&$0!==null&&!kQ,z=Z.length;if(H||K){for(G=0;GQ.wv)return!0}}if(!J||$0!==null&&!kQ)G8(Q,x6)}return!1}function _T(Q,X){var Z=X;while(Z!==null){if((Z.f&qZ)!==0)try{Z.fn(Q);return}catch{Z.f^=qZ}Z=Z.parent}throw kq=!1,Q}function dT(Q){return(Q.f&wQ)===0&&(Q.parent===null||(Q.parent.f&qZ)===0)}function t5(Q,X,Z,J){if(kq){if(Z===null)kq=!1;if(dT(X))throw Q;return}if(Z!==null)kq=!0;if(!b1||J===null||!(Q instanceof Error)||mT.has(Q)){_T(Q,X);return}mT.add(Q);let G=[],Y=X.fn?.name;if(Y)G.push(Y);let H=J;while(H!==null){if(b1){var K=H.function?.[f0];if(K){let $=K.split("/").pop();G.push($)}}H=H.p}let z=/Firefox/.test(navigator.userAgent)?" ":"\t";_6(Q,"message",{value:Q.message+` -${G.map(($)=>` -${z}in ${$}`).join("")} -`}),_6(Q,"component_stack",{value:G});let W=Q.stack;if(W){let $=W.split(` -`),q=[];for(let B=0;B<$.length;B++){let D=$[B];if(D.includes("svelte/src/internal"))continue;q.push(D)}_6(Q,"stack",{value:q.join(` -`)})}if(_T(Q,X),dT(X))throw Q}function cT(Q,X,Z=0){var J=Q.reactions;if(J===null)return;for(var G=0;G0){$.length=r8+f8.length;for(q=0;qQ.fn)),RX=[]}function iT(){if(s5>1000){s5=0;try{rN()}catch(Q){if(b1)_6(Q,"stack",{value:""});if(a5!==null)if(b1)try{t5(Q,a5,null,null)}catch(X){throw uT(),X}else t5(Q,a5,null,null);else{if(b1)uT();throw Q}}}s5++}function nT(Q){var X=Q.length;if(X===0)return;iT();var Z=jQ;jQ=!0;try{for(var J=0;J1001)return;let Q=VZ;if(VZ=[],nT(Q),!IX){if(s5=0,a5=null,b1)RX=[]}}function p5(Q){if(yq===pT){if(!IX)IX=!0,queueMicrotask(wn)}a5=Q;var X=Q;while(X.parent!==null){X=X.parent;var Z=X.f;if((Z&(x9|j8))!==0){if((Z&x6)===0)return;X.f^=x6}}VZ.push(X)}function oT(Q,X){var Z=Q.first,J=[];Q:while(Z!==null){var G=Z.f,Y=(G&j8)!==0,H=Y&&(G&x6)!==0,K=Z.next;if(!H&&(G&s8)===0){if((G&YZ)!==0){if(Y)Z.f^=x6;else try{if(N4(Z))u5(Z)}catch(q){t5(q,Z,null,Z.ctx)}var z=Z.first;if(z!==null){Z=z;continue}}else if((G&Fq)!==0)J.push(Z)}if(K===null){let q=Z.parent;while(q!==null){if(Q===q)break Q;var W=q.next;if(W!==null){Z=W;continue Q}q=q.parent}}Z=K}for(var $=0;$0||G.length>0)r5();if(s5=0,a5=null,b1)RX=[];return J}finally{yq=X,VZ=Z}}function G0(Q){var X=Q.f,Z=(X&l6)!==0;if(Z&&(X&wQ)!==0){var J=fK(Q);return MX(Q),J}if(UX!==null)UX.add(Q);if(E0!==null){if(h9!==null&&h9.includes(Q))GT();var G=E0.deps;if(Q.rv{if(Z!==void 0)return Z;ZT(X)},set:(J)=>{Z=J}})}};Q("$state"),Q("$effect"),Q("$derived"),Q("$inspect"),Q("$props"),Q("$bindable")}var jn=["allowfullscreen","async","autofocus","autoplay","checked","controls","default","disabled","formnovalidate","hidden","indeterminate","inert","ismap","loop","multiple","muted","nomodule","novalidate","open","playsinline","readonly","required","reversed","seamless","selected","webkitdirectory"];var HH1=[...jn,"formNoValidate","isMap","noModule","playsInline","readOnly","value","volume","defaultValue","defaultChecked","srcObject"];var Sn=["touchstart","touchmove"];function aT(Q){return Sn.includes(Q)}var sT=new Map;function tT(Q,X){var Z=sT.get(Q);if(!Z)Z=new Set,sT.set(Q,Z);Z.add(X)}function z8(Q,X,Z){return(...J)=>{let G=Q(...J);var Y=H0?G:G.nodeType===11?G.firstChild:G;return rT(Y,X,Z),G}}function yn(Q,X,Z){if(Q.__svelte_meta={loc:{file:X,line:Z[0],column:Z[1]}},Z[2])rT(Q.firstChild,X,Z[2])}function rT(Q,X,Z){var J=0,G=0;while(Q&&J{return Z.call(this,Y)})}if(Q.startsWith("pointer")||Q.startsWith("touch")||Q==="wheel")P9(()=>{X.addEventListener(Q,G,J)});else X.addEventListener(Q,G,J);return G}function DZ(Q,X,Z,J,G){var Y={capture:J,passive:G},H=QM(Q,X,Z,Y);if(X===document.body||X===window||X===document)t8(()=>{X.removeEventListener(Q,H,Y)})}function e5(Q){var X=this,Z=X.ownerDocument,J=Q.type,G=Q.composedPath?.()||[],Y=G[0]||Q.target,H=0,K=Q.__root;if(K){var z=G.indexOf(K);if(z!==-1&&(X===document||X===window)){Q.__root=X;return}var W=G.indexOf(X);if(W===-1)return;if(z<=W)H=z}if(Y=G[H]||Q.target,Y===X)return;_6(Q,"currentTarget",{configurable:!0,get(){return Y||Z}});var $=E0,q=$0;L8(null),u6(null);try{var B,D=[];while(Y!==null){var F=Y.assignedSlot||Y.parentNode||Y.host||null;try{var P=Y["__"+J];if(P!==void 0&&!Y.disabled)if(K9(P)){var[N,...C]=P;N.apply(Y,[Q,...C])}else P.call(Y,Q)}catch(L){if(B)D.push(L);else B=L}if(Q.cancelBubble||F===X||F===null)break;Y=F}if(B){for(let L of D)queueMicrotask(()=>{throw L});throw B}}finally{Q.__root=X,delete Q.currentTarget,L8($),u6(q)}}var vn;function ZM(){vn=void 0}function hq(Q){var X=document.createElement("template");return X.innerHTML=Q,X.content}function F9(Q,X){var Z=$0;if(Z.nodes_start===null)Z.nodes_start=Q,Z.nodes_end=X}function K8(Q,X){var Z=(X&VT)!==0,J=(X&PT)!==0,G,Y=!Q.startsWith("");return()=>{if(H0)return F9(F0,null),F0;if(G===void 0){if(G=hq(Y?Q:""+Q),!Z)G=q8(G)}var H=J?document.importNode(G,!0):G.cloneNode(!0);if(Z){var K=q8(H),z=H.lastChild;F9(K,z)}else F9(H,H);return H}}function sK(Q=""){if(!H0){var X=v8(Q+"");return F9(X,X),X}var Z=F0;if(Z.nodeType!==3)Z.before(Z=v8()),O6(Z);return F9(Z,Z),Z}function R4(){if(H0)return F9(F0,null),F0;var Q=document.createDocumentFragment(),X=document.createComment(""),Z=v8();return Q.append(X,Z),F9(X,Z),Q}function D6(Q,X){if(H0){$0.nodes_end=F0,Y8();return}if(Q===null)return;Q.before(X)}var tK=!0;function LZ(Q,X){var Z=X==null?"":typeof X==="object"?X+"":X;if(Z!==(Q.__t??=Q.nodeValue))Q.__t=Z,Q.nodeValue=Z==null?"":Z+""}function Z7(Q,X){return XM(Q,X)}function eK(Q,X){Aq(),X.intro=X.intro??!1;let Z=X.target,J=H0,G=F0;try{var Y=q8(Z);while(Y&&(Y.nodeType!==8||Y.data!==zZ))Y=W8(Y);if(!Y)throw L4;k8(!0),O6(Y),Y8();let H=XM(Q,{...X,anchor:Y});if(F0===null||F0.nodeType!==8||F0.data!==D4)throw l5(),L4;return k8(!1),H}catch(H){if(H===L4){if(X.recover===!1)eN();return Aq(),NX(Z),k8(!1),Z7(Q,X)}throw H}finally{k8(J),O6(G),ZM()}}var Q7=new Map;function XM(Q,{target:X,anchor:Z,props:J={},events:G,context:Y,intro:H=!0}){Aq();var K=new Set,z=(q)=>{for(var B=0;B{var q=Z??X.appendChild(v8());return H8(()=>{if(Y){PZ({});var B=j0;B.c=Y}if(G)J.$$events=G;if(H0)F9(q,null);if(tK=H,W=Q(q,J)||{},tK=!0,H0)$0.nodes_end=F0;if(Y)FZ()}),()=>{for(var B of K){X.removeEventListener(B,e5);var D=Q7.get(B);if(--D===0)document.removeEventListener(B,e5),Q7.delete(B);else Q7.set(B,D)}if(aK.delete(z),q!==Z)q.parentNode?.removeChild(q)}});return rK.set(W,$),W}var rK=new WeakMap;function AX(Q,X){let Z=rK.get(Q);if(Z)return rK.delete(Q),Z(X);if(b1)MT();return Promise.resolve()}function OX(Q){if(Q)iN(Q[f0]??"a component",Q.name)}function wX(){let Q=j0?.function;function X(Z){let J=yK()?.[f0]??"Something";cN(J,Z,Q[f0])}return{$destroy:()=>X("$destroy()"),$on:()=>X("$on(...)"),$set:()=>X("$set(...)")}}function D9(Q,X,Z=!1){if(H0)Y8();var J=Q,G=null,Y=null,H=f6,K=Z?g9:0,z=!1;let W=(q,B=!0)=>{z=!0,$(B,q)},$=(q,B)=>{if(H===(H=q))return;let D=!1;if(H0){let F=J.data===F4;if(!!H===F)J=c5(),O6(J),k8(!1),D=!0}if(H){if(G)I4(G);else if(B)G=H8(()=>B(J));if(Y)b9(Y,()=>{Y=null})}else{if(Y)I4(Y);else if(B)Y=H8(()=>B(J));if(G)b9(G,()=>{G=null})}if(D)k8(!0)};if(h8(()=>{if(z=!1,X(W),!z)$(null,null)},K),H0)J=F0}var EX=null;function mn(Q,X,Z,J){var G=[],Y=X.length;for(var H=0;H0&&G.length===0&&Z!==null;if(K){var z=Z.parentNode;NX(z),z.append(Z),J.clear(),A4(Q,X[0].prev,X[Y-1].next)}iK(G,()=>{for(var W=0;W{var D=Z();return K9(D)?D:D==null?[]:KX(D)});if(h8(()=>{var D=G0(B),F=D.length;if(q&&F===0)return;q=F===0;let P=!1;if(H0){var N=H.data===F4;if(N!==(F===0))H=c5(),O6(H),k8(!1),P=!0}if(H0){var C=null,L;for(var V=0;V0)O6(c5())}if(!H0){var E=E0;_n(D,K,H,G,X,(E.f&s8)!==0,J,Z)}if(Y!==null){if(F===0)if($)I4($);else $=H8(()=>Y(H));else if($!==null)b9($,()=>{$=null})}if(P)k8(!0);G0(B)}),H0)H=F0}function _n(Q,X,Z,J,G,Y,H,K){var z=(G&qT)!==0,W=(G&(Mq|Iq))!==0,$=Q.length,q=X.items,B=X.first,D=B,F,P=null,N,C=[],L=[],V,M,I,E;if(z){for(E=0;E<$;E+=1)if(V=Q[E],M=H(V,E),I=q.get(M),I!==void 0)I.a?.measure(),(N??=new Set).add(I)}for(E=0;E<$;E+=1){if(V=Q[E],M=H(V,E),I=q.get(M),I===void 0){var w=D?D.e.nodes_start:Z;P=GM(w,X,P,P===null?X.first:P.next,V,M,E,J,G,K),q.set(M,P),C=[],L=[],D=P.next;continue}if(W)dn(I,V,E,G);if((I.e.f&s8)!==0){if(I4(I.e),z)I.a?.unfix(),(N??=new Set).delete(I)}if(I!==D){if(F!==void 0&&F.has(I)){if(C.length0){var x=(G&AK)!==0&&$===0?Z:null;if(z){for(E=0;E{if(N===void 0)return;for(I of N)I.a?.apply()});$0.first=X.first&&X.first.e,$0.last=P&&P.e}function dn(Q,X,Z,J){if((J&Mq)!==0)d5(Q.v,X);if((J&Iq)!==0)d5(Q.i,Z);else Q.i=Z}function GM(Q,X,Z,J,G,Y,H,K,z,W){var $=EX,q=(z&Mq)!==0,B=(z&HT)===0,D=q?B?GQ(G):d6(G):G,F=(z&Iq)===0?H:d6(H);if(b1&&q)D.debug=()=>{var N=typeof F==="number"?H:F.v;W()[N]};var P={i:F,v:D,k:Y,a:null,e:null,prev:Z,next:J};EX=P;try{if(P.e=H8(()=>K(Q,D,F),H0),P.e.prev=Z&&Z.e,P.e.next=J&&J.e,Z===null)X.first=P;else Z.next=P,Z.e.next=P.e;if(J!==null)J.prev=P,J.e.prev=P.e;return P}finally{EX=$}}function JM(Q,X,Z){var J=Q.next?Q.next.e.nodes_start:Z,G=X?X.e.nodes_start:Z,Y=Q.e.nodes_start;while(Y!==J){var H=W8(Y);G.before(Y),Y=H}}function A4(Q,X,Z){if(X===null)Q.first=Z;else X.next=Z,X.e.next=Z&&Z.e;if(Z!==null)Z.prev=X,Z.e.prev=X&&X.e}function Z$(Q,X){P9(()=>{var Z=Q.getRootNode(),J=Z.host?Z:Z.head??Z.ownerDocument.head;if(!J.querySelector("#"+X.hash)){let G=document.createElement("style");if(G.id=X.hash,G.textContent=X.code,J.appendChild(G),b1)tT(X.hash,G)}})}function J$(Q,X,Z,J){var G=Q.__attributes??={};if(H0){if(G[X]=Q.getAttribute(X),X==="src"||X==="srcset"||X==="href"&&Q.nodeName==="LINK"){if(!J)on(Q,X,Z??"");return}}if(G[X]===(G[X]=Z))return;if(X==="style"&&"__styles"in Q)Q.__styles={};if(X==="loading")Q[lN]=Z;if(Z==null)Q.removeAttribute(X);else if(typeof Z!=="string"&&nn(Q).includes(X))Q[X]=Z;else Q.setAttribute(X,Z)}var YM=new Map;function nn(Q){var X=YM.get(Q.nodeName);if(X)return X;YM.set(Q.nodeName,X=[]);var Z,J=Q,G=Element.prototype;while(G!==J){Z=Pq(J);for(var Y in Z)if(Z[Y].set)X.push(Y);J=P4(J)}return X}function on(Q,X,Z){if(!b1)return;if(X==="srcset"&&an(Q,Z))return;if(X$(Q.getAttribute(X)??"",Z))return;TT(X,Q.outerHTML.replace(Q.innerHTML,Q.innerHTML&&"..."),String(Z))}function X$(Q,X){if(Q===X)return!0;return new URL(Q,document.baseURI).href===new URL(X,document.baseURI).href}function WM(Q){return Q.split(",").map((X)=>X.trim().split(" ").filter(Boolean))}function an(Q,X){var Z=WM(Q.srcset),J=WM(X);return J.length===Z.length&&J.every(([G,Y],H)=>Y===Z[H][1]&&(X$(Z[H][0],G)||X$(G,Z[H][0])))}class qM{#Z=new WeakMap;#Q;#X;static entries=new WeakMap;constructor(Q){this.#X=Q}observe(Q,X){var Z=this.#Z.get(Q)||new Set;return Z.add(X),this.#Z.set(Q,Z),this.#J().observe(Q,this.#X),()=>{var J=this.#Z.get(Q);if(J.delete(X),J.size===0)this.#Z.delete(Q),this.#Q.unobserve(Q)}}#J(){return this.#Q??(this.#Q=new ResizeObserver((Q)=>{for(var X of Q){qM.entries.set(X.target,X);for(var Z of this.#Z.get(X.target)||[])Z(X)}}))}}function G$(Q=!1){let X=j0,Z=X.l.u;if(!Z)return;let J=()=>gq(X.s);if(Q){let G=0,Y={},H=$Z(()=>{let K=!1,z=X.s;for(let W in z)if(z[W]!==Y[W])Y[W]=z[W],K=!0;if(K)G++;return G});J=()=>G0(H)}if(Z.b.length)i5(()=>{HM(X,J),GZ(Z.b)});if(o5(()=>{let G=E6(()=>Z.m.map(pN));return()=>{for(let Y of G)if(typeof Y==="function")Y()}}),Z.a.length)o5(()=>{HM(X,J),GZ(Z.a)})}function HM(Q,X){if(Q.l.s)for(let Z of Q.l.s)G0(Z);X()}function bq(Q,X,Z){if(Q==null){if(X(void 0),Z)Z(void 0);return y9}let J=E6(()=>Q.subscribe(X,Z));return J.unsubscribe?()=>J.unsubscribe():J}function zM(Q){let X;return bq(Q,(Z)=>X=Z)(),X}var mq=!1,Y$=Symbol();function W$(Q,X,Z){let J=Z[X]??={store:null,source:GQ(void 0),unsubscribe:y9};if(J.store!==Q&&!(Y$ in Z))if(J.unsubscribe(),J.store=Q??null,Q==null)J.source.v=void 0,J.unsubscribe=y9;else{var G=!0;J.unsubscribe=bq(Q,(Y)=>{if(G)J.source.v=Y;else Y6(J.source,Y)}),G=!1}if(Q&&Y$ in Z)return zM(Q);return G0(J.source)}function q$(){let Q={};function X(){t8(()=>{for(var Z in Q)Q[Z].unsubscribe();_6(Q,Y$,{enumerable:!1,value:!0})})}return[Q,X]}function H$(Q){var X=mq;try{return mq=!1,[Q(),mq]}finally{mq=X}}function KM(Q){var X=$0,Z=$0;while(X!==null&&(X.f&(j8|x9))===0)X=X.parent;try{return u6(X),Q()}finally{u6(Z)}}function jX(Q,X,Z,J){var G=(Z&zT)!==0,Y=!ZQ||(Z&KT)!==0,H=(Z&BT)!==0,K=(Z&UT)!==0,z=!1,W;if(H)[W,z]=H$(()=>Q[X]);else W=Q[X];var $=S8 in Q||Cq in Q,q=H&&(k9(Q,X)?.set??($&&(X in Q)&&((w)=>Q[X]=w)))||void 0,B=J,D=!0,F=!1,P=()=>{if(F=!0,D)if(D=!1,K)B=E6(J);else B=J;return B};if(W===void 0&&J!==void 0){if(q&&Y)QT(X);if(W=P(),q)q(W)}var N;if(Y)N=()=>{var w=Q[X];if(w===void 0)return P();return D=!0,F=!1,w};else{var C=KM(()=>(G?$Z:TX)(()=>Q[X]));C.f|=IK,N=()=>{var w=G0(C);if(w!==void 0)B=void 0;return w===void 0?B:w}}if((Z&$T)===0)return N;if(q){var L=Q.$$legacy;return function(w,A){if(arguments.length>0){if(!Y||!A||L||z)q(A?N():w);return w}else return N()}}var V=!1,M=!1,I=GQ(W),E=KM(()=>$Z(()=>{var w=N(),A=G0(I);if(V)return V=!1,M=!0,A;return M=!1,I.v=w}));if(!G)E.equals=m5;return function(w,A){if(UX!==null)V=M,N(),G0(I);if(arguments.length>0){let R=A?G0(E):Y&&H?T4(w):w;if(!E.equals(R)){if(V=!0,Y6(I,R),F&&B!==void 0)B=R;E6(()=>G0(E))}return w}return G0(E)}}function z$(Q,X){x8(()=>{let Z=new Map,J=Q(),G=K9(J)?J:J==null?[]:Array.from(J),Y=G.length;for(let H=0;H{var H=GQ(Y);return X.set(G,H),H};let J=new Proxy({...Q.props||{},$$events:{}},{get(G,Y){return G0(X.get(Y)??Z(Y,Reflect.get(G,Y)))},has(G,Y){if(Y===Cq)return!0;return G0(X.get(Y)??Z(Y,Reflect.get(G,Y))),Reflect.has(G,Y)},set(G,Y,H){return Y6(X.get(Y)??Z(Y,H),H),Reflect.set(G,Y,H)}});if(this.#Q=(Q.hydrate?eK:Z7)(Q.component,{target:Q.target,anchor:Q.anchor,props:J,context:Q.context,intro:Q.intro??!1,recover:Q.recover}),!Q?.props?.$$host||Q.sync===!1)r5();this.#Z=J.$$events;for(let G of Object.keys(this.#Q)){if(G==="$set"||G==="$destroy"||G==="$on")continue;_6(this,G,{get(){return this.#Q[G]},set(Y){this.#Q[G]=Y},enumerable:!0})}this.#Q.$set=(G)=>{Object.assign(J,G)},this.#Q.$destroy=()=>{AX(this.#Q)}}$set(Q){this.#Q.$set(Q)}$on(Q,X){this.#Z[Q]=this.#Z[Q]||[];let Z=(...J)=>X.call(this,...J);return this.#Z[Q].push(Z),()=>{this.#Z[Q]=this.#Z[Q].filter((J)=>J!==Z)}}$destroy(){this.#Q.$destroy()}}var qo;if(typeof HTMLElement==="function")qo=class extends HTMLElement{$$ctor;$$s;$$c;$$cn=!1;$$d={};$$r=!1;$$p_d={};$$l={};$$l_u=new Map;$$me;constructor(Q,X,Z){super();if(this.$$ctor=Q,this.$$s=X,Z)this.attachShadow({mode:"open"})}addEventListener(Q,X,Z){if(this.$$l[Q]=this.$$l[Q]||[],this.$$l[Q].push(X),this.$$c){let J=this.$$c.$on(Q,X);this.$$l_u.set(X,J)}super.addEventListener(Q,X,Z)}removeEventListener(Q,X,Z){if(super.removeEventListener(Q,X,Z),this.$$c){let J=this.$$l_u.get(X);if(J)J(),this.$$l_u.delete(X)}}async connectedCallback(){if(this.$$cn=!0,!this.$$c){let Q=function(J){return(G)=>{let Y=document.createElement("slot");if(J!=="default")Y.name=J;D6(G,Y)}};if(await Promise.resolve(),!this.$$cn||this.$$c)return;let X={},Z=Ho(this);for(let J of this.$$s)if(J in Z)if(J==="default"&&!this.$$d.children)this.$$d.children=Q(J),X.default=!0;else X[J]=Q(J);for(let J of this.attributes){let G=this.$$g_p(J.name);if(!(G in this.$$d))this.$$d[G]=K$(G,J.value,this.$$p_d,"toProp")}for(let J in this.$$p_d)if(!(J in this.$$d)&&this[J]!==void 0)this.$$d[J]=this[J],delete this[J];this.$$c=$M({component:this.$$ctor,target:this.shadowRoot||this,props:{...this.$$d,$$slots:X,$$host:this}}),this.$$me=dK(()=>{x8(()=>{this.$$r=!0;for(let J of NK(this.$$c)){if(!this.$$p_d[J]?.reflect)continue;this.$$d[J]=this.$$c[J];let G=K$(J,this.$$d[J],this.$$p_d,"toAttribute");if(G==null)this.removeAttribute(this.$$p_d[J].attribute||J);else this.setAttribute(this.$$p_d[J].attribute||J,G)}this.$$r=!1})});for(let J in this.$$l)for(let G of this.$$l[J]){let Y=this.$$c.$on(J,G);this.$$l_u.set(G,Y)}this.$$l={}}}attributeChangedCallback(Q,X,Z){if(this.$$r)return;Q=this.$$g_p(Q),this.$$d[Q]=K$(Q,Z,this.$$p_d,"toProp"),this.$$c?.$set({[Q]:this.$$d[Q]})}disconnectedCallback(){this.$$cn=!1,Promise.resolve().then(()=>{if(!this.$$cn&&this.$$c)this.$$c.$destroy(),this.$$me(),this.$$c=void 0})}$$g_p(Q){return NK(this.$$p_d).find((X)=>this.$$p_d[X].attribute===Q||!this.$$p_d[X].attribute&&X.toLowerCase()===Q)||Q}};function K$(Q,X,Z,J){let G=Z[Q]?.type;if(X=G==="Boolean"&&typeof X!=="boolean"?X!=null:X,!J||!Z[Q])return X;else if(J==="toAttribute")switch(G){case"Object":case"Array":return X==null?null:JSON.stringify(X);case"Boolean":return X?"":null;case"Number":return X==null?null:X;default:return X}else switch(G){case"Object":case"Array":return X&&JSON.parse(X);case"Boolean":return X;case"Number":return X!=null?+X:X;default:return X}}function Ho(Q){let X={};return Q.childNodes.forEach((Z)=>{X[Z.slot||"default"]=!0}),X}function $$(Q,X){if(Q!=null&&typeof Q.subscribe!=="function")bT(X)}function VM(Q){if(j0===null)Sq("onMount");if(ZQ&&j0.l!==null)Po(j0).m.push(Q);else o5(()=>{let X=E6(Q);if(typeof X==="function")return X})}function Po(Q){var X=Q.l;return X.u??={a:[],b:[],m:[]}}var PM="5";if(typeof window!=="undefined")(window.__svelte||={v:new Set}).v.add(PM);WT();var VI=Z8($I()),c0=Z8(zq());var es=!0,BI={appName:"Claude",filename:"obsidian-plugin-mcp-tools.log",level:"DEBUG"},{filename:UI}=Kq.assert(BI),m0=es?console:kN(BI);var x$=(Q)=>c0.interval(200).pipe(c0.takeUntil(c0.timer(5000)),c0.map(()=>{let X=Q.app.plugins.plugins["smart-connections"];if(X?.env?.smart_sources){let J=X.env;return{id:"smart-connections",name:"Smart Connections",required:!1,installed:!0,api:{search:async(Y,H)=>{try{return(await J.smart_sources.lookup({hypotheticals:[Y],filter:{limit:H?.limit,key_starts_with_any:H?.key_starts_with_any,exclude_key_starts_with_any:H?.exclude_key_starts_with_any,exclude_key:H?.exclude_key,exclude_keys:H?.exclude_keys,exclude_key_starts_with:H?.exclude_key_starts_with,exclude_key_includes:H?.exclude_key_includes,key_ends_with:H?.key_ends_with,key_starts_with:H?.key_starts_with,key_includes:H?.key_includes}})).map((z)=>({item:{path:z.item.path,name:z.item.name||z.item.key?.split("/").pop()||z.item.key,breadcrumbs:z.item.breadcrumbs||z.item.path,read:()=>z.item.read(),key:z.item.key,file_path:z.item.path,link:z.item.link,size:z.item.size},score:z.score}))}catch(K){return console.error("Smart Connections v3.0 search error:",K),[]}}},plugin:X}}let Z=window.SmartSearch;if(!Z&&X?.env)Z=X.env,window.SmartSearch=Z;return{id:"smart-connections",name:"Smart Connections",required:!1,installed:!!Z,api:Z,plugin:X}}),c0.takeWhile((X)=>!X.installed,!0),c0.distinct(({installed:X})=>X)),v$=(Q)=>c0.interval(200).pipe(c0.takeUntil(c0.timer(5000)),c0.map(()=>{let X=VI.getAPI(Q.app,Q.manifest);return{id:"obsidian-local-rest-api",name:"Local REST API",required:!0,installed:!!X,api:X,plugin:Q.app.plugins.plugins["obsidian-local-rest-api"]}}),c0.takeWhile((X)=>!X.installed,!0),c0.distinct(({installed:X})=>X)),g$=(Q)=>c0.interval(200).pipe(c0.takeUntil(c0.timer(5000)),c0.map(()=>{let X=Q.app.plugins.plugins["templater-obsidian"]?.templater;return{id:"templater-obsidian",name:"Templater",required:!1,installed:!!X,api:X,plugin:Q.app.plugins.plugins["templater-obsidian"]}}),c0.takeWhile((X)=>!X.installed,!0),c0.distinct(({installed:X})=>X)),Qt=(Q)=>{let X={"obsidian-local-rest-api":{id:"obsidian-local-rest-api",name:"Local REST API",required:!0,installed:!1,url:"https://github.com/coddingtonbear/obsidian-local-rest-api"},"smart-connections":{id:"smart-connections",name:"Smart Connections",required:!1,installed:!1,url:"https://smartconnections.app/"},"templater-obsidian":{id:"templater-obsidian",name:"Templater",required:!1,installed:!1,url:"https://silentvoid13.github.io/Templater/"}};return c0.merge(v$(Q),g$(Q),x$(Q)).pipe(c0.scan((Z,J)=>{return Z[J.id]={...X[J.id],...J},Z},X),c0.startWith(X))},PI=(Q)=>Qt(Q).pipe(c0.map((X)=>Object.values(X)));var YB=require("obsidian"),DA=require("path");var z7=Z8(require("fs/promises")),h$=Z8(require("os")),f$=Z8(require("path"));var{GITHUB_DOWNLOAD_URL:eq,GITHUB_REF_NAME:OL1}={GITHUB_DOWNLOAD_URL:"https://github.com/jacksteamdev/obsidian-mcp-tools/releases/download/0.2.27",GITHUB_REF_NAME:"0.2.27"},Q3={windows:"mcp-server.exe",macos:"mcp-server",linux:"mcp-server"},Z3={macos:"~/Library/Application Support/Claude/claude_desktop_config.json",windows:"%APPDATA%\\Claude\\claude_desktop_config.json",linux:"~/.config/claude/config.json"};function FI(){let Q=h$.default.platform(),X;switch(Q){case"darwin":X=Z3.macos;break;case"win32":X=Z3.windows;break;default:X=Z3.linux}if(X.startsWith("~"))X=f$.default.join(h$.default.homedir(),X.slice(1));if(Q==="win32")X=X.replace(/%([^%]+)%/g,(Z,J)=>process.env[J]||"");return X}async function b$(Q,X,Z){try{let J=FI(),G=f$.default.dirname(J);await z7.default.mkdir(G,{recursive:!0});let Y={mcpServers:{}};try{let H=await z7.default.readFile(J,"utf8");Y=JSON.parse(H),Y.mcpServers=Y.mcpServers||{}}catch(H){if(H.code!=="ENOENT")throw H}Y.mcpServers["obsidian-mcp-tools"]={command:X,env:{OBSIDIAN_API_KEY:Z}},await z7.default.writeFile(J,JSON.stringify(Y,null,2)),m0.info("Updated Claude config",{configPath:J})}catch(J){throw m0.error("Failed to update Claude config:",{error:J}),new Error(`Failed to update Claude config: ${J instanceof Error?J.message:String(J)}`)}}async function DI(){try{let Q=FI(),X;try{let Z=await z7.default.readFile(Q,"utf8");X=JSON.parse(Z)}catch(Z){if(Z.code==="ENOENT")return;throw Z}if(X.mcpServers&&"obsidian-mcp-tools"in X.mcpServers)delete X.mcpServers["obsidian-mcp-tools"],await z7.default.writeFile(Q,JSON.stringify(X,null,2)),m0.info("Removed server from Claude config",{configPath:Q})}catch(Q){throw m0.error("Failed to remove from Claude config:",{error:Q}),new Error(`Failed to remove from Claude config: ${Q instanceof Error?Q.message:String(Q)}`)}}var V3=Z8(require("fs")),iX=Z8(require("fs/promises")),UA=Z8(require("https")),cX=require("obsidian"),ZB=Z8(require("os")),VA=Z8(zq());var $A=require("child_process"),B7=Z8(require("fs/promises")),p9=Z8(require("path")),RZ=Z8(zA()),BA=require("util");var KA=require("obsidian");function U3(Q){let X=Q.app.vault.adapter;if(X instanceof KA.FileSystemAdapter)return X;return{error:"Unsupported platform"}}var ie=BA.promisify($A.exec);async function ne(Q){try{return await B7.default.realpath(Q)}catch(X){if(X.code==="ENOENT"){let Z=p9.default.normalize(Q).split(p9.default.sep),J=[],G=1;if(p9.default.win32.isAbsolute(Q)){if(J.push(Z[0]),Z[1]==="")J.push(""),G=2}else if(p9.default.posix.isAbsolute(Q))J.push("/");else J.push(Z[0]);for(let Y of Z.slice(G)){let H=p9.default.join(...J,Y);try{J=(await B7.default.realpath(H)).split(p9.default.sep)}catch(K){J.push(Y)}}return p9.default.join(...J)}throw m0.error("Failed to resolve symlink:",{filepath:Q,error:X instanceof Error?X.message:X}),new Error(`Failed to resolve symlink: ${Q}`)}}async function e$(Q){let X=U3(Q);if("error"in X)return X;let Z=lX(),J=p9.default.join(X.getBasePath(),Q.app.vault.configDir,"plugins",Q.manifest.id,"bin"),G=await ne(J),Y=Q3[Z],H=p9.default.join(G,Y);return{dir:G,path:H,name:Y,symlinked:J===G?void 0:J}}async function QB(Q){let X=RZ.valid(RZ.clean(Q.manifest.version));if(!X)return m0.error("Invalid plugin version:",{plugin:Q}),{state:"error",versions:{}};if(!Q.getLocalRestApiKey())return{state:"no api key",versions:{plugin:X}};let J=await e$(Q);if("error"in J)return{state:"error",versions:{plugin:X},error:J.error};try{await B7.default.access(J.path,B7.default.constants.X_OK)}catch(Y){return m0.error("Failed to get server version:",{installPath:J}),{state:"not installed",...J,versions:{plugin:X}}}let G;try{let Y=`"${J.path}" --version`,{stdout:H}=await ie(Y);if(G=RZ.clean(H.trim()),!G)throw new Error("Invalid server version string")}catch{return m0.error("Failed to get server version:",{installPath:J}),{state:"error",...J,versions:{plugin:X}}}return{...J,state:RZ.lt(G,X)?"outdated":"installed",versions:{plugin:X,server:G}}}function lX(){switch(ZB.default.platform()){case"darwin":return"macos";case"win32":return"windows";default:return"linux"}}function oe(){return ZB.default.arch()}function ae(Q,X){if(Q==="windows")return`${eq}/mcp-server-windows.exe`;else if(Q==="macos")return`${eq}/mcp-server-macos-${X}`;else return`${eq}/mcp-server-linux`}async function se(Q){try{if(!V3.default.existsSync(Q))await iX.default.mkdir(Q,{recursive:!0});try{await iX.default.access(Q,V3.default.constants.W_OK)}catch(X){throw new Error(`Directory exists but is not writable: ${Q}`)}}catch(X){throw m0.error("Failed to ensure directory:",{error:X}),X}}function PA(Q,X,Z=0){return new VA.Observable((J)=>{if(Z>5){J.error(new Error("Too many redirects"));return}let G,Y=(H)=>{if(H)m0.debug("Cleaning up incomplete download:",{outputPath:X,writableFinished:JSON.stringify(G?.writableFinished),error:H instanceof Error?H.message:String(H)}),G?.destroy(),iX.default.unlink(X).catch((K)=>{m0.error("Failed to clean up incomplete download:",{outputPath:X,error:K instanceof Error?K.message:String(K)})});else G?.close(),iX.default.chmod(X,493).catch((K)=>{m0.error("Failed to set executable permissions:",{outputPath:X,error:K instanceof Error?K.message:String(K)})})};UA.default.get(Q,(H)=>{try{if(!H)throw new Error("No response received");let K=H.statusCode??0;if(K>=400)throw new Error(`HTTP Error ${K}: ${H.statusMessage}`);if(K===302||K===301){let q=H.headers.location;if(!q)throw new Error(`Redirect (${K}) received but no location header found`);PA(q,X,Z+1).subscribe(J);return}if(K!==200)throw new Error(`Unexpected status code: ${K}`);let z=H.headers["content-length"],W=z?parseInt(z,10):0;if(z&&isNaN(W))throw new Error("Invalid content-length header");try{G=V3.default.createWriteStream(X,{flags:"w"})}catch(q){throw new Error(`Failed to create write stream: ${q instanceof Error?q.message:String(q)}`)}let $=0;G.on("error",(q)=>{let B=new Error(`File stream error: ${q.message}`);Y(B),J.error(B)}),H.on("data",(q)=>{try{if(!Buffer.isBuffer(q))throw new Error("Received invalid data chunk");$+=q.length;let B=W?$/W*100:0;J.next({bytesReceived:$,totalBytes:W,percentage:Math.round(B*100)/100})}catch(B){Y(B),J.error(B)}}),H.pipe(G),G.on("finish",()=>{Y(),J.complete()}),H.on("error",(q)=>{Y(q),J.error(new Error(`Response error: ${q.message}`))})}catch(K){Y(K),J.error(K instanceof Error?K:new Error(String(K)))}}).on("error",(H)=>{Y(H),J.error(new Error(`Network error: ${H.message}`))})})}async function XB(Q){try{let X=lX(),Z=oe(),J=ae(X,Z),G=await e$(Q);if("error"in G)throw new Error(G.error);await se(G.dir);let Y=new cX.Notice("Downloading MCP server...",0);m0.debug("Downloading MCP server:",{downloadUrl:J,installPath:G});let H=PA(J,G.path);return new Promise((K,z)=>{H.subscribe({next:(W)=>{Y.setMessage(`Downloading MCP server: ${W.percentage}%`)},error:(W)=>{Y.hide(),new cX.Notice(`Failed to download MCP server: ${W.message}`),m0.error("Download failed:",{error:W,installPath:G}),z(W)},complete:()=>{Y.hide(),new cX.Notice("MCP server downloaded successfully!"),m0.info("MCP server downloaded",{installPath:G}),K(G)}})})}catch(X){throw new cX.Notice(`Failed to install MCP server: ${X instanceof Error?X.message:String(X)}`),X}}var nX=Z8(require("fs/promises")),P3=Z8(require("path"));async function JB(Q){try{let X=U3(Q);if("error"in X)throw new Error(X.error);let Z=lX(),J=P3.default.join(X.getBasePath(),Q.app.vault.configDir,"plugins",Q.manifest.id,"bin"),G=P3.default.join(J,Q3[Z]);try{await nX.default.unlink(G),m0.info("Removed server binary",{binaryPath:G})}catch(H){if(H.code!=="ENOENT")throw H}try{await nX.default.rmdir(J),m0.info("Removed empty bin directory",{binDir:J})}catch(H){if(H.code!=="ENOTEMPTY")throw H}let Y=P3.default.join(process.env.HOME||process.env.USERPROFILE||"","Library/Application Support/Claude/claude_desktop_config.json");try{let H=await nX.default.readFile(Y,"utf8"),K=JSON.parse(H);if(K.mcpServers&&K.mcpServers["obsidian-mcp-tools"])delete K.mcpServers["obsidian-mcp-tools"],await nX.default.writeFile(Y,JSON.stringify(K,null,2)),m0.info("Removed server from Claude config",{configPath:Y})}catch(H){if(H.code!=="ENOENT")throw H}m0.info("Server uninstall complete")}catch(X){throw m0.error("Failed to uninstall server:",{error:X}),new Error(`Failed to uninstall server: ${X instanceof Error?X.message:String(X)}`)}}var FA=require("child_process"),oX=require("obsidian");function GB(Q){let X=oX.Platform.isWin?`start "" "${Q}"`:oX.Platform.isMacOS?`open "${Q}"`:`xdg-open "${Q}"`;FA.exec(X,(Z)=>{if(Z){let J=`Failed to open folder: ${Z.message}`;m0.error(J,{folderPath:Q,error:Z}),new oX.Notice(J)}})}LX();p6[f0]="McpServerInstallSettings.svelte";var te=z8(K8('
Please configure the Local REST API plugin
'),p6[f0],[[64,4]]),re=z8(K8('
MCP Server is not installed
'),p6[f0],[[66,4,[[68,6]]]]),ee=z8(K8('
Installing MCP server...
'),p6[f0],[[71,4]]),Q11=z8(K8('
'),p6[f0],[[73,4,[[75,6]]]]),Z11=z8(K8('
'),p6[f0],[[78,4,[[80,6]]]]),X11=z8(K8('
Uninstalling MCP server...
'),p6[f0],[[83,4]]),J11=z8(K8('
'),p6[f0],[[85,4]]),G11=z8(K8('How to install?'),p6[f0],[[100,21]]),Y11=z8(K8(" ",1),p6[f0],[]),W11=z8(K8('
'),p6[f0],[[93,4]]),q11=z8(K8(''),p6[f0],[[110,4,[[112,6]]]]),H11=z8(K8('

Installation status

Dependencies

',1),p6[f0],[[60,0,[[61,2]]],[89,0,[[90,2]]],[106,0,[[107,2],[118,2,[[120,4]]],[125,2,[[126,4]]]]]]),z11={hash:"svelte-1qdiqba",code:` - .error-message.svelte-1qdiqba { - color: var(--text-error); - margin-bottom: 1em; - } - - .status-message.svelte-1qdiqba { - margin-bottom: 1em; - } - - .dependency-item.svelte-1qdiqba { - margin-bottom: 0.5em; - } - - /* (unused) .installed { - color: var(--text-success); - }*/ - - /* (unused) .not-installed { - color: var(--text-muted); - }*/ - - .link-item.svelte-1qdiqba { - margin-bottom: 0.5em; - } - - button.svelte-1qdiqba { - margin-left: 0.5em; - } - -/*# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWNwU2VydmVySW5zdGFsbFNldHRpbmdzLnN2ZWx0ZSIsInNvdXJjZXMiOlsiTWNwU2VydmVySW5zdGFsbFNldHRpbmdzLnN2ZWx0ZSJdLCJzb3VyY2VzQ29udGVudCI6WyI8c2NyaXB0IGxhbmc9XCJ0c1wiPmltcG9ydCB7IEZVTExfTE9HR0VSX0ZJTEVOQU1FLCBsb2FkRGVwZW5kZW5jaWVzQXJyYXkgfSBmcm9tIFwiJC9zaGFyZWRcIjtcbmltcG9ydCB7IE5vdGljZSB9IGZyb20gXCJvYnNpZGlhblwiO1xuaW1wb3J0IHsgZGlybmFtZSB9IGZyb20gXCJwYXRoXCI7XG5pbXBvcnQgeyBvbk1vdW50IH0gZnJvbSBcInN2ZWx0ZVwiO1xuaW1wb3J0IHsgcmVtb3ZlRnJvbUNsYXVkZUNvbmZpZywgdXBkYXRlQ2xhdWRlQ29uZmlnLCB9IGZyb20gXCIuLi9zZXJ2aWNlcy9jb25maWdcIjtcbmltcG9ydCB7IGluc3RhbGxNY3BTZXJ2ZXIgfSBmcm9tIFwiLi4vc2VydmljZXMvaW5zdGFsbFwiO1xuaW1wb3J0IHsgZ2V0SW5zdGFsbGF0aW9uU3RhdHVzIH0gZnJvbSBcIi4uL3NlcnZpY2VzL3N0YXR1c1wiO1xuaW1wb3J0IHsgdW5pbnN0YWxsU2VydmVyIH0gZnJvbSBcIi4uL3NlcnZpY2VzL3VuaW5zdGFsbFwiO1xuaW1wb3J0IHsgb3BlbkZvbGRlciB9IGZyb20gXCIuLi91dGlscy9vcGVuRm9sZGVyXCI7XG5leHBvcnQgbGV0IHBsdWdpbjtcbi8vIERlcGVuZGVuY2llcyBhbmQgQVBJIGtleSBzdGF0dXNcbmNvbnN0IGRlcHMgPSBsb2FkRGVwZW5kZW5jaWVzQXJyYXkocGx1Z2luKTtcbi8vIEluc3RhbGxhdGlvbiBzdGF0dXNcbmxldCBzdGF0dXMgPSB7XG4gICAgc3RhdGU6IFwibm90IGluc3RhbGxlZFwiLFxuICAgIHZlcnNpb25zOiB7fSxcbn07XG5vbk1vdW50KGFzeW5jICgpID0+IHtcbiAgICBzdGF0dXMgPSBhd2FpdCBnZXRJbnN0YWxsYXRpb25TdGF0dXMocGx1Z2luKTtcbn0pO1xuLy8gSGFuZGxlIGluc3RhbGxhdGlvblxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlSW5zdGFsbCgpIHtcbiAgICB0cnkge1xuICAgICAgICBjb25zdCBhcGlLZXkgPSBhd2FpdCBwbHVnaW4uZ2V0TG9jYWxSZXN0QXBpS2V5KCk7XG4gICAgICAgIGlmICghYXBpS2V5KSB7XG4gICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJMb2NhbCBSRVNUIEFQSSBrZXkgaXMgbm90IGNvbmZpZ3VyZWRcIik7XG4gICAgICAgIH1cbiAgICAgICAgc3RhdHVzID0geyAuLi5zdGF0dXMsIHN0YXRlOiBcImluc3RhbGxpbmdcIiB9O1xuICAgICAgICBjb25zdCBpbnN0YWxsUGF0aCA9IGF3YWl0IGluc3RhbGxNY3BTZXJ2ZXIocGx1Z2luKTtcbiAgICAgICAgLy8gVXBkYXRlIENsYXVkZSBjb25maWdcbiAgICAgICAgYXdhaXQgdXBkYXRlQ2xhdWRlQ29uZmlnKHBsdWdpbiwgaW5zdGFsbFBhdGgucGF0aCwgYXBpS2V5KTtcbiAgICAgICAgc3RhdHVzID0gYXdhaXQgZ2V0SW5zdGFsbGF0aW9uU3RhdHVzKHBsdWdpbik7XG4gICAgfVxuICAgIGNhdGNoIChlcnJvcikge1xuICAgICAgICBjb25zdCBtZXNzYWdlID0gZXJyb3IgaW5zdGFuY2VvZiBFcnJvciA/IGVycm9yLm1lc3NhZ2UgOiBcIkluc3RhbGxhdGlvbiBmYWlsZWRcIjtcbiAgICAgICAgc3RhdHVzID0geyAuLi5zdGF0dXMsIHN0YXRlOiBcImVycm9yXCIsIGVycm9yOiBtZXNzYWdlIH07XG4gICAgICAgIG5ldyBOb3RpY2UobWVzc2FnZSk7XG4gICAgfVxufVxuLy8gSGFuZGxlIHVuaW5zdGFsbFxuYXN5bmMgZnVuY3Rpb24gaGFuZGxlVW5pbnN0YWxsKCkge1xuICAgIHRyeSB7XG4gICAgICAgIHN0YXR1cyA9IHsgLi4uc3RhdHVzLCBzdGF0ZTogXCJpbnN0YWxsaW5nXCIgfTtcbiAgICAgICAgYXdhaXQgdW5pbnN0YWxsU2VydmVyKHBsdWdpbik7XG4gICAgICAgIGF3YWl0IHJlbW92ZUZyb21DbGF1ZGVDb25maWcoKTtcbiAgICAgICAgc3RhdHVzID0geyAuLi5zdGF0dXMsIHN0YXRlOiBcIm5vdCBpbnN0YWxsZWRcIiB9O1xuICAgIH1cbiAgICBjYXRjaCAoZXJyb3IpIHtcbiAgICAgICAgY29uc3QgbWVzc2FnZSA9IGVycm9yIGluc3RhbmNlb2YgRXJyb3IgPyBlcnJvci5tZXNzYWdlIDogXCJVbmluc3RhbGxhdGlvbiBmYWlsZWRcIjtcbiAgICAgICAgc3RhdHVzID0ge1xuICAgICAgICAgICAgLi4uc3RhdHVzLFxuICAgICAgICAgICAgc3RhdGU6IFwiZXJyb3JcIixcbiAgICAgICAgICAgIGVycm9yOiBtZXNzYWdlLFxuICAgICAgICB9O1xuICAgICAgICBuZXcgTm90aWNlKG1lc3NhZ2UpO1xuICAgIH1cbn1cbjwvc2NyaXB0PlxuXG48ZGl2IGNsYXNzPVwiaW5zdGFsbGF0aW9uLXN0YXR1c1wiPlxuICA8aDM+SW5zdGFsbGF0aW9uIHN0YXR1czwvaDM+XG5cbiAgeyNpZiBzdGF0dXMuc3RhdGUgPT09IFwibm8gYXBpIGtleVwifVxuICAgIDxkaXYgY2xhc3M9XCJlcnJvci1tZXNzYWdlXCI+UGxlYXNlIGNvbmZpZ3VyZSB0aGUgTG9jYWwgUkVTVCBBUEkgcGx1Z2luPC9kaXY+XG4gIHs6ZWxzZSBpZiBzdGF0dXMuc3RhdGUgPT09IFwibm90IGluc3RhbGxlZFwifVxuICAgIDxkaXYgY2xhc3M9XCJzdGF0dXMtbWVzc2FnZVwiPlxuICAgICAgTUNQIFNlcnZlciBpcyBub3QgaW5zdGFsbGVkXG4gICAgICA8YnV0dG9uIG9uOmNsaWNrPXtoYW5kbGVJbnN0YWxsfT5JbnN0YWxsIHNlcnZlcjwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICB7OmVsc2UgaWYgc3RhdHVzLnN0YXRlID09PSBcImluc3RhbGxpbmdcIn1cbiAgICA8ZGl2IGNsYXNzPVwic3RhdHVzLW1lc3NhZ2VcIj5JbnN0YWxsaW5nIE1DUCBzZXJ2ZXIuLi48L2Rpdj5cbiAgezplbHNlIGlmIHN0YXR1cy5zdGF0ZSA9PT0gXCJpbnN0YWxsZWRcIn1cbiAgICA8ZGl2IGNsYXNzPVwic3RhdHVzLW1lc3NhZ2VcIj5cbiAgICAgIE1DUCBTZXJ2ZXIgdntzdGF0dXMudmVyc2lvbnMuc2VydmVyfSBpcyBpbnN0YWxsZWRcbiAgICAgIDxidXR0b24gb246Y2xpY2s9e2hhbmRsZVVuaW5zdGFsbH0+VW5pbnN0YWxsPC9idXR0b24+XG4gICAgPC9kaXY+XG4gIHs6ZWxzZSBpZiBzdGF0dXMuc3RhdGUgPT09IFwib3V0ZGF0ZWRcIn1cbiAgICA8ZGl2IGNsYXNzPVwic3RhdHVzLW1lc3NhZ2VcIj5cbiAgICAgIFVwZGF0ZSBhdmFpbGFibGUgKHZ7c3RhdHVzLnZlcnNpb25zLnNlcnZlcn0gLT4gdntzdGF0dXMudmVyc2lvbnMucGx1Z2lufSlcbiAgICAgIDxidXR0b24gb246Y2xpY2s9e2hhbmRsZUluc3RhbGx9PlVwZGF0ZTwvYnV0dG9uPlxuICAgIDwvZGl2PlxuICB7OmVsc2UgaWYgc3RhdHVzLnN0YXRlID09PSBcInVuaW5zdGFsbGluZ1wifVxuICAgIDxkaXYgY2xhc3M9XCJzdGF0dXMtbWVzc2FnZVwiPlVuaW5zdGFsbGluZyBNQ1Agc2VydmVyLi4uPC9kaXY+XG4gIHs6ZWxzZSBpZiBzdGF0dXMuc3RhdGUgPT09IFwiZXJyb3JcIn1cbiAgICA8ZGl2IGNsYXNzPVwiZXJyb3ItbWVzc2FnZVwiPntzdGF0dXMuZXJyb3J9PC9kaXY+XG4gIHsvaWZ9XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImRlcGVuZGVuY2llc1wiPlxuICA8aDM+RGVwZW5kZW5jaWVzPC9oMz5cblxuICB7I2VhY2ggJGRlcHMgYXMgZGVwIChkZXAuaWQpfVxuICAgIDxkaXYgY2xhc3M9XCJkZXBlbmRlbmN5LWl0ZW1cIj5cbiAgICAgIHsjaWYgZGVwLmluc3RhbGxlZH1cbiAgICAgICAg4pyFIHtkZXAubmFtZX0gaXMgaW5zdGFsbGVkXG4gICAgICB7OmVsc2V9XG4gICAgICAgIOKdjFxuICAgICAgICB7ZGVwLm5hbWV9XG4gICAgICAgIHtkZXAucmVxdWlyZWQgPyBcIihSZXF1aXJlZClcIiA6IFwiKE9wdGlvbmFsKVwifVxuICAgICAgICB7I2lmIGRlcC51cmx9PGEgaHJlZj17ZGVwLnVybH0gdGFyZ2V0PVwiX2JsYW5rXCI+SG93IHRvIGluc3RhbGw/PC9hPnsvaWZ9XG4gICAgICB7L2lmfVxuICAgIDwvZGl2PlxuICB7L2VhY2h9XG48L2Rpdj5cblxuPGRpdiBjbGFzcz1cImxpbmtzXCI+XG4gIDxoMz5SZXNvdXJjZXM8L2gzPlxuXG4gIHsjaWYgc3RhdHVzLnBhdGh9XG4gICAgPGRpdiBjbGFzcz1cImxpbmstaXRlbVwiPlxuICAgICAgPCEtLSBzdmVsdGUtaWdub3JlIGExMXlfbm9fc3RhdGljX2VsZW1lbnRfaW50ZXJhY3Rpb25zIC0tPlxuICAgICAgPGEgb246Y2xpY2s9eygpID0+IHN0YXR1cy5kaXIgJiYgb3BlbkZvbGRlcihzdGF0dXMuZGlyKX0+XG4gICAgICAgIFNlcnZlciBpbnN0YWxsIGZvbGRlclxuICAgICAgPC9hPlxuICAgIDwvZGl2PlxuICB7L2lmfVxuXG4gIDxkaXYgY2xhc3M9XCJsaW5rLWl0ZW1cIj5cbiAgICA8IS0tIHN2ZWx0ZS1pZ25vcmUgYTExeV9ub19zdGF0aWNfZWxlbWVudF9pbnRlcmFjdGlvbnMgLS0+XG4gICAgPGEgb246Y2xpY2s9eygpID0+IG9wZW5Gb2xkZXIoZGlybmFtZShGVUxMX0xPR0dFUl9GSUxFTkFNRSkpfT5cbiAgICAgIFNlcnZlciBsb2cgZm9sZGVyXG4gICAgPC9hPlxuICA8L2Rpdj5cblxuICA8ZGl2IGNsYXNzPVwibGluay1pdGVtXCI+XG4gICAgPGFcbiAgICAgIGhyZWY9XCJodHRwczovL2dpdGh1Yi5jb20vamFja3N0ZWFtZGV2L29ic2lkaWFuLW1jcC10b29sc1wiXG4gICAgICB0YXJnZXQ9XCJfYmxhbmtcIlxuICAgID5cbiAgICAgIEdpdEh1YiByZXBvc2l0b3J5XG4gICAgPC9hPlxuICA8L2Rpdj5cbjwvZGl2PlxuXG48c3R5bGU+XG4gIC5lcnJvci1tZXNzYWdlIHtcbiAgICBjb2xvcjogdmFyKC0tdGV4dC1lcnJvcik7XG4gICAgbWFyZ2luLWJvdHRvbTogMWVtO1xuICB9XG5cbiAgLnN0YXR1cy1tZXNzYWdlIHtcbiAgICBtYXJnaW4tYm90dG9tOiAxZW07XG4gIH1cblxuICAuZGVwZW5kZW5jeS1pdGVtIHtcbiAgICBtYXJnaW4tYm90dG9tOiAwLjVlbTtcbiAgfVxuXG4gIC5pbnN0YWxsZWQge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LXN1Y2Nlc3MpO1xuICB9XG5cbiAgLm5vdC1pbnN0YWxsZWQge1xuICAgIGNvbG9yOiB2YXIoLS10ZXh0LW11dGVkKTtcbiAgfVxuXG4gIC5saW5rLWl0ZW0ge1xuICAgIG1hcmdpbi1ib3R0b206IDAuNWVtO1xuICB9XG5cbiAgYnV0dG9uIHtcbiAgICBtYXJnaW4tbGVmdDogMC41ZW07XG4gIH1cbjwvc3R5bGU+XG4iXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IjtBQXVJQSxFQUFFLDZCQUFjLENBQUM7QUFDakIsSUFBSSx3QkFBd0I7QUFDNUIsSUFBSSxrQkFBa0I7QUFDdEI7O0FBRUEsRUFBRSw4QkFBZSxDQUFDO0FBQ2xCLElBQUksa0JBQWtCO0FBQ3RCOztBQUVBLEVBQUUsK0JBQWdCLENBQUM7QUFDbkIsSUFBSSxvQkFBb0I7QUFDeEI7O0FBRUEsY0FBRTtBQUNGO0FBQ0E7O0FBRUEsY0FBRTtBQUNGO0FBQ0E7O0FBRUEsRUFBRSx5QkFBVSxDQUFDO0FBQ2IsSUFBSSxvQkFBb0I7QUFDeEI7O0FBRUEsRUFBRSxxQkFBTSxDQUFDO0FBQ1QsSUFBSSxrQkFBa0I7QUFDdEI7In0= */`};function p6(Q,X){OX(new.target),PZ(X,!1,p6),Z$(Q,z11);let[Z,J]=q$(),G=()=>($$(H,"deps"),W$(H,"$deps",Z)),Y=jX(X,"plugin",8),H=PI(Y()),K=EK({state:"not installed",versions:{}});VM(async()=>{Y6(K,await QB(Y()))});async function z(){try{let w=await Y().getLocalRestApiKey();if(!w)throw new Error("Local REST API key is not configured");Y6(K,{...G0(K),state:"installing"});let A=await XB(Y());await b$(Y(),A.path,w),Y6(K,await QB(Y()))}catch(w){let A=w instanceof Error?w.message:"Installation failed";Y6(K,{...G0(K),state:"error",error:A}),new YB.Notice(A)}}async function W(){try{Y6(K,{...G0(K),state:"installing"}),await JB(Y()),await DI(),Y6(K,{...G0(K),state:"not installed"})}catch(w){let A=w instanceof Error?w.message:"Uninstallation failed";Y6(K,{...G0(K),state:"error",error:A}),new YB.Notice(A)}}G$();var $=H11(),q=YQ($),B=V9(g8(q),2);{var D=(w)=>{var A=te();D6(w,A)},F=(w)=>{var A=R4(),R=YQ(A);{var T=(v)=>{var h=re(),x=V9(g8(h));y8(h),DZ("click",x,z),D6(v,h)},S=(v)=>{var h=R4(),x=YQ(h);{var p=(t)=>{var Y1=ee();D6(t,Y1)},n=(t)=>{var Y1=R4(),G1=YQ(Y1);{var V1=(N1)=>{var j1=Q11(),d1=g8(j1),D1=V9(d1);y8(j1),M4(()=>LZ(d1,`MCP Server v${G0(K).versions.server??""} is installed `)),DZ("click",D1,W),D6(N1,j1)},C1=(N1)=>{var j1=R4(),d1=YQ(j1);{var D1=(P1)=>{var Q1=Z11(),O1=g8(Q1),S1=V9(O1);y8(Q1),M4(()=>LZ(O1,`Update available (v${G0(K).versions.server??""} -> v${G0(K).versions.plugin??""}) `)),DZ("click",S1,z),D6(P1,Q1)},e=(P1)=>{var Q1=R4(),O1=YQ(Q1);{var S1=(d)=>{var f=X11();D6(d,f)},k=(d)=>{var f=R4(),j=YQ(f);{var m=(Z1)=>{var _=J11(),J1=g8(_,!0);y8(_),M4(()=>LZ(J1,G0(K).error)),D6(Z1,_)};D9(j,(Z1)=>{if(SQ(G0(K).state,"error"))Z1(m)},!0)}D6(d,f)};D9(O1,(d)=>{if(SQ(G0(K).state,"uninstalling"))d(S1);else d(k,!1)},!0)}D6(P1,Q1)};D9(d1,(P1)=>{if(SQ(G0(K).state,"outdated"))P1(D1);else P1(e,!1)},!0)}D6(N1,j1)};D9(G1,(N1)=>{if(SQ(G0(K).state,"installed"))N1(V1);else N1(C1,!1)},!0)}D6(t,Y1)};D9(x,(t)=>{if(SQ(G0(K).state,"installing"))t(p);else t(n,!1)},!0)}D6(v,h)};D9(R,(v)=>{if(SQ(G0(K).state,"not installed"))v(T);else v(S,!1)},!0)}D6(w,A)};D9(B,(w)=>{if(SQ(G0(K).state,"no api key"))w(D);else w(F,!1)})}y8(q);var P=V9(q,2),N=V9(g8(P),2);z$(G,(w)=>w.id),Q$(N,1,G,(w)=>w.id,(w,A)=>{var R=W11(),T=g8(R);{var S=(h)=>{var x=sK();M4(()=>LZ(x,`✅ ${G0(A).name??""} is installed`)),D6(h,x)},v=(h)=>{var x=Y11(),p=YQ(x),n=V9(p);{var t=(Y1)=>{var G1=G11();M4(()=>J$(G1,"href",G0(A).url)),D6(Y1,G1)};D9(n,(Y1)=>{if(G0(A).url)Y1(t)})}M4(()=>LZ(p,`❌ - ${G0(A).name??""} - ${(G0(A).required?"(Required)":"(Optional)")??""} `)),D6(h,x)};D9(T,(h)=>{if(G0(A).installed)h(S);else h(v,!1)})}y8(R),D6(w,R)}),y8(P);var C=V9(P,2),L=V9(g8(C),2);{var V=(w)=>{var A=q11(),R=g8(A);y8(A),DZ("click",R,()=>G0(K).dir&&GB(G0(K).dir)),D6(w,A)};D9(L,(w)=>{if(G0(K).path)w(V)})}var M=V9(L,2),I=g8(M);y8(M),Rq(2),y8(C),DZ("click",I,()=>GB(DA.dirname(UI))),D6(Q,$);var E=FZ({...wX()});return J(),E}CX(p6);async function LA(Q){try{return{success:!0}}catch(X){return{success:!1,error:X instanceof Error?X.message:String(X)}}}LX();AZ[f0]="SettingsTab.svelte";var K11=z8(K8('
'),AZ[f0],[[5,0]]);function AZ(Q,X){OX(new.target),PZ(X,!1,AZ);let Z=jX(X,"plugin",8);var J=K11(),G=g8(J);return p6(G,{get plugin(){return Z()}}),y8(J),D6(Q,J),FZ({...wX()})}CX(AZ);var CA=require("obsidian");class NA extends CA.PluginSettingTab{plugin;component;constructor(Q,X){super(Q,X);this.plugin=X}display(){let{containerEl:Q}=this;Q.empty(),this.component=Z7(AZ,{target:Q,props:{plugin:this.plugin}})}hide(){this.component&&AX(this.component)}}async function TA(Q){try{return Q.addSettingTab(new NA(Q.app,Q)),{success:!0}}catch(X){return{success:!1,error:X instanceof Error?X.message:String(X)}}}class WB extends w4.Plugin{localRestApi={id:"obsidian-local-rest-api",name:"Local REST API",required:!0,installed:!1};async getLocalRestApiKey(){return this.localRestApi.plugin?.settings?.apiKey}async onload(){await TA(this),await LA(this),F3.lastValueFrom(v$(this)).then((Q)=>{if(this.localRestApi=Q,!this.localRestApi.api){new w4.Notice(`${this.manifest.name}: Local REST API plugin is required but not found. Please install it from the community plugins and restart Obsidian.`,0);return}this.localRestApi.api.addRoute("/search/smart").post(this.handleSearchRequest.bind(this)),this.localRestApi.api.addRoute("/templates/execute").post(this.handleTemplateExecution.bind(this)),m0.info("MCP Tools Plugin loaded")})}async handleTemplateExecution(Q,X){try{let{api:Z}=await F3.lastValueFrom(g$(this));if(!Z){new w4.Notice(`${this.manifest.name}: Templater plugin is not available. Please install it from the community plugins.`,0),m0.error("Templater plugin is not available"),X.status(503).json({error:"Templater plugin is not available"});return}let J=Bq.ApiTemplateExecutionParams(Q.body);if(J instanceof c1.errors){let W={error:"Invalid request body",body:Q.body,summary:J.summary};m0.debug("Invalid request body",W),X.status(400).json(W);return}let G=this.app.vault.getAbstractFileByPath(J.name);if(!(G instanceof w4.TFile)){m0.debug("Template file not found",{params:J,templateFile:G}),X.status(404).json({error:`File not found: ${J.name}`});return}let Y=Z.create_running_config(G,G,Vq.RunMode.CreateNewFromTemplate),H=(W)=>{return J.arguments[W]??""},K=Z.functions_generator.generate_object.bind(Z.functions_generator);Z.functions_generator.generate_object=async function(W,$){let q=await K(W,$);return Object.assign(q,{mcpTools:{prompt:H}}),q};let z=await Z.read_and_parse_template(Y);if(Z.functions_generator.generate_object=K,J.createFile&&J.targetPath){await this.app.vault.create(J.targetPath,z),X.json({message:"Prompt executed and file created successfully",content:z});return}X.json({message:"Prompt executed without creating a file",content:z})}catch(Z){m0.error("Prompt execution error:",{error:Z instanceof Error?Z.message:Z,body:Q.body}),X.status(503).json({error:"An error occurred while processing the prompt"});return}}async handleSearchRequest(Q,X){try{let J=(await F3.lastValueFrom(x$(this))).api;if(!J){new w4.Notice("Smart Search REST API Plugin: smart-connections plugin is required but not found. Please install it from the community plugins.",0),X.status(503).json({error:"Smart Connections plugin is not available"});return}let G=bN.pipe(({query:K,filter:z={}})=>({query:K,filter:Gz({key_starts_with_any:z.folders,exclude_key_starts_with_any:z.excludeFolders,limit:z.limit})})).to(mN)(Q.body);if(G instanceof c1.errors){X.status(400).json({error:"Invalid request body",summary:G.summary});return}let Y=await J.search(G.query,G.filter),H={results:await Promise.all(Y.map(async(K)=>({path:K.item.path,text:await K.item.read(),score:K.score,breadcrumbs:K.item.breadcrumbs})))};X.json(H);return}catch(Z){m0.error("Smart Search API error:",{error:Z,body:Q.body}),X.status(503).json({error:"An error occurred while processing the search request"});return}}onunload(){this.localRestApi.api?.unregister()}} - -/* nosourcemap */ \ No newline at end of file diff --git a/.obsidian/plugins/mcp-tools/manifest.json b/.obsidian/plugins/mcp-tools/manifest.json deleted file mode 100644 index e7dd496..0000000 --- a/.obsidian/plugins/mcp-tools/manifest.json +++ /dev/null @@ -1,11 +0,0 @@ -{ - "id": "mcp-tools", - "name": "MCP Tools", - "version": "0.2.27", - "minAppVersion": "0.15.0", - "description": "Securely connect Claude Desktop to your vault with semantic search, templates, and file management capabilities.", - "author": "Jack Steam", - "authorUrl": "https://github.com/jacksteamdev", - "fundingUrl": "https://github.com/sponsors/jacksteamdev", - "isDesktopOnly": true -} diff --git a/.obsidian/plugins/memos-sync/data.json b/.obsidian/plugins/memos-sync/data.json deleted file mode 100644 index 3271ae5..0000000 --- a/.obsidian/plugins/memos-sync/data.json +++ /dev/null @@ -1,7 +0,0 @@ -{ - "dailyMemosHeader": "Memos", - "memosAPIVersion": "v0.24.0", - "memosAPIURL": "https://memos.windy.me", - "memosAPIToken": "eyJhbGciOiJIUzI1NiIsImtpZCI6InYxIiwidHlwIjoiSldUIn0.eyJuYW1lIjoiemhpcWlhbmciLCJpc3MiOiJtZW1vcyIsInN1YiI6IjEiLCJhdWQiOlsidXNlci5hY2Nlc3MtdG9rZW4iXSwiaWF0IjoxNzY3NDA0MzY0fQ.SR4a3nn3myQUiPV3tJGLpKs_XgpFaOM_aK0i2CmNGoY", - "attachmentFolder": "Attachments" -} \ No newline at end of file diff --git a/.obsidian/plugins/memos-sync/main.js b/.obsidian/plugins/memos-sync/main.js deleted file mode 100644 index 720c09d..0000000 --- a/.obsidian/plugins/memos-sync/main.js +++ /dev/null @@ -1,23420 +0,0 @@ -/* -THIS IS A GENERATED/BUNDLED FILE BY ESBUILD -if you want to view the source, please visit the github repository of this plugin -*/ - -var __create = Object.create; -var __defProp = Object.defineProperty; -var __getOwnPropDesc = Object.getOwnPropertyDescriptor; -var __getOwnPropNames = Object.getOwnPropertyNames; -var __getProtoOf = Object.getPrototypeOf; -var __hasOwnProp = Object.prototype.hasOwnProperty; -var __esm = (fn, res) => function __init() { - return fn && (res = (0, fn[__getOwnPropNames(fn)[0]])(fn = 0)), res; -}; -var __commonJS = (cb, mod) => function __require() { - return mod || (0, cb[__getOwnPropNames(cb)[0]])((mod = { exports: {} }).exports, mod), mod.exports; -}; -var __export = (target, all) => { - for (var name in all) - __defProp(target, name, { get: all[name], enumerable: true }); -}; -var __copyProps = (to, from, except, desc) => { - if (from && typeof from === "object" || typeof from === "function") { - for (let key of __getOwnPropNames(from)) - if (!__hasOwnProp.call(to, key) && key !== except) - __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); - } - return to; -}; -var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps( - // If the importer is in node compatibility mode or this is not an ESM - // file that has been converted to a CommonJS file using a Babel- - // compatible transform (i.e. "__esModule" has not been set), then set - // "default" to the CommonJS "module.exports" for node compatibility. - isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target, - mod -)); -var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); - -// node_modules/obsidian-daily-notes-interface/dist/main.js -var require_main = __commonJS({ - "node_modules/obsidian-daily-notes-interface/dist/main.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - var obsidian = require("obsidian"); - var DEFAULT_DAILY_NOTE_FORMAT = "YYYY-MM-DD"; - var DEFAULT_WEEKLY_NOTE_FORMAT = "gggg-[W]ww"; - var DEFAULT_MONTHLY_NOTE_FORMAT = "YYYY-MM"; - var DEFAULT_QUARTERLY_NOTE_FORMAT = "YYYY-[Q]Q"; - var DEFAULT_YEARLY_NOTE_FORMAT = "YYYY"; - function shouldUsePeriodicNotesSettings(periodicity) { - var _a, _b; - const periodicNotes = window.app.plugins.getPlugin("periodic-notes"); - return periodicNotes && ((_b = (_a = periodicNotes.settings) == null ? void 0 : _a[periodicity]) == null ? void 0 : _b.enabled); - } - function getDailyNoteSettings() { - var _a, _b, _c, _d; - try { - const { internalPlugins, plugins } = window.app; - if (shouldUsePeriodicNotesSettings("daily")) { - const { format: format2, folder: folder2, template: template2 } = ((_b = (_a = plugins.getPlugin("periodic-notes")) == null ? void 0 : _a.settings) == null ? void 0 : _b.daily) || {}; - return { - format: format2 || DEFAULT_DAILY_NOTE_FORMAT, - folder: (folder2 == null ? void 0 : folder2.trim()) || "", - template: (template2 == null ? void 0 : template2.trim()) || "" - }; - } - const { folder, format, template } = ((_d = (_c = internalPlugins.getPluginById("daily-notes")) == null ? void 0 : _c.instance) == null ? void 0 : _d.options) || {}; - return { - format: format || DEFAULT_DAILY_NOTE_FORMAT, - folder: (folder == null ? void 0 : folder.trim()) || "", - template: (template == null ? void 0 : template.trim()) || "" - }; - } catch (err) { - console.info("No custom daily note settings found!", err); - } - } - function getWeeklyNoteSettings() { - var _a, _b, _c, _d, _e, _f, _g; - try { - const pluginManager = window.app.plugins; - const calendarSettings = (_a = pluginManager.getPlugin("calendar")) == null ? void 0 : _a.options; - const periodicNotesSettings = (_c = (_b = pluginManager.getPlugin("periodic-notes")) == null ? void 0 : _b.settings) == null ? void 0 : _c.weekly; - if (shouldUsePeriodicNotesSettings("weekly")) { - return { - format: periodicNotesSettings.format || DEFAULT_WEEKLY_NOTE_FORMAT, - folder: ((_d = periodicNotesSettings.folder) == null ? void 0 : _d.trim()) || "", - template: ((_e = periodicNotesSettings.template) == null ? void 0 : _e.trim()) || "" - }; - } - const settings = calendarSettings || {}; - return { - format: settings.weeklyNoteFormat || DEFAULT_WEEKLY_NOTE_FORMAT, - folder: ((_f = settings.weeklyNoteFolder) == null ? void 0 : _f.trim()) || "", - template: ((_g = settings.weeklyNoteTemplate) == null ? void 0 : _g.trim()) || "" - }; - } catch (err) { - console.info("No custom weekly note settings found!", err); - } - } - function getMonthlyNoteSettings() { - var _a, _b, _c, _d; - const pluginManager = window.app.plugins; - try { - const settings = shouldUsePeriodicNotesSettings("monthly") && ((_b = (_a = pluginManager.getPlugin("periodic-notes")) == null ? void 0 : _a.settings) == null ? void 0 : _b.monthly) || {}; - return { - format: settings.format || DEFAULT_MONTHLY_NOTE_FORMAT, - folder: ((_c = settings.folder) == null ? void 0 : _c.trim()) || "", - template: ((_d = settings.template) == null ? void 0 : _d.trim()) || "" - }; - } catch (err) { - console.info("No custom monthly note settings found!", err); - } - } - function getQuarterlyNoteSettings() { - var _a, _b, _c, _d; - const pluginManager = window.app.plugins; - try { - const settings = shouldUsePeriodicNotesSettings("quarterly") && ((_b = (_a = pluginManager.getPlugin("periodic-notes")) == null ? void 0 : _a.settings) == null ? void 0 : _b.quarterly) || {}; - return { - format: settings.format || DEFAULT_QUARTERLY_NOTE_FORMAT, - folder: ((_c = settings.folder) == null ? void 0 : _c.trim()) || "", - template: ((_d = settings.template) == null ? void 0 : _d.trim()) || "" - }; - } catch (err) { - console.info("No custom quarterly note settings found!", err); - } - } - function getYearlyNoteSettings() { - var _a, _b, _c, _d; - const pluginManager = window.app.plugins; - try { - const settings = shouldUsePeriodicNotesSettings("yearly") && ((_b = (_a = pluginManager.getPlugin("periodic-notes")) == null ? void 0 : _a.settings) == null ? void 0 : _b.yearly) || {}; - return { - format: settings.format || DEFAULT_YEARLY_NOTE_FORMAT, - folder: ((_c = settings.folder) == null ? void 0 : _c.trim()) || "", - template: ((_d = settings.template) == null ? void 0 : _d.trim()) || "" - }; - } catch (err) { - console.info("No custom yearly note settings found!", err); - } - } - function join(...partSegments) { - let parts = []; - for (let i = 0, l = partSegments.length; i < l; i++) { - parts = parts.concat(partSegments[i].split("/")); - } - const newParts = []; - for (let i = 0, l = parts.length; i < l; i++) { - const part = parts[i]; - if (!part || part === ".") - continue; - else - newParts.push(part); - } - if (parts[0] === "") - newParts.unshift(""); - return newParts.join("/"); - } - function basename(fullPath) { - let base = fullPath.substring(fullPath.lastIndexOf("/") + 1); - if (base.lastIndexOf(".") != -1) - base = base.substring(0, base.lastIndexOf(".")); - return base; - } - async function ensureFolderExists(path) { - const dirs = path.replace(/\\/g, "/").split("/"); - dirs.pop(); - if (dirs.length) { - const dir = join(...dirs); - if (!window.app.vault.getAbstractFileByPath(dir)) { - await window.app.vault.createFolder(dir); - } - } - } - async function getNotePath(directory, filename) { - if (!filename.endsWith(".md")) { - filename += ".md"; - } - const path = obsidian.normalizePath(join(directory, filename)); - await ensureFolderExists(path); - return path; - } - async function getTemplateInfo(template) { - const { metadataCache, vault } = window.app; - const templatePath = obsidian.normalizePath(template); - if (templatePath === "/") { - return Promise.resolve(["", null]); - } - try { - const templateFile = metadataCache.getFirstLinkpathDest(templatePath, ""); - const contents = await vault.cachedRead(templateFile); - const IFoldInfo = window.app.foldManager.load(templateFile); - return [contents, IFoldInfo]; - } catch (err) { - console.error(`Failed to read the daily note template '${templatePath}'`, err); - new obsidian.Notice("Failed to read the daily note template"); - return ["", null]; - } - } - function getDateUID(date, granularity = "day") { - const ts = date.clone().startOf(granularity).format(); - return `${granularity}-${ts}`; - } - function removeEscapedCharacters(format) { - return format.replace(/\[[^\]]*\]/g, ""); - } - function isFormatAmbiguous(format, granularity) { - if (granularity === "week") { - const cleanFormat = removeEscapedCharacters(format); - return /w{1,2}/i.test(cleanFormat) && (/M{1,4}/.test(cleanFormat) || /D{1,4}/.test(cleanFormat)); - } - return false; - } - function getDateFromFile2(file, granularity) { - return getDateFromFilename(file.basename, granularity); - } - function getDateFromPath(path, granularity) { - return getDateFromFilename(basename(path), granularity); - } - function getDateFromFilename(filename, granularity) { - const getSettings = { - day: getDailyNoteSettings, - week: getWeeklyNoteSettings, - month: getMonthlyNoteSettings, - quarter: getQuarterlyNoteSettings, - year: getYearlyNoteSettings - }; - const format = getSettings[granularity]().format.split("/").pop(); - const noteDate = window.moment(filename, format, true); - if (!noteDate.isValid()) { - return null; - } - if (isFormatAmbiguous(format, granularity)) { - if (granularity === "week") { - const cleanFormat = removeEscapedCharacters(format); - if (/w{1,2}/i.test(cleanFormat)) { - return window.moment( - filename, - // If format contains week, remove day & month formatting - format.replace(/M{1,4}/g, "").replace(/D{1,4}/g, ""), - false - ); - } - } - } - return noteDate; - } - var DailyNotesFolderMissingError = class extends Error { - }; - async function createDailyNote2(date) { - const app = window.app; - const { vault } = app; - const moment = window.moment; - const { template, format, folder } = getDailyNoteSettings(); - const [templateContents, IFoldInfo] = await getTemplateInfo(template); - const filename = date.format(format); - const normalizedPath = await getNotePath(folder, filename); - try { - const createdFile = await vault.create(normalizedPath, templateContents.replace(/{{\s*date\s*}}/gi, filename).replace(/{{\s*time\s*}}/gi, moment().format("HH:mm")).replace(/{{\s*title\s*}}/gi, filename).replace(/{{\s*(date|time)\s*(([+-]\d+)([yqmwdhs]))?\s*(:.+?)?}}/gi, (_, _timeOrDate, calc, timeDelta, unit, momentFormat) => { - const now = moment(); - const currentDate = date.clone().set({ - hour: now.get("hour"), - minute: now.get("minute"), - second: now.get("second") - }); - if (calc) { - currentDate.add(parseInt(timeDelta, 10), unit); - } - if (momentFormat) { - return currentDate.format(momentFormat.substring(1).trim()); - } - return currentDate.format(format); - }).replace(/{{\s*yesterday\s*}}/gi, date.clone().subtract(1, "day").format(format)).replace(/{{\s*tomorrow\s*}}/gi, date.clone().add(1, "d").format(format))); - app.foldManager.save(createdFile, IFoldInfo); - return createdFile; - } catch (err) { - console.error(`Failed to create file: '${normalizedPath}'`, err); - new obsidian.Notice("Unable to create new file."); - } - } - function getDailyNote2(date, dailyNotes) { - var _a; - return (_a = dailyNotes[getDateUID(date, "day")]) != null ? _a : null; - } - function getAllDailyNotes2() { - const { vault } = window.app; - const { folder } = getDailyNoteSettings(); - const dailyNotesFolder = vault.getAbstractFileByPath(obsidian.normalizePath(folder)); - if (!dailyNotesFolder) { - throw new DailyNotesFolderMissingError("Failed to find daily notes folder"); - } - const dailyNotes = {}; - obsidian.Vault.recurseChildren(dailyNotesFolder, (note) => { - if (note instanceof obsidian.TFile) { - const date = getDateFromFile2(note, "day"); - if (date) { - const dateString = getDateUID(date, "day"); - dailyNotes[dateString] = note; - } - } - }); - return dailyNotes; - } - var WeeklyNotesFolderMissingError = class extends Error { - }; - function getDaysOfWeek() { - const { moment } = window; - let weekStart = moment.localeData()._week.dow; - const daysOfWeek = [ - "sunday", - "monday", - "tuesday", - "wednesday", - "thursday", - "friday", - "saturday" - ]; - while (weekStart) { - daysOfWeek.push(daysOfWeek.shift()); - weekStart--; - } - return daysOfWeek; - } - function getDayOfWeekNumericalValue(dayOfWeekName) { - return getDaysOfWeek().indexOf(dayOfWeekName.toLowerCase()); - } - async function createWeeklyNote(date) { - const { vault } = window.app; - const { template, format, folder } = getWeeklyNoteSettings(); - const [templateContents, IFoldInfo] = await getTemplateInfo(template); - const filename = date.format(format); - const normalizedPath = await getNotePath(folder, filename); - try { - const createdFile = await vault.create(normalizedPath, templateContents.replace(/{{\s*(date|time)\s*(([+-]\d+)([yqmwdhs]))?\s*(:.+?)?}}/gi, (_, _timeOrDate, calc, timeDelta, unit, momentFormat) => { - const now = window.moment(); - const currentDate = date.clone().set({ - hour: now.get("hour"), - minute: now.get("minute"), - second: now.get("second") - }); - if (calc) { - currentDate.add(parseInt(timeDelta, 10), unit); - } - if (momentFormat) { - return currentDate.format(momentFormat.substring(1).trim()); - } - return currentDate.format(format); - }).replace(/{{\s*title\s*}}/gi, filename).replace(/{{\s*time\s*}}/gi, window.moment().format("HH:mm")).replace(/{{\s*(sunday|monday|tuesday|wednesday|thursday|friday|saturday)\s*:(.*?)}}/gi, (_, dayOfWeek, momentFormat) => { - const day = getDayOfWeekNumericalValue(dayOfWeek); - return date.weekday(day).format(momentFormat.trim()); - })); - window.app.foldManager.save(createdFile, IFoldInfo); - return createdFile; - } catch (err) { - console.error(`Failed to create file: '${normalizedPath}'`, err); - new obsidian.Notice("Unable to create new file."); - } - } - function getWeeklyNote(date, weeklyNotes) { - var _a; - return (_a = weeklyNotes[getDateUID(date, "week")]) != null ? _a : null; - } - function getAllWeeklyNotes() { - const weeklyNotes = {}; - if (!appHasWeeklyNotesPluginLoaded()) { - return weeklyNotes; - } - const { vault } = window.app; - const { folder } = getWeeklyNoteSettings(); - const weeklyNotesFolder = vault.getAbstractFileByPath(obsidian.normalizePath(folder)); - if (!weeklyNotesFolder) { - throw new WeeklyNotesFolderMissingError("Failed to find weekly notes folder"); - } - obsidian.Vault.recurseChildren(weeklyNotesFolder, (note) => { - if (note instanceof obsidian.TFile) { - const date = getDateFromFile2(note, "week"); - if (date) { - const dateString = getDateUID(date, "week"); - weeklyNotes[dateString] = note; - } - } - }); - return weeklyNotes; - } - var MonthlyNotesFolderMissingError = class extends Error { - }; - async function createMonthlyNote(date) { - const { vault } = window.app; - const { template, format, folder } = getMonthlyNoteSettings(); - const [templateContents, IFoldInfo] = await getTemplateInfo(template); - const filename = date.format(format); - const normalizedPath = await getNotePath(folder, filename); - try { - const createdFile = await vault.create(normalizedPath, templateContents.replace(/{{\s*(date|time)\s*(([+-]\d+)([yqmwdhs]))?\s*(:.+?)?}}/gi, (_, _timeOrDate, calc, timeDelta, unit, momentFormat) => { - const now = window.moment(); - const currentDate = date.clone().set({ - hour: now.get("hour"), - minute: now.get("minute"), - second: now.get("second") - }); - if (calc) { - currentDate.add(parseInt(timeDelta, 10), unit); - } - if (momentFormat) { - return currentDate.format(momentFormat.substring(1).trim()); - } - return currentDate.format(format); - }).replace(/{{\s*date\s*}}/gi, filename).replace(/{{\s*time\s*}}/gi, window.moment().format("HH:mm")).replace(/{{\s*title\s*}}/gi, filename)); - window.app.foldManager.save(createdFile, IFoldInfo); - return createdFile; - } catch (err) { - console.error(`Failed to create file: '${normalizedPath}'`, err); - new obsidian.Notice("Unable to create new file."); - } - } - function getMonthlyNote(date, monthlyNotes) { - var _a; - return (_a = monthlyNotes[getDateUID(date, "month")]) != null ? _a : null; - } - function getAllMonthlyNotes() { - const monthlyNotes = {}; - if (!appHasMonthlyNotesPluginLoaded()) { - return monthlyNotes; - } - const { vault } = window.app; - const { folder } = getMonthlyNoteSettings(); - const monthlyNotesFolder = vault.getAbstractFileByPath(obsidian.normalizePath(folder)); - if (!monthlyNotesFolder) { - throw new MonthlyNotesFolderMissingError("Failed to find monthly notes folder"); - } - obsidian.Vault.recurseChildren(monthlyNotesFolder, (note) => { - if (note instanceof obsidian.TFile) { - const date = getDateFromFile2(note, "month"); - if (date) { - const dateString = getDateUID(date, "month"); - monthlyNotes[dateString] = note; - } - } - }); - return monthlyNotes; - } - var QuarterlyNotesFolderMissingError = class extends Error { - }; - async function createQuarterlyNote(date) { - const { vault } = window.app; - const { template, format, folder } = getQuarterlyNoteSettings(); - const [templateContents, IFoldInfo] = await getTemplateInfo(template); - const filename = date.format(format); - const normalizedPath = await getNotePath(folder, filename); - try { - const createdFile = await vault.create(normalizedPath, templateContents.replace(/{{\s*(date|time)\s*(([+-]\d+)([yqmwdhs]))?\s*(:.+?)?}}/gi, (_, _timeOrDate, calc, timeDelta, unit, momentFormat) => { - const now = window.moment(); - const currentDate = date.clone().set({ - hour: now.get("hour"), - minute: now.get("minute"), - second: now.get("second") - }); - if (calc) { - currentDate.add(parseInt(timeDelta, 10), unit); - } - if (momentFormat) { - return currentDate.format(momentFormat.substring(1).trim()); - } - return currentDate.format(format); - }).replace(/{{\s*date\s*}}/gi, filename).replace(/{{\s*time\s*}}/gi, window.moment().format("HH:mm")).replace(/{{\s*title\s*}}/gi, filename)); - window.app.foldManager.save(createdFile, IFoldInfo); - return createdFile; - } catch (err) { - console.error(`Failed to create file: '${normalizedPath}'`, err); - new obsidian.Notice("Unable to create new file."); - } - } - function getQuarterlyNote(date, quarterly) { - var _a; - return (_a = quarterly[getDateUID(date, "quarter")]) != null ? _a : null; - } - function getAllQuarterlyNotes() { - const quarterly = {}; - if (!appHasQuarterlyNotesPluginLoaded()) { - return quarterly; - } - const { vault } = window.app; - const { folder } = getQuarterlyNoteSettings(); - const quarterlyFolder = vault.getAbstractFileByPath(obsidian.normalizePath(folder)); - if (!quarterlyFolder) { - throw new QuarterlyNotesFolderMissingError("Failed to find quarterly notes folder"); - } - obsidian.Vault.recurseChildren(quarterlyFolder, (note) => { - if (note instanceof obsidian.TFile) { - const date = getDateFromFile2(note, "quarter"); - if (date) { - const dateString = getDateUID(date, "quarter"); - quarterly[dateString] = note; - } - } - }); - return quarterly; - } - var YearlyNotesFolderMissingError = class extends Error { - }; - async function createYearlyNote(date) { - const { vault } = window.app; - const { template, format, folder } = getYearlyNoteSettings(); - const [templateContents, IFoldInfo] = await getTemplateInfo(template); - const filename = date.format(format); - const normalizedPath = await getNotePath(folder, filename); - try { - const createdFile = await vault.create(normalizedPath, templateContents.replace(/{{\s*(date|time)\s*(([+-]\d+)([yqmwdhs]))?\s*(:.+?)?}}/gi, (_, _timeOrDate, calc, timeDelta, unit, momentFormat) => { - const now = window.moment(); - const currentDate = date.clone().set({ - hour: now.get("hour"), - minute: now.get("minute"), - second: now.get("second") - }); - if (calc) { - currentDate.add(parseInt(timeDelta, 10), unit); - } - if (momentFormat) { - return currentDate.format(momentFormat.substring(1).trim()); - } - return currentDate.format(format); - }).replace(/{{\s*date\s*}}/gi, filename).replace(/{{\s*time\s*}}/gi, window.moment().format("HH:mm")).replace(/{{\s*title\s*}}/gi, filename)); - window.app.foldManager.save(createdFile, IFoldInfo); - return createdFile; - } catch (err) { - console.error(`Failed to create file: '${normalizedPath}'`, err); - new obsidian.Notice("Unable to create new file."); - } - } - function getYearlyNote(date, yearlyNotes) { - var _a; - return (_a = yearlyNotes[getDateUID(date, "year")]) != null ? _a : null; - } - function getAllYearlyNotes() { - const yearlyNotes = {}; - if (!appHasYearlyNotesPluginLoaded()) { - return yearlyNotes; - } - const { vault } = window.app; - const { folder } = getYearlyNoteSettings(); - const yearlyNotesFolder = vault.getAbstractFileByPath(obsidian.normalizePath(folder)); - if (!yearlyNotesFolder) { - throw new YearlyNotesFolderMissingError("Failed to find yearly notes folder"); - } - obsidian.Vault.recurseChildren(yearlyNotesFolder, (note) => { - if (note instanceof obsidian.TFile) { - const date = getDateFromFile2(note, "year"); - if (date) { - const dateString = getDateUID(date, "year"); - yearlyNotes[dateString] = note; - } - } - }); - return yearlyNotes; - } - function appHasDailyNotesPluginLoaded2() { - var _a, _b; - const { app } = window; - const dailyNotesPlugin = app.internalPlugins.plugins["daily-notes"]; - if (dailyNotesPlugin && dailyNotesPlugin.enabled) { - return true; - } - const periodicNotes = app.plugins.getPlugin("periodic-notes"); - return periodicNotes && ((_b = (_a = periodicNotes.settings) == null ? void 0 : _a.daily) == null ? void 0 : _b.enabled); - } - function appHasWeeklyNotesPluginLoaded() { - var _a, _b; - const { app } = window; - if (app.plugins.getPlugin("calendar")) { - return true; - } - const periodicNotes = app.plugins.getPlugin("periodic-notes"); - return periodicNotes && ((_b = (_a = periodicNotes.settings) == null ? void 0 : _a.weekly) == null ? void 0 : _b.enabled); - } - function appHasMonthlyNotesPluginLoaded() { - var _a, _b; - const { app } = window; - const periodicNotes = app.plugins.getPlugin("periodic-notes"); - return periodicNotes && ((_b = (_a = periodicNotes.settings) == null ? void 0 : _a.monthly) == null ? void 0 : _b.enabled); - } - function appHasQuarterlyNotesPluginLoaded() { - var _a, _b; - const { app } = window; - const periodicNotes = app.plugins.getPlugin("periodic-notes"); - return periodicNotes && ((_b = (_a = periodicNotes.settings) == null ? void 0 : _a.quarterly) == null ? void 0 : _b.enabled); - } - function appHasYearlyNotesPluginLoaded() { - var _a, _b; - const { app } = window; - const periodicNotes = app.plugins.getPlugin("periodic-notes"); - return periodicNotes && ((_b = (_a = periodicNotes.settings) == null ? void 0 : _a.yearly) == null ? void 0 : _b.enabled); - } - function getPeriodicNoteSettings(granularity) { - const getSettings = { - day: getDailyNoteSettings, - week: getWeeklyNoteSettings, - month: getMonthlyNoteSettings, - quarter: getQuarterlyNoteSettings, - year: getYearlyNoteSettings - }[granularity]; - return getSettings(); - } - function createPeriodicNote(granularity, date) { - const createFn = { - day: createDailyNote2, - month: createMonthlyNote, - week: createWeeklyNote - }; - return createFn[granularity](date); - } - exports.DEFAULT_DAILY_NOTE_FORMAT = DEFAULT_DAILY_NOTE_FORMAT; - exports.DEFAULT_MONTHLY_NOTE_FORMAT = DEFAULT_MONTHLY_NOTE_FORMAT; - exports.DEFAULT_QUARTERLY_NOTE_FORMAT = DEFAULT_QUARTERLY_NOTE_FORMAT; - exports.DEFAULT_WEEKLY_NOTE_FORMAT = DEFAULT_WEEKLY_NOTE_FORMAT; - exports.DEFAULT_YEARLY_NOTE_FORMAT = DEFAULT_YEARLY_NOTE_FORMAT; - exports.appHasDailyNotesPluginLoaded = appHasDailyNotesPluginLoaded2; - exports.appHasMonthlyNotesPluginLoaded = appHasMonthlyNotesPluginLoaded; - exports.appHasQuarterlyNotesPluginLoaded = appHasQuarterlyNotesPluginLoaded; - exports.appHasWeeklyNotesPluginLoaded = appHasWeeklyNotesPluginLoaded; - exports.appHasYearlyNotesPluginLoaded = appHasYearlyNotesPluginLoaded; - exports.createDailyNote = createDailyNote2; - exports.createMonthlyNote = createMonthlyNote; - exports.createPeriodicNote = createPeriodicNote; - exports.createQuarterlyNote = createQuarterlyNote; - exports.createWeeklyNote = createWeeklyNote; - exports.createYearlyNote = createYearlyNote; - exports.getAllDailyNotes = getAllDailyNotes2; - exports.getAllMonthlyNotes = getAllMonthlyNotes; - exports.getAllQuarterlyNotes = getAllQuarterlyNotes; - exports.getAllWeeklyNotes = getAllWeeklyNotes; - exports.getAllYearlyNotes = getAllYearlyNotes; - exports.getDailyNote = getDailyNote2; - exports.getDailyNoteSettings = getDailyNoteSettings; - exports.getDateFromFile = getDateFromFile2; - exports.getDateFromPath = getDateFromPath; - exports.getDateUID = getDateUID; - exports.getMonthlyNote = getMonthlyNote; - exports.getMonthlyNoteSettings = getMonthlyNoteSettings; - exports.getPeriodicNoteSettings = getPeriodicNoteSettings; - exports.getQuarterlyNote = getQuarterlyNote; - exports.getQuarterlyNoteSettings = getQuarterlyNoteSettings; - exports.getTemplateInfo = getTemplateInfo; - exports.getWeeklyNote = getWeeklyNote; - exports.getWeeklyNoteSettings = getWeeklyNoteSettings; - exports.getYearlyNote = getYearlyNote; - exports.getYearlyNoteSettings = getYearlyNoteSettings; - } -}); - -// node_modules/nice-grpc-common/lib/Metadata.js -var require_Metadata = __commonJS({ - "node_modules/nice-grpc-common/lib/Metadata.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.Metadata = void 0; - exports.Metadata = function Metadata2(init) { - const data = /* @__PURE__ */ new Map(); - const metadata = { - set(key, value) { - key = normalizeKey(key); - if (Array.isArray(value)) { - if (value.length === 0) { - data.delete(key); - } else { - for (const item of value) { - validate(key, item); - } - data.set(key, key.endsWith("-bin") ? value : [value.join(", ")]); - } - } else { - validate(key, value); - data.set(key, [value]); - } - return metadata; - }, - append(key, value) { - key = normalizeKey(key); - validate(key, value); - let values = data.get(key); - if (values == null) { - values = []; - data.set(key, values); - } - values.push(value); - if (!key.endsWith("-bin")) { - data.set(key, [values.join(", ")]); - } - return metadata; - }, - delete(key) { - key = normalizeKey(key); - data.delete(key); - }, - get(key) { - var _a; - key = normalizeKey(key); - return (_a = data.get(key)) === null || _a === void 0 ? void 0 : _a[0]; - }, - getAll(key) { - var _a; - key = normalizeKey(key); - return (_a = data.get(key)) !== null && _a !== void 0 ? _a : []; - }, - has(key) { - key = normalizeKey(key); - return data.has(key); - }, - [Symbol.iterator]() { - return data[Symbol.iterator](); - } - }; - if (init != null) { - const entries = isIterable(init) ? init : Object.entries(init); - for (const [key, value] of entries) { - metadata.set(key, value); - } - } - return metadata; - }; - function normalizeKey(key) { - return key.toLowerCase(); - } - function validate(key, value) { - if (!/^[0-9a-z_.-]+$/.test(key)) { - throw new Error(`Metadata key '${key}' contains illegal characters`); - } - if (key.endsWith("-bin")) { - if (!(value instanceof Uint8Array)) { - throw new Error(`Metadata key '${key}' ends with '-bin', thus it must have binary value`); - } - } else { - if (typeof value !== "string") { - throw new Error(`Metadata key '${key}' doesn't end with '-bin', thus it must have string value`); - } - if (!/^[ -~]*$/.test(value)) { - throw new Error(`Metadata value '${value}' of key '${key}' contains illegal characters`); - } - } - } - function isIterable(value) { - return Symbol.iterator in value; - } - } -}); - -// node_modules/nice-grpc-common/lib/Status.js -var require_Status = __commonJS({ - "node_modules/nice-grpc-common/lib/Status.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.Status = void 0; - var Status; - (function(Status2) { - Status2[Status2["OK"] = 0] = "OK"; - Status2[Status2["CANCELLED"] = 1] = "CANCELLED"; - Status2[Status2["UNKNOWN"] = 2] = "UNKNOWN"; - Status2[Status2["INVALID_ARGUMENT"] = 3] = "INVALID_ARGUMENT"; - Status2[Status2["DEADLINE_EXCEEDED"] = 4] = "DEADLINE_EXCEEDED"; - Status2[Status2["NOT_FOUND"] = 5] = "NOT_FOUND"; - Status2[Status2["ALREADY_EXISTS"] = 6] = "ALREADY_EXISTS"; - Status2[Status2["PERMISSION_DENIED"] = 7] = "PERMISSION_DENIED"; - Status2[Status2["RESOURCE_EXHAUSTED"] = 8] = "RESOURCE_EXHAUSTED"; - Status2[Status2["FAILED_PRECONDITION"] = 9] = "FAILED_PRECONDITION"; - Status2[Status2["ABORTED"] = 10] = "ABORTED"; - Status2[Status2["OUT_OF_RANGE"] = 11] = "OUT_OF_RANGE"; - Status2[Status2["UNIMPLEMENTED"] = 12] = "UNIMPLEMENTED"; - Status2[Status2["INTERNAL"] = 13] = "INTERNAL"; - Status2[Status2["UNAVAILABLE"] = 14] = "UNAVAILABLE"; - Status2[Status2["DATA_LOSS"] = 15] = "DATA_LOSS"; - Status2[Status2["UNAUTHENTICATED"] = 16] = "UNAUTHENTICATED"; - })(Status = exports.Status || (exports.Status = {})); - } -}); - -// node_modules/nice-grpc-common/lib/MethodDescriptor.js -var require_MethodDescriptor = __commonJS({ - "node_modules/nice-grpc-common/lib/MethodDescriptor.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - } -}); - -// node_modules/nice-grpc-common/lib/client/CallOptions.js -var require_CallOptions = __commonJS({ - "node_modules/nice-grpc-common/lib/client/CallOptions.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - } -}); - -// node_modules/nice-grpc-common/lib/client/ClientMiddleware.js -var require_ClientMiddleware = __commonJS({ - "node_modules/nice-grpc-common/lib/client/ClientMiddleware.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - } -}); - -// node_modules/nice-grpc-common/lib/client/composeClientMiddleware.js -var require_composeClientMiddleware = __commonJS({ - "node_modules/nice-grpc-common/lib/client/composeClientMiddleware.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.composeClientMiddleware = void 0; - function composeClientMiddleware(middleware1, middleware2) { - return (call, options) => { - return middleware2(Object.assign(Object.assign({}, call), { next: (request, options2) => { - return middleware1(Object.assign(Object.assign({}, call), { request }), options2); - } }), options); - }; - } - exports.composeClientMiddleware = composeClientMiddleware; - } -}); - -// node_modules/ts-error/lib/helpers.js -var require_helpers = __commonJS({ - "node_modules/ts-error/lib/helpers.js"(exports) { - "use strict"; - exports.__esModule = void 0; - exports.__esModule = true; - var objectSetPrototypeOfIsDefined = typeof Object.setPrototypeOf === "function"; - var objectGetPrototypeOfIsDefined = typeof Object.getPrototypeOf === "function"; - var objectDefinePropertyIsDefined = typeof Object.defineProperty === "function"; - var objectCreateIsDefined = typeof Object.create === "function"; - var objectHasOwnPropertyIsDefined = typeof Object.prototype.hasOwnProperty === "function"; - var setPrototypeOf = function setPrototypeOf2(target, prototype) { - if (objectSetPrototypeOfIsDefined) { - Object.setPrototypeOf(target, prototype); - } else { - target.__proto__ = prototype; - } - }; - exports.setPrototypeOf = setPrototypeOf; - var getPrototypeOf = function getPrototypeOf2(target) { - if (objectGetPrototypeOfIsDefined) { - return Object.getPrototypeOf(target); - } else { - return target.__proto__ || target.prototype; - } - }; - exports.getPrototypeOf = getPrototypeOf; - var ie8ObjectDefinePropertyBug = false; - var defineProperty = function defineProperty2(target, name, propertyDescriptor) { - if (objectDefinePropertyIsDefined && !ie8ObjectDefinePropertyBug) { - try { - Object.defineProperty(target, name, propertyDescriptor); - } catch (e) { - ie8ObjectDefinePropertyBug = true; - defineProperty2(target, name, propertyDescriptor); - } - } else { - target[name] = propertyDescriptor.value; - } - }; - exports.defineProperty = defineProperty; - var hasOwnProperty = function hasOwnProperty2(target, name) { - if (objectHasOwnPropertyIsDefined) { - return target.hasOwnProperty(target, name); - } else { - return target[name] === void 0; - } - }; - exports.hasOwnProperty = hasOwnProperty; - var objectCreate = function objectCreate2(prototype, propertyDescriptors) { - if (objectCreateIsDefined) { - return Object.create(prototype, propertyDescriptors); - } else { - var F = function F2() { - }; - F.prototype = prototype; - var result = new F(); - if (typeof propertyDescriptors === "undefined") { - return result; - } - if (typeof propertyDescriptors === "null") { - throw new Error("PropertyDescriptors must not be null."); - } - if (typeof propertyDescriptors === "object") { - for (var key in propertyDescriptors) { - if (hasOwnProperty(propertyDescriptors, key)) { - result[key] = propertyDescriptors[key].value; - } - } - } - return result; - } - }; - exports.objectCreate = objectCreate; - } -}); - -// node_modules/ts-error/lib/cjs.js -var require_cjs = __commonJS({ - "node_modules/ts-error/lib/cjs.js"(exports) { - "use strict"; - exports.__esModule = void 0; - exports.__esModule = true; - var helpers = require_helpers(); - var setPrototypeOf = helpers.setPrototypeOf; - var getPrototypeOf = helpers.getPrototypeOf; - var defineProperty = helpers.defineProperty; - var objectCreate = helpers.objectCreate; - var uglyErrorPrinting = new Error().toString() === "[object Error]"; - var extendableErrorName = ""; - function ExtendableError(message) { - var originalConstructor = this.constructor; - var constructorName = originalConstructor.name || function() { - var constructorNameMatch = originalConstructor.toString().match(/^function\s*([^\s(]+)/); - return constructorNameMatch === null ? extendableErrorName ? extendableErrorName : "Error" : constructorNameMatch[1]; - }(); - var constructorNameIsError = constructorName === "Error"; - var name = constructorNameIsError ? extendableErrorName : constructorName; - var instance = Error.apply(this, arguments); - setPrototypeOf(instance, getPrototypeOf(this)); - if (!(instance instanceof originalConstructor) || !(instance instanceof ExtendableError)) { - var instance = this; - Error.apply(this, arguments); - defineProperty(instance, "message", { - configurable: true, - enumerable: false, - value: message, - writable: true - }); - } - defineProperty(instance, "name", { - configurable: true, - enumerable: false, - value: name, - writable: true - }); - if (Error.captureStackTrace) { - Error.captureStackTrace( - instance, - constructorNameIsError ? ExtendableError : originalConstructor - ); - } - if (instance.stack === void 0) { - var err = new Error(message); - err.name = instance.name; - instance.stack = err.stack; - } - if (uglyErrorPrinting) { - defineProperty(instance, "toString", { - configurable: true, - enumerable: false, - value: function toString() { - return (this.name || "Error") + (typeof this.message === "undefined" ? "" : ": " + this.message); - }, - writable: true - }); - } - return instance; - } - extendableErrorName = ExtendableError.name || "ExtendableError"; - ExtendableError.prototype = objectCreate(Error.prototype, { - constructor: { - value: Error, - enumerable: false, - writable: true, - configurable: true - } - }); - exports.ExtendableError = ExtendableError; - exports["default"] = exports.ExtendableError; - } -}); - -// node_modules/nice-grpc-common/lib/client/ClientError.js -var require_ClientError = __commonJS({ - "node_modules/nice-grpc-common/lib/client/ClientError.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.ClientError = void 0; - var ts_error_1 = require_cjs(); - var Status_1 = require_Status(); - var ClientError = class extends ts_error_1.ExtendableError { - constructor(path, code, details) { - super(`${path} ${Status_1.Status[code]}: ${details}`); - this.path = path; - this.code = code; - this.details = details; - this.name = "ClientError"; - Object.defineProperty(this, "@@nice-grpc", { - value: true - }); - Object.defineProperty(this, "@@nice-grpc:ClientError", { - value: true - }); - } - static [Symbol.hasInstance](instance) { - if (this !== ClientError) { - return this.prototype.isPrototypeOf(instance); - } - return typeof instance === "object" && instance !== null && (instance.constructor === ClientError || instance["@@nice-grpc:ClientError"] === true || instance.name === "ClientError" && instance["@@nice-grpc"] === true); - } - }; - exports.ClientError = ClientError; - } -}); - -// node_modules/nice-grpc-common/lib/server/CallContext.js -var require_CallContext = __commonJS({ - "node_modules/nice-grpc-common/lib/server/CallContext.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - } -}); - -// node_modules/nice-grpc-common/lib/server/ServerMiddleware.js -var require_ServerMiddleware = __commonJS({ - "node_modules/nice-grpc-common/lib/server/ServerMiddleware.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - } -}); - -// node_modules/nice-grpc-common/lib/server/composeServerMiddleware.js -var require_composeServerMiddleware = __commonJS({ - "node_modules/nice-grpc-common/lib/server/composeServerMiddleware.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.composeServerMiddleware = void 0; - function composeServerMiddleware(middleware1, middleware2) { - return (call, context) => { - return middleware1(Object.assign(Object.assign({}, call), { next: (request, context1) => { - return middleware2(Object.assign(Object.assign({}, call), { request }), context1); - } }), context); - }; - } - exports.composeServerMiddleware = composeServerMiddleware; - } -}); - -// node_modules/nice-grpc-common/lib/server/ServerError.js -var require_ServerError = __commonJS({ - "node_modules/nice-grpc-common/lib/server/ServerError.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.ServerError = void 0; - var ts_error_1 = require_cjs(); - var Status_1 = require_Status(); - var ServerError = class extends ts_error_1.ExtendableError { - constructor(code, details) { - super(`${Status_1.Status[code]}: ${details}`); - this.code = code; - this.details = details; - this.name = "ServerError"; - Object.defineProperty(this, "@@nice-grpc", { - value: true - }); - Object.defineProperty(this, "@@nice-grpc:ServerError", { - value: true - }); - } - static [Symbol.hasInstance](instance) { - if (this !== ServerError) { - return this.prototype.isPrototypeOf(instance); - } - return typeof instance === "object" && instance !== null && (instance.constructor === ServerError || instance["@@nice-grpc:ServerError"] === true || instance.name === "ServerError" && instance["@@nice-grpc"] === true); - } - }; - exports.ServerError = ServerError; - } -}); - -// node_modules/nice-grpc-common/lib/index.js -var require_lib = __commonJS({ - "node_modules/nice-grpc-common/lib/index.js"(exports) { - "use strict"; - var __createBinding = exports && exports.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports && exports.__exportStar || function(m, exports2) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports2, p)) - __createBinding(exports2, m, p); - }; - Object.defineProperty(exports, "__esModule", { value: true }); - __exportStar(require_Metadata(), exports); - __exportStar(require_Status(), exports); - __exportStar(require_MethodDescriptor(), exports); - __exportStar(require_CallOptions(), exports); - __exportStar(require_ClientMiddleware(), exports); - __exportStar(require_composeClientMiddleware(), exports); - __exportStar(require_ClientError(), exports); - __exportStar(require_CallContext(), exports); - __exportStar(require_ServerMiddleware(), exports); - __exportStar(require_composeServerMiddleware(), exports); - __exportStar(require_ServerError(), exports); - } -}); - -// node_modules/nice-grpc-web/lib/service-definitions/grpc-web.js -var require_grpc_web = __commonJS({ - "node_modules/nice-grpc-web/lib/service-definitions/grpc-web.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.isGrpcWebServiceDefinition = exports.fromGrpcWebServiceDefinition = void 0; - function fromGrpcWebServiceDefinition(definition) { - const result = {}; - for (const [key, value] of Object.entries(definition)) { - if (key === "serviceName") { - continue; - } - const method = value; - result[uncapitalize(key)] = { - path: `/${definition.serviceName}/${key}`, - requestStream: method.requestStream, - responseStream: method.responseStream, - requestDeserialize: method.requestType.deserializeBinary, - requestSerialize: (value2) => value2.serializeBinary(), - responseDeserialize: method.responseType.deserializeBinary, - responseSerialize: (value2) => value2.serializeBinary(), - options: {} - }; - } - return result; - } - exports.fromGrpcWebServiceDefinition = fromGrpcWebServiceDefinition; - function isGrpcWebServiceDefinition(definition) { - return "prototype" in definition; - } - exports.isGrpcWebServiceDefinition = isGrpcWebServiceDefinition; - function uncapitalize(value) { - if (value.length === 0) { - return value; - } - return value[0].toLowerCase() + value.slice(1); - } - } -}); - -// node_modules/nice-grpc-web/lib/service-definitions/ts-proto.js -var require_ts_proto = __commonJS({ - "node_modules/nice-grpc-web/lib/service-definitions/ts-proto.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.isTsProtoServiceDefinition = exports.fromTsProtoServiceDefinition = void 0; - function fromTsProtoServiceDefinition(definition) { - const result = {}; - for (const [key, method] of Object.entries(definition.methods)) { - const requestEncode = method.requestType.encode; - const requestFromPartial = method.requestType.fromPartial; - const responseEncode = method.responseType.encode; - const responseFromPartial = method.responseType.fromPartial; - result[key] = { - path: `/${definition.fullName}/${method.name}`, - requestStream: method.requestStream, - responseStream: method.responseStream, - requestDeserialize: method.requestType.decode, - requestSerialize: requestFromPartial != null ? (value) => requestEncode(requestFromPartial(value)).finish() : (value) => requestEncode(value).finish(), - responseDeserialize: method.responseType.decode, - responseSerialize: responseFromPartial != null ? (value) => responseEncode(responseFromPartial(value)).finish() : (value) => responseEncode(value).finish(), - options: method.options - }; - } - return result; - } - exports.fromTsProtoServiceDefinition = fromTsProtoServiceDefinition; - function isTsProtoServiceDefinition(definition) { - return "name" in definition && "fullName" in definition && "methods" in definition; - } - exports.isTsProtoServiceDefinition = isTsProtoServiceDefinition; - } -}); - -// node_modules/nice-grpc-web/lib/service-definitions/index.js -var require_service_definitions = __commonJS({ - "node_modules/nice-grpc-web/lib/service-definitions/index.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.normalizeServiceDefinition = void 0; - var grpc_web_1 = require_grpc_web(); - var ts_proto_1 = require_ts_proto(); - function normalizeServiceDefinition(definition) { - if ((0, grpc_web_1.isGrpcWebServiceDefinition)(definition)) { - return (0, grpc_web_1.fromGrpcWebServiceDefinition)(definition); - } else if ((0, ts_proto_1.isTsProtoServiceDefinition)(definition)) { - return (0, ts_proto_1.fromTsProtoServiceDefinition)(definition); - } else { - return definition; - } - } - exports.normalizeServiceDefinition = normalizeServiceDefinition; - } -}); - -// node_modules/abort-controller-x/lib/AbortError.js -var require_AbortError = __commonJS({ - "node_modules/abort-controller-x/lib/AbortError.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.catchAbortError = exports.rethrowAbortError = exports.throwIfAborted = exports.isAbortError = exports.AbortError = void 0; - var AbortError = class extends Error { - constructor() { - super("The operation has been aborted"); - this.message = "The operation has been aborted"; - this.name = "AbortError"; - if (typeof Error.captureStackTrace === "function") { - Error.captureStackTrace(this, this.constructor); - } - } - }; - exports.AbortError = AbortError; - function isAbortError(error2) { - return typeof error2 === "object" && error2 !== null && error2.name === "AbortError"; - } - exports.isAbortError = isAbortError; - function throwIfAborted(signal) { - if (signal.aborted) { - throw new AbortError(); - } - } - exports.throwIfAborted = throwIfAborted; - function rethrowAbortError(error2) { - if (isAbortError(error2)) { - throw error2; - } - return; - } - exports.rethrowAbortError = rethrowAbortError; - function catchAbortError(error2) { - if (isAbortError(error2)) { - return; - } - throw error2; - } - exports.catchAbortError = catchAbortError; - } -}); - -// node_modules/abort-controller-x/lib/execute.js -var require_execute = __commonJS({ - "node_modules/abort-controller-x/lib/execute.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.execute = void 0; - var AbortError_1 = require_AbortError(); - function execute(signal, executor) { - return new Promise((resolve, reject) => { - if (signal.aborted) { - reject(new AbortError_1.AbortError()); - return; - } - let removeAbortListener; - let finished = false; - function finish() { - if (!finished) { - finished = true; - if (removeAbortListener != null) { - removeAbortListener(); - } - } - } - const callback = executor((value) => { - resolve(value); - finish(); - }, (reason) => { - reject(reason); - finish(); - }); - if (!finished) { - const listener = () => { - const callbackResult = callback(); - if (callbackResult == null) { - reject(new AbortError_1.AbortError()); - } else { - callbackResult.then(() => { - reject(new AbortError_1.AbortError()); - }, (reason) => { - reject(reason); - }); - } - finish(); - }; - signal.addEventListener("abort", listener); - removeAbortListener = () => { - signal.removeEventListener("abort", listener); - }; - } - }); - } - exports.execute = execute; - } -}); - -// node_modules/abort-controller-x/lib/abortable.js -var require_abortable = __commonJS({ - "node_modules/abort-controller-x/lib/abortable.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.abortable = void 0; - var execute_1 = require_execute(); - function abortable(signal, promise) { - if (signal.aborted) { - const noop = () => { - }; - promise.then(noop, noop); - } - return (0, execute_1.execute)(signal, (resolve, reject) => { - promise.then(resolve, reject); - return () => { - }; - }); - } - exports.abortable = abortable; - } -}); - -// node_modules/abort-controller-x/lib/delay.js -var require_delay = __commonJS({ - "node_modules/abort-controller-x/lib/delay.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.delay = void 0; - var execute_1 = require_execute(); - function delay(signal, dueTime) { - return (0, execute_1.execute)(signal, (resolve) => { - const ms = typeof dueTime === "number" ? dueTime : dueTime.getTime() - Date.now(); - const timer = setTimeout(resolve, ms); - return () => { - clearTimeout(timer); - }; - }); - } - exports.delay = delay; - } -}); - -// node_modules/abort-controller-x/lib/forever.js -var require_forever = __commonJS({ - "node_modules/abort-controller-x/lib/forever.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.forever = void 0; - var execute_1 = require_execute(); - function forever(signal) { - return (0, execute_1.execute)(signal, () => () => { - }); - } - exports.forever = forever; - } -}); - -// node_modules/abort-controller-x/lib/waitForEvent.js -var require_waitForEvent = __commonJS({ - "node_modules/abort-controller-x/lib/waitForEvent.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.waitForEvent = void 0; - var execute_1 = require_execute(); - function waitForEvent(signal, target, eventName, options) { - return (0, execute_1.execute)(signal, (resolve) => { - let unlisten; - let finished = false; - const handler = (...args) => { - resolve(args.length > 1 ? args : args[0]); - finished = true; - if (unlisten != null) { - unlisten(); - } - }; - unlisten = listen(target, eventName, handler, options); - if (finished) { - unlisten(); - } - return () => { - finished = true; - if (unlisten != null) { - unlisten(); - } - }; - }); - } - exports.waitForEvent = waitForEvent; - function listen(target, eventName, handler, options) { - if (isEventTarget(target)) { - target.addEventListener(eventName, handler, options); - return () => target.removeEventListener(eventName, handler, options); - } - if (isJQueryStyleEventEmitter(target)) { - target.on(eventName, handler); - return () => target.off(eventName, handler); - } - if (isNodeStyleEventEmitter(target)) { - target.addListener(eventName, handler); - return () => target.removeListener(eventName, handler); - } - throw new Error("Invalid event target"); - } - function isNodeStyleEventEmitter(sourceObj) { - return isFunction(sourceObj.addListener) && isFunction(sourceObj.removeListener); - } - function isJQueryStyleEventEmitter(sourceObj) { - return isFunction(sourceObj.on) && isFunction(sourceObj.off); - } - function isEventTarget(sourceObj) { - return isFunction(sourceObj.addEventListener) && isFunction(sourceObj.removeEventListener); - } - var isFunction = (obj) => typeof obj === "function"; - } -}); - -// node_modules/abort-controller-x/lib/all.js -var require_all = __commonJS({ - "node_modules/abort-controller-x/lib/all.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.all = void 0; - var AbortError_1 = require_AbortError(); - function all(signal, executor) { - return new Promise((resolve, reject) => { - if (signal.aborted) { - reject(new AbortError_1.AbortError()); - return; - } - const innerAbortController = new AbortController(); - const promises = executor(innerAbortController.signal); - if (promises.length === 0) { - resolve([]); - return; - } - const abortListener = () => { - innerAbortController.abort(); - }; - signal.addEventListener("abort", abortListener); - let rejection; - const results = new Array(promises.length); - let settledCount = 0; - function settled() { - settledCount += 1; - if (settledCount === promises.length) { - signal.removeEventListener("abort", abortListener); - if (rejection != null) { - reject(rejection.reason); - } else { - resolve(results); - } - } - } - for (const [i, promise] of promises.entries()) { - promise.then((value) => { - results[i] = value; - settled(); - }, (reason) => { - innerAbortController.abort(); - if (rejection == null || !(0, AbortError_1.isAbortError)(reason) && (0, AbortError_1.isAbortError)(rejection.reason)) { - rejection = { reason }; - } - settled(); - }); - } - }); - } - exports.all = all; - } -}); - -// node_modules/abort-controller-x/lib/race.js -var require_race = __commonJS({ - "node_modules/abort-controller-x/lib/race.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.race = void 0; - var AbortError_1 = require_AbortError(); - function race(signal, executor) { - return new Promise((resolve, reject) => { - if (signal.aborted) { - reject(new AbortError_1.AbortError()); - return; - } - const innerAbortController = new AbortController(); - const promises = executor(innerAbortController.signal); - const abortListener = () => { - innerAbortController.abort(); - }; - signal.addEventListener("abort", abortListener); - let settledCount = 0; - function settled(result2) { - innerAbortController.abort(); - settledCount += 1; - if (settledCount === promises.length) { - signal.removeEventListener("abort", abortListener); - if (result2.status === "fulfilled") { - resolve(result2.value); - } else { - reject(result2.reason); - } - } - } - let result; - for (const promise of promises) { - promise.then((value) => { - if (result == null) { - result = { status: "fulfilled", value }; - } - settled(result); - }, (reason) => { - if (result == null || !(0, AbortError_1.isAbortError)(reason) && (result.status === "fulfilled" || (0, AbortError_1.isAbortError)(result.reason))) { - result = { status: "rejected", reason }; - } - settled(result); - }); - } - }); - } - exports.race = race; - } -}); - -// node_modules/abort-controller-x/lib/retry.js -var require_retry = __commonJS({ - "node_modules/abort-controller-x/lib/retry.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.retry = void 0; - var delay_1 = require_delay(); - var AbortError_1 = require_AbortError(); - async function retry(signal, fn, options = {}) { - const { baseMs = 1e3, maxDelayMs = 3e4, onError, maxAttempts = Infinity } = options; - let attempt = 0; - const reset = () => { - attempt = -1; - }; - while (true) { - try { - return await fn(signal, attempt, reset); - } catch (error2) { - (0, AbortError_1.rethrowAbortError)(error2); - if (attempt >= maxAttempts) { - throw error2; - } - let delayMs; - if (attempt === -1) { - delayMs = 0; - } else { - const backoff = Math.min(maxDelayMs, Math.pow(2, attempt) * baseMs); - delayMs = Math.round(backoff * (1 + Math.random()) / 2); - } - if (onError) { - onError(error2, attempt, delayMs); - } - if (delayMs !== 0) { - await (0, delay_1.delay)(signal, delayMs); - } - attempt += 1; - } - } - } - exports.retry = retry; - } -}); - -// node_modules/abort-controller-x/lib/spawn.js -var require_spawn = __commonJS({ - "node_modules/abort-controller-x/lib/spawn.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.spawn = void 0; - var AbortError_1 = require_AbortError(); - function spawn(signal, fn) { - if (signal.aborted) { - return Promise.reject(new AbortError_1.AbortError()); - } - const deferredFunctions = []; - const spawnAbortController = new AbortController(); - const spawnSignal = spawnAbortController.signal; - const abortSpawn = () => { - spawnAbortController.abort(); - }; - signal.addEventListener("abort", abortSpawn); - const removeAbortListener = () => { - signal.removeEventListener("abort", abortSpawn); - }; - const tasks = /* @__PURE__ */ new Set(); - const abortTasks = () => { - for (const task of tasks) { - task.abort(); - } - }; - spawnSignal.addEventListener("abort", abortTasks); - const removeSpawnAbortListener = () => { - spawnSignal.removeEventListener("abort", abortTasks); - }; - let promise = new Promise((resolve, reject) => { - let result; - let failure; - fork((signal2) => fn(signal2, { - defer(fn2) { - deferredFunctions.push(fn2); - }, - fork - })).join().then((value) => { - spawnAbortController.abort(); - result = { value }; - }, (error2) => { - spawnAbortController.abort(); - if (!(0, AbortError_1.isAbortError)(error2) || failure == null) { - failure = { error: error2 }; - } - }); - function fork(forkFn) { - if (spawnSignal.aborted) { - return { - abort() { - }, - async join() { - throw new AbortError_1.AbortError(); - } - }; - } - const taskAbortController = new AbortController(); - const taskSignal = taskAbortController.signal; - const taskPromise = forkFn(taskSignal); - const task = { - abort() { - taskAbortController.abort(); - }, - join: () => taskPromise - }; - tasks.add(task); - taskPromise.catch(AbortError_1.catchAbortError).catch((error2) => { - failure = { error: error2 }; - spawnAbortController.abort(); - }).finally(() => { - tasks.delete(task); - if (tasks.size === 0) { - if (failure != null) { - reject(failure.error); - } else { - resolve(result.value); - } - } - }); - return task; - } - }); - promise = promise.finally(() => { - removeAbortListener(); - removeSpawnAbortListener(); - let deferPromise = Promise.resolve(); - for (let i = deferredFunctions.length - 1; i >= 0; i--) { - deferPromise = deferPromise.finally(deferredFunctions[i]); - } - return deferPromise; - }); - return promise; - } - exports.spawn = spawn; - } -}); - -// node_modules/abort-controller-x/lib/run.js -var require_run = __commonJS({ - "node_modules/abort-controller-x/lib/run.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.run = void 0; - var AbortError_1 = require_AbortError(); - function run(fn) { - const abortController = new AbortController(); - const promise = fn(abortController.signal).catch(AbortError_1.catchAbortError); - return () => { - abortController.abort(); - return promise; - }; - } - exports.run = run; - } -}); - -// node_modules/abort-controller-x/lib/proactiveRetry.js -var require_proactiveRetry = __commonJS({ - "node_modules/abort-controller-x/lib/proactiveRetry.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.proactiveRetry = void 0; - var AbortError_1 = require_AbortError(); - var delay_1 = require_delay(); - var execute_1 = require_execute(); - function proactiveRetry(signal, fn, options = {}) { - const { baseMs = 1e3, onError, maxAttempts = Infinity } = options; - return (0, execute_1.execute)(signal, (resolve, reject) => { - const innerAbortController = new AbortController(); - let attemptsExhausted = false; - const promises = /* @__PURE__ */ new Map(); - function handleFulfilled(value) { - innerAbortController.abort(); - promises.clear(); - resolve(value); - } - function handleRejected(err, attempt) { - promises.delete(attempt); - if (attemptsExhausted && promises.size === 0) { - reject(err); - return; - } - if ((0, AbortError_1.isAbortError)(err)) { - return; - } - if (onError) { - try { - onError(err, attempt); - } catch (err2) { - innerAbortController.abort(); - promises.clear(); - reject(err2); - } - } - } - async function makeAttempts(signal2) { - for (let attempt = 0; ; attempt++) { - const promise = fn(signal2, attempt); - promises.set(attempt, promise); - promise.then(handleFulfilled, (err) => handleRejected(err, attempt)); - if (attempt + 1 >= maxAttempts) { - break; - } - const backoff = Math.pow(2, attempt) * baseMs; - const delayMs = Math.round(backoff * (1 + Math.random()) / 2); - await (0, delay_1.delay)(signal2, delayMs); - } - attemptsExhausted = true; - } - makeAttempts(innerAbortController.signal).catch(AbortError_1.catchAbortError); - return () => { - innerAbortController.abort(); - }; - }); - } - exports.proactiveRetry = proactiveRetry; - } -}); - -// node_modules/abort-controller-x/lib/index.js -var require_lib2 = __commonJS({ - "node_modules/abort-controller-x/lib/index.js"(exports) { - "use strict"; - var __createBinding = exports && exports.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports && exports.__exportStar || function(m, exports2) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports2, p)) - __createBinding(exports2, m, p); - }; - Object.defineProperty(exports, "__esModule", { value: true }); - __exportStar(require_abortable(), exports); - __exportStar(require_AbortError(), exports); - __exportStar(require_delay(), exports); - __exportStar(require_execute(), exports); - __exportStar(require_forever(), exports); - __exportStar(require_waitForEvent(), exports); - __exportStar(require_all(), exports); - __exportStar(require_race(), exports); - __exportStar(require_retry(), exports); - __exportStar(require_spawn(), exports); - __exportStar(require_run(), exports); - __exportStar(require_proactiveRetry(), exports); - } -}); - -// node_modules/js-base64/base64.js -var require_base64 = __commonJS({ - "node_modules/js-base64/base64.js"(exports, module2) { - (function(global2, factory) { - typeof exports === "object" && typeof module2 !== "undefined" ? module2.exports = factory() : typeof define === "function" && define.amd ? define(factory) : ( - // cf. https://github.com/dankogai/js-base64/issues/119 - function() { - var _Base64 = global2.Base64; - var gBase64 = factory(); - gBase64.noConflict = function() { - global2.Base64 = _Base64; - return gBase64; - }; - if (global2.Meteor) { - Base64 = gBase64; - } - global2.Base64 = gBase64; - }() - ); - })(typeof self !== "undefined" ? self : typeof window !== "undefined" ? window : typeof global !== "undefined" ? global : exports, function() { - "use strict"; - var version = "3.7.7"; - var VERSION = version; - var _hasBuffer = typeof Buffer === "function"; - var _TD = typeof TextDecoder === "function" ? new TextDecoder() : void 0; - var _TE = typeof TextEncoder === "function" ? new TextEncoder() : void 0; - var b64ch = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="; - var b64chs = Array.prototype.slice.call(b64ch); - var b64tab = function(a) { - var tab = {}; - a.forEach(function(c, i) { - return tab[c] = i; - }); - return tab; - }(b64chs); - var b64re = /^(?:[A-Za-z\d+\/]{4})*?(?:[A-Za-z\d+\/]{2}(?:==)?|[A-Za-z\d+\/]{3}=?)?$/; - var _fromCC = String.fromCharCode.bind(String); - var _U8Afrom = typeof Uint8Array.from === "function" ? Uint8Array.from.bind(Uint8Array) : function(it) { - return new Uint8Array(Array.prototype.slice.call(it, 0)); - }; - var _mkUriSafe = function(src) { - return src.replace(/=/g, "").replace(/[+\/]/g, function(m0) { - return m0 == "+" ? "-" : "_"; - }); - }; - var _tidyB64 = function(s) { - return s.replace(/[^A-Za-z0-9\+\/]/g, ""); - }; - var btoaPolyfill = function(bin) { - var u32, c0, c1, c2, asc = ""; - var pad = bin.length % 3; - for (var i = 0; i < bin.length; ) { - if ((c0 = bin.charCodeAt(i++)) > 255 || (c1 = bin.charCodeAt(i++)) > 255 || (c2 = bin.charCodeAt(i++)) > 255) - throw new TypeError("invalid character found"); - u32 = c0 << 16 | c1 << 8 | c2; - asc += b64chs[u32 >> 18 & 63] + b64chs[u32 >> 12 & 63] + b64chs[u32 >> 6 & 63] + b64chs[u32 & 63]; - } - return pad ? asc.slice(0, pad - 3) + "===".substring(pad) : asc; - }; - var _btoa = typeof btoa === "function" ? function(bin) { - return btoa(bin); - } : _hasBuffer ? function(bin) { - return Buffer.from(bin, "binary").toString("base64"); - } : btoaPolyfill; - var _fromUint8Array = _hasBuffer ? function(u8a) { - return Buffer.from(u8a).toString("base64"); - } : function(u8a) { - var maxargs = 4096; - var strs = []; - for (var i = 0, l = u8a.length; i < l; i += maxargs) { - strs.push(_fromCC.apply(null, u8a.subarray(i, i + maxargs))); - } - return _btoa(strs.join("")); - }; - var fromUint8Array = function(u8a, urlsafe) { - if (urlsafe === void 0) { - urlsafe = false; - } - return urlsafe ? _mkUriSafe(_fromUint8Array(u8a)) : _fromUint8Array(u8a); - }; - var cb_utob = function(c) { - if (c.length < 2) { - var cc = c.charCodeAt(0); - return cc < 128 ? c : cc < 2048 ? _fromCC(192 | cc >>> 6) + _fromCC(128 | cc & 63) : _fromCC(224 | cc >>> 12 & 15) + _fromCC(128 | cc >>> 6 & 63) + _fromCC(128 | cc & 63); - } else { - var cc = 65536 + (c.charCodeAt(0) - 55296) * 1024 + (c.charCodeAt(1) - 56320); - return _fromCC(240 | cc >>> 18 & 7) + _fromCC(128 | cc >>> 12 & 63) + _fromCC(128 | cc >>> 6 & 63) + _fromCC(128 | cc & 63); - } - }; - var re_utob = /[\uD800-\uDBFF][\uDC00-\uDFFFF]|[^\x00-\x7F]/g; - var utob = function(u) { - return u.replace(re_utob, cb_utob); - }; - var _encode = _hasBuffer ? function(s) { - return Buffer.from(s, "utf8").toString("base64"); - } : _TE ? function(s) { - return _fromUint8Array(_TE.encode(s)); - } : function(s) { - return _btoa(utob(s)); - }; - var encode = function(src, urlsafe) { - if (urlsafe === void 0) { - urlsafe = false; - } - return urlsafe ? _mkUriSafe(_encode(src)) : _encode(src); - }; - var encodeURI = function(src) { - return encode(src, true); - }; - var re_btou = /[\xC0-\xDF][\x80-\xBF]|[\xE0-\xEF][\x80-\xBF]{2}|[\xF0-\xF7][\x80-\xBF]{3}/g; - var cb_btou = function(cccc) { - switch (cccc.length) { - case 4: - var cp = (7 & cccc.charCodeAt(0)) << 18 | (63 & cccc.charCodeAt(1)) << 12 | (63 & cccc.charCodeAt(2)) << 6 | 63 & cccc.charCodeAt(3), offset = cp - 65536; - return _fromCC((offset >>> 10) + 55296) + _fromCC((offset & 1023) + 56320); - case 3: - return _fromCC((15 & cccc.charCodeAt(0)) << 12 | (63 & cccc.charCodeAt(1)) << 6 | 63 & cccc.charCodeAt(2)); - default: - return _fromCC((31 & cccc.charCodeAt(0)) << 6 | 63 & cccc.charCodeAt(1)); - } - }; - var btou = function(b) { - return b.replace(re_btou, cb_btou); - }; - var atobPolyfill = function(asc) { - asc = asc.replace(/\s+/g, ""); - if (!b64re.test(asc)) - throw new TypeError("malformed base64."); - asc += "==".slice(2 - (asc.length & 3)); - var u24, bin = "", r1, r2; - for (var i = 0; i < asc.length; ) { - u24 = b64tab[asc.charAt(i++)] << 18 | b64tab[asc.charAt(i++)] << 12 | (r1 = b64tab[asc.charAt(i++)]) << 6 | (r2 = b64tab[asc.charAt(i++)]); - bin += r1 === 64 ? _fromCC(u24 >> 16 & 255) : r2 === 64 ? _fromCC(u24 >> 16 & 255, u24 >> 8 & 255) : _fromCC(u24 >> 16 & 255, u24 >> 8 & 255, u24 & 255); - } - return bin; - }; - var _atob = typeof atob === "function" ? function(asc) { - return atob(_tidyB64(asc)); - } : _hasBuffer ? function(asc) { - return Buffer.from(asc, "base64").toString("binary"); - } : atobPolyfill; - var _toUint8Array = _hasBuffer ? function(a) { - return _U8Afrom(Buffer.from(a, "base64")); - } : function(a) { - return _U8Afrom(_atob(a).split("").map(function(c) { - return c.charCodeAt(0); - })); - }; - var toUint8Array = function(a) { - return _toUint8Array(_unURI(a)); - }; - var _decode = _hasBuffer ? function(a) { - return Buffer.from(a, "base64").toString("utf8"); - } : _TD ? function(a) { - return _TD.decode(_toUint8Array(a)); - } : function(a) { - return btou(_atob(a)); - }; - var _unURI = function(a) { - return _tidyB64(a.replace(/[-_]/g, function(m0) { - return m0 == "-" ? "+" : "/"; - })); - }; - var decode = function(src) { - return _decode(_unURI(src)); - }; - var isValid = function(src) { - if (typeof src !== "string") - return false; - var s = src.replace(/\s+/g, "").replace(/={0,2}$/, ""); - return !/[^\s0-9a-zA-Z\+/]/.test(s) || !/[^\s0-9a-zA-Z\-_]/.test(s); - }; - var _noEnum = function(v) { - return { - value: v, - enumerable: false, - writable: true, - configurable: true - }; - }; - var extendString = function() { - var _add = function(name, body) { - return Object.defineProperty(String.prototype, name, _noEnum(body)); - }; - _add("fromBase64", function() { - return decode(this); - }); - _add("toBase64", function(urlsafe) { - return encode(this, urlsafe); - }); - _add("toBase64URI", function() { - return encode(this, true); - }); - _add("toBase64URL", function() { - return encode(this, true); - }); - _add("toUint8Array", function() { - return toUint8Array(this); - }); - }; - var extendUint8Array = function() { - var _add = function(name, body) { - return Object.defineProperty(Uint8Array.prototype, name, _noEnum(body)); - }; - _add("toBase64", function(urlsafe) { - return fromUint8Array(this, urlsafe); - }); - _add("toBase64URI", function() { - return fromUint8Array(this, true); - }); - _add("toBase64URL", function() { - return fromUint8Array(this, true); - }); - }; - var extendBuiltins = function() { - extendString(); - extendUint8Array(); - }; - var gBase64 = { - version, - VERSION, - atob: _atob, - atobPolyfill, - btoa: _btoa, - btoaPolyfill, - fromBase64: decode, - toBase64: encode, - encode, - encodeURI, - encodeURL: encodeURI, - utob, - btou, - decode, - isValid, - fromUint8Array, - toUint8Array, - extendString, - extendUint8Array, - extendBuiltins - }; - gBase64.Base64 = {}; - Object.keys(gBase64).forEach(function(k) { - return gBase64.Base64[k] = gBase64[k]; - }); - return gBase64; - }); - } -}); - -// node_modules/nice-grpc-web/lib/client/transports/fetch.js -var require_fetch = __commonJS({ - "node_modules/nice-grpc-web/lib/client/transports/fetch.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.FetchTransport = void 0; - var abort_controller_x_1 = require_lib2(); - var js_base64_1 = require_base64(); - var nice_grpc_common_1 = require_lib(); - function FetchTransport3(config) { - return async function* fetchTransport({ url, body, metadata, signal, method }) { - let requestBody; - if (!method.requestStream) { - let bodyBuffer; - for await (const chunk of body) { - bodyBuffer = chunk; - break; - } - requestBody = bodyBuffer; - } else { - let iterator; - requestBody = new ReadableStream({ - type: "bytes", - start() { - iterator = body[Symbol.asyncIterator](); - }, - async pull(controller) { - const { done, value } = await iterator.next(); - if (done) { - controller.close(); - } else { - controller.enqueue(value); - } - }, - async cancel() { - var _a, _b; - await ((_b = (_a = iterator).return) === null || _b === void 0 ? void 0 : _b.call(_a)); - } - }); - } - const response = await fetch(url, { - method: "POST", - body: requestBody, - headers: metadataToHeaders(metadata), - signal, - cache: config === null || config === void 0 ? void 0 : config.cache, - ["duplex"]: "half", - credentials: config === null || config === void 0 ? void 0 : config.credentials - }); - yield { - type: "header", - header: headersToMetadata(response.headers) - }; - if (!response.ok) { - const responseText = await response.text(); - throw new nice_grpc_common_1.ClientError(method.path, getStatusFromHttpCode(response.status), getErrorDetailsFromHttpResponse(response.status, responseText)); - } - (0, abort_controller_x_1.throwIfAborted)(signal); - const reader = response.body.getReader(); - const abortListener = () => { - reader.cancel().catch(() => { - }); - }; - signal.addEventListener("abort", abortListener); - try { - while (true) { - const { done, value } = await reader.read(); - if (value != null) { - yield { - type: "data", - data: value - }; - } - if (done) { - break; - } - } - } finally { - signal.removeEventListener("abort", abortListener); - (0, abort_controller_x_1.throwIfAborted)(signal); - } - }; - } - exports.FetchTransport = FetchTransport3; - function metadataToHeaders(metadata) { - const headers = new Headers(); - for (const [key, values] of metadata) { - for (const value of values) { - headers.append(key, typeof value === "string" ? value : js_base64_1.Base64.fromUint8Array(value)); - } - } - return headers; - } - function headersToMetadata(headers) { - const metadata = new nice_grpc_common_1.Metadata(); - for (const [key, value] of headers) { - if (key.endsWith("-bin")) { - for (const item of value.split(/,\s?/)) { - metadata.append(key, js_base64_1.Base64.toUint8Array(item)); - } - } else { - metadata.set(key, value); - } - } - return metadata; - } - function getStatusFromHttpCode(statusCode) { - switch (statusCode) { - case 400: - return nice_grpc_common_1.Status.INTERNAL; - case 401: - return nice_grpc_common_1.Status.UNAUTHENTICATED; - case 403: - return nice_grpc_common_1.Status.PERMISSION_DENIED; - case 404: - return nice_grpc_common_1.Status.UNIMPLEMENTED; - case 429: - case 502: - case 503: - case 504: - return nice_grpc_common_1.Status.UNAVAILABLE; - default: - return nice_grpc_common_1.Status.UNKNOWN; - } - } - function getErrorDetailsFromHttpResponse(statusCode, responseText) { - return `Received HTTP ${statusCode} response: ` + (responseText.length > 1e3 ? responseText.slice(0, 1e3) + "... (truncated)" : responseText); - } - } -}); - -// node_modules/nice-grpc-web/lib/client/channel.js -var require_channel = __commonJS({ - "node_modules/nice-grpc-web/lib/client/channel.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.createChannel = void 0; - var fetch_1 = require_fetch(); - function createChannel3(address, transport = (0, fetch_1.FetchTransport)()) { - return { address, transport }; - } - exports.createChannel = createChannel3; - } -}); - -// node_modules/nice-grpc-web/lib/utils/isAsyncIterable.js -var require_isAsyncIterable = __commonJS({ - "node_modules/nice-grpc-web/lib/utils/isAsyncIterable.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.isAsyncIterable = void 0; - function isAsyncIterable(value) { - return value != null && Symbol.asyncIterator in value; - } - exports.isAsyncIterable = isAsyncIterable; - } -}); - -// node_modules/nice-grpc-web/lib/utils/concatBuffers.js -var require_concatBuffers = __commonJS({ - "node_modules/nice-grpc-web/lib/utils/concatBuffers.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.concatBuffers = void 0; - function concatBuffers(buffers, totalLength) { - if (buffers.length === 1) { - return buffers[0]; - } - const result = new Uint8Array(totalLength); - let offset = 0; - for (const buffer of buffers) { - result.set(buffer, offset); - offset += buffer.length; - } - return result; - } - exports.concatBuffers = concatBuffers; - } -}); - -// node_modules/nice-grpc-web/lib/client/decodeMetadata.js -var require_decodeMetadata = __commonJS({ - "node_modules/nice-grpc-web/lib/client/decodeMetadata.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.decodeMetadata = void 0; - var nice_grpc_common_1 = require_lib(); - var js_base64_1 = require_base64(); - function decodeMetadata(data) { - const metadata = (0, nice_grpc_common_1.Metadata)(); - const text = new TextDecoder().decode(data); - for (const line of text.split("\r\n")) { - if (!line) { - continue; - } - const splitIndex = line.indexOf(":"); - if (splitIndex === -1) { - throw new Error(`Invalid metadata line: ${line}`); - } - const key = line.slice(0, splitIndex).trim().toLowerCase(); - const value = line.slice(splitIndex + 1).trim(); - if (key.endsWith("-bin")) { - for (const item of value.split(/,\s?/)) { - metadata.append(key, js_base64_1.Base64.toUint8Array(item)); - } - } else { - metadata.append(key, value); - } - } - return metadata; - } - exports.decodeMetadata = decodeMetadata; - } -}); - -// node_modules/nice-grpc-web/lib/client/framing.js -var require_framing = __commonJS({ - "node_modules/nice-grpc-web/lib/client/framing.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.encodeFrame = exports.parseLpmHeader = exports.LPM_HEADER_LENGTH = void 0; - exports.LPM_HEADER_LENGTH = 5; - function parseLpmHeader(data) { - if (data.length !== exports.LPM_HEADER_LENGTH) { - throw new Error(`Invalid LPM header length: ${data.length}`); - } - const view = new DataView(data.buffer, data.byteOffset, data.byteLength); - const compressed = (view.getUint8(0) & 1) !== 0; - const isMetadata = (view.getUint8(0) & 128) !== 0; - const length = view.getUint32(1); - return { - compressed, - isMetadata, - length - }; - } - exports.parseLpmHeader = parseLpmHeader; - function encodeFrame(data) { - const messageBytes = new Uint8Array(exports.LPM_HEADER_LENGTH + data.length); - new DataView(messageBytes.buffer, 1, 4).setUint32(0, data.length, false); - messageBytes.set(data, exports.LPM_HEADER_LENGTH); - return messageBytes; - } - exports.encodeFrame = encodeFrame; - } -}); - -// node_modules/nice-grpc-web/lib/client/decodeResponse.js -var require_decodeResponse = __commonJS({ - "node_modules/nice-grpc-web/lib/client/decodeResponse.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.decodeResponse = void 0; - var concatBuffers_1 = require_concatBuffers(); - var decodeMetadata_1 = require_decodeMetadata(); - var framing_1 = require_framing(); - async function* decodeResponse({ response, decode, onHeader, onTrailer }) { - let receivedHeader = false; - let receivedTrailer = false; - let receivedData = false; - let buffer = createChunkBuffer(framing_1.LPM_HEADER_LENGTH); - let lpmHeader; - for await (const frame of response) { - if (frame.type === "header") { - handleHeader(frame.header); - } else if (frame.type === "trailer") { - handleTrailer(frame.trailer); - } else if (frame.type === "data") { - if (receivedTrailer) { - throw new Error("Received data after trailer"); - } - let { data } = frame; - while (data.length > 0 || (lpmHeader === null || lpmHeader === void 0 ? void 0 : lpmHeader.length) === 0) { - const position = Math.min(data.length, buffer.targetLength - buffer.totalLength); - const chunk = data.subarray(0, position); - data = data.subarray(position); - buffer.chunks.push(chunk); - buffer.totalLength += chunk.length; - if (buffer.totalLength === buffer.targetLength) { - const messageBytes = (0, concatBuffers_1.concatBuffers)(buffer.chunks, buffer.totalLength); - if (lpmHeader == null) { - lpmHeader = (0, framing_1.parseLpmHeader)(messageBytes); - buffer = createChunkBuffer(lpmHeader.length); - } else { - if (lpmHeader.compressed) { - throw new Error("Compressed messages not supported"); - } - if (lpmHeader.isMetadata) { - if (!receivedHeader) { - handleHeader((0, decodeMetadata_1.decodeMetadata)(messageBytes)); - } else { - handleTrailer((0, decodeMetadata_1.decodeMetadata)(messageBytes)); - } - } else { - if (!receivedHeader) { - throw new Error("Received data before header"); - } - yield decode(messageBytes); - receivedData = true; - } - lpmHeader = void 0; - buffer = createChunkBuffer(framing_1.LPM_HEADER_LENGTH); - } - } - } - } - } - function handleHeader(header) { - if (receivedHeader) { - throw new Error("Received multiple headers"); - } - if (receivedData) { - throw new Error("Received header after data"); - } - if (receivedTrailer) { - throw new Error("Received header after trailer"); - } - receivedHeader = true; - onHeader(header); - } - function handleTrailer(trailer) { - if (receivedTrailer) { - throw new Error("Received multiple trailers"); - } - receivedTrailer = true; - onTrailer(trailer); - } - function createChunkBuffer(targetLength) { - return { - chunks: [], - totalLength: 0, - targetLength - }; - } - } - exports.decodeResponse = decodeResponse; - } -}); - -// node_modules/nice-grpc-web/lib/client/encodeRequest.js -var require_encodeRequest = __commonJS({ - "node_modules/nice-grpc-web/lib/client/encodeRequest.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.encodeRequest = void 0; - var framing_1 = require_framing(); - async function* encodeRequest({ request, encode }) { - for await (const data of request) { - const bytes = encode(data); - yield (0, framing_1.encodeFrame)(bytes); - } - } - exports.encodeRequest = encodeRequest; - } -}); - -// node_modules/nice-grpc-web/lib/client/makeInternalErrorMessage.js -var require_makeInternalErrorMessage = __commonJS({ - "node_modules/nice-grpc-web/lib/client/makeInternalErrorMessage.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.makeInternalErrorMessage = void 0; - function makeInternalErrorMessage(err) { - if (err == null || typeof err !== "object") { - return String(err); - } else if (typeof err.message === "string") { - return err.message; - } else { - return JSON.stringify(err); - } - } - exports.makeInternalErrorMessage = makeInternalErrorMessage; - } -}); - -// node_modules/nice-grpc-web/lib/client/parseTrailer.js -var require_parseTrailer = __commonJS({ - "node_modules/nice-grpc-web/lib/client/parseTrailer.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.parseTrailer = void 0; - var nice_grpc_common_1 = require_lib(); - function parseTrailer(trailer) { - let status; - const statusValue = trailer.get("grpc-status"); - if (statusValue != null) { - const statusNum = +statusValue; - if (statusNum in nice_grpc_common_1.Status) { - status = statusNum; - } else { - throw new Error(`Received invalid status code from server: ${statusValue}`); - } - } else { - throw new Error("Received no status code from server"); - } - let message = trailer.get("grpc-message"); - if (message != null) { - try { - message = decodeURIComponent(message); - } catch (_a) { - } - } - const trailerCopy = (0, nice_grpc_common_1.Metadata)(trailer); - trailerCopy.delete("grpc-status"); - trailerCopy.delete("grpc-message"); - return { - status, - message, - trailer: trailerCopy - }; - } - exports.parseTrailer = parseTrailer; - } -}); - -// node_modules/nice-grpc-web/lib/client/makeCall.js -var require_makeCall = __commonJS({ - "node_modules/nice-grpc-web/lib/client/makeCall.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.makeCall = void 0; - var abort_controller_x_1 = require_lib2(); - var nice_grpc_common_1 = require_lib(); - var decodeResponse_1 = require_decodeResponse(); - var encodeRequest_1 = require_encodeRequest(); - var makeInternalErrorMessage_1 = require_makeInternalErrorMessage(); - var parseTrailer_1 = require_parseTrailer(); - async function* makeCall(definition, channel, request, options) { - const { metadata, signal = new AbortController().signal, onHeader, onTrailer } = options; - let receivedTrailersOnly = false; - let status; - let message; - function handleTrailer(trailer) { - if (receivedTrailersOnly) { - if (new Map(trailer).size > 0) { - throw new nice_grpc_common_1.ClientError(definition.path, nice_grpc_common_1.Status.INTERNAL, "Received non-empty trailer after trailers-only response"); - } else { - return; - } - } - const parsedTrailer = (0, parseTrailer_1.parseTrailer)(trailer); - ({ status, message } = parsedTrailer); - onTrailer === null || onTrailer === void 0 ? void 0 : onTrailer(parsedTrailer.trailer); - } - const finalMetadata = (0, nice_grpc_common_1.Metadata)(metadata); - finalMetadata.set("content-type", "application/grpc-web+proto"); - finalMetadata.set("x-grpc-web", "1"); - const innerAbortController = new AbortController(); - const abortListener = () => { - innerAbortController.abort(); - }; - signal.addEventListener("abort", abortListener); - let finished = false; - let requestError; - async function* interceptRequestError() { - try { - for await (const item of request) { - if (finished) { - throw new Error("Request finished"); - } - yield item; - } - } catch (err) { - requestError = { err }; - innerAbortController.abort(); - throw err; - } - } - async function* handleTransportErrors() { - try { - return yield* channel.transport({ - url: channel.address + definition.path, - metadata: finalMetadata, - body: (0, encodeRequest_1.encodeRequest)({ - request: interceptRequestError(), - encode: definition.requestSerialize - }), - signal: innerAbortController.signal, - method: definition - }); - } catch (err) { - (0, abort_controller_x_1.rethrowAbortError)(err); - throw new nice_grpc_common_1.ClientError(definition.path, nice_grpc_common_1.Status.UNKNOWN, `Transport error: ${(0, makeInternalErrorMessage_1.makeInternalErrorMessage)(err)}`); - } - } - const response = (0, decodeResponse_1.decodeResponse)({ - response: handleTransportErrors(), - decode: definition.responseDeserialize, - onHeader(header) { - const isTrailersOnly = header.has("grpc-status"); - if (isTrailersOnly) { - handleTrailer(header); - receivedTrailersOnly = true; - } else { - onHeader === null || onHeader === void 0 ? void 0 : onHeader(header); - } - }, - onTrailer(trailer) { - handleTrailer(trailer); - } - }); - try { - yield* response; - } catch (err) { - if (requestError !== void 0) { - throw requestError.err; - } else if (err instanceof nice_grpc_common_1.ClientError || (0, abort_controller_x_1.isAbortError)(err)) { - throw err; - } else { - throw new nice_grpc_common_1.ClientError(definition.path, nice_grpc_common_1.Status.INTERNAL, (0, makeInternalErrorMessage_1.makeInternalErrorMessage)(err)); - } - } finally { - finished = true; - signal.removeEventListener("abort", abortListener); - if (status != null && status !== nice_grpc_common_1.Status.OK) { - throw new nice_grpc_common_1.ClientError(definition.path, status, message !== null && message !== void 0 ? message : ""); - } - } - if (status == null) { - throw new nice_grpc_common_1.ClientError(definition.path, nice_grpc_common_1.Status.UNKNOWN, 'Response stream closed without gRPC status. This may indicate a misconfigured CORS policy on the server: Access-Control-Expose-Headers must include "grpc-status" and "grpc-message".'); - } - } - exports.makeCall = makeCall; - } -}); - -// node_modules/nice-grpc-web/lib/client/createBidiStreamingMethod.js -var require_createBidiStreamingMethod = __commonJS({ - "node_modules/nice-grpc-web/lib/client/createBidiStreamingMethod.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.createBidiStreamingMethod = void 0; - var isAsyncIterable_1 = require_isAsyncIterable(); - var makeCall_1 = require_makeCall(); - function createBidiStreamingMethod(definition, channel, middleware, defaultOptions) { - const methodDescriptor = { - path: definition.path, - requestStream: definition.requestStream, - responseStream: definition.responseStream, - options: definition.options - }; - async function* bidiStreamingMethod(request, options) { - if (!(0, isAsyncIterable_1.isAsyncIterable)(request)) { - throw new Error("A middleware passed invalid request to next(): expected a single message for bidirectional streaming method"); - } - const response = (0, makeCall_1.makeCall)(definition, channel, request, options); - yield* response; - } - const method = middleware == null ? bidiStreamingMethod : (request, options) => middleware({ - method: methodDescriptor, - requestStream: true, - request, - responseStream: true, - next: bidiStreamingMethod - }, options); - return (request, options) => { - const iterable = method(request, { - ...defaultOptions, - ...options - }); - const iterator = iterable[Symbol.asyncIterator](); - return { - [Symbol.asyncIterator]() { - return { - async next() { - const result = await iterator.next(); - if (result.done && result.value != null) { - return await iterator.throw(new Error("A middleware returned a message, but expected to return void for bidirectional streaming method")); - } - return result; - }, - return() { - return iterator.return(); - }, - throw(err) { - return iterator.throw(err); - } - }; - } - }; - }; - } - exports.createBidiStreamingMethod = createBidiStreamingMethod; - } -}); - -// node_modules/nice-grpc-web/lib/client/createClientStreamingMethod.js -var require_createClientStreamingMethod = __commonJS({ - "node_modules/nice-grpc-web/lib/client/createClientStreamingMethod.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.createClientStreamingMethod = void 0; - var nice_grpc_common_1 = require_lib(); - var isAsyncIterable_1 = require_isAsyncIterable(); - var makeCall_1 = require_makeCall(); - function createClientStreamingMethod(definition, channel, middleware, defaultOptions) { - const methodDescriptor = { - path: definition.path, - requestStream: definition.requestStream, - responseStream: definition.responseStream, - options: definition.options - }; - async function* clientStreamingMethod(request, options) { - if (!(0, isAsyncIterable_1.isAsyncIterable)(request)) { - throw Error("A middleware passed invalid request to next(): expected a single message for client streaming method"); - } - const response = (0, makeCall_1.makeCall)(definition, channel, request, options); - let unaryResponse; - for await (const message of response) { - if (unaryResponse != null) { - throw new nice_grpc_common_1.ClientError(definition.path, nice_grpc_common_1.Status.INTERNAL, "Received more than one message from server for client streaming method"); - } - unaryResponse = message; - } - if (unaryResponse == null) { - throw new nice_grpc_common_1.ClientError(definition.path, nice_grpc_common_1.Status.INTERNAL, "Server did not return a response"); - } - return unaryResponse; - } - const method = middleware == null ? clientStreamingMethod : (request, options) => middleware({ - method: methodDescriptor, - requestStream: true, - request, - responseStream: false, - next: clientStreamingMethod - }, options); - return async (request, options) => { - const iterable = method(request, { - ...defaultOptions, - ...options - }); - const iterator = iterable[Symbol.asyncIterator](); - let result = await iterator.next(); - while (true) { - if (!result.done) { - result = await iterator.throw(new Error("A middleware yielded a message, but expected to only return a message for client streaming method")); - continue; - } - if (result.value == null) { - result = await iterator.throw(new Error("A middleware returned void, but expected to return a message for client streaming method")); - continue; - } - return result.value; - } - }; - } - exports.createClientStreamingMethod = createClientStreamingMethod; - } -}); - -// node_modules/nice-grpc-web/lib/utils/asyncIterableOf.js -var require_asyncIterableOf = __commonJS({ - "node_modules/nice-grpc-web/lib/utils/asyncIterableOf.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.asyncIterableOf = void 0; - async function* asyncIterableOf(item) { - yield item; - } - exports.asyncIterableOf = asyncIterableOf; - } -}); - -// node_modules/nice-grpc-web/lib/client/createServerStreamingMethod.js -var require_createServerStreamingMethod = __commonJS({ - "node_modules/nice-grpc-web/lib/client/createServerStreamingMethod.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.createServerStreamingMethod = void 0; - var asyncIterableOf_1 = require_asyncIterableOf(); - var isAsyncIterable_1 = require_isAsyncIterable(); - var makeCall_1 = require_makeCall(); - function createServerStreamingMethod(definition, channel, middleware, defaultOptions) { - const methodDescriptor = { - path: definition.path, - requestStream: definition.requestStream, - responseStream: definition.responseStream, - options: definition.options - }; - async function* serverStreamingMethod(request, options) { - if ((0, isAsyncIterable_1.isAsyncIterable)(request)) { - throw new Error("A middleware passed invalid request to next(): expected a single message for server streaming method"); - } - const response = (0, makeCall_1.makeCall)(definition, channel, (0, asyncIterableOf_1.asyncIterableOf)(request), options); - yield* response; - } - const method = middleware == null ? serverStreamingMethod : (request, options) => middleware({ - method: methodDescriptor, - requestStream: false, - request, - responseStream: true, - next: serverStreamingMethod - }, options); - return (request, options) => { - const iterable = method(request, { - ...defaultOptions, - ...options - }); - const iterator = iterable[Symbol.asyncIterator](); - return { - [Symbol.asyncIterator]() { - return { - async next() { - const result = await iterator.next(); - if (result.done && result.value != null) { - return await iterator.throw(new Error("A middleware returned a message, but expected to return void for server streaming method")); - } - return result; - }, - return() { - return iterator.return(); - }, - throw(err) { - return iterator.throw(err); - } - }; - } - }; - }; - } - exports.createServerStreamingMethod = createServerStreamingMethod; - } -}); - -// node_modules/nice-grpc-web/lib/client/createUnaryMethod.js -var require_createUnaryMethod = __commonJS({ - "node_modules/nice-grpc-web/lib/client/createUnaryMethod.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.createUnaryMethod = void 0; - var nice_grpc_common_1 = require_lib(); - var asyncIterableOf_1 = require_asyncIterableOf(); - var isAsyncIterable_1 = require_isAsyncIterable(); - var makeCall_1 = require_makeCall(); - function createUnaryMethod(definition, channel, middleware, defaultOptions) { - const methodDescriptor = { - path: definition.path, - requestStream: definition.requestStream, - responseStream: definition.responseStream, - options: definition.options - }; - async function* unaryMethod(request, options) { - if ((0, isAsyncIterable_1.isAsyncIterable)(request)) { - throw new Error("A middleware passed invalid request to next(): expected a single message for unary method"); - } - const response = (0, makeCall_1.makeCall)(definition, channel, (0, asyncIterableOf_1.asyncIterableOf)(request), options); - let unaryResponse; - for await (const message of response) { - if (unaryResponse != null) { - throw new nice_grpc_common_1.ClientError(definition.path, nice_grpc_common_1.Status.INTERNAL, "Received more than one message from server for unary method"); - } - unaryResponse = message; - } - if (unaryResponse == null) { - throw new nice_grpc_common_1.ClientError(definition.path, nice_grpc_common_1.Status.INTERNAL, "Server did not return a response"); - } - return unaryResponse; - } - const method = middleware == null ? unaryMethod : (request, options) => middleware({ - method: methodDescriptor, - requestStream: false, - request, - responseStream: false, - next: unaryMethod - }, options); - return async (request, options) => { - const iterable = method(request, { - ...defaultOptions, - ...options - }); - const iterator = iterable[Symbol.asyncIterator](); - let result = await iterator.next(); - while (true) { - if (!result.done) { - result = await iterator.throw(new Error("A middleware yielded a message, but expected to only return a message for unary method")); - continue; - } - if (result.value == null) { - result = await iterator.throw(new Error("A middleware returned void, but expected to return a message for unary method")); - continue; - } - return result.value; - } - }; - } - exports.createUnaryMethod = createUnaryMethod; - } -}); - -// node_modules/nice-grpc-web/lib/client/ClientFactory.js -var require_ClientFactory = __commonJS({ - "node_modules/nice-grpc-web/lib/client/ClientFactory.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.createClient = exports.createClientFactory = void 0; - var nice_grpc_common_1 = require_lib(); - var service_definitions_1 = require_service_definitions(); - var createBidiStreamingMethod_1 = require_createBidiStreamingMethod(); - var createClientStreamingMethod_1 = require_createClientStreamingMethod(); - var createServerStreamingMethod_1 = require_createServerStreamingMethod(); - var createUnaryMethod_1 = require_createUnaryMethod(); - function createClientFactory3() { - return createClientFactoryWithMiddleware(); - } - exports.createClientFactory = createClientFactory3; - function createClient(definition, channel, defaultCallOptions) { - return createClientFactory3().create(definition, channel, defaultCallOptions); - } - exports.createClient = createClient; - function createClientFactoryWithMiddleware(middleware) { - return { - use(newMiddleware) { - return createClientFactoryWithMiddleware(middleware == null ? newMiddleware : (0, nice_grpc_common_1.composeClientMiddleware)(middleware, newMiddleware)); - }, - create(definition, channel, defaultCallOptions = {}) { - const client = {}; - const methodEntries = Object.entries((0, service_definitions_1.normalizeServiceDefinition)(definition)); - for (const [methodName, methodDefinition] of methodEntries) { - const defaultOptions = { - ...defaultCallOptions["*"], - ...defaultCallOptions[methodName] - }; - if (!methodDefinition.requestStream) { - if (!methodDefinition.responseStream) { - client[methodName] = (0, createUnaryMethod_1.createUnaryMethod)(methodDefinition, channel, middleware, defaultOptions); - } else { - client[methodName] = (0, createServerStreamingMethod_1.createServerStreamingMethod)(methodDefinition, channel, middleware, defaultOptions); - } - } else { - if (!methodDefinition.responseStream) { - client[methodName] = (0, createClientStreamingMethod_1.createClientStreamingMethod)(methodDefinition, channel, middleware, defaultOptions); - } else { - client[methodName] = (0, createBidiStreamingMethod_1.createBidiStreamingMethod)(methodDefinition, channel, middleware, defaultOptions); - } - } - } - return client; - } - }; - } - } -}); - -// node_modules/nice-grpc-web/lib/client/Client.js -var require_Client = __commonJS({ - "node_modules/nice-grpc-web/lib/client/Client.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - } -}); - -// node_modules/isomorphic-ws/browser.js -var browser_exports = {}; -__export(browser_exports, { - default: () => browser_default -}); -var ws, browser_default; -var init_browser = __esm({ - "node_modules/isomorphic-ws/browser.js"() { - ws = null; - if (typeof WebSocket !== "undefined") { - ws = WebSocket; - } else if (typeof MozWebSocket !== "undefined") { - ws = MozWebSocket; - } else if (typeof global !== "undefined") { - ws = global.WebSocket || global.MozWebSocket; - } else if (typeof window !== "undefined") { - ws = window.WebSocket || window.MozWebSocket; - } else if (typeof self !== "undefined") { - ws = self.WebSocket || self.MozWebSocket; - } - browser_default = ws; - } -}); - -// node_modules/nice-grpc-web/lib/utils/AsyncSink.js -var require_AsyncSink = __commonJS({ - "node_modules/nice-grpc-web/lib/utils/AsyncSink.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.AsyncSink = void 0; - var ARRAY_VALUE = "value"; - var ARRAY_ERROR = "error"; - var AsyncSink = class { - constructor() { - this._ended = false; - this._values = []; - this._resolvers = []; - } - [Symbol.asyncIterator]() { - return this; - } - write(value) { - this._push({ type: ARRAY_VALUE, value }); - } - error(error2) { - this._push({ type: ARRAY_ERROR, error: error2 }); - } - _push(item) { - if (this._ended) { - return; - } - if (this._resolvers.length > 0) { - const { resolve, reject } = this._resolvers.shift(); - if (item.type === ARRAY_ERROR) { - reject(item.error); - } else { - resolve({ done: false, value: item.value }); - } - } else { - this._values.push(item); - } - } - next() { - if (this._values.length > 0) { - const { type, value, error: error2 } = this._values.shift(); - if (type === ARRAY_ERROR) { - return Promise.reject(error2); - } else { - return Promise.resolve({ done: false, value }); - } - } - if (this._ended) { - return Promise.resolve({ done: true }); - } - return new Promise((resolve, reject) => { - this._resolvers.push({ resolve, reject }); - }); - } - end() { - while (this._resolvers.length > 0) { - this._resolvers.shift().resolve({ done: true }); - } - this._ended = true; - } - }; - exports.AsyncSink = AsyncSink; - } -}); - -// node_modules/nice-grpc-web/lib/client/transports/websocket.js -var require_websocket = __commonJS({ - "node_modules/nice-grpc-web/lib/client/transports/websocket.js"(exports) { - "use strict"; - var __importDefault = exports && exports.__importDefault || function(mod) { - return mod && mod.__esModule ? mod : { "default": mod }; - }; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.WebsocketTransport = void 0; - var abort_controller_x_1 = require_lib2(); - var isomorphic_ws_1 = __importDefault((init_browser(), __toCommonJS(browser_exports))); - var js_base64_1 = require_base64(); - var AsyncSink_1 = require_AsyncSink(); - function WebsocketTransport() { - return async function* ({ url, body, metadata, signal }) { - if (signal.aborted) { - throw new abort_controller_x_1.AbortError(); - } - const frames = new AsyncSink_1.AsyncSink(); - signal.addEventListener("abort", () => { - frames.error(new abort_controller_x_1.AbortError()); - }); - const websocketUrl = new URL(url); - websocketUrl.protocol = websocketUrl.protocol.replace("http", "ws"); - const webSocket = new isomorphic_ws_1.default(websocketUrl, ["grpc-websockets"]); - webSocket.binaryType = "arraybuffer"; - webSocket.addEventListener("message", (event) => { - if (event.data instanceof ArrayBuffer) { - frames.write({ - type: "data", - data: new Uint8Array(event.data) - }); - } else { - frames.error(new Error(`Unexpected message type: ${typeof event.data}`)); - } - }); - webSocket.addEventListener("close", (event) => { - if (event.wasClean) { - frames.end(); - } else { - frames.error(new Error(`WebSocket closed with code ${event.code}` + (event.reason && `: ${event.reason}`))); - } - }); - const pipeAbortController = new AbortController(); - pipeBody(pipeAbortController.signal, metadata, body, webSocket).catch((err) => { - if (!(0, abort_controller_x_1.isAbortError)(err)) { - frames.error(err); - } - }); - try { - return yield* frames; - } finally { - pipeAbortController.abort(); - webSocket.close(); - } - }; - } - exports.WebsocketTransport = WebsocketTransport; - async function pipeBody(signal, metadata, body, webSocket) { - if (webSocket.readyState == isomorphic_ws_1.default.CONNECTING) { - await (0, abort_controller_x_1.waitForEvent)(signal, webSocket, "open"); - } - webSocket.send(encodeMetadata(metadata)); - for await (const chunk of body) { - (0, abort_controller_x_1.throwIfAborted)(signal); - const data = new Uint8Array(chunk.length + 1); - data.set([0], 0); - data.set(chunk, 1); - webSocket.send(data); - } - webSocket.send(new Uint8Array([1])); - } - function encodeMetadata(metadata) { - let result = ""; - for (const [key, values] of metadata) { - for (const value of values) { - const valueString = typeof value === "string" ? value : js_base64_1.Base64.fromUint8Array(value); - const pairString = `${key}: ${valueString}\r -`; - for (let i = 0; i < pairString.length; i++) { - const charCode = pairString.charCodeAt(i); - if (!isValidCharCode(charCode)) { - throw new Error(`Metadata contains invalid characters: '${pairString}'`); - } - } - result += pairString; - } - } - return new TextEncoder().encode(result); - } - function isValidCharCode(val) { - return val === 9 || val === 10 || val === 13 || val >= 32 && val <= 126; - } - } -}); - -// node_modules/nice-grpc-web/lib/client/transports/nodeHttp/browser.js -var require_browser = __commonJS({ - "node_modules/nice-grpc-web/lib/client/transports/nodeHttp/browser.js"(exports) { - "use strict"; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.NodeHttpTransport = void 0; - function NodeHttpTransport() { - throw new Error("NodeHttpTransport is not supported in the browser"); - } - exports.NodeHttpTransport = NodeHttpTransport; - } -}); - -// node_modules/nice-grpc-web/lib/index.js -var require_lib3 = __commonJS({ - "node_modules/nice-grpc-web/lib/index.js"(exports) { - "use strict"; - var __createBinding = exports && exports.__createBinding || (Object.create ? function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - var desc = Object.getOwnPropertyDescriptor(m, k); - if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { - desc = { enumerable: true, get: function() { - return m[k]; - } }; - } - Object.defineProperty(o, k2, desc); - } : function(o, m, k, k2) { - if (k2 === void 0) - k2 = k; - o[k2] = m[k]; - }); - var __exportStar = exports && exports.__exportStar || function(m, exports2) { - for (var p in m) - if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports2, p)) - __createBinding(exports2, m, p); - }; - Object.defineProperty(exports, "__esModule", { value: true }); - exports.NodeHttpTransport = exports.WebsocketTransport = exports.FetchTransport = exports.Status = exports.Metadata = exports.composeClientMiddleware = exports.ClientError = void 0; - var nice_grpc_common_1 = require_lib(); - Object.defineProperty(exports, "ClientError", { enumerable: true, get: function() { - return nice_grpc_common_1.ClientError; - } }); - Object.defineProperty(exports, "composeClientMiddleware", { enumerable: true, get: function() { - return nice_grpc_common_1.composeClientMiddleware; - } }); - Object.defineProperty(exports, "Metadata", { enumerable: true, get: function() { - return nice_grpc_common_1.Metadata; - } }); - Object.defineProperty(exports, "Status", { enumerable: true, get: function() { - return nice_grpc_common_1.Status; - } }); - __exportStar(require_service_definitions(), exports); - __exportStar(require_channel(), exports); - __exportStar(require_ClientFactory(), exports); - __exportStar(require_Client(), exports); - var fetch_1 = require_fetch(); - Object.defineProperty(exports, "FetchTransport", { enumerable: true, get: function() { - return fetch_1.FetchTransport; - } }); - var websocket_1 = require_websocket(); - Object.defineProperty(exports, "WebsocketTransport", { enumerable: true, get: function() { - return websocket_1.WebsocketTransport; - } }); - var nodeHttp_1 = require_browser(); - Object.defineProperty(exports, "NodeHttpTransport", { enumerable: true, get: function() { - return nodeHttp_1.NodeHttpTransport; - } }); - } -}); - -// src/main.ts -var main_exports = {}; -__export(main_exports, { - default: () => MemosSyncPlugin -}); -module.exports = __toCommonJS(main_exports); -var import_obsidian4 = require("obsidian"); - -// src/services/DailyMemos/DailyMemos.ts -var import_obsidian_daily_notes_interface = __toESM(require_main()); -var import_obsidian3 = require("obsidian"); - -// src/utils/log.ts -var import_obsidian = require("obsidian"); -var env = "production"; -function debug(msg) { - if (env === "production") - return; - console.debug(msg); -} -function info(msg) { - new import_obsidian.Notice(msg, 5e3); - console.info(msg); -} -function warn(msg) { - new import_obsidian.Notice(msg); - console.warn(msg); -} -function error(msg) { - new import_obsidian.Notice(msg); - console.error(msg); -} - -// src/services/DailyMemos/DailyNoteModifier.ts -function generateHeaderRegExp(header) { - const formattedHeader = /^#+/.test(header.trim()) ? header.trim() : `# ${header.trim()}`; - const reg = new RegExp(`(${formattedHeader}[^ -]*)([\\s\\S]*?)(?=\\n#|$)`); - return reg; -} -var DailyNoteModifier = class { - constructor(dailyMemosHeader) { - this.dailyMemosHeader = dailyMemosHeader; - /** - * Daily Notes will be: - * ```markdown - * contents before - * ... - * - * # The Header - * - memos - * - memos - * - * contents after - * ``` - * - * @returns modifiedFileContent - */ - this.modifyDailyNote = (originFileContent, today, fetchedRecordList) => { - var _a, _b; - const header = this.dailyMemosHeader; - const reg = generateHeaderRegExp(header); - const regMatch = originFileContent.match(reg); - if (!(regMatch == null ? void 0 : regMatch.length) || regMatch.index === void 0) { - debug(`${regMatch}`); - warn( - `Failed to find header for ${today}. Please make sure your daily note template is correct.` - ); - return; - } - const localRecordContent = (_a = regMatch[2]) == null ? void 0 : _a.trim(); - const from = regMatch.index + regMatch[1].length + 1; - const to = from + localRecordContent.length + 1; - const prefix = originFileContent.slice(0, from); - const suffix = originFileContent.slice(to); - const localRecordList = localRecordContent ? localRecordContent.split(/\n(?=- )/g) : []; - const existedRecordList = {}; - for (const record of localRecordList) { - const regMatch2 = record.match(/.*\^(\d{10})/); - const createdTs = (regMatch2 == null ? void 0 : regMatch2.length) ? (_b = regMatch2[1]) == null ? void 0 : _b.trim() : ""; - if (createdTs) { - existedRecordList[createdTs] = record; - } - } - debug( - `for ${today} - -fetchedRecordList: ${JSON.stringify({ - from, - to, - prefix, - suffix, - localRecordList, - existedRecordList - })}` - ); - const sortedRecordList = Object.entries({ - ...existedRecordList, - ...fetchedRecordList - }).sort((a, b) => Number(a[0]) - Number(b[0])).map((item) => item[1]).join("\n"); - const modifiedFileContent = prefix.trim() + ` - -${sortedRecordList} - -` + suffix.trim() + ` -`; - return modifiedFileContent; - }; - } -}; - -// src/services/DailyMemos/MemosResource.ts -function convert0220ResourceToAPIResource(resource) { - return { - id: resource.name.replace("resources/", ""), - filename: resource.filename, - externalLink: resource.externalLink, - name: resource.name, - type: resource.type, - uid: resource.uid - }; -} -function generateResourceName(resource) { - return `${resource.id}-${resource.filename.replace(/[/\\?%*:|"<>]/g, "-")}`; -} -function generateResourceLink(resource) { - var _a; - if (!resource.externalLink) { - return `![[${generateResourceName(resource)}]]`; - } - const prefix = ((_a = resource.type) == null ? void 0 : _a.includes("image")) ? "!" : ""; - return `${prefix}[${resource.name || resource.filename}](${resource.externalLink})`; -} - -// src/services/DailyMemos/MemosPaginator.ts -function transformAPIToMdItemMemo(param) { - const { timestamp, content, resources } = param; - const [date, time] = window.moment(timestamp * 1e3).format("YYYY-MM-DD HH:mm").split(" "); - const [firstLine, ...otherLine] = content.trim().split("\n"); - const taskMatch = firstLine.match(/(- \[.?\])(.*)/); - const isCode = /```/.test(firstLine); - let targetFirstLine = ""; - if (taskMatch) { - targetFirstLine = `${taskMatch[1]} ${time} ${taskMatch[2]}`; - } else if (isCode) { - targetFirstLine = `- ${time}`; - otherLine.unshift(firstLine); - } else { - targetFirstLine = `- ${time} ${firstLine.replace(/^- /, "")}`; - } - targetFirstLine += ` #daily-record ^${timestamp}`; - const targetOtherLine = (otherLine == null ? void 0 : otherLine.length) ? "\n" + otherLine.filter((line) => line.trim()).map((line) => ` ${line}`).join("\n").trimEnd() : ""; - const targetResourceLine = (resources == null ? void 0 : resources.length) ? "\n" + (resources == null ? void 0 : resources.map( - (resource) => ` - ${generateResourceLink(resource)}` - ).join("\n")) : ""; - const finalTargetContent = targetFirstLine + targetOtherLine + targetResourceLine; - return { - date, - timestamp: String(timestamp), - content: finalTargetContent - }; -} -var MemosPaginator0191 = class { - constructor(client, lastTime, filter) { - this.client = client; - this.filter = filter; - /** - * return lastTime - * @param handle - * @returns - */ - this.foreach = async (handle) => { - var _a, _b, _c; - this.offset = 0; - while (true) { - const memos = await this.client.listMemos(this.limit, this.offset) || []; - const mostRecentRecordTimeStamp = ((_a = memos[0]) == null ? void 0 : _a.createdAt) ? window.moment((_b = memos[0]) == null ? void 0 : _b.createdAt).unix() : (_c = memos[0]) == null ? void 0 : _c.createdTs; - if (!memos.length || mostRecentRecordTimeStamp * 1e3 < Number(this.lastTime)) { - debug("No new daily memos found."); - this.lastTime = Date.now().toString(); - return this.lastTime; - } - const dailyMemosByDay = this.generalizeDailyMemos(memos); - await Promise.all( - Object.entries(dailyMemosByDay).map( - async ([today, dailyMemosForToday]) => { - if (this.filter && !this.filter(today, dailyMemosForToday)) { - return; - } - await handle([today, dailyMemosForToday]); - } - ) - ); - this.lastTime = String(mostRecentRecordTimeStamp * 1e3); - this.offset += memos.length; - } - }; - // generalize daily memos by day and timestamp - // map> - this.generalizeDailyMemos = (memos) => { - var _a; - const dailyMemosByDay = {}; - for (const memo of memos) { - if (!memo.content && !((_a = memo.resourceList) == null ? void 0 : _a.length)) { - continue; - } - const { createdTs, createdAt } = memo; - const timestampInput = createdAt ? window.moment(createdAt).unix() : createdTs; - const mdItemMemo = transformAPIToMdItemMemo({ - timestamp: timestampInput, - content: memo.content, - resources: memo.resourceList - }); - if (!dailyMemosByDay[mdItemMemo.date]) { - dailyMemosByDay[mdItemMemo.date] = {}; - } - dailyMemosByDay[mdItemMemo.date][mdItemMemo.timestamp] = mdItemMemo.content; - } - return dailyMemosByDay; - }; - this.limit = 50; - this.offset = 0; - this.lastTime = lastTime || ""; - } -}; -var MemosPaginator0220 = class { - constructor(memoListPaginator, authCli, lastTime, filter) { - this.memoListPaginator = memoListPaginator; - this.authCli = authCli; - this.filter = filter; - /** - * return lastTime - * @param handle - * @returns - */ - this.foreach = async (handle) => { - var _a, _b, _c; - this.pageToken = ""; - const currentUser = await this.authCli.getAuthStatus({}); - while (true) { - const resp = await this.memoListPaginator.listMemos( - this.pageSize, - this.pageToken, - currentUser - ); - debug( - `resp for pageToken ${this.pageToken}: ${JSON.stringify(resp)}` - ); - if (!resp) { - debug("No new daily memos found."); - this.lastTime = Date.now().toString(); - return this.lastTime; - } - const { memos, nextPageToken } = resp; - const mostRecentRecordTimeStamp = ((_a = memos[0]) == null ? void 0 : _a.updateTime) ? window.moment((_b = memos[0]) == null ? void 0 : _b.updateTime).unix() : window.moment((_c = memos[0]) == null ? void 0 : _c.createTime).unix(); - if (!memos.length || mostRecentRecordTimeStamp * 1e3 < Number(this.lastTime)) { - debug("No new daily memos found."); - this.lastTime = Date.now().toString(); - return this.lastTime; - } - const dailyMemosByDay = this.generalizeDailyMemos(memos); - await Promise.all( - Object.entries(dailyMemosByDay).map( - async ([today, dailyMemosForToday]) => { - if (this.filter && !this.filter(today, dailyMemosForToday)) { - return; - } - await handle([today, dailyMemosForToday]); - } - ) - ); - this.lastTime = String(mostRecentRecordTimeStamp * 1e3); - if (!nextPageToken) { - return this.lastTime; - } - this.pageToken = nextPageToken; - } - }; - // generalize daily memos by day and timestamp - // map> - this.generalizeDailyMemos = (memos) => { - var _a, _b; - const dailyMemosByDay = {}; - for (const memo of memos) { - if (!memo.content && !((_a = memo.resources) == null ? void 0 : _a.length)) { - continue; - } - const resources = (_b = memo.resources) == null ? void 0 : _b.map( - convert0220ResourceToAPIResource - ); - const mdItemMemo = transformAPIToMdItemMemo({ - timestamp: window.moment(memo.createTime).unix(), - content: memo.content, - resources - }); - if (!dailyMemosByDay[mdItemMemo.date]) { - dailyMemosByDay[mdItemMemo.date] = {}; - } - dailyMemosByDay[mdItemMemo.date][mdItemMemo.timestamp] = mdItemMemo.content; - } - return dailyMemosByDay; - }; - this.pageSize = 50; - this.pageToken = ""; - this.lastTime = lastTime || ""; - } -}; - -// src/api/memos-v0.22.0.ts -var import_nice_grpc_web2 = __toESM(require_lib3()); - -// node_modules/@bufbuild/protobuf/dist/esm/wire/varint.js -function varint64read() { - let lowBits = 0; - let highBits = 0; - for (let shift = 0; shift < 28; shift += 7) { - let b = this.buf[this.pos++]; - lowBits |= (b & 127) << shift; - if ((b & 128) == 0) { - this.assertBounds(); - return [lowBits, highBits]; - } - } - let middleByte = this.buf[this.pos++]; - lowBits |= (middleByte & 15) << 28; - highBits = (middleByte & 112) >> 4; - if ((middleByte & 128) == 0) { - this.assertBounds(); - return [lowBits, highBits]; - } - for (let shift = 3; shift <= 31; shift += 7) { - let b = this.buf[this.pos++]; - highBits |= (b & 127) << shift; - if ((b & 128) == 0) { - this.assertBounds(); - return [lowBits, highBits]; - } - } - throw new Error("invalid varint"); -} -function varint64write(lo, hi, bytes) { - for (let i = 0; i < 28; i = i + 7) { - const shift = lo >>> i; - const hasNext = !(shift >>> 7 == 0 && hi == 0); - const byte = (hasNext ? shift | 128 : shift) & 255; - bytes.push(byte); - if (!hasNext) { - return; - } - } - const splitBits = lo >>> 28 & 15 | (hi & 7) << 4; - const hasMoreBits = !(hi >> 3 == 0); - bytes.push((hasMoreBits ? splitBits | 128 : splitBits) & 255); - if (!hasMoreBits) { - return; - } - for (let i = 3; i < 31; i = i + 7) { - const shift = hi >>> i; - const hasNext = !(shift >>> 7 == 0); - const byte = (hasNext ? shift | 128 : shift) & 255; - bytes.push(byte); - if (!hasNext) { - return; - } - } - bytes.push(hi >>> 31 & 1); -} -var TWO_PWR_32_DBL = 4294967296; -function int64FromString(dec) { - const minus = dec[0] === "-"; - if (minus) { - dec = dec.slice(1); - } - const base = 1e6; - let lowBits = 0; - let highBits = 0; - function add1e6digit(begin, end) { - const digit1e6 = Number(dec.slice(begin, end)); - highBits *= base; - lowBits = lowBits * base + digit1e6; - if (lowBits >= TWO_PWR_32_DBL) { - highBits = highBits + (lowBits / TWO_PWR_32_DBL | 0); - lowBits = lowBits % TWO_PWR_32_DBL; - } - } - add1e6digit(-24, -18); - add1e6digit(-18, -12); - add1e6digit(-12, -6); - add1e6digit(-6); - return minus ? negate(lowBits, highBits) : newBits(lowBits, highBits); -} -function int64ToString(lo, hi) { - let bits = newBits(lo, hi); - const negative = bits.hi & 2147483648; - if (negative) { - bits = negate(bits.lo, bits.hi); - } - const result = uInt64ToString(bits.lo, bits.hi); - return negative ? "-" + result : result; -} -function uInt64ToString(lo, hi) { - ({ lo, hi } = toUnsigned(lo, hi)); - if (hi <= 2097151) { - return String(TWO_PWR_32_DBL * hi + lo); - } - const low = lo & 16777215; - const mid = (lo >>> 24 | hi << 8) & 16777215; - const high = hi >> 16 & 65535; - let digitA = low + mid * 6777216 + high * 6710656; - let digitB = mid + high * 8147497; - let digitC = high * 2; - const base = 1e7; - if (digitA >= base) { - digitB += Math.floor(digitA / base); - digitA %= base; - } - if (digitB >= base) { - digitC += Math.floor(digitB / base); - digitB %= base; - } - return digitC.toString() + decimalFrom1e7WithLeadingZeros(digitB) + decimalFrom1e7WithLeadingZeros(digitA); -} -function toUnsigned(lo, hi) { - return { lo: lo >>> 0, hi: hi >>> 0 }; -} -function newBits(lo, hi) { - return { lo: lo | 0, hi: hi | 0 }; -} -function negate(lowBits, highBits) { - highBits = ~highBits; - if (lowBits) { - lowBits = ~lowBits + 1; - } else { - highBits += 1; - } - return newBits(lowBits, highBits); -} -var decimalFrom1e7WithLeadingZeros = (digit1e7) => { - const partial = String(digit1e7); - return "0000000".slice(partial.length) + partial; -}; -function varint32write(value, bytes) { - if (value >= 0) { - while (value > 127) { - bytes.push(value & 127 | 128); - value = value >>> 7; - } - bytes.push(value); - } else { - for (let i = 0; i < 9; i++) { - bytes.push(value & 127 | 128); - value = value >> 7; - } - bytes.push(1); - } -} -function varint32read() { - let b = this.buf[this.pos++]; - let result = b & 127; - if ((b & 128) == 0) { - this.assertBounds(); - return result; - } - b = this.buf[this.pos++]; - result |= (b & 127) << 7; - if ((b & 128) == 0) { - this.assertBounds(); - return result; - } - b = this.buf[this.pos++]; - result |= (b & 127) << 14; - if ((b & 128) == 0) { - this.assertBounds(); - return result; - } - b = this.buf[this.pos++]; - result |= (b & 127) << 21; - if ((b & 128) == 0) { - this.assertBounds(); - return result; - } - b = this.buf[this.pos++]; - result |= (b & 15) << 28; - for (let readBytes = 5; (b & 128) !== 0 && readBytes < 10; readBytes++) - b = this.buf[this.pos++]; - if ((b & 128) != 0) - throw new Error("invalid varint"); - this.assertBounds(); - return result >>> 0; -} - -// node_modules/@bufbuild/protobuf/dist/esm/proto-int64.js -var protoInt64 = /* @__PURE__ */ makeInt64Support(); -function makeInt64Support() { - const dv = new DataView(new ArrayBuffer(8)); - const ok = typeof BigInt === "function" && typeof dv.getBigInt64 === "function" && typeof dv.getBigUint64 === "function" && typeof dv.setBigInt64 === "function" && typeof dv.setBigUint64 === "function" && (typeof process != "object" || typeof process.env != "object" || process.env.BUF_BIGINT_DISABLE !== "1"); - if (ok) { - const MIN = BigInt("-9223372036854775808"), MAX = BigInt("9223372036854775807"), UMIN = BigInt("0"), UMAX = BigInt("18446744073709551615"); - return { - zero: BigInt(0), - supported: true, - parse(value) { - const bi = typeof value == "bigint" ? value : BigInt(value); - if (bi > MAX || bi < MIN) { - throw new Error(`invalid int64: ${value}`); - } - return bi; - }, - uParse(value) { - const bi = typeof value == "bigint" ? value : BigInt(value); - if (bi > UMAX || bi < UMIN) { - throw new Error(`invalid uint64: ${value}`); - } - return bi; - }, - enc(value) { - dv.setBigInt64(0, this.parse(value), true); - return { - lo: dv.getInt32(0, true), - hi: dv.getInt32(4, true) - }; - }, - uEnc(value) { - dv.setBigInt64(0, this.uParse(value), true); - return { - lo: dv.getInt32(0, true), - hi: dv.getInt32(4, true) - }; - }, - dec(lo, hi) { - dv.setInt32(0, lo, true); - dv.setInt32(4, hi, true); - return dv.getBigInt64(0, true); - }, - uDec(lo, hi) { - dv.setInt32(0, lo, true); - dv.setInt32(4, hi, true); - return dv.getBigUint64(0, true); - } - }; - } - return { - zero: "0", - supported: false, - parse(value) { - if (typeof value != "string") { - value = value.toString(); - } - assertInt64String(value); - return value; - }, - uParse(value) { - if (typeof value != "string") { - value = value.toString(); - } - assertUInt64String(value); - return value; - }, - enc(value) { - if (typeof value != "string") { - value = value.toString(); - } - assertInt64String(value); - return int64FromString(value); - }, - uEnc(value) { - if (typeof value != "string") { - value = value.toString(); - } - assertUInt64String(value); - return int64FromString(value); - }, - dec(lo, hi) { - return int64ToString(lo, hi); - }, - uDec(lo, hi) { - return uInt64ToString(lo, hi); - } - }; -} -function assertInt64String(value) { - if (!/^-?[0-9]+$/.test(value)) { - throw new Error("invalid int64: " + value); - } -} -function assertUInt64String(value) { - if (!/^[0-9]+$/.test(value)) { - throw new Error("invalid uint64: " + value); - } -} - -// node_modules/@bufbuild/protobuf/dist/esm/wire/text-encoding.js -var symbol = Symbol.for("@bufbuild/protobuf/text-encoding"); -function getTextEncoding() { - if (globalThis[symbol] == void 0) { - const te = new globalThis.TextEncoder(); - const td = new globalThis.TextDecoder(); - globalThis[symbol] = { - encodeUtf8(text) { - return te.encode(text); - }, - decodeUtf8(bytes) { - return td.decode(bytes); - }, - checkUtf8(text) { - try { - encodeURIComponent(text); - return true; - } catch (e) { - return false; - } - } - }; - } - return globalThis[symbol]; -} - -// node_modules/@bufbuild/protobuf/dist/esm/wire/binary-encoding.js -var WireType; -(function(WireType2) { - WireType2[WireType2["Varint"] = 0] = "Varint"; - WireType2[WireType2["Bit64"] = 1] = "Bit64"; - WireType2[WireType2["LengthDelimited"] = 2] = "LengthDelimited"; - WireType2[WireType2["StartGroup"] = 3] = "StartGroup"; - WireType2[WireType2["EndGroup"] = 4] = "EndGroup"; - WireType2[WireType2["Bit32"] = 5] = "Bit32"; -})(WireType || (WireType = {})); -var FLOAT32_MAX = 34028234663852886e22; -var FLOAT32_MIN = -34028234663852886e22; -var UINT32_MAX = 4294967295; -var INT32_MAX = 2147483647; -var INT32_MIN = -2147483648; -var BinaryWriter = class { - constructor(encodeUtf8 = getTextEncoding().encodeUtf8) { - this.encodeUtf8 = encodeUtf8; - this.stack = []; - this.chunks = []; - this.buf = []; - } - /** - * Return all bytes written and reset this writer. - */ - finish() { - if (this.buf.length) { - this.chunks.push(new Uint8Array(this.buf)); - this.buf = []; - } - let len = 0; - for (let i = 0; i < this.chunks.length; i++) - len += this.chunks[i].length; - let bytes = new Uint8Array(len); - let offset = 0; - for (let i = 0; i < this.chunks.length; i++) { - bytes.set(this.chunks[i], offset); - offset += this.chunks[i].length; - } - this.chunks = []; - return bytes; - } - /** - * Start a new fork for length-delimited data like a message - * or a packed repeated field. - * - * Must be joined later with `join()`. - */ - fork() { - this.stack.push({ chunks: this.chunks, buf: this.buf }); - this.chunks = []; - this.buf = []; - return this; - } - /** - * Join the last fork. Write its length and bytes, then - * return to the previous state. - */ - join() { - let chunk = this.finish(); - let prev = this.stack.pop(); - if (!prev) - throw new Error("invalid state, fork stack empty"); - this.chunks = prev.chunks; - this.buf = prev.buf; - this.uint32(chunk.byteLength); - return this.raw(chunk); - } - /** - * Writes a tag (field number and wire type). - * - * Equivalent to `uint32( (fieldNo << 3 | type) >>> 0 )`. - * - * Generated code should compute the tag ahead of time and call `uint32()`. - */ - tag(fieldNo, type) { - return this.uint32((fieldNo << 3 | type) >>> 0); - } - /** - * Write a chunk of raw bytes. - */ - raw(chunk) { - if (this.buf.length) { - this.chunks.push(new Uint8Array(this.buf)); - this.buf = []; - } - this.chunks.push(chunk); - return this; - } - /** - * Write a `uint32` value, an unsigned 32 bit varint. - */ - uint32(value) { - assertUInt32(value); - while (value > 127) { - this.buf.push(value & 127 | 128); - value = value >>> 7; - } - this.buf.push(value); - return this; - } - /** - * Write a `int32` value, a signed 32 bit varint. - */ - int32(value) { - assertInt32(value); - varint32write(value, this.buf); - return this; - } - /** - * Write a `bool` value, a variant. - */ - bool(value) { - this.buf.push(value ? 1 : 0); - return this; - } - /** - * Write a `bytes` value, length-delimited arbitrary data. - */ - bytes(value) { - this.uint32(value.byteLength); - return this.raw(value); - } - /** - * Write a `string` value, length-delimited data converted to UTF-8 text. - */ - string(value) { - let chunk = this.encodeUtf8(value); - this.uint32(chunk.byteLength); - return this.raw(chunk); - } - /** - * Write a `float` value, 32-bit floating point number. - */ - float(value) { - assertFloat32(value); - let chunk = new Uint8Array(4); - new DataView(chunk.buffer).setFloat32(0, value, true); - return this.raw(chunk); - } - /** - * Write a `double` value, a 64-bit floating point number. - */ - double(value) { - let chunk = new Uint8Array(8); - new DataView(chunk.buffer).setFloat64(0, value, true); - return this.raw(chunk); - } - /** - * Write a `fixed32` value, an unsigned, fixed-length 32-bit integer. - */ - fixed32(value) { - assertUInt32(value); - let chunk = new Uint8Array(4); - new DataView(chunk.buffer).setUint32(0, value, true); - return this.raw(chunk); - } - /** - * Write a `sfixed32` value, a signed, fixed-length 32-bit integer. - */ - sfixed32(value) { - assertInt32(value); - let chunk = new Uint8Array(4); - new DataView(chunk.buffer).setInt32(0, value, true); - return this.raw(chunk); - } - /** - * Write a `sint32` value, a signed, zigzag-encoded 32-bit varint. - */ - sint32(value) { - assertInt32(value); - value = (value << 1 ^ value >> 31) >>> 0; - varint32write(value, this.buf); - return this; - } - /** - * Write a `fixed64` value, a signed, fixed-length 64-bit integer. - */ - sfixed64(value) { - let chunk = new Uint8Array(8), view = new DataView(chunk.buffer), tc = protoInt64.enc(value); - view.setInt32(0, tc.lo, true); - view.setInt32(4, tc.hi, true); - return this.raw(chunk); - } - /** - * Write a `fixed64` value, an unsigned, fixed-length 64 bit integer. - */ - fixed64(value) { - let chunk = new Uint8Array(8), view = new DataView(chunk.buffer), tc = protoInt64.uEnc(value); - view.setInt32(0, tc.lo, true); - view.setInt32(4, tc.hi, true); - return this.raw(chunk); - } - /** - * Write a `int64` value, a signed 64-bit varint. - */ - int64(value) { - let tc = protoInt64.enc(value); - varint64write(tc.lo, tc.hi, this.buf); - return this; - } - /** - * Write a `sint64` value, a signed, zig-zag-encoded 64-bit varint. - */ - sint64(value) { - let tc = protoInt64.enc(value), sign = tc.hi >> 31, lo = tc.lo << 1 ^ sign, hi = (tc.hi << 1 | tc.lo >>> 31) ^ sign; - varint64write(lo, hi, this.buf); - return this; - } - /** - * Write a `uint64` value, an unsigned 64-bit varint. - */ - uint64(value) { - let tc = protoInt64.uEnc(value); - varint64write(tc.lo, tc.hi, this.buf); - return this; - } -}; -var BinaryReader = class { - constructor(buf, decodeUtf8 = getTextEncoding().decodeUtf8) { - this.decodeUtf8 = decodeUtf8; - this.varint64 = varint64read; - this.uint32 = varint32read; - this.buf = buf; - this.len = buf.length; - this.pos = 0; - this.view = new DataView(buf.buffer, buf.byteOffset, buf.byteLength); - } - /** - * Reads a tag - field number and wire type. - */ - tag() { - let tag = this.uint32(), fieldNo = tag >>> 3, wireType = tag & 7; - if (fieldNo <= 0 || wireType < 0 || wireType > 5) - throw new Error("illegal tag: field no " + fieldNo + " wire type " + wireType); - return [fieldNo, wireType]; - } - /** - * Skip one element and return the skipped data. - * - * When skipping StartGroup, provide the tags field number to check for - * matching field number in the EndGroup tag. - */ - skip(wireType, fieldNo) { - let start = this.pos; - switch (wireType) { - case WireType.Varint: - while (this.buf[this.pos++] & 128) { - } - break; - case WireType.Bit64: - this.pos += 4; - case WireType.Bit32: - this.pos += 4; - break; - case WireType.LengthDelimited: - let len = this.uint32(); - this.pos += len; - break; - case WireType.StartGroup: - for (; ; ) { - const [fn, wt] = this.tag(); - if (wt === WireType.EndGroup) { - if (fieldNo !== void 0 && fn !== fieldNo) { - throw new Error("invalid end group tag"); - } - break; - } - this.skip(wt, fn); - } - break; - default: - throw new Error("cant skip wire type " + wireType); - } - this.assertBounds(); - return this.buf.subarray(start, this.pos); - } - /** - * Throws error if position in byte array is out of range. - */ - assertBounds() { - if (this.pos > this.len) - throw new RangeError("premature EOF"); - } - /** - * Read a `int32` field, a signed 32 bit varint. - */ - int32() { - return this.uint32() | 0; - } - /** - * Read a `sint32` field, a signed, zigzag-encoded 32-bit varint. - */ - sint32() { - let zze = this.uint32(); - return zze >>> 1 ^ -(zze & 1); - } - /** - * Read a `int64` field, a signed 64-bit varint. - */ - int64() { - return protoInt64.dec(...this.varint64()); - } - /** - * Read a `uint64` field, an unsigned 64-bit varint. - */ - uint64() { - return protoInt64.uDec(...this.varint64()); - } - /** - * Read a `sint64` field, a signed, zig-zag-encoded 64-bit varint. - */ - sint64() { - let [lo, hi] = this.varint64(); - let s = -(lo & 1); - lo = (lo >>> 1 | (hi & 1) << 31) ^ s; - hi = hi >>> 1 ^ s; - return protoInt64.dec(lo, hi); - } - /** - * Read a `bool` field, a variant. - */ - bool() { - let [lo, hi] = this.varint64(); - return lo !== 0 || hi !== 0; - } - /** - * Read a `fixed32` field, an unsigned, fixed-length 32-bit integer. - */ - fixed32() { - return this.view.getUint32((this.pos += 4) - 4, true); - } - /** - * Read a `sfixed32` field, a signed, fixed-length 32-bit integer. - */ - sfixed32() { - return this.view.getInt32((this.pos += 4) - 4, true); - } - /** - * Read a `fixed64` field, an unsigned, fixed-length 64 bit integer. - */ - fixed64() { - return protoInt64.uDec(this.sfixed32(), this.sfixed32()); - } - /** - * Read a `fixed64` field, a signed, fixed-length 64-bit integer. - */ - sfixed64() { - return protoInt64.dec(this.sfixed32(), this.sfixed32()); - } - /** - * Read a `float` field, 32-bit floating point number. - */ - float() { - return this.view.getFloat32((this.pos += 4) - 4, true); - } - /** - * Read a `double` field, a 64-bit floating point number. - */ - double() { - return this.view.getFloat64((this.pos += 8) - 8, true); - } - /** - * Read a `bytes` field, length-delimited arbitrary data. - */ - bytes() { - let len = this.uint32(), start = this.pos; - this.pos += len; - this.assertBounds(); - return this.buf.subarray(start, start + len); - } - /** - * Read a `string` field, length-delimited data converted to UTF-8 text. - */ - string() { - return this.decodeUtf8(this.bytes()); - } -}; -function assertInt32(arg) { - if (typeof arg == "string") { - arg = Number(arg); - } else if (typeof arg != "number") { - throw new Error("invalid int32: " + typeof arg); - } - if (!Number.isInteger(arg) || arg > INT32_MAX || arg < INT32_MIN) - throw new Error("invalid int32: " + arg); -} -function assertUInt32(arg) { - if (typeof arg == "string") { - arg = Number(arg); - } else if (typeof arg != "number") { - throw new Error("invalid uint32: " + typeof arg); - } - if (!Number.isInteger(arg) || arg > UINT32_MAX || arg < 0) - throw new Error("invalid uint32: " + arg); -} -function assertFloat32(arg) { - if (typeof arg == "string") { - const o = arg; - arg = Number(arg); - if (isNaN(arg) && o !== "NaN") { - throw new Error("invalid float32: " + o); - } - } else if (typeof arg != "number") { - throw new Error("invalid float32: " + typeof arg); - } - if (Number.isFinite(arg) && (arg > FLOAT32_MAX || arg < FLOAT32_MIN)) - throw new Error("invalid float32: " + arg); -} - -// src/api/memos-proto-v0.22.0/gen/google/protobuf/empty.ts -function createBaseEmpty() { - return {}; -} -var Empty = { - encode(_, writer = new BinaryWriter()) { - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseEmpty(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return Empty.fromPartial(base != null ? base : {}); - }, - fromPartial(_) { - const message = createBaseEmpty(); - return message; - } -}; - -// src/api/memos-proto-v0.22.0/gen/google/protobuf/field_mask.ts -function createBaseFieldMask() { - return { paths: [] }; -} -var FieldMask = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.paths) { - writer.uint32(10).string(v); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseFieldMask(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.paths.push(reader.string()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return FieldMask.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseFieldMask(); - message.paths = ((_a = object.paths) == null ? void 0 : _a.map((e) => e)) || []; - return message; - }, - wrap(paths) { - const result = createBaseFieldMask(); - result.paths = paths; - return result; - }, - unwrap(message) { - return message.paths; - } -}; - -// src/api/memos-proto-v0.22.0/gen/google/protobuf/timestamp.ts -function createBaseTimestamp() { - return { seconds: 0, nanos: 0 }; -} -var Timestamp = { - encode(message, writer = new BinaryWriter()) { - if (message.seconds !== 0) { - writer.uint32(8).int64(message.seconds); - } - if (message.nanos !== 0) { - writer.uint32(16).int32(message.nanos); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseTimestamp(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - message.seconds = longToNumber(reader.int64()); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.nanos = reader.int32(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return Timestamp.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseTimestamp(); - message.seconds = (_a = object.seconds) != null ? _a : 0; - message.nanos = (_b = object.nanos) != null ? _b : 0; - return message; - } -}; -function longToNumber(int64) { - const num = globalThis.Number(int64.toString()); - if (num > globalThis.Number.MAX_SAFE_INTEGER) { - throw new globalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER"); - } - if (num < globalThis.Number.MIN_SAFE_INTEGER) { - throw new globalThis.Error("Value is smaller than Number.MIN_SAFE_INTEGER"); - } - return num; -} - -// src/api/memos-proto-v0.22.0/gen/api/v1/common.ts -function rowStatusFromJSON(object) { - switch (object) { - case 0: - case "ROW_STATUS_UNSPECIFIED": - return "ROW_STATUS_UNSPECIFIED" /* ROW_STATUS_UNSPECIFIED */; - case 1: - case "ACTIVE": - return "ACTIVE" /* ACTIVE */; - case 2: - case "ARCHIVED": - return "ARCHIVED" /* ARCHIVED */; - case -1: - case "UNRECOGNIZED": - default: - return "UNRECOGNIZED" /* UNRECOGNIZED */; - } -} -function rowStatusToNumber(object) { - switch (object) { - case "ROW_STATUS_UNSPECIFIED" /* ROW_STATUS_UNSPECIFIED */: - return 0; - case "ACTIVE" /* ACTIVE */: - return 1; - case "ARCHIVED" /* ARCHIVED */: - return 2; - case "UNRECOGNIZED" /* UNRECOGNIZED */: - default: - return -1; - } -} - -// src/api/memos-proto-v0.22.0/gen/api/v1/markdown_service.ts -function nodeTypeFromJSON(object) { - switch (object) { - case 0: - case "NODE_UNSPECIFIED": - return "NODE_UNSPECIFIED" /* NODE_UNSPECIFIED */; - case 1: - case "LINE_BREAK": - return "LINE_BREAK" /* LINE_BREAK */; - case 2: - case "PARAGRAPH": - return "PARAGRAPH" /* PARAGRAPH */; - case 3: - case "CODE_BLOCK": - return "CODE_BLOCK" /* CODE_BLOCK */; - case 4: - case "HEADING": - return "HEADING" /* HEADING */; - case 5: - case "HORIZONTAL_RULE": - return "HORIZONTAL_RULE" /* HORIZONTAL_RULE */; - case 6: - case "BLOCKQUOTE": - return "BLOCKQUOTE" /* BLOCKQUOTE */; - case 7: - case "ORDERED_LIST": - return "ORDERED_LIST" /* ORDERED_LIST */; - case 8: - case "UNORDERED_LIST": - return "UNORDERED_LIST" /* UNORDERED_LIST */; - case 9: - case "TASK_LIST": - return "TASK_LIST" /* TASK_LIST */; - case 10: - case "MATH_BLOCK": - return "MATH_BLOCK" /* MATH_BLOCK */; - case 11: - case "TABLE": - return "TABLE" /* TABLE */; - case 12: - case "EMBEDDED_CONTENT": - return "EMBEDDED_CONTENT" /* EMBEDDED_CONTENT */; - case 13: - case "TEXT": - return "TEXT" /* TEXT */; - case 14: - case "BOLD": - return "BOLD" /* BOLD */; - case 15: - case "ITALIC": - return "ITALIC" /* ITALIC */; - case 16: - case "BOLD_ITALIC": - return "BOLD_ITALIC" /* BOLD_ITALIC */; - case 17: - case "CODE": - return "CODE" /* CODE */; - case 18: - case "IMAGE": - return "IMAGE" /* IMAGE */; - case 19: - case "LINK": - return "LINK" /* LINK */; - case 20: - case "AUTO_LINK": - return "AUTO_LINK" /* AUTO_LINK */; - case 21: - case "TAG": - return "TAG" /* TAG */; - case 22: - case "STRIKETHROUGH": - return "STRIKETHROUGH" /* STRIKETHROUGH */; - case 23: - case "ESCAPING_CHARACTER": - return "ESCAPING_CHARACTER" /* ESCAPING_CHARACTER */; - case 24: - case "MATH": - return "MATH" /* MATH */; - case 25: - case "HIGHLIGHT": - return "HIGHLIGHT" /* HIGHLIGHT */; - case 26: - case "SUBSCRIPT": - return "SUBSCRIPT" /* SUBSCRIPT */; - case 27: - case "SUPERSCRIPT": - return "SUPERSCRIPT" /* SUPERSCRIPT */; - case 28: - case "REFERENCED_CONTENT": - return "REFERENCED_CONTENT" /* REFERENCED_CONTENT */; - case 29: - case "SPOILER": - return "SPOILER" /* SPOILER */; - case -1: - case "UNRECOGNIZED": - default: - return "UNRECOGNIZED" /* UNRECOGNIZED */; - } -} -function nodeTypeToNumber(object) { - switch (object) { - case "NODE_UNSPECIFIED" /* NODE_UNSPECIFIED */: - return 0; - case "LINE_BREAK" /* LINE_BREAK */: - return 1; - case "PARAGRAPH" /* PARAGRAPH */: - return 2; - case "CODE_BLOCK" /* CODE_BLOCK */: - return 3; - case "HEADING" /* HEADING */: - return 4; - case "HORIZONTAL_RULE" /* HORIZONTAL_RULE */: - return 5; - case "BLOCKQUOTE" /* BLOCKQUOTE */: - return 6; - case "ORDERED_LIST" /* ORDERED_LIST */: - return 7; - case "UNORDERED_LIST" /* UNORDERED_LIST */: - return 8; - case "TASK_LIST" /* TASK_LIST */: - return 9; - case "MATH_BLOCK" /* MATH_BLOCK */: - return 10; - case "TABLE" /* TABLE */: - return 11; - case "EMBEDDED_CONTENT" /* EMBEDDED_CONTENT */: - return 12; - case "TEXT" /* TEXT */: - return 13; - case "BOLD" /* BOLD */: - return 14; - case "ITALIC" /* ITALIC */: - return 15; - case "BOLD_ITALIC" /* BOLD_ITALIC */: - return 16; - case "CODE" /* CODE */: - return 17; - case "IMAGE" /* IMAGE */: - return 18; - case "LINK" /* LINK */: - return 19; - case "AUTO_LINK" /* AUTO_LINK */: - return 20; - case "TAG" /* TAG */: - return 21; - case "STRIKETHROUGH" /* STRIKETHROUGH */: - return 22; - case "ESCAPING_CHARACTER" /* ESCAPING_CHARACTER */: - return 23; - case "MATH" /* MATH */: - return 24; - case "HIGHLIGHT" /* HIGHLIGHT */: - return 25; - case "SUBSCRIPT" /* SUBSCRIPT */: - return 26; - case "SUPERSCRIPT" /* SUPERSCRIPT */: - return 27; - case "REFERENCED_CONTENT" /* REFERENCED_CONTENT */: - return 28; - case "SPOILER" /* SPOILER */: - return 29; - case "UNRECOGNIZED" /* UNRECOGNIZED */: - default: - return -1; - } -} -function createBaseParseMarkdownRequest() { - return { markdown: "" }; -} -var ParseMarkdownRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.markdown !== "") { - writer.uint32(10).string(message.markdown); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseParseMarkdownRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.markdown = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ParseMarkdownRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseParseMarkdownRequest(); - message.markdown = (_a = object.markdown) != null ? _a : ""; - return message; - } -}; -function createBaseParseMarkdownResponse() { - return { nodes: [] }; -} -var ParseMarkdownResponse = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.nodes) { - Node.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseParseMarkdownResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.nodes.push(Node.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ParseMarkdownResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseParseMarkdownResponse(); - message.nodes = ((_a = object.nodes) == null ? void 0 : _a.map((e) => Node.fromPartial(e))) || []; - return message; - } -}; -function createBaseRestoreMarkdownRequest() { - return { nodes: [] }; -} -var RestoreMarkdownRequest = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.nodes) { - Node.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseRestoreMarkdownRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.nodes.push(Node.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return RestoreMarkdownRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseRestoreMarkdownRequest(); - message.nodes = ((_a = object.nodes) == null ? void 0 : _a.map((e) => Node.fromPartial(e))) || []; - return message; - } -}; -function createBaseRestoreMarkdownResponse() { - return { markdown: "" }; -} -var RestoreMarkdownResponse = { - encode(message, writer = new BinaryWriter()) { - if (message.markdown !== "") { - writer.uint32(10).string(message.markdown); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseRestoreMarkdownResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.markdown = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return RestoreMarkdownResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseRestoreMarkdownResponse(); - message.markdown = (_a = object.markdown) != null ? _a : ""; - return message; - } -}; -function createBaseGetLinkMetadataRequest() { - return { link: "" }; -} -var GetLinkMetadataRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.link !== "") { - writer.uint32(10).string(message.link); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetLinkMetadataRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.link = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetLinkMetadataRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseGetLinkMetadataRequest(); - message.link = (_a = object.link) != null ? _a : ""; - return message; - } -}; -function createBaseLinkMetadata() { - return { title: "", description: "", image: "" }; -} -var LinkMetadata = { - encode(message, writer = new BinaryWriter()) { - if (message.title !== "") { - writer.uint32(10).string(message.title); - } - if (message.description !== "") { - writer.uint32(18).string(message.description); - } - if (message.image !== "") { - writer.uint32(26).string(message.image); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseLinkMetadata(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.title = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.description = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.image = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return LinkMetadata.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseLinkMetadata(); - message.title = (_a = object.title) != null ? _a : ""; - message.description = (_b = object.description) != null ? _b : ""; - message.image = (_c = object.image) != null ? _c : ""; - return message; - } -}; -function createBaseNode() { - return { - type: "NODE_UNSPECIFIED" /* NODE_UNSPECIFIED */, - lineBreakNode: void 0, - paragraphNode: void 0, - codeBlockNode: void 0, - headingNode: void 0, - horizontalRuleNode: void 0, - blockquoteNode: void 0, - orderedListNode: void 0, - unorderedListNode: void 0, - taskListNode: void 0, - mathBlockNode: void 0, - tableNode: void 0, - embeddedContentNode: void 0, - textNode: void 0, - boldNode: void 0, - italicNode: void 0, - boldItalicNode: void 0, - codeNode: void 0, - imageNode: void 0, - linkNode: void 0, - autoLinkNode: void 0, - tagNode: void 0, - strikethroughNode: void 0, - escapingCharacterNode: void 0, - mathNode: void 0, - highlightNode: void 0, - subscriptNode: void 0, - superscriptNode: void 0, - referencedContentNode: void 0, - spoilerNode: void 0 - }; -} -var Node = { - encode(message, writer = new BinaryWriter()) { - if (message.type !== "NODE_UNSPECIFIED" /* NODE_UNSPECIFIED */) { - writer.uint32(8).int32(nodeTypeToNumber(message.type)); - } - if (message.lineBreakNode !== void 0) { - LineBreakNode.encode(message.lineBreakNode, writer.uint32(18).fork()).join(); - } - if (message.paragraphNode !== void 0) { - ParagraphNode.encode(message.paragraphNode, writer.uint32(26).fork()).join(); - } - if (message.codeBlockNode !== void 0) { - CodeBlockNode.encode(message.codeBlockNode, writer.uint32(34).fork()).join(); - } - if (message.headingNode !== void 0) { - HeadingNode.encode(message.headingNode, writer.uint32(42).fork()).join(); - } - if (message.horizontalRuleNode !== void 0) { - HorizontalRuleNode.encode(message.horizontalRuleNode, writer.uint32(50).fork()).join(); - } - if (message.blockquoteNode !== void 0) { - BlockquoteNode.encode(message.blockquoteNode, writer.uint32(58).fork()).join(); - } - if (message.orderedListNode !== void 0) { - OrderedListNode.encode(message.orderedListNode, writer.uint32(66).fork()).join(); - } - if (message.unorderedListNode !== void 0) { - UnorderedListNode.encode(message.unorderedListNode, writer.uint32(74).fork()).join(); - } - if (message.taskListNode !== void 0) { - TaskListNode.encode(message.taskListNode, writer.uint32(82).fork()).join(); - } - if (message.mathBlockNode !== void 0) { - MathBlockNode.encode(message.mathBlockNode, writer.uint32(90).fork()).join(); - } - if (message.tableNode !== void 0) { - TableNode.encode(message.tableNode, writer.uint32(98).fork()).join(); - } - if (message.embeddedContentNode !== void 0) { - EmbeddedContentNode.encode(message.embeddedContentNode, writer.uint32(106).fork()).join(); - } - if (message.textNode !== void 0) { - TextNode.encode(message.textNode, writer.uint32(114).fork()).join(); - } - if (message.boldNode !== void 0) { - BoldNode.encode(message.boldNode, writer.uint32(122).fork()).join(); - } - if (message.italicNode !== void 0) { - ItalicNode.encode(message.italicNode, writer.uint32(130).fork()).join(); - } - if (message.boldItalicNode !== void 0) { - BoldItalicNode.encode(message.boldItalicNode, writer.uint32(138).fork()).join(); - } - if (message.codeNode !== void 0) { - CodeNode.encode(message.codeNode, writer.uint32(146).fork()).join(); - } - if (message.imageNode !== void 0) { - ImageNode.encode(message.imageNode, writer.uint32(154).fork()).join(); - } - if (message.linkNode !== void 0) { - LinkNode.encode(message.linkNode, writer.uint32(162).fork()).join(); - } - if (message.autoLinkNode !== void 0) { - AutoLinkNode.encode(message.autoLinkNode, writer.uint32(170).fork()).join(); - } - if (message.tagNode !== void 0) { - TagNode.encode(message.tagNode, writer.uint32(178).fork()).join(); - } - if (message.strikethroughNode !== void 0) { - StrikethroughNode.encode(message.strikethroughNode, writer.uint32(186).fork()).join(); - } - if (message.escapingCharacterNode !== void 0) { - EscapingCharacterNode.encode(message.escapingCharacterNode, writer.uint32(194).fork()).join(); - } - if (message.mathNode !== void 0) { - MathNode.encode(message.mathNode, writer.uint32(202).fork()).join(); - } - if (message.highlightNode !== void 0) { - HighlightNode.encode(message.highlightNode, writer.uint32(210).fork()).join(); - } - if (message.subscriptNode !== void 0) { - SubscriptNode.encode(message.subscriptNode, writer.uint32(218).fork()).join(); - } - if (message.superscriptNode !== void 0) { - SuperscriptNode.encode(message.superscriptNode, writer.uint32(226).fork()).join(); - } - if (message.referencedContentNode !== void 0) { - ReferencedContentNode.encode(message.referencedContentNode, writer.uint32(234).fork()).join(); - } - if (message.spoilerNode !== void 0) { - SpoilerNode.encode(message.spoilerNode, writer.uint32(242).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - message.type = nodeTypeFromJSON(reader.int32()); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.lineBreakNode = LineBreakNode.decode(reader, reader.uint32()); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.paragraphNode = ParagraphNode.decode(reader, reader.uint32()); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - message.codeBlockNode = CodeBlockNode.decode(reader, reader.uint32()); - continue; - } - case 5: { - if (tag !== 42) { - break; - } - message.headingNode = HeadingNode.decode(reader, reader.uint32()); - continue; - } - case 6: { - if (tag !== 50) { - break; - } - message.horizontalRuleNode = HorizontalRuleNode.decode(reader, reader.uint32()); - continue; - } - case 7: { - if (tag !== 58) { - break; - } - message.blockquoteNode = BlockquoteNode.decode(reader, reader.uint32()); - continue; - } - case 8: { - if (tag !== 66) { - break; - } - message.orderedListNode = OrderedListNode.decode(reader, reader.uint32()); - continue; - } - case 9: { - if (tag !== 74) { - break; - } - message.unorderedListNode = UnorderedListNode.decode(reader, reader.uint32()); - continue; - } - case 10: { - if (tag !== 82) { - break; - } - message.taskListNode = TaskListNode.decode(reader, reader.uint32()); - continue; - } - case 11: { - if (tag !== 90) { - break; - } - message.mathBlockNode = MathBlockNode.decode(reader, reader.uint32()); - continue; - } - case 12: { - if (tag !== 98) { - break; - } - message.tableNode = TableNode.decode(reader, reader.uint32()); - continue; - } - case 13: { - if (tag !== 106) { - break; - } - message.embeddedContentNode = EmbeddedContentNode.decode(reader, reader.uint32()); - continue; - } - case 14: { - if (tag !== 114) { - break; - } - message.textNode = TextNode.decode(reader, reader.uint32()); - continue; - } - case 15: { - if (tag !== 122) { - break; - } - message.boldNode = BoldNode.decode(reader, reader.uint32()); - continue; - } - case 16: { - if (tag !== 130) { - break; - } - message.italicNode = ItalicNode.decode(reader, reader.uint32()); - continue; - } - case 17: { - if (tag !== 138) { - break; - } - message.boldItalicNode = BoldItalicNode.decode(reader, reader.uint32()); - continue; - } - case 18: { - if (tag !== 146) { - break; - } - message.codeNode = CodeNode.decode(reader, reader.uint32()); - continue; - } - case 19: { - if (tag !== 154) { - break; - } - message.imageNode = ImageNode.decode(reader, reader.uint32()); - continue; - } - case 20: { - if (tag !== 162) { - break; - } - message.linkNode = LinkNode.decode(reader, reader.uint32()); - continue; - } - case 21: { - if (tag !== 170) { - break; - } - message.autoLinkNode = AutoLinkNode.decode(reader, reader.uint32()); - continue; - } - case 22: { - if (tag !== 178) { - break; - } - message.tagNode = TagNode.decode(reader, reader.uint32()); - continue; - } - case 23: { - if (tag !== 186) { - break; - } - message.strikethroughNode = StrikethroughNode.decode(reader, reader.uint32()); - continue; - } - case 24: { - if (tag !== 194) { - break; - } - message.escapingCharacterNode = EscapingCharacterNode.decode(reader, reader.uint32()); - continue; - } - case 25: { - if (tag !== 202) { - break; - } - message.mathNode = MathNode.decode(reader, reader.uint32()); - continue; - } - case 26: { - if (tag !== 210) { - break; - } - message.highlightNode = HighlightNode.decode(reader, reader.uint32()); - continue; - } - case 27: { - if (tag !== 218) { - break; - } - message.subscriptNode = SubscriptNode.decode(reader, reader.uint32()); - continue; - } - case 28: { - if (tag !== 226) { - break; - } - message.superscriptNode = SuperscriptNode.decode(reader, reader.uint32()); - continue; - } - case 29: { - if (tag !== 234) { - break; - } - message.referencedContentNode = ReferencedContentNode.decode(reader, reader.uint32()); - continue; - } - case 30: { - if (tag !== 242) { - break; - } - message.spoilerNode = SpoilerNode.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return Node.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseNode(); - message.type = (_a = object.type) != null ? _a : "NODE_UNSPECIFIED" /* NODE_UNSPECIFIED */; - message.lineBreakNode = object.lineBreakNode !== void 0 && object.lineBreakNode !== null ? LineBreakNode.fromPartial(object.lineBreakNode) : void 0; - message.paragraphNode = object.paragraphNode !== void 0 && object.paragraphNode !== null ? ParagraphNode.fromPartial(object.paragraphNode) : void 0; - message.codeBlockNode = object.codeBlockNode !== void 0 && object.codeBlockNode !== null ? CodeBlockNode.fromPartial(object.codeBlockNode) : void 0; - message.headingNode = object.headingNode !== void 0 && object.headingNode !== null ? HeadingNode.fromPartial(object.headingNode) : void 0; - message.horizontalRuleNode = object.horizontalRuleNode !== void 0 && object.horizontalRuleNode !== null ? HorizontalRuleNode.fromPartial(object.horizontalRuleNode) : void 0; - message.blockquoteNode = object.blockquoteNode !== void 0 && object.blockquoteNode !== null ? BlockquoteNode.fromPartial(object.blockquoteNode) : void 0; - message.orderedListNode = object.orderedListNode !== void 0 && object.orderedListNode !== null ? OrderedListNode.fromPartial(object.orderedListNode) : void 0; - message.unorderedListNode = object.unorderedListNode !== void 0 && object.unorderedListNode !== null ? UnorderedListNode.fromPartial(object.unorderedListNode) : void 0; - message.taskListNode = object.taskListNode !== void 0 && object.taskListNode !== null ? TaskListNode.fromPartial(object.taskListNode) : void 0; - message.mathBlockNode = object.mathBlockNode !== void 0 && object.mathBlockNode !== null ? MathBlockNode.fromPartial(object.mathBlockNode) : void 0; - message.tableNode = object.tableNode !== void 0 && object.tableNode !== null ? TableNode.fromPartial(object.tableNode) : void 0; - message.embeddedContentNode = object.embeddedContentNode !== void 0 && object.embeddedContentNode !== null ? EmbeddedContentNode.fromPartial(object.embeddedContentNode) : void 0; - message.textNode = object.textNode !== void 0 && object.textNode !== null ? TextNode.fromPartial(object.textNode) : void 0; - message.boldNode = object.boldNode !== void 0 && object.boldNode !== null ? BoldNode.fromPartial(object.boldNode) : void 0; - message.italicNode = object.italicNode !== void 0 && object.italicNode !== null ? ItalicNode.fromPartial(object.italicNode) : void 0; - message.boldItalicNode = object.boldItalicNode !== void 0 && object.boldItalicNode !== null ? BoldItalicNode.fromPartial(object.boldItalicNode) : void 0; - message.codeNode = object.codeNode !== void 0 && object.codeNode !== null ? CodeNode.fromPartial(object.codeNode) : void 0; - message.imageNode = object.imageNode !== void 0 && object.imageNode !== null ? ImageNode.fromPartial(object.imageNode) : void 0; - message.linkNode = object.linkNode !== void 0 && object.linkNode !== null ? LinkNode.fromPartial(object.linkNode) : void 0; - message.autoLinkNode = object.autoLinkNode !== void 0 && object.autoLinkNode !== null ? AutoLinkNode.fromPartial(object.autoLinkNode) : void 0; - message.tagNode = object.tagNode !== void 0 && object.tagNode !== null ? TagNode.fromPartial(object.tagNode) : void 0; - message.strikethroughNode = object.strikethroughNode !== void 0 && object.strikethroughNode !== null ? StrikethroughNode.fromPartial(object.strikethroughNode) : void 0; - message.escapingCharacterNode = object.escapingCharacterNode !== void 0 && object.escapingCharacterNode !== null ? EscapingCharacterNode.fromPartial(object.escapingCharacterNode) : void 0; - message.mathNode = object.mathNode !== void 0 && object.mathNode !== null ? MathNode.fromPartial(object.mathNode) : void 0; - message.highlightNode = object.highlightNode !== void 0 && object.highlightNode !== null ? HighlightNode.fromPartial(object.highlightNode) : void 0; - message.subscriptNode = object.subscriptNode !== void 0 && object.subscriptNode !== null ? SubscriptNode.fromPartial(object.subscriptNode) : void 0; - message.superscriptNode = object.superscriptNode !== void 0 && object.superscriptNode !== null ? SuperscriptNode.fromPartial(object.superscriptNode) : void 0; - message.referencedContentNode = object.referencedContentNode !== void 0 && object.referencedContentNode !== null ? ReferencedContentNode.fromPartial(object.referencedContentNode) : void 0; - message.spoilerNode = object.spoilerNode !== void 0 && object.spoilerNode !== null ? SpoilerNode.fromPartial(object.spoilerNode) : void 0; - return message; - } -}; -function createBaseLineBreakNode() { - return {}; -} -var LineBreakNode = { - encode(_, writer = new BinaryWriter()) { - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseLineBreakNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return LineBreakNode.fromPartial(base != null ? base : {}); - }, - fromPartial(_) { - const message = createBaseLineBreakNode(); - return message; - } -}; -function createBaseParagraphNode() { - return { children: [] }; -} -var ParagraphNode = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.children) { - Node.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseParagraphNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.children.push(Node.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ParagraphNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseParagraphNode(); - message.children = ((_a = object.children) == null ? void 0 : _a.map((e) => Node.fromPartial(e))) || []; - return message; - } -}; -function createBaseCodeBlockNode() { - return { language: "", content: "" }; -} -var CodeBlockNode = { - encode(message, writer = new BinaryWriter()) { - if (message.language !== "") { - writer.uint32(10).string(message.language); - } - if (message.content !== "") { - writer.uint32(18).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseCodeBlockNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.language = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return CodeBlockNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseCodeBlockNode(); - message.language = (_a = object.language) != null ? _a : ""; - message.content = (_b = object.content) != null ? _b : ""; - return message; - } -}; -function createBaseHeadingNode() { - return { level: 0, children: [] }; -} -var HeadingNode = { - encode(message, writer = new BinaryWriter()) { - if (message.level !== 0) { - writer.uint32(8).int32(message.level); - } - for (const v of message.children) { - Node.encode(v, writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseHeadingNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - message.level = reader.int32(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.children.push(Node.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return HeadingNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseHeadingNode(); - message.level = (_a = object.level) != null ? _a : 0; - message.children = ((_b = object.children) == null ? void 0 : _b.map((e) => Node.fromPartial(e))) || []; - return message; - } -}; -function createBaseHorizontalRuleNode() { - return { symbol: "" }; -} -var HorizontalRuleNode = { - encode(message, writer = new BinaryWriter()) { - if (message.symbol !== "") { - writer.uint32(10).string(message.symbol); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseHorizontalRuleNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.symbol = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return HorizontalRuleNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseHorizontalRuleNode(); - message.symbol = (_a = object.symbol) != null ? _a : ""; - return message; - } -}; -function createBaseBlockquoteNode() { - return { children: [] }; -} -var BlockquoteNode = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.children) { - Node.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseBlockquoteNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.children.push(Node.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return BlockquoteNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseBlockquoteNode(); - message.children = ((_a = object.children) == null ? void 0 : _a.map((e) => Node.fromPartial(e))) || []; - return message; - } -}; -function createBaseOrderedListNode() { - return { number: "", indent: 0, children: [] }; -} -var OrderedListNode = { - encode(message, writer = new BinaryWriter()) { - if (message.number !== "") { - writer.uint32(10).string(message.number); - } - if (message.indent !== 0) { - writer.uint32(16).int32(message.indent); - } - for (const v of message.children) { - Node.encode(v, writer.uint32(26).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseOrderedListNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.number = reader.string(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.indent = reader.int32(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.children.push(Node.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return OrderedListNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseOrderedListNode(); - message.number = (_a = object.number) != null ? _a : ""; - message.indent = (_b = object.indent) != null ? _b : 0; - message.children = ((_c = object.children) == null ? void 0 : _c.map((e) => Node.fromPartial(e))) || []; - return message; - } -}; -function createBaseUnorderedListNode() { - return { symbol: "", indent: 0, children: [] }; -} -var UnorderedListNode = { - encode(message, writer = new BinaryWriter()) { - if (message.symbol !== "") { - writer.uint32(10).string(message.symbol); - } - if (message.indent !== 0) { - writer.uint32(16).int32(message.indent); - } - for (const v of message.children) { - Node.encode(v, writer.uint32(26).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUnorderedListNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.symbol = reader.string(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.indent = reader.int32(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.children.push(Node.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UnorderedListNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseUnorderedListNode(); - message.symbol = (_a = object.symbol) != null ? _a : ""; - message.indent = (_b = object.indent) != null ? _b : 0; - message.children = ((_c = object.children) == null ? void 0 : _c.map((e) => Node.fromPartial(e))) || []; - return message; - } -}; -function createBaseTaskListNode() { - return { symbol: "", indent: 0, complete: false, children: [] }; -} -var TaskListNode = { - encode(message, writer = new BinaryWriter()) { - if (message.symbol !== "") { - writer.uint32(10).string(message.symbol); - } - if (message.indent !== 0) { - writer.uint32(16).int32(message.indent); - } - if (message.complete !== false) { - writer.uint32(24).bool(message.complete); - } - for (const v of message.children) { - Node.encode(v, writer.uint32(34).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseTaskListNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.symbol = reader.string(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.indent = reader.int32(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.complete = reader.bool(); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - message.children.push(Node.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return TaskListNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d; - const message = createBaseTaskListNode(); - message.symbol = (_a = object.symbol) != null ? _a : ""; - message.indent = (_b = object.indent) != null ? _b : 0; - message.complete = (_c = object.complete) != null ? _c : false; - message.children = ((_d = object.children) == null ? void 0 : _d.map((e) => Node.fromPartial(e))) || []; - return message; - } -}; -function createBaseMathBlockNode() { - return { content: "" }; -} -var MathBlockNode = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseMathBlockNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return MathBlockNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseMathBlockNode(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseTableNode() { - return { header: [], delimiter: [], rows: [] }; -} -var TableNode = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.header) { - writer.uint32(10).string(v); - } - for (const v of message.delimiter) { - writer.uint32(18).string(v); - } - for (const v of message.rows) { - TableNode_Row.encode(v, writer.uint32(26).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseTableNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.header.push(reader.string()); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.delimiter.push(reader.string()); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.rows.push(TableNode_Row.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return TableNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseTableNode(); - message.header = ((_a = object.header) == null ? void 0 : _a.map((e) => e)) || []; - message.delimiter = ((_b = object.delimiter) == null ? void 0 : _b.map((e) => e)) || []; - message.rows = ((_c = object.rows) == null ? void 0 : _c.map((e) => TableNode_Row.fromPartial(e))) || []; - return message; - } -}; -function createBaseTableNode_Row() { - return { cells: [] }; -} -var TableNode_Row = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.cells) { - writer.uint32(10).string(v); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseTableNode_Row(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.cells.push(reader.string()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return TableNode_Row.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseTableNode_Row(); - message.cells = ((_a = object.cells) == null ? void 0 : _a.map((e) => e)) || []; - return message; - } -}; -function createBaseEmbeddedContentNode() { - return { resourceName: "", params: "" }; -} -var EmbeddedContentNode = { - encode(message, writer = new BinaryWriter()) { - if (message.resourceName !== "") { - writer.uint32(10).string(message.resourceName); - } - if (message.params !== "") { - writer.uint32(18).string(message.params); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseEmbeddedContentNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.resourceName = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.params = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return EmbeddedContentNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseEmbeddedContentNode(); - message.resourceName = (_a = object.resourceName) != null ? _a : ""; - message.params = (_b = object.params) != null ? _b : ""; - return message; - } -}; -function createBaseTextNode() { - return { content: "" }; -} -var TextNode = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseTextNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return TextNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseTextNode(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseBoldNode() { - return { symbol: "", children: [] }; -} -var BoldNode = { - encode(message, writer = new BinaryWriter()) { - if (message.symbol !== "") { - writer.uint32(10).string(message.symbol); - } - for (const v of message.children) { - Node.encode(v, writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseBoldNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.symbol = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.children.push(Node.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return BoldNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseBoldNode(); - message.symbol = (_a = object.symbol) != null ? _a : ""; - message.children = ((_b = object.children) == null ? void 0 : _b.map((e) => Node.fromPartial(e))) || []; - return message; - } -}; -function createBaseItalicNode() { - return { symbol: "", content: "" }; -} -var ItalicNode = { - encode(message, writer = new BinaryWriter()) { - if (message.symbol !== "") { - writer.uint32(10).string(message.symbol); - } - if (message.content !== "") { - writer.uint32(18).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseItalicNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.symbol = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ItalicNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseItalicNode(); - message.symbol = (_a = object.symbol) != null ? _a : ""; - message.content = (_b = object.content) != null ? _b : ""; - return message; - } -}; -function createBaseBoldItalicNode() { - return { symbol: "", content: "" }; -} -var BoldItalicNode = { - encode(message, writer = new BinaryWriter()) { - if (message.symbol !== "") { - writer.uint32(10).string(message.symbol); - } - if (message.content !== "") { - writer.uint32(18).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseBoldItalicNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.symbol = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return BoldItalicNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseBoldItalicNode(); - message.symbol = (_a = object.symbol) != null ? _a : ""; - message.content = (_b = object.content) != null ? _b : ""; - return message; - } -}; -function createBaseCodeNode() { - return { content: "" }; -} -var CodeNode = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseCodeNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return CodeNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseCodeNode(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseImageNode() { - return { altText: "", url: "" }; -} -var ImageNode = { - encode(message, writer = new BinaryWriter()) { - if (message.altText !== "") { - writer.uint32(10).string(message.altText); - } - if (message.url !== "") { - writer.uint32(18).string(message.url); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseImageNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.altText = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.url = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ImageNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseImageNode(); - message.altText = (_a = object.altText) != null ? _a : ""; - message.url = (_b = object.url) != null ? _b : ""; - return message; - } -}; -function createBaseLinkNode() { - return { text: "", url: "" }; -} -var LinkNode = { - encode(message, writer = new BinaryWriter()) { - if (message.text !== "") { - writer.uint32(10).string(message.text); - } - if (message.url !== "") { - writer.uint32(18).string(message.url); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseLinkNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.text = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.url = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return LinkNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseLinkNode(); - message.text = (_a = object.text) != null ? _a : ""; - message.url = (_b = object.url) != null ? _b : ""; - return message; - } -}; -function createBaseAutoLinkNode() { - return { url: "", isRawText: false }; -} -var AutoLinkNode = { - encode(message, writer = new BinaryWriter()) { - if (message.url !== "") { - writer.uint32(10).string(message.url); - } - if (message.isRawText !== false) { - writer.uint32(16).bool(message.isRawText); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseAutoLinkNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.url = reader.string(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.isRawText = reader.bool(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return AutoLinkNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseAutoLinkNode(); - message.url = (_a = object.url) != null ? _a : ""; - message.isRawText = (_b = object.isRawText) != null ? _b : false; - return message; - } -}; -function createBaseTagNode() { - return { content: "" }; -} -var TagNode = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseTagNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return TagNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseTagNode(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseStrikethroughNode() { - return { content: "" }; -} -var StrikethroughNode = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseStrikethroughNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return StrikethroughNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseStrikethroughNode(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseEscapingCharacterNode() { - return { symbol: "" }; -} -var EscapingCharacterNode = { - encode(message, writer = new BinaryWriter()) { - if (message.symbol !== "") { - writer.uint32(10).string(message.symbol); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseEscapingCharacterNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.symbol = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return EscapingCharacterNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseEscapingCharacterNode(); - message.symbol = (_a = object.symbol) != null ? _a : ""; - return message; - } -}; -function createBaseMathNode() { - return { content: "" }; -} -var MathNode = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseMathNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return MathNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseMathNode(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseHighlightNode() { - return { content: "" }; -} -var HighlightNode = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseHighlightNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return HighlightNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseHighlightNode(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseSubscriptNode() { - return { content: "" }; -} -var SubscriptNode = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSubscriptNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SubscriptNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseSubscriptNode(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseSuperscriptNode() { - return { content: "" }; -} -var SuperscriptNode = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSuperscriptNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SuperscriptNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseSuperscriptNode(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseReferencedContentNode() { - return { resourceName: "", params: "" }; -} -var ReferencedContentNode = { - encode(message, writer = new BinaryWriter()) { - if (message.resourceName !== "") { - writer.uint32(10).string(message.resourceName); - } - if (message.params !== "") { - writer.uint32(18).string(message.params); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseReferencedContentNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.resourceName = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.params = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ReferencedContentNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseReferencedContentNode(); - message.resourceName = (_a = object.resourceName) != null ? _a : ""; - message.params = (_b = object.params) != null ? _b : ""; - return message; - } -}; -function createBaseSpoilerNode() { - return { content: "" }; -} -var SpoilerNode = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSpoilerNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SpoilerNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseSpoilerNode(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -var MarkdownServiceDefinition = { - name: "MarkdownService", - fullName: "memos.api.v1.MarkdownService", - methods: { - /** Parses the given markdown content and returns a list of nodes. */ - parseMarkdown: { - name: "ParseMarkdown", - requestType: ParseMarkdownRequest, - requestStream: false, - responseType: ParseMarkdownResponse, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 27, - 58, - 1, - 42, - 34, - 22, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 109, - 97, - 114, - 107, - 100, - 111, - 119, - 110, - 47, - 112, - 97, - 114, - 115, - 101 - ]) - ] - } - } - }, - /** Restores the given nodes to markdown content. */ - restoreMarkdown: { - name: "RestoreMarkdown", - requestType: RestoreMarkdownRequest, - requestStream: false, - responseType: RestoreMarkdownResponse, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 29, - 58, - 1, - 42, - 34, - 24, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 109, - 97, - 114, - 107, - 100, - 111, - 119, - 110, - 58, - 114, - 101, - 115, - 116, - 111, - 114, - 101 - ]) - ] - } - } - }, - /** GetLinkMetadata returns metadata for a given link. */ - getLinkMetadata: { - name: "GetLinkMetadata", - requestType: GetLinkMetadataRequest, - requestStream: false, - responseType: LinkMetadata, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 32, - 18, - 30, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 109, - 97, - 114, - 107, - 100, - 111, - 119, - 110, - 47, - 108, - 105, - 110, - 107, - 58, - 109, - 101, - 116, - 97, - 100, - 97, - 116, - 97 - ]) - ] - } - } - } - } -}; - -// src/api/memos-proto-v0.22.0/gen/api/v1/memo_relation_service.ts -function memoRelation_TypeFromJSON(object) { - switch (object) { - case 0: - case "TYPE_UNSPECIFIED": - return "TYPE_UNSPECIFIED" /* TYPE_UNSPECIFIED */; - case 1: - case "REFERENCE": - return "REFERENCE" /* REFERENCE */; - case 2: - case "COMMENT": - return "COMMENT" /* COMMENT */; - case -1: - case "UNRECOGNIZED": - default: - return "UNRECOGNIZED" /* UNRECOGNIZED */; - } -} -function memoRelation_TypeToNumber(object) { - switch (object) { - case "TYPE_UNSPECIFIED" /* TYPE_UNSPECIFIED */: - return 0; - case "REFERENCE" /* REFERENCE */: - return 1; - case "COMMENT" /* COMMENT */: - return 2; - case "UNRECOGNIZED" /* UNRECOGNIZED */: - default: - return -1; - } -} -function createBaseMemoRelation() { - return { memo: "", relatedMemo: "", type: "TYPE_UNSPECIFIED" /* TYPE_UNSPECIFIED */ }; -} -var MemoRelation = { - encode(message, writer = new BinaryWriter()) { - if (message.memo !== "") { - writer.uint32(10).string(message.memo); - } - if (message.relatedMemo !== "") { - writer.uint32(18).string(message.relatedMemo); - } - if (message.type !== "TYPE_UNSPECIFIED" /* TYPE_UNSPECIFIED */) { - writer.uint32(24).int32(memoRelation_TypeToNumber(message.type)); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseMemoRelation(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.memo = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.relatedMemo = reader.string(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.type = memoRelation_TypeFromJSON(reader.int32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return MemoRelation.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseMemoRelation(); - message.memo = (_a = object.memo) != null ? _a : ""; - message.relatedMemo = (_b = object.relatedMemo) != null ? _b : ""; - message.type = (_c = object.type) != null ? _c : "TYPE_UNSPECIFIED" /* TYPE_UNSPECIFIED */; - return message; - } -}; - -// src/api/memos-proto-v0.22.0/gen/api/v1/reaction_service.ts -function reaction_TypeFromJSON(object) { - switch (object) { - case 0: - case "TYPE_UNSPECIFIED": - return "TYPE_UNSPECIFIED" /* TYPE_UNSPECIFIED */; - case 1: - case "THUMBS_UP": - return "THUMBS_UP" /* THUMBS_UP */; - case 2: - case "THUMBS_DOWN": - return "THUMBS_DOWN" /* THUMBS_DOWN */; - case 3: - case "HEART": - return "HEART" /* HEART */; - case 4: - case "FIRE": - return "FIRE" /* FIRE */; - case 5: - case "CLAPPING_HANDS": - return "CLAPPING_HANDS" /* CLAPPING_HANDS */; - case 6: - case "LAUGH": - return "LAUGH" /* LAUGH */; - case 7: - case "OK_HAND": - return "OK_HAND" /* OK_HAND */; - case 8: - case "ROCKET": - return "ROCKET" /* ROCKET */; - case 9: - case "EYES": - return "EYES" /* EYES */; - case 10: - case "THINKING_FACE": - return "THINKING_FACE" /* THINKING_FACE */; - case 11: - case "CLOWN_FACE": - return "CLOWN_FACE" /* CLOWN_FACE */; - case 12: - case "QUESTION_MARK": - return "QUESTION_MARK" /* QUESTION_MARK */; - case -1: - case "UNRECOGNIZED": - default: - return "UNRECOGNIZED" /* UNRECOGNIZED */; - } -} -function reaction_TypeToNumber(object) { - switch (object) { - case "TYPE_UNSPECIFIED" /* TYPE_UNSPECIFIED */: - return 0; - case "THUMBS_UP" /* THUMBS_UP */: - return 1; - case "THUMBS_DOWN" /* THUMBS_DOWN */: - return 2; - case "HEART" /* HEART */: - return 3; - case "FIRE" /* FIRE */: - return 4; - case "CLAPPING_HANDS" /* CLAPPING_HANDS */: - return 5; - case "LAUGH" /* LAUGH */: - return 6; - case "OK_HAND" /* OK_HAND */: - return 7; - case "ROCKET" /* ROCKET */: - return 8; - case "EYES" /* EYES */: - return 9; - case "THINKING_FACE" /* THINKING_FACE */: - return 10; - case "CLOWN_FACE" /* CLOWN_FACE */: - return 11; - case "QUESTION_MARK" /* QUESTION_MARK */: - return 12; - case "UNRECOGNIZED" /* UNRECOGNIZED */: - default: - return -1; - } -} -function createBaseReaction() { - return { id: 0, creator: "", contentId: "", reactionType: "TYPE_UNSPECIFIED" /* TYPE_UNSPECIFIED */ }; -} -var Reaction = { - encode(message, writer = new BinaryWriter()) { - if (message.id !== 0) { - writer.uint32(8).int32(message.id); - } - if (message.creator !== "") { - writer.uint32(18).string(message.creator); - } - if (message.contentId !== "") { - writer.uint32(26).string(message.contentId); - } - if (message.reactionType !== "TYPE_UNSPECIFIED" /* TYPE_UNSPECIFIED */) { - writer.uint32(32).int32(reaction_TypeToNumber(message.reactionType)); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseReaction(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - message.id = reader.int32(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.creator = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.contentId = reader.string(); - continue; - } - case 4: { - if (tag !== 32) { - break; - } - message.reactionType = reaction_TypeFromJSON(reader.int32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return Reaction.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d; - const message = createBaseReaction(); - message.id = (_a = object.id) != null ? _a : 0; - message.creator = (_b = object.creator) != null ? _b : ""; - message.contentId = (_c = object.contentId) != null ? _c : ""; - message.reactionType = (_d = object.reactionType) != null ? _d : "TYPE_UNSPECIFIED" /* TYPE_UNSPECIFIED */; - return message; - } -}; - -// src/api/memos-proto-v0.22.0/gen/google/protobuf/any.ts -function createBaseAny() { - return { typeUrl: "", value: new Uint8Array(0) }; -} -var Any = { - encode(message, writer = new BinaryWriter()) { - if (message.typeUrl !== "") { - writer.uint32(10).string(message.typeUrl); - } - if (message.value.length !== 0) { - writer.uint32(18).bytes(message.value); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseAny(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.typeUrl = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.value = reader.bytes(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return Any.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseAny(); - message.typeUrl = (_a = object.typeUrl) != null ? _a : ""; - message.value = (_b = object.value) != null ? _b : new Uint8Array(0); - return message; - } -}; - -// src/api/memos-proto-v0.22.0/gen/google/api/httpbody.ts -function createBaseHttpBody() { - return { contentType: "", data: new Uint8Array(0), extensions: [] }; -} -var HttpBody = { - encode(message, writer = new BinaryWriter()) { - if (message.contentType !== "") { - writer.uint32(10).string(message.contentType); - } - if (message.data.length !== 0) { - writer.uint32(18).bytes(message.data); - } - for (const v of message.extensions) { - Any.encode(v, writer.uint32(26).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseHttpBody(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.contentType = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.data = reader.bytes(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.extensions.push(Any.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return HttpBody.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseHttpBody(); - message.contentType = (_a = object.contentType) != null ? _a : ""; - message.data = (_b = object.data) != null ? _b : new Uint8Array(0); - message.extensions = ((_c = object.extensions) == null ? void 0 : _c.map((e) => Any.fromPartial(e))) || []; - return message; - } -}; - -// src/api/memos-proto-v0.22.0/gen/api/v1/resource_service.ts -function createBaseResource() { - return { - name: "", - uid: "", - createTime: void 0, - filename: "", - content: new Uint8Array(0), - externalLink: "", - type: "", - size: 0, - memo: void 0 - }; -} -var Resource = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.uid !== "") { - writer.uint32(18).string(message.uid); - } - if (message.createTime !== void 0) { - Timestamp.encode(toTimestamp(message.createTime), writer.uint32(26).fork()).join(); - } - if (message.filename !== "") { - writer.uint32(34).string(message.filename); - } - if (message.content.length !== 0) { - writer.uint32(42).bytes(message.content); - } - if (message.externalLink !== "") { - writer.uint32(50).string(message.externalLink); - } - if (message.type !== "") { - writer.uint32(58).string(message.type); - } - if (message.size !== 0) { - writer.uint32(64).int64(message.size); - } - if (message.memo !== void 0) { - writer.uint32(74).string(message.memo); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseResource(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.uid = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.createTime = fromTimestamp(Timestamp.decode(reader, reader.uint32())); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - message.filename = reader.string(); - continue; - } - case 5: { - if (tag !== 42) { - break; - } - message.content = reader.bytes(); - continue; - } - case 6: { - if (tag !== 50) { - break; - } - message.externalLink = reader.string(); - continue; - } - case 7: { - if (tag !== 58) { - break; - } - message.type = reader.string(); - continue; - } - case 8: { - if (tag !== 64) { - break; - } - message.size = longToNumber2(reader.int64()); - continue; - } - case 9: { - if (tag !== 74) { - break; - } - message.memo = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return Resource.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d, _e, _f, _g, _h, _i; - const message = createBaseResource(); - message.name = (_a = object.name) != null ? _a : ""; - message.uid = (_b = object.uid) != null ? _b : ""; - message.createTime = (_c = object.createTime) != null ? _c : void 0; - message.filename = (_d = object.filename) != null ? _d : ""; - message.content = (_e = object.content) != null ? _e : new Uint8Array(0); - message.externalLink = (_f = object.externalLink) != null ? _f : ""; - message.type = (_g = object.type) != null ? _g : ""; - message.size = (_h = object.size) != null ? _h : 0; - message.memo = (_i = object.memo) != null ? _i : void 0; - return message; - } -}; -function createBaseCreateResourceRequest() { - return { resource: void 0 }; -} -var CreateResourceRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.resource !== void 0) { - Resource.encode(message.resource, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseCreateResourceRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.resource = Resource.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return CreateResourceRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - const message = createBaseCreateResourceRequest(); - message.resource = object.resource !== void 0 && object.resource !== null ? Resource.fromPartial(object.resource) : void 0; - return message; - } -}; -function createBaseListResourcesRequest() { - return {}; -} -var ListResourcesRequest = { - encode(_, writer = new BinaryWriter()) { - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListResourcesRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListResourcesRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(_) { - const message = createBaseListResourcesRequest(); - return message; - } -}; -function createBaseListResourcesResponse() { - return { resources: [] }; -} -var ListResourcesResponse = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.resources) { - Resource.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListResourcesResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.resources.push(Resource.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListResourcesResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListResourcesResponse(); - message.resources = ((_a = object.resources) == null ? void 0 : _a.map((e) => Resource.fromPartial(e))) || []; - return message; - } -}; -function createBaseSearchResourcesRequest() { - return { filter: "" }; -} -var SearchResourcesRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.filter !== "") { - writer.uint32(10).string(message.filter); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSearchResourcesRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.filter = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SearchResourcesRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseSearchResourcesRequest(); - message.filter = (_a = object.filter) != null ? _a : ""; - return message; - } -}; -function createBaseSearchResourcesResponse() { - return { resources: [] }; -} -var SearchResourcesResponse = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.resources) { - Resource.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSearchResourcesResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.resources.push(Resource.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SearchResourcesResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseSearchResourcesResponse(); - message.resources = ((_a = object.resources) == null ? void 0 : _a.map((e) => Resource.fromPartial(e))) || []; - return message; - } -}; -function createBaseGetResourceRequest() { - return { name: "" }; -} -var GetResourceRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetResourceRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetResourceRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseGetResourceRequest(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseGetResourceBinaryRequest() { - return { name: "", filename: "" }; -} -var GetResourceBinaryRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.filename !== "") { - writer.uint32(18).string(message.filename); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetResourceBinaryRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.filename = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetResourceBinaryRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseGetResourceBinaryRequest(); - message.name = (_a = object.name) != null ? _a : ""; - message.filename = (_b = object.filename) != null ? _b : ""; - return message; - } -}; -function createBaseUpdateResourceRequest() { - return { resource: void 0, updateMask: void 0 }; -} -var UpdateResourceRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.resource !== void 0) { - Resource.encode(message.resource, writer.uint32(10).fork()).join(); - } - if (message.updateMask !== void 0) { - FieldMask.encode(FieldMask.wrap(message.updateMask), writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUpdateResourceRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.resource = Resource.decode(reader, reader.uint32()); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.updateMask = FieldMask.unwrap(FieldMask.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UpdateResourceRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseUpdateResourceRequest(); - message.resource = object.resource !== void 0 && object.resource !== null ? Resource.fromPartial(object.resource) : void 0; - message.updateMask = (_a = object.updateMask) != null ? _a : void 0; - return message; - } -}; -function createBaseDeleteResourceRequest() { - return { name: "" }; -} -var DeleteResourceRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseDeleteResourceRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return DeleteResourceRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseDeleteResourceRequest(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -var ResourceServiceDefinition = { - name: "ResourceService", - fullName: "memos.api.v1.ResourceService", - methods: { - /** CreateResource creates a new resource. */ - createResource: { - name: "CreateResource", - requestType: CreateResourceRequest, - requestStream: false, - responseType: Resource, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 29, - 58, - 8, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 34, - 17, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 115 - ]) - ] - } - } - }, - /** ListResources lists all resources. */ - listResources: { - name: "ListResources", - requestType: ListResourcesRequest, - requestStream: false, - responseType: ListResourcesResponse, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([19, 18, 17, 47, 97, 112, 105, 47, 118, 49, 47, 114, 101, 115, 111, 117, 114, 99, 101, 115]) - ] - } - } - }, - /** SearchResources searches memos. */ - searchResources: { - name: "SearchResources", - requestType: SearchResourcesRequest, - requestStream: false, - responseType: SearchResourcesResponse, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 26, - 18, - 24, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 115, - 58, - 115, - 101, - 97, - 114, - 99, - 104 - ]) - ] - } - } - }, - /** GetResource returns a resource by name. */ - getResource: { - name: "GetResource", - requestType: GetResourceRequest, - requestStream: false, - responseType: Resource, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 28, - 18, - 26, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 115, - 47, - 42, - 125 - ]) - ] - } - } - }, - /** GetResourceBinary returns a resource binary by name. */ - getResourceBinary: { - name: "GetResourceBinary", - requestType: GetResourceBinaryRequest, - requestStream: false, - responseType: HttpBody, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([13, 110, 97, 109, 101, 44, 102, 105, 108, 101, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 37, - 18, - 35, - 47, - 102, - 105, - 108, - 101, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 115, - 47, - 42, - 125, - 47, - 123, - 102, - 105, - 108, - 101, - 110, - 97, - 109, - 101, - 125 - ]) - ] - } - } - }, - /** UpdateResource updates a resource. */ - updateResource: { - name: "UpdateResource", - requestType: UpdateResourceRequest, - requestStream: false, - responseType: Resource, - responseStream: false, - options: { - _unknownFields: { - 8410: [ - new Uint8Array([ - 20, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 44, - 117, - 112, - 100, - 97, - 116, - 101, - 95, - 109, - 97, - 115, - 107 - ]) - ], - 578365826: [ - new Uint8Array([ - 47, - 58, - 8, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 50, - 35, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 46, - 110, - 97, - 109, - 101, - 61, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 115, - 47, - 42, - 125 - ]) - ] - } - } - }, - /** DeleteResource deletes a resource by name. */ - deleteResource: { - name: "DeleteResource", - requestType: DeleteResourceRequest, - requestStream: false, - responseType: Empty, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 28, - 42, - 26, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 115, - 47, - 42, - 125 - ]) - ] - } - } - } - } -}; -function toTimestamp(date) { - const seconds = Math.trunc(date.getTime() / 1e3); - const nanos = date.getTime() % 1e3 * 1e6; - return { seconds, nanos }; -} -function fromTimestamp(t) { - let millis = (t.seconds || 0) * 1e3; - millis += (t.nanos || 0) / 1e6; - return new globalThis.Date(millis); -} -function longToNumber2(int64) { - const num = globalThis.Number(int64.toString()); - if (num > globalThis.Number.MAX_SAFE_INTEGER) { - throw new globalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER"); - } - if (num < globalThis.Number.MIN_SAFE_INTEGER) { - throw new globalThis.Error("Value is smaller than Number.MIN_SAFE_INTEGER"); - } - return num; -} - -// src/api/memos-proto-v0.22.0/gen/api/v1/memo_service.ts -function visibilityFromJSON(object) { - switch (object) { - case 0: - case "VISIBILITY_UNSPECIFIED": - return "VISIBILITY_UNSPECIFIED" /* VISIBILITY_UNSPECIFIED */; - case 1: - case "PRIVATE": - return "PRIVATE" /* PRIVATE */; - case 2: - case "PROTECTED": - return "PROTECTED" /* PROTECTED */; - case 3: - case "PUBLIC": - return "PUBLIC" /* PUBLIC */; - case -1: - case "UNRECOGNIZED": - default: - return "UNRECOGNIZED" /* UNRECOGNIZED */; - } -} -function visibilityToNumber(object) { - switch (object) { - case "VISIBILITY_UNSPECIFIED" /* VISIBILITY_UNSPECIFIED */: - return 0; - case "PRIVATE" /* PRIVATE */: - return 1; - case "PROTECTED" /* PROTECTED */: - return 2; - case "PUBLIC" /* PUBLIC */: - return 3; - case "UNRECOGNIZED" /* UNRECOGNIZED */: - default: - return -1; - } -} -function createBaseMemo() { - return { - name: "", - uid: "", - rowStatus: "ROW_STATUS_UNSPECIFIED" /* ROW_STATUS_UNSPECIFIED */, - creator: "", - createTime: void 0, - updateTime: void 0, - displayTime: void 0, - content: "", - nodes: [], - visibility: "VISIBILITY_UNSPECIFIED" /* VISIBILITY_UNSPECIFIED */, - tags: [], - pinned: false, - parentId: void 0, - resources: [], - relations: [], - reactions: [], - property: void 0, - parent: void 0 - }; -} -var Memo = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.uid !== "") { - writer.uint32(18).string(message.uid); - } - if (message.rowStatus !== "ROW_STATUS_UNSPECIFIED" /* ROW_STATUS_UNSPECIFIED */) { - writer.uint32(24).int32(rowStatusToNumber(message.rowStatus)); - } - if (message.creator !== "") { - writer.uint32(34).string(message.creator); - } - if (message.createTime !== void 0) { - Timestamp.encode(toTimestamp2(message.createTime), writer.uint32(42).fork()).join(); - } - if (message.updateTime !== void 0) { - Timestamp.encode(toTimestamp2(message.updateTime), writer.uint32(50).fork()).join(); - } - if (message.displayTime !== void 0) { - Timestamp.encode(toTimestamp2(message.displayTime), writer.uint32(58).fork()).join(); - } - if (message.content !== "") { - writer.uint32(66).string(message.content); - } - for (const v of message.nodes) { - Node.encode(v, writer.uint32(74).fork()).join(); - } - if (message.visibility !== "VISIBILITY_UNSPECIFIED" /* VISIBILITY_UNSPECIFIED */) { - writer.uint32(80).int32(visibilityToNumber(message.visibility)); - } - for (const v of message.tags) { - writer.uint32(90).string(v); - } - if (message.pinned !== false) { - writer.uint32(96).bool(message.pinned); - } - if (message.parentId !== void 0) { - writer.uint32(104).int32(message.parentId); - } - for (const v of message.resources) { - Resource.encode(v, writer.uint32(114).fork()).join(); - } - for (const v of message.relations) { - MemoRelation.encode(v, writer.uint32(122).fork()).join(); - } - for (const v of message.reactions) { - Reaction.encode(v, writer.uint32(130).fork()).join(); - } - if (message.property !== void 0) { - MemoProperty.encode(message.property, writer.uint32(138).fork()).join(); - } - if (message.parent !== void 0) { - writer.uint32(146).string(message.parent); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseMemo(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.uid = reader.string(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.rowStatus = rowStatusFromJSON(reader.int32()); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - message.creator = reader.string(); - continue; - } - case 5: { - if (tag !== 42) { - break; - } - message.createTime = fromTimestamp2(Timestamp.decode(reader, reader.uint32())); - continue; - } - case 6: { - if (tag !== 50) { - break; - } - message.updateTime = fromTimestamp2(Timestamp.decode(reader, reader.uint32())); - continue; - } - case 7: { - if (tag !== 58) { - break; - } - message.displayTime = fromTimestamp2(Timestamp.decode(reader, reader.uint32())); - continue; - } - case 8: { - if (tag !== 66) { - break; - } - message.content = reader.string(); - continue; - } - case 9: { - if (tag !== 74) { - break; - } - message.nodes.push(Node.decode(reader, reader.uint32())); - continue; - } - case 10: { - if (tag !== 80) { - break; - } - message.visibility = visibilityFromJSON(reader.int32()); - continue; - } - case 11: { - if (tag !== 90) { - break; - } - message.tags.push(reader.string()); - continue; - } - case 12: { - if (tag !== 96) { - break; - } - message.pinned = reader.bool(); - continue; - } - case 13: { - if (tag !== 104) { - break; - } - message.parentId = reader.int32(); - continue; - } - case 14: { - if (tag !== 114) { - break; - } - message.resources.push(Resource.decode(reader, reader.uint32())); - continue; - } - case 15: { - if (tag !== 122) { - break; - } - message.relations.push(MemoRelation.decode(reader, reader.uint32())); - continue; - } - case 16: { - if (tag !== 130) { - break; - } - message.reactions.push(Reaction.decode(reader, reader.uint32())); - continue; - } - case 17: { - if (tag !== 138) { - break; - } - message.property = MemoProperty.decode(reader, reader.uint32()); - continue; - } - case 18: { - if (tag !== 146) { - break; - } - message.parent = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return Memo.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p, _q; - const message = createBaseMemo(); - message.name = (_a = object.name) != null ? _a : ""; - message.uid = (_b = object.uid) != null ? _b : ""; - message.rowStatus = (_c = object.rowStatus) != null ? _c : "ROW_STATUS_UNSPECIFIED" /* ROW_STATUS_UNSPECIFIED */; - message.creator = (_d = object.creator) != null ? _d : ""; - message.createTime = (_e = object.createTime) != null ? _e : void 0; - message.updateTime = (_f = object.updateTime) != null ? _f : void 0; - message.displayTime = (_g = object.displayTime) != null ? _g : void 0; - message.content = (_h = object.content) != null ? _h : ""; - message.nodes = ((_i = object.nodes) == null ? void 0 : _i.map((e) => Node.fromPartial(e))) || []; - message.visibility = (_j = object.visibility) != null ? _j : "VISIBILITY_UNSPECIFIED" /* VISIBILITY_UNSPECIFIED */; - message.tags = ((_k = object.tags) == null ? void 0 : _k.map((e) => e)) || []; - message.pinned = (_l = object.pinned) != null ? _l : false; - message.parentId = (_m = object.parentId) != null ? _m : void 0; - message.resources = ((_n = object.resources) == null ? void 0 : _n.map((e) => Resource.fromPartial(e))) || []; - message.relations = ((_o = object.relations) == null ? void 0 : _o.map((e) => MemoRelation.fromPartial(e))) || []; - message.reactions = ((_p = object.reactions) == null ? void 0 : _p.map((e) => Reaction.fromPartial(e))) || []; - message.property = object.property !== void 0 && object.property !== null ? MemoProperty.fromPartial(object.property) : void 0; - message.parent = (_q = object.parent) != null ? _q : void 0; - return message; - } -}; -function createBaseMemoProperty() { - return { tags: [], hasLink: false, hasTaskList: false }; -} -var MemoProperty = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.tags) { - writer.uint32(10).string(v); - } - if (message.hasLink !== false) { - writer.uint32(16).bool(message.hasLink); - } - if (message.hasTaskList !== false) { - writer.uint32(24).bool(message.hasTaskList); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseMemoProperty(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.tags.push(reader.string()); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.hasLink = reader.bool(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.hasTaskList = reader.bool(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return MemoProperty.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseMemoProperty(); - message.tags = ((_a = object.tags) == null ? void 0 : _a.map((e) => e)) || []; - message.hasLink = (_b = object.hasLink) != null ? _b : false; - message.hasTaskList = (_c = object.hasTaskList) != null ? _c : false; - return message; - } -}; -function createBaseCreateMemoRequest() { - return { content: "", visibility: "VISIBILITY_UNSPECIFIED" /* VISIBILITY_UNSPECIFIED */ }; -} -var CreateMemoRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - if (message.visibility !== "VISIBILITY_UNSPECIFIED" /* VISIBILITY_UNSPECIFIED */) { - writer.uint32(16).int32(visibilityToNumber(message.visibility)); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseCreateMemoRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.visibility = visibilityFromJSON(reader.int32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return CreateMemoRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseCreateMemoRequest(); - message.content = (_a = object.content) != null ? _a : ""; - message.visibility = (_b = object.visibility) != null ? _b : "VISIBILITY_UNSPECIFIED" /* VISIBILITY_UNSPECIFIED */; - return message; - } -}; -function createBaseListMemosRequest() { - return { pageSize: 0, pageToken: "", filter: "" }; -} -var ListMemosRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.pageSize !== 0) { - writer.uint32(8).int32(message.pageSize); - } - if (message.pageToken !== "") { - writer.uint32(18).string(message.pageToken); - } - if (message.filter !== "") { - writer.uint32(26).string(message.filter); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemosRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - message.pageSize = reader.int32(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.pageToken = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.filter = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemosRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseListMemosRequest(); - message.pageSize = (_a = object.pageSize) != null ? _a : 0; - message.pageToken = (_b = object.pageToken) != null ? _b : ""; - message.filter = (_c = object.filter) != null ? _c : ""; - return message; - } -}; -function createBaseListMemosResponse() { - return { memos: [], nextPageToken: "" }; -} -var ListMemosResponse = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.memos) { - Memo.encode(v, writer.uint32(10).fork()).join(); - } - if (message.nextPageToken !== "") { - writer.uint32(18).string(message.nextPageToken); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemosResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.memos.push(Memo.decode(reader, reader.uint32())); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.nextPageToken = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemosResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseListMemosResponse(); - message.memos = ((_a = object.memos) == null ? void 0 : _a.map((e) => Memo.fromPartial(e))) || []; - message.nextPageToken = (_b = object.nextPageToken) != null ? _b : ""; - return message; - } -}; -function createBaseSearchMemosRequest() { - return { filter: "" }; -} -var SearchMemosRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.filter !== "") { - writer.uint32(10).string(message.filter); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSearchMemosRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.filter = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SearchMemosRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseSearchMemosRequest(); - message.filter = (_a = object.filter) != null ? _a : ""; - return message; - } -}; -function createBaseSearchMemosResponse() { - return { memos: [] }; -} -var SearchMemosResponse = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.memos) { - Memo.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSearchMemosResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.memos.push(Memo.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SearchMemosResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseSearchMemosResponse(); - message.memos = ((_a = object.memos) == null ? void 0 : _a.map((e) => Memo.fromPartial(e))) || []; - return message; - } -}; -function createBaseGetMemoRequest() { - return { name: "" }; -} -var GetMemoRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetMemoRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetMemoRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseGetMemoRequest(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseUpdateMemoRequest() { - return { memo: void 0, updateMask: void 0 }; -} -var UpdateMemoRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.memo !== void 0) { - Memo.encode(message.memo, writer.uint32(10).fork()).join(); - } - if (message.updateMask !== void 0) { - FieldMask.encode(FieldMask.wrap(message.updateMask), writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUpdateMemoRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.memo = Memo.decode(reader, reader.uint32()); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.updateMask = FieldMask.unwrap(FieldMask.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UpdateMemoRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseUpdateMemoRequest(); - message.memo = object.memo !== void 0 && object.memo !== null ? Memo.fromPartial(object.memo) : void 0; - message.updateMask = (_a = object.updateMask) != null ? _a : void 0; - return message; - } -}; -function createBaseDeleteMemoRequest() { - return { name: "" }; -} -var DeleteMemoRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseDeleteMemoRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return DeleteMemoRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseDeleteMemoRequest(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseExportMemosRequest() { - return { filter: "" }; -} -var ExportMemosRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.filter !== "") { - writer.uint32(10).string(message.filter); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseExportMemosRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.filter = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ExportMemosRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseExportMemosRequest(); - message.filter = (_a = object.filter) != null ? _a : ""; - return message; - } -}; -function createBaseExportMemosResponse() { - return { content: new Uint8Array(0) }; -} -var ExportMemosResponse = { - encode(message, writer = new BinaryWriter()) { - if (message.content.length !== 0) { - writer.uint32(10).bytes(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseExportMemosResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.bytes(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ExportMemosResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseExportMemosResponse(); - message.content = (_a = object.content) != null ? _a : new Uint8Array(0); - return message; - } -}; -function createBaseListMemoPropertiesRequest() { - return { name: "" }; -} -var ListMemoPropertiesRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoPropertiesRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoPropertiesRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoPropertiesRequest(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseListMemoPropertiesResponse() { - return { properties: [] }; -} -var ListMemoPropertiesResponse = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.properties) { - MemoProperty.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoPropertiesResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.properties.push(MemoProperty.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoPropertiesResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoPropertiesResponse(); - message.properties = ((_a = object.properties) == null ? void 0 : _a.map((e) => MemoProperty.fromPartial(e))) || []; - return message; - } -}; -function createBaseRebuildMemoPropertyRequest() { - return { name: "" }; -} -var RebuildMemoPropertyRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseRebuildMemoPropertyRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return RebuildMemoPropertyRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseRebuildMemoPropertyRequest(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseListMemoTagsRequest() { - return { parent: "", filter: "" }; -} -var ListMemoTagsRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.parent !== "") { - writer.uint32(10).string(message.parent); - } - if (message.filter !== "") { - writer.uint32(18).string(message.filter); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoTagsRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.parent = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.filter = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoTagsRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseListMemoTagsRequest(); - message.parent = (_a = object.parent) != null ? _a : ""; - message.filter = (_b = object.filter) != null ? _b : ""; - return message; - } -}; -function createBaseListMemoTagsResponse() { - return { tagAmounts: {} }; -} -var ListMemoTagsResponse = { - encode(message, writer = new BinaryWriter()) { - Object.entries(message.tagAmounts).forEach(([key, value]) => { - ListMemoTagsResponse_TagAmountsEntry.encode({ key, value }, writer.uint32(10).fork()).join(); - }); - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoTagsResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - const entry1 = ListMemoTagsResponse_TagAmountsEntry.decode(reader, reader.uint32()); - if (entry1.value !== void 0) { - message.tagAmounts[entry1.key] = entry1.value; - } - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoTagsResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoTagsResponse(); - message.tagAmounts = Object.entries((_a = object.tagAmounts) != null ? _a : {}).reduce( - (acc, [key, value]) => { - if (value !== void 0) { - acc[key] = globalThis.Number(value); - } - return acc; - }, - {} - ); - return message; - } -}; -function createBaseListMemoTagsResponse_TagAmountsEntry() { - return { key: "", value: 0 }; -} -var ListMemoTagsResponse_TagAmountsEntry = { - encode(message, writer = new BinaryWriter()) { - if (message.key !== "") { - writer.uint32(10).string(message.key); - } - if (message.value !== 0) { - writer.uint32(16).int32(message.value); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoTagsResponse_TagAmountsEntry(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.key = reader.string(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.value = reader.int32(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoTagsResponse_TagAmountsEntry.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseListMemoTagsResponse_TagAmountsEntry(); - message.key = (_a = object.key) != null ? _a : ""; - message.value = (_b = object.value) != null ? _b : 0; - return message; - } -}; -function createBaseRenameMemoTagRequest() { - return { parent: "", oldTag: "", newTag: "" }; -} -var RenameMemoTagRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.parent !== "") { - writer.uint32(10).string(message.parent); - } - if (message.oldTag !== "") { - writer.uint32(18).string(message.oldTag); - } - if (message.newTag !== "") { - writer.uint32(26).string(message.newTag); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseRenameMemoTagRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.parent = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.oldTag = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.newTag = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return RenameMemoTagRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseRenameMemoTagRequest(); - message.parent = (_a = object.parent) != null ? _a : ""; - message.oldTag = (_b = object.oldTag) != null ? _b : ""; - message.newTag = (_c = object.newTag) != null ? _c : ""; - return message; - } -}; -function createBaseDeleteMemoTagRequest() { - return { parent: "", tag: "", deleteRelatedMemos: false }; -} -var DeleteMemoTagRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.parent !== "") { - writer.uint32(10).string(message.parent); - } - if (message.tag !== "") { - writer.uint32(18).string(message.tag); - } - if (message.deleteRelatedMemos !== false) { - writer.uint32(24).bool(message.deleteRelatedMemos); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseDeleteMemoTagRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.parent = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.tag = reader.string(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.deleteRelatedMemos = reader.bool(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return DeleteMemoTagRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseDeleteMemoTagRequest(); - message.parent = (_a = object.parent) != null ? _a : ""; - message.tag = (_b = object.tag) != null ? _b : ""; - message.deleteRelatedMemos = (_c = object.deleteRelatedMemos) != null ? _c : false; - return message; - } -}; -function createBaseSetMemoResourcesRequest() { - return { name: "", resources: [] }; -} -var SetMemoResourcesRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - for (const v of message.resources) { - Resource.encode(v, writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSetMemoResourcesRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.resources.push(Resource.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SetMemoResourcesRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseSetMemoResourcesRequest(); - message.name = (_a = object.name) != null ? _a : ""; - message.resources = ((_b = object.resources) == null ? void 0 : _b.map((e) => Resource.fromPartial(e))) || []; - return message; - } -}; -function createBaseListMemoResourcesRequest() { - return { name: "" }; -} -var ListMemoResourcesRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoResourcesRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoResourcesRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoResourcesRequest(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseListMemoResourcesResponse() { - return { resources: [] }; -} -var ListMemoResourcesResponse = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.resources) { - Resource.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoResourcesResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.resources.push(Resource.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoResourcesResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoResourcesResponse(); - message.resources = ((_a = object.resources) == null ? void 0 : _a.map((e) => Resource.fromPartial(e))) || []; - return message; - } -}; -function createBaseSetMemoRelationsRequest() { - return { name: "", relations: [] }; -} -var SetMemoRelationsRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - for (const v of message.relations) { - MemoRelation.encode(v, writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSetMemoRelationsRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.relations.push(MemoRelation.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SetMemoRelationsRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseSetMemoRelationsRequest(); - message.name = (_a = object.name) != null ? _a : ""; - message.relations = ((_b = object.relations) == null ? void 0 : _b.map((e) => MemoRelation.fromPartial(e))) || []; - return message; - } -}; -function createBaseListMemoRelationsRequest() { - return { name: "" }; -} -var ListMemoRelationsRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoRelationsRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoRelationsRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoRelationsRequest(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseListMemoRelationsResponse() { - return { relations: [] }; -} -var ListMemoRelationsResponse = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.relations) { - MemoRelation.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoRelationsResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.relations.push(MemoRelation.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoRelationsResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoRelationsResponse(); - message.relations = ((_a = object.relations) == null ? void 0 : _a.map((e) => MemoRelation.fromPartial(e))) || []; - return message; - } -}; -function createBaseCreateMemoCommentRequest() { - return { name: "", comment: void 0 }; -} -var CreateMemoCommentRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.comment !== void 0) { - CreateMemoRequest.encode(message.comment, writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseCreateMemoCommentRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.comment = CreateMemoRequest.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return CreateMemoCommentRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseCreateMemoCommentRequest(); - message.name = (_a = object.name) != null ? _a : ""; - message.comment = object.comment !== void 0 && object.comment !== null ? CreateMemoRequest.fromPartial(object.comment) : void 0; - return message; - } -}; -function createBaseListMemoCommentsRequest() { - return { name: "" }; -} -var ListMemoCommentsRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoCommentsRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoCommentsRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoCommentsRequest(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseListMemoCommentsResponse() { - return { memos: [] }; -} -var ListMemoCommentsResponse = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.memos) { - Memo.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoCommentsResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.memos.push(Memo.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoCommentsResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoCommentsResponse(); - message.memos = ((_a = object.memos) == null ? void 0 : _a.map((e) => Memo.fromPartial(e))) || []; - return message; - } -}; -function createBaseGetUserMemosStatsRequest() { - return { name: "", timezone: "", filter: "" }; -} -var GetUserMemosStatsRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.timezone !== "") { - writer.uint32(18).string(message.timezone); - } - if (message.filter !== "") { - writer.uint32(26).string(message.filter); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetUserMemosStatsRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.timezone = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.filter = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetUserMemosStatsRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseGetUserMemosStatsRequest(); - message.name = (_a = object.name) != null ? _a : ""; - message.timezone = (_b = object.timezone) != null ? _b : ""; - message.filter = (_c = object.filter) != null ? _c : ""; - return message; - } -}; -function createBaseGetUserMemosStatsResponse() { - return { stats: {} }; -} -var GetUserMemosStatsResponse = { - encode(message, writer = new BinaryWriter()) { - Object.entries(message.stats).forEach(([key, value]) => { - GetUserMemosStatsResponse_StatsEntry.encode({ key, value }, writer.uint32(10).fork()).join(); - }); - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetUserMemosStatsResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - const entry1 = GetUserMemosStatsResponse_StatsEntry.decode(reader, reader.uint32()); - if (entry1.value !== void 0) { - message.stats[entry1.key] = entry1.value; - } - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetUserMemosStatsResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseGetUserMemosStatsResponse(); - message.stats = Object.entries((_a = object.stats) != null ? _a : {}).reduce((acc, [key, value]) => { - if (value !== void 0) { - acc[key] = globalThis.Number(value); - } - return acc; - }, {}); - return message; - } -}; -function createBaseGetUserMemosStatsResponse_StatsEntry() { - return { key: "", value: 0 }; -} -var GetUserMemosStatsResponse_StatsEntry = { - encode(message, writer = new BinaryWriter()) { - if (message.key !== "") { - writer.uint32(10).string(message.key); - } - if (message.value !== 0) { - writer.uint32(16).int32(message.value); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetUserMemosStatsResponse_StatsEntry(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.key = reader.string(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.value = reader.int32(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetUserMemosStatsResponse_StatsEntry.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseGetUserMemosStatsResponse_StatsEntry(); - message.key = (_a = object.key) != null ? _a : ""; - message.value = (_b = object.value) != null ? _b : 0; - return message; - } -}; -function createBaseListMemoReactionsRequest() { - return { name: "" }; -} -var ListMemoReactionsRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoReactionsRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoReactionsRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoReactionsRequest(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseListMemoReactionsResponse() { - return { reactions: [] }; -} -var ListMemoReactionsResponse = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.reactions) { - Reaction.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoReactionsResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.reactions.push(Reaction.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoReactionsResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoReactionsResponse(); - message.reactions = ((_a = object.reactions) == null ? void 0 : _a.map((e) => Reaction.fromPartial(e))) || []; - return message; - } -}; -function createBaseUpsertMemoReactionRequest() { - return { name: "", reaction: void 0 }; -} -var UpsertMemoReactionRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.reaction !== void 0) { - Reaction.encode(message.reaction, writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUpsertMemoReactionRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.reaction = Reaction.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UpsertMemoReactionRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseUpsertMemoReactionRequest(); - message.name = (_a = object.name) != null ? _a : ""; - message.reaction = object.reaction !== void 0 && object.reaction !== null ? Reaction.fromPartial(object.reaction) : void 0; - return message; - } -}; -function createBaseDeleteMemoReactionRequest() { - return { reactionId: 0 }; -} -var DeleteMemoReactionRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.reactionId !== 0) { - writer.uint32(8).int32(message.reactionId); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseDeleteMemoReactionRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - message.reactionId = reader.int32(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return DeleteMemoReactionRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseDeleteMemoReactionRequest(); - message.reactionId = (_a = object.reactionId) != null ? _a : 0; - return message; - } -}; -var MemoServiceDefinition = { - name: "MemoService", - fullName: "memos.api.v1.MemoService", - methods: { - /** CreateMemo creates a memo. */ - createMemo: { - name: "CreateMemo", - requestType: CreateMemoRequest, - requestStream: false, - responseType: Memo, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([18, 58, 1, 42, 34, 13, 47, 97, 112, 105, 47, 118, 49, 47, 109, 101, 109, 111, 115]) - ] - } - } - }, - /** ListMemos lists memos with pagination and filter. */ - listMemos: { - name: "ListMemos", - requestType: ListMemosRequest, - requestStream: false, - responseType: ListMemosResponse, - responseStream: false, - options: { - _unknownFields: { - 578365826: [new Uint8Array([15, 18, 13, 47, 97, 112, 105, 47, 118, 49, 47, 109, 101, 109, 111, 115])] - } - } - }, - /** SearchMemos searches memos. */ - searchMemos: { - name: "SearchMemos", - requestType: SearchMemosRequest, - requestStream: false, - responseType: SearchMemosResponse, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 22, - 18, - 20, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 109, - 101, - 109, - 111, - 115, - 58, - 115, - 101, - 97, - 114, - 99, - 104 - ]) - ] - } - } - }, - /** GetMemo gets a memo. */ - getMemo: { - name: "GetMemo", - requestType: GetMemoRequest, - requestStream: false, - responseType: Memo, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 24, - 18, - 22, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125 - ]) - ] - } - } - }, - /** UpdateMemo updates a memo. */ - updateMemo: { - name: "UpdateMemo", - requestType: UpdateMemoRequest, - requestStream: false, - responseType: Memo, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([16, 109, 101, 109, 111, 44, 117, 112, 100, 97, 116, 101, 95, 109, 97, 115, 107])], - 578365826: [ - new Uint8Array([ - 35, - 58, - 4, - 109, - 101, - 109, - 111, - 50, - 27, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 109, - 101, - 109, - 111, - 46, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125 - ]) - ] - } - } - }, - /** DeleteMemo deletes a memo. */ - deleteMemo: { - name: "DeleteMemo", - requestType: DeleteMemoRequest, - requestStream: false, - responseType: Empty, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 24, - 42, - 22, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125 - ]) - ] - } - } - }, - /** ExportMemos exports memos. */ - exportMemos: { - name: "ExportMemos", - requestType: ExportMemosRequest, - requestStream: false, - responseType: ExportMemosResponse, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 25, - 58, - 1, - 42, - 34, - 20, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 109, - 101, - 109, - 111, - 115, - 58, - 101, - 120, - 112, - 111, - 114, - 116 - ]) - ] - } - } - }, - /** ListMemoProperties lists memo properties. */ - listMemoProperties: { - name: "ListMemoProperties", - requestType: ListMemoPropertiesRequest, - requestStream: false, - responseType: ListMemoPropertiesResponse, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 35, - 18, - 33, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 112, - 114, - 111, - 112, - 101, - 114, - 116, - 105, - 101, - 115 - ]) - ] - } - } - }, - /** RebuildMemoProperty rebuilds a memo property. */ - rebuildMemoProperty: { - name: "RebuildMemoProperty", - requestType: RebuildMemoPropertyRequest, - requestStream: false, - responseType: Empty, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 46, - 58, - 1, - 42, - 34, - 41, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 112, - 114, - 111, - 112, - 101, - 114, - 116, - 105, - 101, - 115, - 58, - 114, - 101, - 98, - 117, - 105, - 108, - 100 - ]) - ] - } - } - }, - /** ListMemoTags lists tags for a memo. */ - listMemoTags: { - name: "ListMemoTags", - requestType: ListMemoTagsRequest, - requestStream: false, - responseType: ListMemoTagsResponse, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 31, - 18, - 29, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 112, - 97, - 114, - 101, - 110, - 116, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 116, - 97, - 103, - 115 - ]) - ] - } - } - }, - /** RenameMemoTag renames a tag for a memo. */ - renameMemoTag: { - name: "RenameMemoTag", - requestType: RenameMemoTagRequest, - requestStream: false, - responseType: Empty, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 41, - 58, - 1, - 42, - 50, - 36, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 112, - 97, - 114, - 101, - 110, - 116, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 116, - 97, - 103, - 115, - 58, - 114, - 101, - 110, - 97, - 109, - 101 - ]) - ] - } - } - }, - /** DeleteMemoTag deletes a tag for a memo. */ - deleteMemoTag: { - name: "DeleteMemoTag", - requestType: DeleteMemoTagRequest, - requestStream: false, - responseType: Empty, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 37, - 42, - 35, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 112, - 97, - 114, - 101, - 110, - 116, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 116, - 97, - 103, - 115, - 47, - 123, - 116, - 97, - 103, - 125 - ]) - ] - } - } - }, - /** SetMemoResources sets resources for a memo. */ - setMemoResources: { - name: "SetMemoResources", - requestType: SetMemoResourcesRequest, - requestStream: false, - responseType: Empty, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 37, - 58, - 1, - 42, - 50, - 32, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 115 - ]) - ] - } - } - }, - /** ListMemoResources lists resources for a memo. */ - listMemoResources: { - name: "ListMemoResources", - requestType: ListMemoResourcesRequest, - requestStream: false, - responseType: ListMemoResourcesResponse, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 34, - 18, - 32, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 115 - ]) - ] - } - } - }, - /** SetMemoRelations sets relations for a memo. */ - setMemoRelations: { - name: "SetMemoRelations", - requestType: SetMemoRelationsRequest, - requestStream: false, - responseType: Empty, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 37, - 58, - 1, - 42, - 50, - 32, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 114, - 101, - 108, - 97, - 116, - 105, - 111, - 110, - 115 - ]) - ] - } - } - }, - /** ListMemoRelations lists relations for a memo. */ - listMemoRelations: { - name: "ListMemoRelations", - requestType: ListMemoRelationsRequest, - requestStream: false, - responseType: ListMemoRelationsResponse, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 34, - 18, - 32, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 114, - 101, - 108, - 97, - 116, - 105, - 111, - 110, - 115 - ]) - ] - } - } - }, - /** CreateMemoComment creates a comment for a memo. */ - createMemoComment: { - name: "CreateMemoComment", - requestType: CreateMemoCommentRequest, - requestStream: false, - responseType: Memo, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 42, - 58, - 7, - 99, - 111, - 109, - 109, - 101, - 110, - 116, - 34, - 31, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 99, - 111, - 109, - 109, - 101, - 110, - 116, - 115 - ]) - ] - } - } - }, - /** ListMemoComments lists comments for a memo. */ - listMemoComments: { - name: "ListMemoComments", - requestType: ListMemoCommentsRequest, - requestStream: false, - responseType: ListMemoCommentsResponse, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 33, - 18, - 31, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 99, - 111, - 109, - 109, - 101, - 110, - 116, - 115 - ]) - ] - } - } - }, - /** GetUserMemosStats gets stats of memos for a user. */ - getUserMemosStats: { - name: "GetUserMemosStats", - requestType: GetUserMemosStatsRequest, - requestStream: false, - responseType: GetUserMemosStatsResponse, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([8, 117, 115, 101, 114, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 21, - 18, - 19, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 109, - 101, - 109, - 111, - 115, - 47, - 115, - 116, - 97, - 116, - 115 - ]) - ] - } - } - }, - /** ListMemoReactions lists reactions for a memo. */ - listMemoReactions: { - name: "ListMemoReactions", - requestType: ListMemoReactionsRequest, - requestStream: false, - responseType: ListMemoReactionsResponse, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 34, - 18, - 32, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 114, - 101, - 97, - 99, - 116, - 105, - 111, - 110, - 115 - ]) - ] - } - } - }, - /** UpsertMemoReaction upserts a reaction for a memo. */ - upsertMemoReaction: { - name: "UpsertMemoReaction", - requestType: UpsertMemoReactionRequest, - requestStream: false, - responseType: Reaction, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 37, - 58, - 1, - 42, - 34, - 32, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 114, - 101, - 97, - 99, - 116, - 105, - 111, - 110, - 115 - ]) - ] - } - } - }, - /** DeleteMemoReaction deletes a reaction for a memo. */ - deleteMemoReaction: { - name: "DeleteMemoReaction", - requestType: DeleteMemoReactionRequest, - requestStream: false, - responseType: Empty, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([11, 114, 101, 97, 99, 116, 105, 111, 110, 95, 105, 100])], - 578365826: [ - new Uint8Array([ - 33, - 42, - 31, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 114, - 101, - 97, - 99, - 116, - 105, - 111, - 110, - 115, - 47, - 123, - 114, - 101, - 97, - 99, - 116, - 105, - 111, - 110, - 95, - 105, - 100, - 125 - ]) - ] - } - } - } - } -}; -function toTimestamp2(date) { - const seconds = Math.trunc(date.getTime() / 1e3); - const nanos = date.getTime() % 1e3 * 1e6; - return { seconds, nanos }; -} -function fromTimestamp2(t) { - let millis = (t.seconds || 0) * 1e3; - millis += (t.nanos || 0) / 1e6; - return new globalThis.Date(millis); -} - -// src/api/memos-proto-v0.22.0/gen/api/v1/user_service.ts -function user_RoleFromJSON(object) { - switch (object) { - case 0: - case "ROLE_UNSPECIFIED": - return "ROLE_UNSPECIFIED" /* ROLE_UNSPECIFIED */; - case 1: - case "HOST": - return "HOST" /* HOST */; - case 2: - case "ADMIN": - return "ADMIN" /* ADMIN */; - case 3: - case "USER": - return "USER" /* USER */; - case -1: - case "UNRECOGNIZED": - default: - return "UNRECOGNIZED" /* UNRECOGNIZED */; - } -} -function user_RoleToNumber(object) { - switch (object) { - case "ROLE_UNSPECIFIED" /* ROLE_UNSPECIFIED */: - return 0; - case "HOST" /* HOST */: - return 1; - case "ADMIN" /* ADMIN */: - return 2; - case "USER" /* USER */: - return 3; - case "UNRECOGNIZED" /* UNRECOGNIZED */: - default: - return -1; - } -} -function createBaseUser() { - return { - name: "", - id: 0, - role: "ROLE_UNSPECIFIED" /* ROLE_UNSPECIFIED */, - username: "", - email: "", - nickname: "", - avatarUrl: "", - description: "", - password: "", - rowStatus: "ROW_STATUS_UNSPECIFIED" /* ROW_STATUS_UNSPECIFIED */, - createTime: void 0, - updateTime: void 0 - }; -} -var User = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.id !== 0) { - writer.uint32(16).int32(message.id); - } - if (message.role !== "ROLE_UNSPECIFIED" /* ROLE_UNSPECIFIED */) { - writer.uint32(24).int32(user_RoleToNumber(message.role)); - } - if (message.username !== "") { - writer.uint32(34).string(message.username); - } - if (message.email !== "") { - writer.uint32(42).string(message.email); - } - if (message.nickname !== "") { - writer.uint32(50).string(message.nickname); - } - if (message.avatarUrl !== "") { - writer.uint32(58).string(message.avatarUrl); - } - if (message.description !== "") { - writer.uint32(66).string(message.description); - } - if (message.password !== "") { - writer.uint32(74).string(message.password); - } - if (message.rowStatus !== "ROW_STATUS_UNSPECIFIED" /* ROW_STATUS_UNSPECIFIED */) { - writer.uint32(80).int32(rowStatusToNumber(message.rowStatus)); - } - if (message.createTime !== void 0) { - Timestamp.encode(toTimestamp3(message.createTime), writer.uint32(90).fork()).join(); - } - if (message.updateTime !== void 0) { - Timestamp.encode(toTimestamp3(message.updateTime), writer.uint32(98).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUser(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.id = reader.int32(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.role = user_RoleFromJSON(reader.int32()); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - message.username = reader.string(); - continue; - } - case 5: { - if (tag !== 42) { - break; - } - message.email = reader.string(); - continue; - } - case 6: { - if (tag !== 50) { - break; - } - message.nickname = reader.string(); - continue; - } - case 7: { - if (tag !== 58) { - break; - } - message.avatarUrl = reader.string(); - continue; - } - case 8: { - if (tag !== 66) { - break; - } - message.description = reader.string(); - continue; - } - case 9: { - if (tag !== 74) { - break; - } - message.password = reader.string(); - continue; - } - case 10: { - if (tag !== 80) { - break; - } - message.rowStatus = rowStatusFromJSON(reader.int32()); - continue; - } - case 11: { - if (tag !== 90) { - break; - } - message.createTime = fromTimestamp3(Timestamp.decode(reader, reader.uint32())); - continue; - } - case 12: { - if (tag !== 98) { - break; - } - message.updateTime = fromTimestamp3(Timestamp.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return User.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l; - const message = createBaseUser(); - message.name = (_a = object.name) != null ? _a : ""; - message.id = (_b = object.id) != null ? _b : 0; - message.role = (_c = object.role) != null ? _c : "ROLE_UNSPECIFIED" /* ROLE_UNSPECIFIED */; - message.username = (_d = object.username) != null ? _d : ""; - message.email = (_e = object.email) != null ? _e : ""; - message.nickname = (_f = object.nickname) != null ? _f : ""; - message.avatarUrl = (_g = object.avatarUrl) != null ? _g : ""; - message.description = (_h = object.description) != null ? _h : ""; - message.password = (_i = object.password) != null ? _i : ""; - message.rowStatus = (_j = object.rowStatus) != null ? _j : "ROW_STATUS_UNSPECIFIED" /* ROW_STATUS_UNSPECIFIED */; - message.createTime = (_k = object.createTime) != null ? _k : void 0; - message.updateTime = (_l = object.updateTime) != null ? _l : void 0; - return message; - } -}; -function createBaseListUsersRequest() { - return {}; -} -var ListUsersRequest = { - encode(_, writer = new BinaryWriter()) { - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListUsersRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListUsersRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(_) { - const message = createBaseListUsersRequest(); - return message; - } -}; -function createBaseListUsersResponse() { - return { users: [] }; -} -var ListUsersResponse = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.users) { - User.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListUsersResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.users.push(User.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListUsersResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListUsersResponse(); - message.users = ((_a = object.users) == null ? void 0 : _a.map((e) => User.fromPartial(e))) || []; - return message; - } -}; -function createBaseSearchUsersRequest() { - return { filter: "" }; -} -var SearchUsersRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.filter !== "") { - writer.uint32(10).string(message.filter); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSearchUsersRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.filter = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SearchUsersRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseSearchUsersRequest(); - message.filter = (_a = object.filter) != null ? _a : ""; - return message; - } -}; -function createBaseSearchUsersResponse() { - return { users: [] }; -} -var SearchUsersResponse = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.users) { - User.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSearchUsersResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.users.push(User.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SearchUsersResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseSearchUsersResponse(); - message.users = ((_a = object.users) == null ? void 0 : _a.map((e) => User.fromPartial(e))) || []; - return message; - } -}; -function createBaseGetUserRequest() { - return { name: "" }; -} -var GetUserRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetUserRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetUserRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseGetUserRequest(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseGetUserAvatarBinaryRequest() { - return { name: "", httpBody: void 0 }; -} -var GetUserAvatarBinaryRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.httpBody !== void 0) { - HttpBody.encode(message.httpBody, writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetUserAvatarBinaryRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.httpBody = HttpBody.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetUserAvatarBinaryRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseGetUserAvatarBinaryRequest(); - message.name = (_a = object.name) != null ? _a : ""; - message.httpBody = object.httpBody !== void 0 && object.httpBody !== null ? HttpBody.fromPartial(object.httpBody) : void 0; - return message; - } -}; -function createBaseCreateUserRequest() { - return { user: void 0 }; -} -var CreateUserRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.user !== void 0) { - User.encode(message.user, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseCreateUserRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.user = User.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return CreateUserRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - const message = createBaseCreateUserRequest(); - message.user = object.user !== void 0 && object.user !== null ? User.fromPartial(object.user) : void 0; - return message; - } -}; -function createBaseUpdateUserRequest() { - return { user: void 0, updateMask: void 0 }; -} -var UpdateUserRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.user !== void 0) { - User.encode(message.user, writer.uint32(10).fork()).join(); - } - if (message.updateMask !== void 0) { - FieldMask.encode(FieldMask.wrap(message.updateMask), writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUpdateUserRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.user = User.decode(reader, reader.uint32()); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.updateMask = FieldMask.unwrap(FieldMask.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UpdateUserRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseUpdateUserRequest(); - message.user = object.user !== void 0 && object.user !== null ? User.fromPartial(object.user) : void 0; - message.updateMask = (_a = object.updateMask) != null ? _a : void 0; - return message; - } -}; -function createBaseDeleteUserRequest() { - return { name: "" }; -} -var DeleteUserRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseDeleteUserRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return DeleteUserRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseDeleteUserRequest(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseUserSetting() { - return { name: "", locale: "", appearance: "", memoVisibility: "" }; -} -var UserSetting = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.locale !== "") { - writer.uint32(18).string(message.locale); - } - if (message.appearance !== "") { - writer.uint32(26).string(message.appearance); - } - if (message.memoVisibility !== "") { - writer.uint32(34).string(message.memoVisibility); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUserSetting(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.locale = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.appearance = reader.string(); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - message.memoVisibility = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UserSetting.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d; - const message = createBaseUserSetting(); - message.name = (_a = object.name) != null ? _a : ""; - message.locale = (_b = object.locale) != null ? _b : ""; - message.appearance = (_c = object.appearance) != null ? _c : ""; - message.memoVisibility = (_d = object.memoVisibility) != null ? _d : ""; - return message; - } -}; -function createBaseGetUserSettingRequest() { - return { name: "" }; -} -var GetUserSettingRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetUserSettingRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetUserSettingRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseGetUserSettingRequest(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseUpdateUserSettingRequest() { - return { setting: void 0, updateMask: void 0 }; -} -var UpdateUserSettingRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.setting !== void 0) { - UserSetting.encode(message.setting, writer.uint32(10).fork()).join(); - } - if (message.updateMask !== void 0) { - FieldMask.encode(FieldMask.wrap(message.updateMask), writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUpdateUserSettingRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.setting = UserSetting.decode(reader, reader.uint32()); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.updateMask = FieldMask.unwrap(FieldMask.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UpdateUserSettingRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseUpdateUserSettingRequest(); - message.setting = object.setting !== void 0 && object.setting !== null ? UserSetting.fromPartial(object.setting) : void 0; - message.updateMask = (_a = object.updateMask) != null ? _a : void 0; - return message; - } -}; -function createBaseUserAccessToken() { - return { accessToken: "", description: "", issuedAt: void 0, expiresAt: void 0 }; -} -var UserAccessToken = { - encode(message, writer = new BinaryWriter()) { - if (message.accessToken !== "") { - writer.uint32(10).string(message.accessToken); - } - if (message.description !== "") { - writer.uint32(18).string(message.description); - } - if (message.issuedAt !== void 0) { - Timestamp.encode(toTimestamp3(message.issuedAt), writer.uint32(26).fork()).join(); - } - if (message.expiresAt !== void 0) { - Timestamp.encode(toTimestamp3(message.expiresAt), writer.uint32(34).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUserAccessToken(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.accessToken = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.description = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.issuedAt = fromTimestamp3(Timestamp.decode(reader, reader.uint32())); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - message.expiresAt = fromTimestamp3(Timestamp.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UserAccessToken.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d; - const message = createBaseUserAccessToken(); - message.accessToken = (_a = object.accessToken) != null ? _a : ""; - message.description = (_b = object.description) != null ? _b : ""; - message.issuedAt = (_c = object.issuedAt) != null ? _c : void 0; - message.expiresAt = (_d = object.expiresAt) != null ? _d : void 0; - return message; - } -}; -function createBaseListUserAccessTokensRequest() { - return { name: "" }; -} -var ListUserAccessTokensRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListUserAccessTokensRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListUserAccessTokensRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListUserAccessTokensRequest(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseListUserAccessTokensResponse() { - return { accessTokens: [] }; -} -var ListUserAccessTokensResponse = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.accessTokens) { - UserAccessToken.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListUserAccessTokensResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.accessTokens.push(UserAccessToken.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListUserAccessTokensResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListUserAccessTokensResponse(); - message.accessTokens = ((_a = object.accessTokens) == null ? void 0 : _a.map((e) => UserAccessToken.fromPartial(e))) || []; - return message; - } -}; -function createBaseCreateUserAccessTokenRequest() { - return { name: "", description: "", expiresAt: void 0 }; -} -var CreateUserAccessTokenRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.description !== "") { - writer.uint32(18).string(message.description); - } - if (message.expiresAt !== void 0) { - Timestamp.encode(toTimestamp3(message.expiresAt), writer.uint32(26).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseCreateUserAccessTokenRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.description = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.expiresAt = fromTimestamp3(Timestamp.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return CreateUserAccessTokenRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseCreateUserAccessTokenRequest(); - message.name = (_a = object.name) != null ? _a : ""; - message.description = (_b = object.description) != null ? _b : ""; - message.expiresAt = (_c = object.expiresAt) != null ? _c : void 0; - return message; - } -}; -function createBaseDeleteUserAccessTokenRequest() { - return { name: "", accessToken: "" }; -} -var DeleteUserAccessTokenRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.accessToken !== "") { - writer.uint32(18).string(message.accessToken); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseDeleteUserAccessTokenRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.accessToken = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return DeleteUserAccessTokenRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseDeleteUserAccessTokenRequest(); - message.name = (_a = object.name) != null ? _a : ""; - message.accessToken = (_b = object.accessToken) != null ? _b : ""; - return message; - } -}; -var UserServiceDefinition = { - name: "UserService", - fullName: "memos.api.v1.UserService", - methods: { - /** ListUsers returns a list of users. */ - listUsers: { - name: "ListUsers", - requestType: ListUsersRequest, - requestStream: false, - responseType: ListUsersResponse, - responseStream: false, - options: { - _unknownFields: { - 578365826: [new Uint8Array([15, 18, 13, 47, 97, 112, 105, 47, 118, 49, 47, 117, 115, 101, 114, 115])] - } - } - }, - /** SearchUsers searches users by filter. */ - searchUsers: { - name: "SearchUsers", - requestType: SearchUsersRequest, - requestStream: false, - responseType: SearchUsersResponse, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 22, - 18, - 20, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 117, - 115, - 101, - 114, - 115, - 58, - 115, - 101, - 97, - 114, - 99, - 104 - ]) - ] - } - } - }, - /** GetUser gets a user by name. */ - getUser: { - name: "GetUser", - requestType: GetUserRequest, - requestStream: false, - responseType: User, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 24, - 18, - 22, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125 - ]) - ] - } - } - }, - /** GetUserAvatarBinary gets the avatar of a user. */ - getUserAvatarBinary: { - name: "GetUserAvatarBinary", - requestType: GetUserAvatarBinaryRequest, - requestStream: false, - responseType: HttpBody, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 29, - 18, - 27, - 47, - 102, - 105, - 108, - 101, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125, - 47, - 97, - 118, - 97, - 116, - 97, - 114 - ]) - ] - } - } - }, - /** CreateUser creates a new user. */ - createUser: { - name: "CreateUser", - requestType: CreateUserRequest, - requestStream: false, - responseType: User, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 117, 115, 101, 114])], - 578365826: [ - new Uint8Array([ - 21, - 58, - 4, - 117, - 115, - 101, - 114, - 34, - 13, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 117, - 115, - 101, - 114, - 115 - ]) - ] - } - } - }, - /** UpdateUser updates a user. */ - updateUser: { - name: "UpdateUser", - requestType: UpdateUserRequest, - requestStream: false, - responseType: User, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([16, 117, 115, 101, 114, 44, 117, 112, 100, 97, 116, 101, 95, 109, 97, 115, 107])], - 578365826: [ - new Uint8Array([ - 35, - 58, - 4, - 117, - 115, - 101, - 114, - 50, - 27, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 117, - 115, - 101, - 114, - 46, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125 - ]) - ] - } - } - }, - /** DeleteUser deletes a user. */ - deleteUser: { - name: "DeleteUser", - requestType: DeleteUserRequest, - requestStream: false, - responseType: Empty, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 24, - 42, - 22, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125 - ]) - ] - } - } - }, - /** GetUserSetting gets the setting of a user. */ - getUserSetting: { - name: "GetUserSetting", - requestType: GetUserSettingRequest, - requestStream: false, - responseType: UserSetting, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 32, - 18, - 30, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125, - 47, - 115, - 101, - 116, - 116, - 105, - 110, - 103 - ]) - ] - } - } - }, - /** UpdateUserSetting updates the setting of a user. */ - updateUserSetting: { - name: "UpdateUserSetting", - requestType: UpdateUserSettingRequest, - requestStream: false, - responseType: UserSetting, - responseStream: false, - options: { - _unknownFields: { - 8410: [ - new Uint8Array([ - 19, - 115, - 101, - 116, - 116, - 105, - 110, - 103, - 44, - 117, - 112, - 100, - 97, - 116, - 101, - 95, - 109, - 97, - 115, - 107 - ]) - ], - 578365826: [ - new Uint8Array([ - 49, - 58, - 7, - 115, - 101, - 116, - 116, - 105, - 110, - 103, - 50, - 38, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 115, - 101, - 116, - 116, - 105, - 110, - 103, - 46, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 47, - 115, - 101, - 116, - 116, - 105, - 110, - 103, - 125 - ]) - ] - } - } - }, - /** ListUserAccessTokens returns a list of access tokens for a user. */ - listUserAccessTokens: { - name: "ListUserAccessTokens", - requestType: ListUserAccessTokensRequest, - requestStream: false, - responseType: ListUserAccessTokensResponse, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 38, - 18, - 36, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125, - 47, - 97, - 99, - 99, - 101, - 115, - 115, - 95, - 116, - 111, - 107, - 101, - 110, - 115 - ]) - ] - } - } - }, - /** CreateUserAccessToken creates a new access token for a user. */ - createUserAccessToken: { - name: "CreateUserAccessToken", - requestType: CreateUserAccessTokenRequest, - requestStream: false, - responseType: UserAccessToken, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 41, - 58, - 1, - 42, - 34, - 36, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125, - 47, - 97, - 99, - 99, - 101, - 115, - 115, - 95, - 116, - 111, - 107, - 101, - 110, - 115 - ]) - ] - } - } - }, - /** DeleteUserAccessToken deletes an access token for a user. */ - deleteUserAccessToken: { - name: "DeleteUserAccessToken", - requestType: DeleteUserAccessTokenRequest, - requestStream: false, - responseType: Empty, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([17, 110, 97, 109, 101, 44, 97, 99, 99, 101, 115, 115, 95, 116, 111, 107, 101, 110])], - 578365826: [ - new Uint8Array([ - 53, - 42, - 51, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125, - 47, - 97, - 99, - 99, - 101, - 115, - 115, - 95, - 116, - 111, - 107, - 101, - 110, - 115, - 47, - 123, - 97, - 99, - 99, - 101, - 115, - 115, - 95, - 116, - 111, - 107, - 101, - 110, - 125 - ]) - ] - } - } - } - } -}; -function toTimestamp3(date) { - const seconds = Math.trunc(date.getTime() / 1e3); - const nanos = date.getTime() % 1e3 * 1e6; - return { seconds, nanos }; -} -function fromTimestamp3(t) { - let millis = (t.seconds || 0) * 1e3; - millis += (t.nanos || 0) / 1e6; - return new globalThis.Date(millis); -} - -// src/api/memos-proto-v0.22.0/gen/api/v1/auth_service.ts -function createBaseGetAuthStatusRequest() { - return {}; -} -var GetAuthStatusRequest = { - encode(_, writer = new BinaryWriter()) { - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetAuthStatusRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetAuthStatusRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(_) { - const message = createBaseGetAuthStatusRequest(); - return message; - } -}; -function createBaseSignInRequest() { - return { username: "", password: "", neverExpire: false }; -} -var SignInRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.username !== "") { - writer.uint32(10).string(message.username); - } - if (message.password !== "") { - writer.uint32(18).string(message.password); - } - if (message.neverExpire !== false) { - writer.uint32(24).bool(message.neverExpire); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSignInRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.username = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.password = reader.string(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.neverExpire = reader.bool(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SignInRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseSignInRequest(); - message.username = (_a = object.username) != null ? _a : ""; - message.password = (_b = object.password) != null ? _b : ""; - message.neverExpire = (_c = object.neverExpire) != null ? _c : false; - return message; - } -}; -function createBaseSignInWithSSORequest() { - return { idpId: 0, code: "", redirectUri: "" }; -} -var SignInWithSSORequest = { - encode(message, writer = new BinaryWriter()) { - if (message.idpId !== 0) { - writer.uint32(8).int32(message.idpId); - } - if (message.code !== "") { - writer.uint32(18).string(message.code); - } - if (message.redirectUri !== "") { - writer.uint32(26).string(message.redirectUri); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSignInWithSSORequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - message.idpId = reader.int32(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.code = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.redirectUri = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SignInWithSSORequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseSignInWithSSORequest(); - message.idpId = (_a = object.idpId) != null ? _a : 0; - message.code = (_b = object.code) != null ? _b : ""; - message.redirectUri = (_c = object.redirectUri) != null ? _c : ""; - return message; - } -}; -function createBaseSignUpRequest() { - return { username: "", password: "" }; -} -var SignUpRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.username !== "") { - writer.uint32(10).string(message.username); - } - if (message.password !== "") { - writer.uint32(18).string(message.password); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSignUpRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.username = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.password = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SignUpRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseSignUpRequest(); - message.username = (_a = object.username) != null ? _a : ""; - message.password = (_b = object.password) != null ? _b : ""; - return message; - } -}; -function createBaseSignOutRequest() { - return {}; -} -var SignOutRequest = { - encode(_, writer = new BinaryWriter()) { - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSignOutRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SignOutRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(_) { - const message = createBaseSignOutRequest(); - return message; - } -}; -var AuthServiceDefinition = { - name: "AuthService", - fullName: "memos.api.v1.AuthService", - methods: { - /** GetAuthStatus returns the current auth status of the user. */ - getAuthStatus: { - name: "GetAuthStatus", - requestType: GetAuthStatusRequest, - requestStream: false, - responseType: User, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 21, - 34, - 19, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 97, - 117, - 116, - 104, - 47, - 115, - 116, - 97, - 116, - 117, - 115 - ]) - ] - } - } - }, - /** SignIn signs in the user with the given username and password. */ - signIn: { - name: "SignIn", - requestType: SignInRequest, - requestStream: false, - responseType: User, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 21, - 34, - 19, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 97, - 117, - 116, - 104, - 47, - 115, - 105, - 103, - 110, - 105, - 110 - ]) - ] - } - } - }, - /** SignInWithSSO signs in the user with the given SSO code. */ - signInWithSSO: { - name: "SignInWithSSO", - requestType: SignInWithSSORequest, - requestStream: false, - responseType: User, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 25, - 34, - 23, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 97, - 117, - 116, - 104, - 47, - 115, - 105, - 103, - 110, - 105, - 110, - 47, - 115, - 115, - 111 - ]) - ] - } - } - }, - /** SignUp signs up the user with the given username and password. */ - signUp: { - name: "SignUp", - requestType: SignUpRequest, - requestStream: false, - responseType: User, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 21, - 34, - 19, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 97, - 117, - 116, - 104, - 47, - 115, - 105, - 103, - 110, - 117, - 112 - ]) - ] - } - } - }, - /** SignOut signs out the user. */ - signOut: { - name: "SignOut", - requestType: SignOutRequest, - requestStream: false, - responseType: Empty, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 22, - 34, - 20, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 97, - 117, - 116, - 104, - 47, - 115, - 105, - 103, - 110, - 111, - 117, - 116 - ]) - ] - } - } - } - } -}; - -// src/api/nice-grpc-utils.ts -var import_nice_grpc_web = __toESM(require_lib3()); -var loggingMiddleware = async function* devtoolsLoggingMiddleware(call, options) { - const req = call.request; - let resp; - try { - resp = yield* call.next(call.request, options); - return resp; - } finally { - debug( - `gRPC to ${call.method.path} - -request: -${JSON.stringify( - req - )} - -response: -${JSON.stringify(resp)}` - ); - } -}; -var bearerAuthMiddleware = (token) => { - return (call, options) => call.next(call.request, { - ...options, - metadata: (0, import_nice_grpc_web.Metadata)(options.metadata).set( - "authorization", - `Bearer ${token}` - ) - }); -}; - -// src/api/memos-v0.22.0.ts -var MemoListPaginator = class { - constructor(memoCli) { - this.memoCli = memoCli; - } - listMemos(pageSize, pageToken, currentUser) { - return this.memoCli.listMemos({ - pageSize, - pageToken, - // after v0.23.0, creator is required - // it's compatible with v0.22.0 - filter: `creator == "${currentUser.name}"` - }); - } -}; -function new0220Clients(endpoint, token) { - const channel = (0, import_nice_grpc_web2.createChannel)( - endpoint, - (0, import_nice_grpc_web2.FetchTransport)({ - credentials: "include" - }) - ); - const clientFactory = (0, import_nice_grpc_web2.createClientFactory)().use(loggingMiddleware).use(bearerAuthMiddleware(token)); - return { - memoListPaginator: new MemoListPaginator( - clientFactory.create(MemoServiceDefinition, channel) - ), - resourceCli: clientFactory.create( - ResourceServiceDefinition, - channel - ), - authCli: clientFactory.create( - AuthServiceDefinition, - channel - ) - }; -} - -// src/api/memos-v0.19.1.ts -var import_obsidian2 = require("obsidian"); -var MemosClient0191 = class { - constructor(endpoint, token) { - this.endpoint = endpoint; - this.token = token; - this.listMemos = async (limit, offset) => { - try { - const data = await this.getJSON( - this.endpoint + `/api/v1/memo`, - { - params: { - limit, - offset, - rowStatus: "NORMAL" - } - } - ); - if (Array.isArray(data)) { - return data; - } - throw new Error( - data.message || data.msg || data.error || JSON.stringify(data) - ); - } catch (error2) { - error(`Failed to fetch daily memos: ${error2}`); - } - }; - this.listResources = async () => { - const data = await this.getJSON( - this.endpoint + `/api/v1/resource` - ); - return data; - }; - /** - * @param resource Resource JSON returned from listResources - * @returns ArrayBuffer of the resource that could write into a file - */ - this.getResourceBuffer = async (resource) => { - const resourceURL = `${this.endpoint}/o/r/${resource.uid || resource.name || resource.id}`; - const data = await this.getRaw(resourceURL, { - responseType: "arraybuffer" - }); - return data; - }; - this.getJSON = async (url, config) => { - const res = await this.get(url, config); - return res.json; - }; - this.getRaw = async (url, config) => { - const res = await this.get(url, config); - return res.arrayBuffer; - }; - this.get = async (url, config) => { - const urlObj = new URL(url); - if (config == null ? void 0 : config.params) { - Object.entries(config.params).forEach(([key, value]) => { - urlObj.searchParams.append(key, String(value)); - }); - } - const res = await (0, import_obsidian2.requestUrl)({ - url: urlObj.toString(), - headers: { - Authorization: `Bearer ${this.token}`, - Accept: "application/json" - } - }); - return res; - }; - } -}; - -// src/services/DailyMemos/MemosResourceFetcher.ts -var MemosResourceFetcher0191 = class { - constructor(client) { - this.client = client; - this.listResources = async () => { - try { - const data = await this.client.listResources(); - if (!Array.isArray(data)) { - throw new Error( - data.message || data.msg || data.error || JSON.stringify(data) - ); - } - return data; - } catch (error2) { - if (error2.response && error2.response.status === 404) { - debug(`fetch resources 404: ${origin}/resource`); - return; - } - error(error2); - return void 0; - } - }; - this.fetchResource = async (resource) => { - try { - const data = await this.client.getResourceBuffer(resource); - if (!data) { - throw new Error( - `Failed to fetch resource: ${resource.filename}` - ); - } - return data; - } catch (error2) { - error(error2); - return void 0; - } - }; - } -}; -var MemosResourceFetcher0220 = class { - constructor(resourceCli) { - this.resourceCli = resourceCli; - this.listResources = async () => { - try { - const resp = await this.resourceCli.listResources({}); - return resp.resources.map(convert0220ResourceToAPIResource); - } catch (error2) { - if (error2.response && error2.response.status === 404) { - debug(`fetch resources 404: ${origin}/resource`); - return; - } - error(error2); - return void 0; - } - }; - this.fetchResource = async (resource) => { - try { - const resp = await this.resourceCli.getResourceBinary({ - name: resource.name, - filename: resource.filename - }); - return resp.data; - } catch (error2) { - error(error2); - return void 0; - } - }; - } -}; - -// src/api/memos-v0.24.0.ts -var import_nice_grpc_web3 = __toESM(require_lib3()); - -// src/api/memos-proto-v0.24.0/gen/google/protobuf/empty.ts -function createBaseEmpty2() { - return {}; -} -var Empty2 = { - encode(_, writer = new BinaryWriter()) { - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseEmpty2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return Empty2.fromPartial(base != null ? base : {}); - }, - fromPartial(_) { - const message = createBaseEmpty2(); - return message; - } -}; - -// src/api/memos-proto-v0.24.0/gen/google/protobuf/field_mask.ts -function createBaseFieldMask2() { - return { paths: [] }; -} -var FieldMask2 = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.paths) { - writer.uint32(10).string(v); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseFieldMask2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.paths.push(reader.string()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return FieldMask2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseFieldMask2(); - message.paths = ((_a = object.paths) == null ? void 0 : _a.map((e) => e)) || []; - return message; - }, - wrap(paths) { - const result = createBaseFieldMask2(); - result.paths = paths; - return result; - }, - unwrap(message) { - return message.paths; - } -}; - -// src/api/memos-proto-v0.24.0/gen/google/protobuf/timestamp.ts -function createBaseTimestamp2() { - return { seconds: 0, nanos: 0 }; -} -var Timestamp2 = { - encode(message, writer = new BinaryWriter()) { - if (message.seconds !== 0) { - writer.uint32(8).int64(message.seconds); - } - if (message.nanos !== 0) { - writer.uint32(16).int32(message.nanos); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseTimestamp2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - message.seconds = longToNumber3(reader.int64()); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.nanos = reader.int32(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return Timestamp2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseTimestamp2(); - message.seconds = (_a = object.seconds) != null ? _a : 0; - message.nanos = (_b = object.nanos) != null ? _b : 0; - return message; - } -}; -function longToNumber3(int64) { - const num = globalThis.Number(int64.toString()); - if (num > globalThis.Number.MAX_SAFE_INTEGER) { - throw new globalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER"); - } - if (num < globalThis.Number.MIN_SAFE_INTEGER) { - throw new globalThis.Error("Value is smaller than Number.MIN_SAFE_INTEGER"); - } - return num; -} - -// src/api/memos-proto-v0.24.0/gen/api/v1/common.ts -function stateFromJSON(object) { - switch (object) { - case 0: - case "STATE_UNSPECIFIED": - return "STATE_UNSPECIFIED" /* STATE_UNSPECIFIED */; - case 1: - case "NORMAL": - return "NORMAL" /* NORMAL */; - case 2: - case "ARCHIVED": - return "ARCHIVED" /* ARCHIVED */; - case -1: - case "UNRECOGNIZED": - default: - return "UNRECOGNIZED" /* UNRECOGNIZED */; - } -} -function stateToNumber(object) { - switch (object) { - case "STATE_UNSPECIFIED" /* STATE_UNSPECIFIED */: - return 0; - case "NORMAL" /* NORMAL */: - return 1; - case "ARCHIVED" /* ARCHIVED */: - return 2; - case "UNRECOGNIZED" /* UNRECOGNIZED */: - default: - return -1; - } -} -function directionFromJSON(object) { - switch (object) { - case 0: - case "DIRECTION_UNSPECIFIED": - return "DIRECTION_UNSPECIFIED" /* DIRECTION_UNSPECIFIED */; - case 1: - case "ASC": - return "ASC" /* ASC */; - case 2: - case "DESC": - return "DESC" /* DESC */; - case -1: - case "UNRECOGNIZED": - default: - return "UNRECOGNIZED" /* UNRECOGNIZED */; - } -} -function directionToNumber(object) { - switch (object) { - case "DIRECTION_UNSPECIFIED" /* DIRECTION_UNSPECIFIED */: - return 0; - case "ASC" /* ASC */: - return 1; - case "DESC" /* DESC */: - return 2; - case "UNRECOGNIZED" /* UNRECOGNIZED */: - default: - return -1; - } -} - -// src/api/memos-proto-v0.24.0/gen/api/v1/markdown_service.ts -function nodeTypeFromJSON2(object) { - switch (object) { - case 0: - case "NODE_UNSPECIFIED": - return "NODE_UNSPECIFIED" /* NODE_UNSPECIFIED */; - case 1: - case "LINE_BREAK": - return "LINE_BREAK" /* LINE_BREAK */; - case 2: - case "PARAGRAPH": - return "PARAGRAPH" /* PARAGRAPH */; - case 3: - case "CODE_BLOCK": - return "CODE_BLOCK" /* CODE_BLOCK */; - case 4: - case "HEADING": - return "HEADING" /* HEADING */; - case 5: - case "HORIZONTAL_RULE": - return "HORIZONTAL_RULE" /* HORIZONTAL_RULE */; - case 6: - case "BLOCKQUOTE": - return "BLOCKQUOTE" /* BLOCKQUOTE */; - case 7: - case "LIST": - return "LIST" /* LIST */; - case 8: - case "ORDERED_LIST_ITEM": - return "ORDERED_LIST_ITEM" /* ORDERED_LIST_ITEM */; - case 9: - case "UNORDERED_LIST_ITEM": - return "UNORDERED_LIST_ITEM" /* UNORDERED_LIST_ITEM */; - case 10: - case "TASK_LIST_ITEM": - return "TASK_LIST_ITEM" /* TASK_LIST_ITEM */; - case 11: - case "MATH_BLOCK": - return "MATH_BLOCK" /* MATH_BLOCK */; - case 12: - case "TABLE": - return "TABLE" /* TABLE */; - case 13: - case "EMBEDDED_CONTENT": - return "EMBEDDED_CONTENT" /* EMBEDDED_CONTENT */; - case 51: - case "TEXT": - return "TEXT" /* TEXT */; - case 52: - case "BOLD": - return "BOLD" /* BOLD */; - case 53: - case "ITALIC": - return "ITALIC" /* ITALIC */; - case 54: - case "BOLD_ITALIC": - return "BOLD_ITALIC" /* BOLD_ITALIC */; - case 55: - case "CODE": - return "CODE" /* CODE */; - case 56: - case "IMAGE": - return "IMAGE" /* IMAGE */; - case 57: - case "LINK": - return "LINK" /* LINK */; - case 58: - case "AUTO_LINK": - return "AUTO_LINK" /* AUTO_LINK */; - case 59: - case "TAG": - return "TAG" /* TAG */; - case 60: - case "STRIKETHROUGH": - return "STRIKETHROUGH" /* STRIKETHROUGH */; - case 61: - case "ESCAPING_CHARACTER": - return "ESCAPING_CHARACTER" /* ESCAPING_CHARACTER */; - case 62: - case "MATH": - return "MATH" /* MATH */; - case 63: - case "HIGHLIGHT": - return "HIGHLIGHT" /* HIGHLIGHT */; - case 64: - case "SUBSCRIPT": - return "SUBSCRIPT" /* SUBSCRIPT */; - case 65: - case "SUPERSCRIPT": - return "SUPERSCRIPT" /* SUPERSCRIPT */; - case 66: - case "REFERENCED_CONTENT": - return "REFERENCED_CONTENT" /* REFERENCED_CONTENT */; - case 67: - case "SPOILER": - return "SPOILER" /* SPOILER */; - case 68: - case "HTML_ELEMENT": - return "HTML_ELEMENT" /* HTML_ELEMENT */; - case -1: - case "UNRECOGNIZED": - default: - return "UNRECOGNIZED" /* UNRECOGNIZED */; - } -} -function nodeTypeToNumber2(object) { - switch (object) { - case "NODE_UNSPECIFIED" /* NODE_UNSPECIFIED */: - return 0; - case "LINE_BREAK" /* LINE_BREAK */: - return 1; - case "PARAGRAPH" /* PARAGRAPH */: - return 2; - case "CODE_BLOCK" /* CODE_BLOCK */: - return 3; - case "HEADING" /* HEADING */: - return 4; - case "HORIZONTAL_RULE" /* HORIZONTAL_RULE */: - return 5; - case "BLOCKQUOTE" /* BLOCKQUOTE */: - return 6; - case "LIST" /* LIST */: - return 7; - case "ORDERED_LIST_ITEM" /* ORDERED_LIST_ITEM */: - return 8; - case "UNORDERED_LIST_ITEM" /* UNORDERED_LIST_ITEM */: - return 9; - case "TASK_LIST_ITEM" /* TASK_LIST_ITEM */: - return 10; - case "MATH_BLOCK" /* MATH_BLOCK */: - return 11; - case "TABLE" /* TABLE */: - return 12; - case "EMBEDDED_CONTENT" /* EMBEDDED_CONTENT */: - return 13; - case "TEXT" /* TEXT */: - return 51; - case "BOLD" /* BOLD */: - return 52; - case "ITALIC" /* ITALIC */: - return 53; - case "BOLD_ITALIC" /* BOLD_ITALIC */: - return 54; - case "CODE" /* CODE */: - return 55; - case "IMAGE" /* IMAGE */: - return 56; - case "LINK" /* LINK */: - return 57; - case "AUTO_LINK" /* AUTO_LINK */: - return 58; - case "TAG" /* TAG */: - return 59; - case "STRIKETHROUGH" /* STRIKETHROUGH */: - return 60; - case "ESCAPING_CHARACTER" /* ESCAPING_CHARACTER */: - return 61; - case "MATH" /* MATH */: - return 62; - case "HIGHLIGHT" /* HIGHLIGHT */: - return 63; - case "SUBSCRIPT" /* SUBSCRIPT */: - return 64; - case "SUPERSCRIPT" /* SUPERSCRIPT */: - return 65; - case "REFERENCED_CONTENT" /* REFERENCED_CONTENT */: - return 66; - case "SPOILER" /* SPOILER */: - return 67; - case "HTML_ELEMENT" /* HTML_ELEMENT */: - return 68; - case "UNRECOGNIZED" /* UNRECOGNIZED */: - default: - return -1; - } -} -function listNode_KindFromJSON(object) { - switch (object) { - case 0: - case "KIND_UNSPECIFIED": - return "KIND_UNSPECIFIED" /* KIND_UNSPECIFIED */; - case 1: - case "ORDERED": - return "ORDERED" /* ORDERED */; - case 2: - case "UNORDERED": - return "UNORDERED" /* UNORDERED */; - case 3: - case "DESCRIPTION": - return "DESCRIPTION" /* DESCRIPTION */; - case -1: - case "UNRECOGNIZED": - default: - return "UNRECOGNIZED" /* UNRECOGNIZED */; - } -} -function listNode_KindToNumber(object) { - switch (object) { - case "KIND_UNSPECIFIED" /* KIND_UNSPECIFIED */: - return 0; - case "ORDERED" /* ORDERED */: - return 1; - case "UNORDERED" /* UNORDERED */: - return 2; - case "DESCRIPTION" /* DESCRIPTION */: - return 3; - case "UNRECOGNIZED" /* UNRECOGNIZED */: - default: - return -1; - } -} -function createBaseParseMarkdownRequest2() { - return { markdown: "" }; -} -var ParseMarkdownRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.markdown !== "") { - writer.uint32(10).string(message.markdown); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseParseMarkdownRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.markdown = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ParseMarkdownRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseParseMarkdownRequest2(); - message.markdown = (_a = object.markdown) != null ? _a : ""; - return message; - } -}; -function createBaseParseMarkdownResponse2() { - return { nodes: [] }; -} -var ParseMarkdownResponse2 = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.nodes) { - Node2.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseParseMarkdownResponse2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.nodes.push(Node2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ParseMarkdownResponse2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseParseMarkdownResponse2(); - message.nodes = ((_a = object.nodes) == null ? void 0 : _a.map((e) => Node2.fromPartial(e))) || []; - return message; - } -}; -function createBaseRestoreMarkdownNodesRequest() { - return { nodes: [] }; -} -var RestoreMarkdownNodesRequest = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.nodes) { - Node2.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseRestoreMarkdownNodesRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.nodes.push(Node2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return RestoreMarkdownNodesRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseRestoreMarkdownNodesRequest(); - message.nodes = ((_a = object.nodes) == null ? void 0 : _a.map((e) => Node2.fromPartial(e))) || []; - return message; - } -}; -function createBaseRestoreMarkdownNodesResponse() { - return { markdown: "" }; -} -var RestoreMarkdownNodesResponse = { - encode(message, writer = new BinaryWriter()) { - if (message.markdown !== "") { - writer.uint32(10).string(message.markdown); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseRestoreMarkdownNodesResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.markdown = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return RestoreMarkdownNodesResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseRestoreMarkdownNodesResponse(); - message.markdown = (_a = object.markdown) != null ? _a : ""; - return message; - } -}; -function createBaseStringifyMarkdownNodesRequest() { - return { nodes: [] }; -} -var StringifyMarkdownNodesRequest = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.nodes) { - Node2.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseStringifyMarkdownNodesRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.nodes.push(Node2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return StringifyMarkdownNodesRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseStringifyMarkdownNodesRequest(); - message.nodes = ((_a = object.nodes) == null ? void 0 : _a.map((e) => Node2.fromPartial(e))) || []; - return message; - } -}; -function createBaseStringifyMarkdownNodesResponse() { - return { plainText: "" }; -} -var StringifyMarkdownNodesResponse = { - encode(message, writer = new BinaryWriter()) { - if (message.plainText !== "") { - writer.uint32(10).string(message.plainText); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseStringifyMarkdownNodesResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.plainText = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return StringifyMarkdownNodesResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseStringifyMarkdownNodesResponse(); - message.plainText = (_a = object.plainText) != null ? _a : ""; - return message; - } -}; -function createBaseGetLinkMetadataRequest2() { - return { link: "" }; -} -var GetLinkMetadataRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.link !== "") { - writer.uint32(10).string(message.link); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetLinkMetadataRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.link = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetLinkMetadataRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseGetLinkMetadataRequest2(); - message.link = (_a = object.link) != null ? _a : ""; - return message; - } -}; -function createBaseLinkMetadata2() { - return { title: "", description: "", image: "" }; -} -var LinkMetadata2 = { - encode(message, writer = new BinaryWriter()) { - if (message.title !== "") { - writer.uint32(10).string(message.title); - } - if (message.description !== "") { - writer.uint32(18).string(message.description); - } - if (message.image !== "") { - writer.uint32(26).string(message.image); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseLinkMetadata2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.title = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.description = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.image = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return LinkMetadata2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseLinkMetadata2(); - message.title = (_a = object.title) != null ? _a : ""; - message.description = (_b = object.description) != null ? _b : ""; - message.image = (_c = object.image) != null ? _c : ""; - return message; - } -}; -function createBaseNode2() { - return { - type: "NODE_UNSPECIFIED" /* NODE_UNSPECIFIED */, - lineBreakNode: void 0, - paragraphNode: void 0, - codeBlockNode: void 0, - headingNode: void 0, - horizontalRuleNode: void 0, - blockquoteNode: void 0, - listNode: void 0, - orderedListItemNode: void 0, - unorderedListItemNode: void 0, - taskListItemNode: void 0, - mathBlockNode: void 0, - tableNode: void 0, - embeddedContentNode: void 0, - textNode: void 0, - boldNode: void 0, - italicNode: void 0, - boldItalicNode: void 0, - codeNode: void 0, - imageNode: void 0, - linkNode: void 0, - autoLinkNode: void 0, - tagNode: void 0, - strikethroughNode: void 0, - escapingCharacterNode: void 0, - mathNode: void 0, - highlightNode: void 0, - subscriptNode: void 0, - superscriptNode: void 0, - referencedContentNode: void 0, - spoilerNode: void 0, - htmlElementNode: void 0 - }; -} -var Node2 = { - encode(message, writer = new BinaryWriter()) { - if (message.type !== "NODE_UNSPECIFIED" /* NODE_UNSPECIFIED */) { - writer.uint32(8).int32(nodeTypeToNumber2(message.type)); - } - if (message.lineBreakNode !== void 0) { - LineBreakNode2.encode(message.lineBreakNode, writer.uint32(90).fork()).join(); - } - if (message.paragraphNode !== void 0) { - ParagraphNode2.encode(message.paragraphNode, writer.uint32(98).fork()).join(); - } - if (message.codeBlockNode !== void 0) { - CodeBlockNode2.encode(message.codeBlockNode, writer.uint32(106).fork()).join(); - } - if (message.headingNode !== void 0) { - HeadingNode2.encode(message.headingNode, writer.uint32(114).fork()).join(); - } - if (message.horizontalRuleNode !== void 0) { - HorizontalRuleNode2.encode(message.horizontalRuleNode, writer.uint32(122).fork()).join(); - } - if (message.blockquoteNode !== void 0) { - BlockquoteNode2.encode(message.blockquoteNode, writer.uint32(130).fork()).join(); - } - if (message.listNode !== void 0) { - ListNode.encode(message.listNode, writer.uint32(138).fork()).join(); - } - if (message.orderedListItemNode !== void 0) { - OrderedListItemNode.encode(message.orderedListItemNode, writer.uint32(146).fork()).join(); - } - if (message.unorderedListItemNode !== void 0) { - UnorderedListItemNode.encode(message.unorderedListItemNode, writer.uint32(154).fork()).join(); - } - if (message.taskListItemNode !== void 0) { - TaskListItemNode.encode(message.taskListItemNode, writer.uint32(162).fork()).join(); - } - if (message.mathBlockNode !== void 0) { - MathBlockNode2.encode(message.mathBlockNode, writer.uint32(170).fork()).join(); - } - if (message.tableNode !== void 0) { - TableNode2.encode(message.tableNode, writer.uint32(178).fork()).join(); - } - if (message.embeddedContentNode !== void 0) { - EmbeddedContentNode2.encode(message.embeddedContentNode, writer.uint32(186).fork()).join(); - } - if (message.textNode !== void 0) { - TextNode2.encode(message.textNode, writer.uint32(410).fork()).join(); - } - if (message.boldNode !== void 0) { - BoldNode2.encode(message.boldNode, writer.uint32(418).fork()).join(); - } - if (message.italicNode !== void 0) { - ItalicNode2.encode(message.italicNode, writer.uint32(426).fork()).join(); - } - if (message.boldItalicNode !== void 0) { - BoldItalicNode2.encode(message.boldItalicNode, writer.uint32(434).fork()).join(); - } - if (message.codeNode !== void 0) { - CodeNode2.encode(message.codeNode, writer.uint32(442).fork()).join(); - } - if (message.imageNode !== void 0) { - ImageNode2.encode(message.imageNode, writer.uint32(450).fork()).join(); - } - if (message.linkNode !== void 0) { - LinkNode2.encode(message.linkNode, writer.uint32(458).fork()).join(); - } - if (message.autoLinkNode !== void 0) { - AutoLinkNode2.encode(message.autoLinkNode, writer.uint32(466).fork()).join(); - } - if (message.tagNode !== void 0) { - TagNode2.encode(message.tagNode, writer.uint32(474).fork()).join(); - } - if (message.strikethroughNode !== void 0) { - StrikethroughNode2.encode(message.strikethroughNode, writer.uint32(482).fork()).join(); - } - if (message.escapingCharacterNode !== void 0) { - EscapingCharacterNode2.encode(message.escapingCharacterNode, writer.uint32(490).fork()).join(); - } - if (message.mathNode !== void 0) { - MathNode2.encode(message.mathNode, writer.uint32(498).fork()).join(); - } - if (message.highlightNode !== void 0) { - HighlightNode2.encode(message.highlightNode, writer.uint32(506).fork()).join(); - } - if (message.subscriptNode !== void 0) { - SubscriptNode2.encode(message.subscriptNode, writer.uint32(514).fork()).join(); - } - if (message.superscriptNode !== void 0) { - SuperscriptNode2.encode(message.superscriptNode, writer.uint32(522).fork()).join(); - } - if (message.referencedContentNode !== void 0) { - ReferencedContentNode2.encode(message.referencedContentNode, writer.uint32(530).fork()).join(); - } - if (message.spoilerNode !== void 0) { - SpoilerNode2.encode(message.spoilerNode, writer.uint32(538).fork()).join(); - } - if (message.htmlElementNode !== void 0) { - HTMLElementNode.encode(message.htmlElementNode, writer.uint32(546).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - message.type = nodeTypeFromJSON2(reader.int32()); - continue; - } - case 11: { - if (tag !== 90) { - break; - } - message.lineBreakNode = LineBreakNode2.decode(reader, reader.uint32()); - continue; - } - case 12: { - if (tag !== 98) { - break; - } - message.paragraphNode = ParagraphNode2.decode(reader, reader.uint32()); - continue; - } - case 13: { - if (tag !== 106) { - break; - } - message.codeBlockNode = CodeBlockNode2.decode(reader, reader.uint32()); - continue; - } - case 14: { - if (tag !== 114) { - break; - } - message.headingNode = HeadingNode2.decode(reader, reader.uint32()); - continue; - } - case 15: { - if (tag !== 122) { - break; - } - message.horizontalRuleNode = HorizontalRuleNode2.decode(reader, reader.uint32()); - continue; - } - case 16: { - if (tag !== 130) { - break; - } - message.blockquoteNode = BlockquoteNode2.decode(reader, reader.uint32()); - continue; - } - case 17: { - if (tag !== 138) { - break; - } - message.listNode = ListNode.decode(reader, reader.uint32()); - continue; - } - case 18: { - if (tag !== 146) { - break; - } - message.orderedListItemNode = OrderedListItemNode.decode(reader, reader.uint32()); - continue; - } - case 19: { - if (tag !== 154) { - break; - } - message.unorderedListItemNode = UnorderedListItemNode.decode(reader, reader.uint32()); - continue; - } - case 20: { - if (tag !== 162) { - break; - } - message.taskListItemNode = TaskListItemNode.decode(reader, reader.uint32()); - continue; - } - case 21: { - if (tag !== 170) { - break; - } - message.mathBlockNode = MathBlockNode2.decode(reader, reader.uint32()); - continue; - } - case 22: { - if (tag !== 178) { - break; - } - message.tableNode = TableNode2.decode(reader, reader.uint32()); - continue; - } - case 23: { - if (tag !== 186) { - break; - } - message.embeddedContentNode = EmbeddedContentNode2.decode(reader, reader.uint32()); - continue; - } - case 51: { - if (tag !== 410) { - break; - } - message.textNode = TextNode2.decode(reader, reader.uint32()); - continue; - } - case 52: { - if (tag !== 418) { - break; - } - message.boldNode = BoldNode2.decode(reader, reader.uint32()); - continue; - } - case 53: { - if (tag !== 426) { - break; - } - message.italicNode = ItalicNode2.decode(reader, reader.uint32()); - continue; - } - case 54: { - if (tag !== 434) { - break; - } - message.boldItalicNode = BoldItalicNode2.decode(reader, reader.uint32()); - continue; - } - case 55: { - if (tag !== 442) { - break; - } - message.codeNode = CodeNode2.decode(reader, reader.uint32()); - continue; - } - case 56: { - if (tag !== 450) { - break; - } - message.imageNode = ImageNode2.decode(reader, reader.uint32()); - continue; - } - case 57: { - if (tag !== 458) { - break; - } - message.linkNode = LinkNode2.decode(reader, reader.uint32()); - continue; - } - case 58: { - if (tag !== 466) { - break; - } - message.autoLinkNode = AutoLinkNode2.decode(reader, reader.uint32()); - continue; - } - case 59: { - if (tag !== 474) { - break; - } - message.tagNode = TagNode2.decode(reader, reader.uint32()); - continue; - } - case 60: { - if (tag !== 482) { - break; - } - message.strikethroughNode = StrikethroughNode2.decode(reader, reader.uint32()); - continue; - } - case 61: { - if (tag !== 490) { - break; - } - message.escapingCharacterNode = EscapingCharacterNode2.decode(reader, reader.uint32()); - continue; - } - case 62: { - if (tag !== 498) { - break; - } - message.mathNode = MathNode2.decode(reader, reader.uint32()); - continue; - } - case 63: { - if (tag !== 506) { - break; - } - message.highlightNode = HighlightNode2.decode(reader, reader.uint32()); - continue; - } - case 64: { - if (tag !== 514) { - break; - } - message.subscriptNode = SubscriptNode2.decode(reader, reader.uint32()); - continue; - } - case 65: { - if (tag !== 522) { - break; - } - message.superscriptNode = SuperscriptNode2.decode(reader, reader.uint32()); - continue; - } - case 66: { - if (tag !== 530) { - break; - } - message.referencedContentNode = ReferencedContentNode2.decode(reader, reader.uint32()); - continue; - } - case 67: { - if (tag !== 538) { - break; - } - message.spoilerNode = SpoilerNode2.decode(reader, reader.uint32()); - continue; - } - case 68: { - if (tag !== 546) { - break; - } - message.htmlElementNode = HTMLElementNode.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return Node2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseNode2(); - message.type = (_a = object.type) != null ? _a : "NODE_UNSPECIFIED" /* NODE_UNSPECIFIED */; - message.lineBreakNode = object.lineBreakNode !== void 0 && object.lineBreakNode !== null ? LineBreakNode2.fromPartial(object.lineBreakNode) : void 0; - message.paragraphNode = object.paragraphNode !== void 0 && object.paragraphNode !== null ? ParagraphNode2.fromPartial(object.paragraphNode) : void 0; - message.codeBlockNode = object.codeBlockNode !== void 0 && object.codeBlockNode !== null ? CodeBlockNode2.fromPartial(object.codeBlockNode) : void 0; - message.headingNode = object.headingNode !== void 0 && object.headingNode !== null ? HeadingNode2.fromPartial(object.headingNode) : void 0; - message.horizontalRuleNode = object.horizontalRuleNode !== void 0 && object.horizontalRuleNode !== null ? HorizontalRuleNode2.fromPartial(object.horizontalRuleNode) : void 0; - message.blockquoteNode = object.blockquoteNode !== void 0 && object.blockquoteNode !== null ? BlockquoteNode2.fromPartial(object.blockquoteNode) : void 0; - message.listNode = object.listNode !== void 0 && object.listNode !== null ? ListNode.fromPartial(object.listNode) : void 0; - message.orderedListItemNode = object.orderedListItemNode !== void 0 && object.orderedListItemNode !== null ? OrderedListItemNode.fromPartial(object.orderedListItemNode) : void 0; - message.unorderedListItemNode = object.unorderedListItemNode !== void 0 && object.unorderedListItemNode !== null ? UnorderedListItemNode.fromPartial(object.unorderedListItemNode) : void 0; - message.taskListItemNode = object.taskListItemNode !== void 0 && object.taskListItemNode !== null ? TaskListItemNode.fromPartial(object.taskListItemNode) : void 0; - message.mathBlockNode = object.mathBlockNode !== void 0 && object.mathBlockNode !== null ? MathBlockNode2.fromPartial(object.mathBlockNode) : void 0; - message.tableNode = object.tableNode !== void 0 && object.tableNode !== null ? TableNode2.fromPartial(object.tableNode) : void 0; - message.embeddedContentNode = object.embeddedContentNode !== void 0 && object.embeddedContentNode !== null ? EmbeddedContentNode2.fromPartial(object.embeddedContentNode) : void 0; - message.textNode = object.textNode !== void 0 && object.textNode !== null ? TextNode2.fromPartial(object.textNode) : void 0; - message.boldNode = object.boldNode !== void 0 && object.boldNode !== null ? BoldNode2.fromPartial(object.boldNode) : void 0; - message.italicNode = object.italicNode !== void 0 && object.italicNode !== null ? ItalicNode2.fromPartial(object.italicNode) : void 0; - message.boldItalicNode = object.boldItalicNode !== void 0 && object.boldItalicNode !== null ? BoldItalicNode2.fromPartial(object.boldItalicNode) : void 0; - message.codeNode = object.codeNode !== void 0 && object.codeNode !== null ? CodeNode2.fromPartial(object.codeNode) : void 0; - message.imageNode = object.imageNode !== void 0 && object.imageNode !== null ? ImageNode2.fromPartial(object.imageNode) : void 0; - message.linkNode = object.linkNode !== void 0 && object.linkNode !== null ? LinkNode2.fromPartial(object.linkNode) : void 0; - message.autoLinkNode = object.autoLinkNode !== void 0 && object.autoLinkNode !== null ? AutoLinkNode2.fromPartial(object.autoLinkNode) : void 0; - message.tagNode = object.tagNode !== void 0 && object.tagNode !== null ? TagNode2.fromPartial(object.tagNode) : void 0; - message.strikethroughNode = object.strikethroughNode !== void 0 && object.strikethroughNode !== null ? StrikethroughNode2.fromPartial(object.strikethroughNode) : void 0; - message.escapingCharacterNode = object.escapingCharacterNode !== void 0 && object.escapingCharacterNode !== null ? EscapingCharacterNode2.fromPartial(object.escapingCharacterNode) : void 0; - message.mathNode = object.mathNode !== void 0 && object.mathNode !== null ? MathNode2.fromPartial(object.mathNode) : void 0; - message.highlightNode = object.highlightNode !== void 0 && object.highlightNode !== null ? HighlightNode2.fromPartial(object.highlightNode) : void 0; - message.subscriptNode = object.subscriptNode !== void 0 && object.subscriptNode !== null ? SubscriptNode2.fromPartial(object.subscriptNode) : void 0; - message.superscriptNode = object.superscriptNode !== void 0 && object.superscriptNode !== null ? SuperscriptNode2.fromPartial(object.superscriptNode) : void 0; - message.referencedContentNode = object.referencedContentNode !== void 0 && object.referencedContentNode !== null ? ReferencedContentNode2.fromPartial(object.referencedContentNode) : void 0; - message.spoilerNode = object.spoilerNode !== void 0 && object.spoilerNode !== null ? SpoilerNode2.fromPartial(object.spoilerNode) : void 0; - message.htmlElementNode = object.htmlElementNode !== void 0 && object.htmlElementNode !== null ? HTMLElementNode.fromPartial(object.htmlElementNode) : void 0; - return message; - } -}; -function createBaseLineBreakNode2() { - return {}; -} -var LineBreakNode2 = { - encode(_, writer = new BinaryWriter()) { - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseLineBreakNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return LineBreakNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(_) { - const message = createBaseLineBreakNode2(); - return message; - } -}; -function createBaseParagraphNode2() { - return { children: [] }; -} -var ParagraphNode2 = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.children) { - Node2.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseParagraphNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.children.push(Node2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ParagraphNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseParagraphNode2(); - message.children = ((_a = object.children) == null ? void 0 : _a.map((e) => Node2.fromPartial(e))) || []; - return message; - } -}; -function createBaseCodeBlockNode2() { - return { language: "", content: "" }; -} -var CodeBlockNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.language !== "") { - writer.uint32(10).string(message.language); - } - if (message.content !== "") { - writer.uint32(18).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseCodeBlockNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.language = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return CodeBlockNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseCodeBlockNode2(); - message.language = (_a = object.language) != null ? _a : ""; - message.content = (_b = object.content) != null ? _b : ""; - return message; - } -}; -function createBaseHeadingNode2() { - return { level: 0, children: [] }; -} -var HeadingNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.level !== 0) { - writer.uint32(8).int32(message.level); - } - for (const v of message.children) { - Node2.encode(v, writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseHeadingNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - message.level = reader.int32(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.children.push(Node2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return HeadingNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseHeadingNode2(); - message.level = (_a = object.level) != null ? _a : 0; - message.children = ((_b = object.children) == null ? void 0 : _b.map((e) => Node2.fromPartial(e))) || []; - return message; - } -}; -function createBaseHorizontalRuleNode2() { - return { symbol: "" }; -} -var HorizontalRuleNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.symbol !== "") { - writer.uint32(10).string(message.symbol); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseHorizontalRuleNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.symbol = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return HorizontalRuleNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseHorizontalRuleNode2(); - message.symbol = (_a = object.symbol) != null ? _a : ""; - return message; - } -}; -function createBaseBlockquoteNode2() { - return { children: [] }; -} -var BlockquoteNode2 = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.children) { - Node2.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseBlockquoteNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.children.push(Node2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return BlockquoteNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseBlockquoteNode2(); - message.children = ((_a = object.children) == null ? void 0 : _a.map((e) => Node2.fromPartial(e))) || []; - return message; - } -}; -function createBaseListNode() { - return { kind: "KIND_UNSPECIFIED" /* KIND_UNSPECIFIED */, indent: 0, children: [] }; -} -var ListNode = { - encode(message, writer = new BinaryWriter()) { - if (message.kind !== "KIND_UNSPECIFIED" /* KIND_UNSPECIFIED */) { - writer.uint32(8).int32(listNode_KindToNumber(message.kind)); - } - if (message.indent !== 0) { - writer.uint32(16).int32(message.indent); - } - for (const v of message.children) { - Node2.encode(v, writer.uint32(26).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - message.kind = listNode_KindFromJSON(reader.int32()); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.indent = reader.int32(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.children.push(Node2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseListNode(); - message.kind = (_a = object.kind) != null ? _a : "KIND_UNSPECIFIED" /* KIND_UNSPECIFIED */; - message.indent = (_b = object.indent) != null ? _b : 0; - message.children = ((_c = object.children) == null ? void 0 : _c.map((e) => Node2.fromPartial(e))) || []; - return message; - } -}; -function createBaseOrderedListItemNode() { - return { number: "", indent: 0, children: [] }; -} -var OrderedListItemNode = { - encode(message, writer = new BinaryWriter()) { - if (message.number !== "") { - writer.uint32(10).string(message.number); - } - if (message.indent !== 0) { - writer.uint32(16).int32(message.indent); - } - for (const v of message.children) { - Node2.encode(v, writer.uint32(26).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseOrderedListItemNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.number = reader.string(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.indent = reader.int32(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.children.push(Node2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return OrderedListItemNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseOrderedListItemNode(); - message.number = (_a = object.number) != null ? _a : ""; - message.indent = (_b = object.indent) != null ? _b : 0; - message.children = ((_c = object.children) == null ? void 0 : _c.map((e) => Node2.fromPartial(e))) || []; - return message; - } -}; -function createBaseUnorderedListItemNode() { - return { symbol: "", indent: 0, children: [] }; -} -var UnorderedListItemNode = { - encode(message, writer = new BinaryWriter()) { - if (message.symbol !== "") { - writer.uint32(10).string(message.symbol); - } - if (message.indent !== 0) { - writer.uint32(16).int32(message.indent); - } - for (const v of message.children) { - Node2.encode(v, writer.uint32(26).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUnorderedListItemNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.symbol = reader.string(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.indent = reader.int32(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.children.push(Node2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UnorderedListItemNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseUnorderedListItemNode(); - message.symbol = (_a = object.symbol) != null ? _a : ""; - message.indent = (_b = object.indent) != null ? _b : 0; - message.children = ((_c = object.children) == null ? void 0 : _c.map((e) => Node2.fromPartial(e))) || []; - return message; - } -}; -function createBaseTaskListItemNode() { - return { symbol: "", indent: 0, complete: false, children: [] }; -} -var TaskListItemNode = { - encode(message, writer = new BinaryWriter()) { - if (message.symbol !== "") { - writer.uint32(10).string(message.symbol); - } - if (message.indent !== 0) { - writer.uint32(16).int32(message.indent); - } - if (message.complete !== false) { - writer.uint32(24).bool(message.complete); - } - for (const v of message.children) { - Node2.encode(v, writer.uint32(34).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseTaskListItemNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.symbol = reader.string(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.indent = reader.int32(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.complete = reader.bool(); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - message.children.push(Node2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return TaskListItemNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d; - const message = createBaseTaskListItemNode(); - message.symbol = (_a = object.symbol) != null ? _a : ""; - message.indent = (_b = object.indent) != null ? _b : 0; - message.complete = (_c = object.complete) != null ? _c : false; - message.children = ((_d = object.children) == null ? void 0 : _d.map((e) => Node2.fromPartial(e))) || []; - return message; - } -}; -function createBaseMathBlockNode2() { - return { content: "" }; -} -var MathBlockNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseMathBlockNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return MathBlockNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseMathBlockNode2(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseTableNode2() { - return { header: [], delimiter: [], rows: [] }; -} -var TableNode2 = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.header) { - Node2.encode(v, writer.uint32(10).fork()).join(); - } - for (const v of message.delimiter) { - writer.uint32(18).string(v); - } - for (const v of message.rows) { - TableNode_Row2.encode(v, writer.uint32(26).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseTableNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.header.push(Node2.decode(reader, reader.uint32())); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.delimiter.push(reader.string()); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.rows.push(TableNode_Row2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return TableNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseTableNode2(); - message.header = ((_a = object.header) == null ? void 0 : _a.map((e) => Node2.fromPartial(e))) || []; - message.delimiter = ((_b = object.delimiter) == null ? void 0 : _b.map((e) => e)) || []; - message.rows = ((_c = object.rows) == null ? void 0 : _c.map((e) => TableNode_Row2.fromPartial(e))) || []; - return message; - } -}; -function createBaseTableNode_Row2() { - return { cells: [] }; -} -var TableNode_Row2 = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.cells) { - Node2.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseTableNode_Row2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.cells.push(Node2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return TableNode_Row2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseTableNode_Row2(); - message.cells = ((_a = object.cells) == null ? void 0 : _a.map((e) => Node2.fromPartial(e))) || []; - return message; - } -}; -function createBaseEmbeddedContentNode2() { - return { resourceName: "", params: "" }; -} -var EmbeddedContentNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.resourceName !== "") { - writer.uint32(10).string(message.resourceName); - } - if (message.params !== "") { - writer.uint32(18).string(message.params); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseEmbeddedContentNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.resourceName = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.params = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return EmbeddedContentNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseEmbeddedContentNode2(); - message.resourceName = (_a = object.resourceName) != null ? _a : ""; - message.params = (_b = object.params) != null ? _b : ""; - return message; - } -}; -function createBaseTextNode2() { - return { content: "" }; -} -var TextNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseTextNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return TextNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseTextNode2(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseBoldNode2() { - return { symbol: "", children: [] }; -} -var BoldNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.symbol !== "") { - writer.uint32(10).string(message.symbol); - } - for (const v of message.children) { - Node2.encode(v, writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseBoldNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.symbol = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.children.push(Node2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return BoldNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseBoldNode2(); - message.symbol = (_a = object.symbol) != null ? _a : ""; - message.children = ((_b = object.children) == null ? void 0 : _b.map((e) => Node2.fromPartial(e))) || []; - return message; - } -}; -function createBaseItalicNode2() { - return { symbol: "", content: "" }; -} -var ItalicNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.symbol !== "") { - writer.uint32(10).string(message.symbol); - } - if (message.content !== "") { - writer.uint32(18).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseItalicNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.symbol = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ItalicNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseItalicNode2(); - message.symbol = (_a = object.symbol) != null ? _a : ""; - message.content = (_b = object.content) != null ? _b : ""; - return message; - } -}; -function createBaseBoldItalicNode2() { - return { symbol: "", content: "" }; -} -var BoldItalicNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.symbol !== "") { - writer.uint32(10).string(message.symbol); - } - if (message.content !== "") { - writer.uint32(18).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseBoldItalicNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.symbol = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return BoldItalicNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseBoldItalicNode2(); - message.symbol = (_a = object.symbol) != null ? _a : ""; - message.content = (_b = object.content) != null ? _b : ""; - return message; - } -}; -function createBaseCodeNode2() { - return { content: "" }; -} -var CodeNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseCodeNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return CodeNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseCodeNode2(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseImageNode2() { - return { altText: "", url: "" }; -} -var ImageNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.altText !== "") { - writer.uint32(10).string(message.altText); - } - if (message.url !== "") { - writer.uint32(18).string(message.url); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseImageNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.altText = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.url = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ImageNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseImageNode2(); - message.altText = (_a = object.altText) != null ? _a : ""; - message.url = (_b = object.url) != null ? _b : ""; - return message; - } -}; -function createBaseLinkNode2() { - return { text: "", url: "" }; -} -var LinkNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.text !== "") { - writer.uint32(10).string(message.text); - } - if (message.url !== "") { - writer.uint32(18).string(message.url); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseLinkNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.text = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.url = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return LinkNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseLinkNode2(); - message.text = (_a = object.text) != null ? _a : ""; - message.url = (_b = object.url) != null ? _b : ""; - return message; - } -}; -function createBaseAutoLinkNode2() { - return { url: "", isRawText: false }; -} -var AutoLinkNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.url !== "") { - writer.uint32(10).string(message.url); - } - if (message.isRawText !== false) { - writer.uint32(16).bool(message.isRawText); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseAutoLinkNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.url = reader.string(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.isRawText = reader.bool(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return AutoLinkNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseAutoLinkNode2(); - message.url = (_a = object.url) != null ? _a : ""; - message.isRawText = (_b = object.isRawText) != null ? _b : false; - return message; - } -}; -function createBaseTagNode2() { - return { content: "" }; -} -var TagNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseTagNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return TagNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseTagNode2(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseStrikethroughNode2() { - return { content: "" }; -} -var StrikethroughNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseStrikethroughNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return StrikethroughNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseStrikethroughNode2(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseEscapingCharacterNode2() { - return { symbol: "" }; -} -var EscapingCharacterNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.symbol !== "") { - writer.uint32(10).string(message.symbol); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseEscapingCharacterNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.symbol = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return EscapingCharacterNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseEscapingCharacterNode2(); - message.symbol = (_a = object.symbol) != null ? _a : ""; - return message; - } -}; -function createBaseMathNode2() { - return { content: "" }; -} -var MathNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseMathNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return MathNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseMathNode2(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseHighlightNode2() { - return { content: "" }; -} -var HighlightNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseHighlightNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return HighlightNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseHighlightNode2(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseSubscriptNode2() { - return { content: "" }; -} -var SubscriptNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSubscriptNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SubscriptNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseSubscriptNode2(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseSuperscriptNode2() { - return { content: "" }; -} -var SuperscriptNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSuperscriptNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SuperscriptNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseSuperscriptNode2(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseReferencedContentNode2() { - return { resourceName: "", params: "" }; -} -var ReferencedContentNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.resourceName !== "") { - writer.uint32(10).string(message.resourceName); - } - if (message.params !== "") { - writer.uint32(18).string(message.params); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseReferencedContentNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.resourceName = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.params = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ReferencedContentNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseReferencedContentNode2(); - message.resourceName = (_a = object.resourceName) != null ? _a : ""; - message.params = (_b = object.params) != null ? _b : ""; - return message; - } -}; -function createBaseSpoilerNode2() { - return { content: "" }; -} -var SpoilerNode2 = { - encode(message, writer = new BinaryWriter()) { - if (message.content !== "") { - writer.uint32(10).string(message.content); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSpoilerNode2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.content = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SpoilerNode2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseSpoilerNode2(); - message.content = (_a = object.content) != null ? _a : ""; - return message; - } -}; -function createBaseHTMLElementNode() { - return { tagName: "", attributes: {} }; -} -var HTMLElementNode = { - encode(message, writer = new BinaryWriter()) { - if (message.tagName !== "") { - writer.uint32(10).string(message.tagName); - } - Object.entries(message.attributes).forEach(([key, value]) => { - HTMLElementNode_AttributesEntry.encode({ key, value }, writer.uint32(18).fork()).join(); - }); - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseHTMLElementNode(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.tagName = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - const entry2 = HTMLElementNode_AttributesEntry.decode(reader, reader.uint32()); - if (entry2.value !== void 0) { - message.attributes[entry2.key] = entry2.value; - } - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return HTMLElementNode.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseHTMLElementNode(); - message.tagName = (_a = object.tagName) != null ? _a : ""; - message.attributes = Object.entries((_b = object.attributes) != null ? _b : {}).reduce( - (acc, [key, value]) => { - if (value !== void 0) { - acc[key] = globalThis.String(value); - } - return acc; - }, - {} - ); - return message; - } -}; -function createBaseHTMLElementNode_AttributesEntry() { - return { key: "", value: "" }; -} -var HTMLElementNode_AttributesEntry = { - encode(message, writer = new BinaryWriter()) { - if (message.key !== "") { - writer.uint32(10).string(message.key); - } - if (message.value !== "") { - writer.uint32(18).string(message.value); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseHTMLElementNode_AttributesEntry(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.key = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.value = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return HTMLElementNode_AttributesEntry.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseHTMLElementNode_AttributesEntry(); - message.key = (_a = object.key) != null ? _a : ""; - message.value = (_b = object.value) != null ? _b : ""; - return message; - } -}; -var MarkdownServiceDefinition2 = { - name: "MarkdownService", - fullName: "memos.api.v1.MarkdownService", - methods: { - /** ParseMarkdown parses the given markdown content and returns a list of nodes. */ - parseMarkdown: { - name: "ParseMarkdown", - requestType: ParseMarkdownRequest2, - requestStream: false, - responseType: ParseMarkdownResponse2, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 27, - 58, - 1, - 42, - 34, - 22, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 109, - 97, - 114, - 107, - 100, - 111, - 119, - 110, - 58, - 112, - 97, - 114, - 115, - 101 - ]) - ] - } - } - }, - /** RestoreMarkdownNodes restores the given nodes to markdown content. */ - restoreMarkdownNodes: { - name: "RestoreMarkdownNodes", - requestType: RestoreMarkdownNodesRequest, - requestStream: false, - responseType: RestoreMarkdownNodesResponse, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 34, - 58, - 1, - 42, - 34, - 29, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 109, - 97, - 114, - 107, - 100, - 111, - 119, - 110, - 47, - 110, - 111, - 100, - 101, - 58, - 114, - 101, - 115, - 116, - 111, - 114, - 101 - ]) - ] - } - } - }, - /** StringifyMarkdownNodes stringify the given nodes to plain text content. */ - stringifyMarkdownNodes: { - name: "StringifyMarkdownNodes", - requestType: StringifyMarkdownNodesRequest, - requestStream: false, - responseType: StringifyMarkdownNodesResponse, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 36, - 58, - 1, - 42, - 34, - 31, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 109, - 97, - 114, - 107, - 100, - 111, - 119, - 110, - 47, - 110, - 111, - 100, - 101, - 58, - 115, - 116, - 114, - 105, - 110, - 103, - 105, - 102, - 121 - ]) - ] - } - } - }, - /** GetLinkMetadata returns metadata for a given link. */ - getLinkMetadata: { - name: "GetLinkMetadata", - requestType: GetLinkMetadataRequest2, - requestStream: false, - responseType: LinkMetadata2, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 32, - 18, - 30, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 109, - 97, - 114, - 107, - 100, - 111, - 119, - 110, - 47, - 108, - 105, - 110, - 107, - 58, - 109, - 101, - 116, - 97, - 100, - 97, - 116, - 97 - ]) - ] - } - } - } - } -}; - -// src/api/memos-proto-v0.24.0/gen/api/v1/memo_relation_service.ts -function memoRelation_TypeFromJSON2(object) { - switch (object) { - case 0: - case "TYPE_UNSPECIFIED": - return "TYPE_UNSPECIFIED" /* TYPE_UNSPECIFIED */; - case 1: - case "REFERENCE": - return "REFERENCE" /* REFERENCE */; - case 2: - case "COMMENT": - return "COMMENT" /* COMMENT */; - case -1: - case "UNRECOGNIZED": - default: - return "UNRECOGNIZED" /* UNRECOGNIZED */; - } -} -function memoRelation_TypeToNumber2(object) { - switch (object) { - case "TYPE_UNSPECIFIED" /* TYPE_UNSPECIFIED */: - return 0; - case "REFERENCE" /* REFERENCE */: - return 1; - case "COMMENT" /* COMMENT */: - return 2; - case "UNRECOGNIZED" /* UNRECOGNIZED */: - default: - return -1; - } -} -function createBaseMemoRelation2() { - return { memo: void 0, relatedMemo: void 0, type: "TYPE_UNSPECIFIED" /* TYPE_UNSPECIFIED */ }; -} -var MemoRelation2 = { - encode(message, writer = new BinaryWriter()) { - if (message.memo !== void 0) { - MemoRelation_Memo.encode(message.memo, writer.uint32(10).fork()).join(); - } - if (message.relatedMemo !== void 0) { - MemoRelation_Memo.encode(message.relatedMemo, writer.uint32(18).fork()).join(); - } - if (message.type !== "TYPE_UNSPECIFIED" /* TYPE_UNSPECIFIED */) { - writer.uint32(24).int32(memoRelation_TypeToNumber2(message.type)); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseMemoRelation2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.memo = MemoRelation_Memo.decode(reader, reader.uint32()); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.relatedMemo = MemoRelation_Memo.decode(reader, reader.uint32()); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.type = memoRelation_TypeFromJSON2(reader.int32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return MemoRelation2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseMemoRelation2(); - message.memo = object.memo !== void 0 && object.memo !== null ? MemoRelation_Memo.fromPartial(object.memo) : void 0; - message.relatedMemo = object.relatedMemo !== void 0 && object.relatedMemo !== null ? MemoRelation_Memo.fromPartial(object.relatedMemo) : void 0; - message.type = (_a = object.type) != null ? _a : "TYPE_UNSPECIFIED" /* TYPE_UNSPECIFIED */; - return message; - } -}; -function createBaseMemoRelation_Memo() { - return { name: "", uid: "", snippet: "" }; -} -var MemoRelation_Memo = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.uid !== "") { - writer.uint32(18).string(message.uid); - } - if (message.snippet !== "") { - writer.uint32(26).string(message.snippet); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseMemoRelation_Memo(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.uid = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.snippet = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return MemoRelation_Memo.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseMemoRelation_Memo(); - message.name = (_a = object.name) != null ? _a : ""; - message.uid = (_b = object.uid) != null ? _b : ""; - message.snippet = (_c = object.snippet) != null ? _c : ""; - return message; - } -}; - -// src/api/memos-proto-v0.24.0/gen/api/v1/reaction_service.ts -function createBaseReaction2() { - return { id: 0, creator: "", contentId: "", reactionType: "" }; -} -var Reaction2 = { - encode(message, writer = new BinaryWriter()) { - if (message.id !== 0) { - writer.uint32(8).int32(message.id); - } - if (message.creator !== "") { - writer.uint32(18).string(message.creator); - } - if (message.contentId !== "") { - writer.uint32(26).string(message.contentId); - } - if (message.reactionType !== "") { - writer.uint32(34).string(message.reactionType); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseReaction2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - message.id = reader.int32(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.creator = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.contentId = reader.string(); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - message.reactionType = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return Reaction2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d; - const message = createBaseReaction2(); - message.id = (_a = object.id) != null ? _a : 0; - message.creator = (_b = object.creator) != null ? _b : ""; - message.contentId = (_c = object.contentId) != null ? _c : ""; - message.reactionType = (_d = object.reactionType) != null ? _d : ""; - return message; - } -}; - -// src/api/memos-proto-v0.24.0/gen/google/protobuf/any.ts -function createBaseAny2() { - return { typeUrl: "", value: new Uint8Array(0) }; -} -var Any2 = { - encode(message, writer = new BinaryWriter()) { - if (message.typeUrl !== "") { - writer.uint32(10).string(message.typeUrl); - } - if (message.value.length !== 0) { - writer.uint32(18).bytes(message.value); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseAny2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.typeUrl = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.value = reader.bytes(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return Any2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseAny2(); - message.typeUrl = (_a = object.typeUrl) != null ? _a : ""; - message.value = (_b = object.value) != null ? _b : new Uint8Array(0); - return message; - } -}; - -// src/api/memos-proto-v0.24.0/gen/google/api/httpbody.ts -function createBaseHttpBody2() { - return { contentType: "", data: new Uint8Array(0), extensions: [] }; -} -var HttpBody2 = { - encode(message, writer = new BinaryWriter()) { - if (message.contentType !== "") { - writer.uint32(10).string(message.contentType); - } - if (message.data.length !== 0) { - writer.uint32(18).bytes(message.data); - } - for (const v of message.extensions) { - Any2.encode(v, writer.uint32(26).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseHttpBody2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.contentType = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.data = reader.bytes(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.extensions.push(Any2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return HttpBody2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseHttpBody2(); - message.contentType = (_a = object.contentType) != null ? _a : ""; - message.data = (_b = object.data) != null ? _b : new Uint8Array(0); - message.extensions = ((_c = object.extensions) == null ? void 0 : _c.map((e) => Any2.fromPartial(e))) || []; - return message; - } -}; - -// src/api/memos-proto-v0.24.0/gen/api/v1/resource_service.ts -function createBaseResource2() { - return { - name: "", - createTime: void 0, - filename: "", - content: new Uint8Array(0), - externalLink: "", - type: "", - size: 0, - memo: void 0 - }; -} -var Resource2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.createTime !== void 0) { - Timestamp2.encode(toTimestamp4(message.createTime), writer.uint32(26).fork()).join(); - } - if (message.filename !== "") { - writer.uint32(34).string(message.filename); - } - if (message.content.length !== 0) { - writer.uint32(42).bytes(message.content); - } - if (message.externalLink !== "") { - writer.uint32(50).string(message.externalLink); - } - if (message.type !== "") { - writer.uint32(58).string(message.type); - } - if (message.size !== 0) { - writer.uint32(64).int64(message.size); - } - if (message.memo !== void 0) { - writer.uint32(74).string(message.memo); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseResource2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.createTime = fromTimestamp4(Timestamp2.decode(reader, reader.uint32())); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - message.filename = reader.string(); - continue; - } - case 5: { - if (tag !== 42) { - break; - } - message.content = reader.bytes(); - continue; - } - case 6: { - if (tag !== 50) { - break; - } - message.externalLink = reader.string(); - continue; - } - case 7: { - if (tag !== 58) { - break; - } - message.type = reader.string(); - continue; - } - case 8: { - if (tag !== 64) { - break; - } - message.size = longToNumber4(reader.int64()); - continue; - } - case 9: { - if (tag !== 74) { - break; - } - message.memo = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return Resource2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d, _e, _f, _g, _h; - const message = createBaseResource2(); - message.name = (_a = object.name) != null ? _a : ""; - message.createTime = (_b = object.createTime) != null ? _b : void 0; - message.filename = (_c = object.filename) != null ? _c : ""; - message.content = (_d = object.content) != null ? _d : new Uint8Array(0); - message.externalLink = (_e = object.externalLink) != null ? _e : ""; - message.type = (_f = object.type) != null ? _f : ""; - message.size = (_g = object.size) != null ? _g : 0; - message.memo = (_h = object.memo) != null ? _h : void 0; - return message; - } -}; -function createBaseCreateResourceRequest2() { - return { resource: void 0 }; -} -var CreateResourceRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.resource !== void 0) { - Resource2.encode(message.resource, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseCreateResourceRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.resource = Resource2.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return CreateResourceRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - const message = createBaseCreateResourceRequest2(); - message.resource = object.resource !== void 0 && object.resource !== null ? Resource2.fromPartial(object.resource) : void 0; - return message; - } -}; -function createBaseListResourcesRequest2() { - return {}; -} -var ListResourcesRequest2 = { - encode(_, writer = new BinaryWriter()) { - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListResourcesRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListResourcesRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(_) { - const message = createBaseListResourcesRequest2(); - return message; - } -}; -function createBaseListResourcesResponse2() { - return { resources: [] }; -} -var ListResourcesResponse2 = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.resources) { - Resource2.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListResourcesResponse2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.resources.push(Resource2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListResourcesResponse2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListResourcesResponse2(); - message.resources = ((_a = object.resources) == null ? void 0 : _a.map((e) => Resource2.fromPartial(e))) || []; - return message; - } -}; -function createBaseGetResourceRequest2() { - return { name: "" }; -} -var GetResourceRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetResourceRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetResourceRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseGetResourceRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseGetResourceBinaryRequest2() { - return { name: "", filename: "", thumbnail: false }; -} -var GetResourceBinaryRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.filename !== "") { - writer.uint32(18).string(message.filename); - } - if (message.thumbnail !== false) { - writer.uint32(24).bool(message.thumbnail); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetResourceBinaryRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.filename = reader.string(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.thumbnail = reader.bool(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetResourceBinaryRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseGetResourceBinaryRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - message.filename = (_b = object.filename) != null ? _b : ""; - message.thumbnail = (_c = object.thumbnail) != null ? _c : false; - return message; - } -}; -function createBaseUpdateResourceRequest2() { - return { resource: void 0, updateMask: void 0 }; -} -var UpdateResourceRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.resource !== void 0) { - Resource2.encode(message.resource, writer.uint32(10).fork()).join(); - } - if (message.updateMask !== void 0) { - FieldMask2.encode(FieldMask2.wrap(message.updateMask), writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUpdateResourceRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.resource = Resource2.decode(reader, reader.uint32()); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.updateMask = FieldMask2.unwrap(FieldMask2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UpdateResourceRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseUpdateResourceRequest2(); - message.resource = object.resource !== void 0 && object.resource !== null ? Resource2.fromPartial(object.resource) : void 0; - message.updateMask = (_a = object.updateMask) != null ? _a : void 0; - return message; - } -}; -function createBaseDeleteResourceRequest2() { - return { name: "" }; -} -var DeleteResourceRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseDeleteResourceRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return DeleteResourceRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseDeleteResourceRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -var ResourceServiceDefinition2 = { - name: "ResourceService", - fullName: "memos.api.v1.ResourceService", - methods: { - /** CreateResource creates a new resource. */ - createResource: { - name: "CreateResource", - requestType: CreateResourceRequest2, - requestStream: false, - responseType: Resource2, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 29, - 58, - 8, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 34, - 17, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 115 - ]) - ] - } - } - }, - /** ListResources lists all resources. */ - listResources: { - name: "ListResources", - requestType: ListResourcesRequest2, - requestStream: false, - responseType: ListResourcesResponse2, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([19, 18, 17, 47, 97, 112, 105, 47, 118, 49, 47, 114, 101, 115, 111, 117, 114, 99, 101, 115]) - ] - } - } - }, - /** GetResource returns a resource by name. */ - getResource: { - name: "GetResource", - requestType: GetResourceRequest2, - requestStream: false, - responseType: Resource2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 28, - 18, - 26, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 115, - 47, - 42, - 125 - ]) - ] - } - } - }, - /** GetResourceBinary returns a resource binary by name. */ - getResourceBinary: { - name: "GetResourceBinary", - requestType: GetResourceBinaryRequest2, - requestStream: false, - responseType: HttpBody2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([13, 110, 97, 109, 101, 44, 102, 105, 108, 101, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 37, - 18, - 35, - 47, - 102, - 105, - 108, - 101, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 115, - 47, - 42, - 125, - 47, - 123, - 102, - 105, - 108, - 101, - 110, - 97, - 109, - 101, - 125 - ]) - ] - } - } - }, - /** UpdateResource updates a resource. */ - updateResource: { - name: "UpdateResource", - requestType: UpdateResourceRequest2, - requestStream: false, - responseType: Resource2, - responseStream: false, - options: { - _unknownFields: { - 8410: [ - new Uint8Array([ - 20, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 44, - 117, - 112, - 100, - 97, - 116, - 101, - 95, - 109, - 97, - 115, - 107 - ]) - ], - 578365826: [ - new Uint8Array([ - 47, - 58, - 8, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 50, - 35, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 46, - 110, - 97, - 109, - 101, - 61, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 115, - 47, - 42, - 125 - ]) - ] - } - } - }, - /** DeleteResource deletes a resource by name. */ - deleteResource: { - name: "DeleteResource", - requestType: DeleteResourceRequest2, - requestStream: false, - responseType: Empty2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 28, - 42, - 26, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 115, - 47, - 42, - 125 - ]) - ] - } - } - } - } -}; -function toTimestamp4(date) { - const seconds = Math.trunc(date.getTime() / 1e3); - const nanos = date.getTime() % 1e3 * 1e6; - return { seconds, nanos }; -} -function fromTimestamp4(t) { - let millis = (t.seconds || 0) * 1e3; - millis += (t.nanos || 0) / 1e6; - return new globalThis.Date(millis); -} -function longToNumber4(int64) { - const num = globalThis.Number(int64.toString()); - if (num > globalThis.Number.MAX_SAFE_INTEGER) { - throw new globalThis.Error("Value is larger than Number.MAX_SAFE_INTEGER"); - } - if (num < globalThis.Number.MIN_SAFE_INTEGER) { - throw new globalThis.Error("Value is smaller than Number.MIN_SAFE_INTEGER"); - } - return num; -} - -// src/api/memos-proto-v0.24.0/gen/api/v1/memo_service.ts -function visibilityFromJSON2(object) { - switch (object) { - case 0: - case "VISIBILITY_UNSPECIFIED": - return "VISIBILITY_UNSPECIFIED" /* VISIBILITY_UNSPECIFIED */; - case 1: - case "PRIVATE": - return "PRIVATE" /* PRIVATE */; - case 2: - case "PROTECTED": - return "PROTECTED" /* PROTECTED */; - case 3: - case "PUBLIC": - return "PUBLIC" /* PUBLIC */; - case -1: - case "UNRECOGNIZED": - default: - return "UNRECOGNIZED" /* UNRECOGNIZED */; - } -} -function visibilityToNumber2(object) { - switch (object) { - case "VISIBILITY_UNSPECIFIED" /* VISIBILITY_UNSPECIFIED */: - return 0; - case "PRIVATE" /* PRIVATE */: - return 1; - case "PROTECTED" /* PROTECTED */: - return 2; - case "PUBLIC" /* PUBLIC */: - return 3; - case "UNRECOGNIZED" /* UNRECOGNIZED */: - default: - return -1; - } -} -function createBaseMemo2() { - return { - name: "", - state: "STATE_UNSPECIFIED" /* STATE_UNSPECIFIED */, - creator: "", - createTime: void 0, - updateTime: void 0, - displayTime: void 0, - content: "", - nodes: [], - visibility: "VISIBILITY_UNSPECIFIED" /* VISIBILITY_UNSPECIFIED */, - tags: [], - pinned: false, - resources: [], - relations: [], - reactions: [], - property: void 0, - parent: void 0, - snippet: "", - location: void 0 - }; -} -var Memo2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.state !== "STATE_UNSPECIFIED" /* STATE_UNSPECIFIED */) { - writer.uint32(24).int32(stateToNumber(message.state)); - } - if (message.creator !== "") { - writer.uint32(34).string(message.creator); - } - if (message.createTime !== void 0) { - Timestamp2.encode(toTimestamp5(message.createTime), writer.uint32(42).fork()).join(); - } - if (message.updateTime !== void 0) { - Timestamp2.encode(toTimestamp5(message.updateTime), writer.uint32(50).fork()).join(); - } - if (message.displayTime !== void 0) { - Timestamp2.encode(toTimestamp5(message.displayTime), writer.uint32(58).fork()).join(); - } - if (message.content !== "") { - writer.uint32(66).string(message.content); - } - for (const v of message.nodes) { - Node2.encode(v, writer.uint32(74).fork()).join(); - } - if (message.visibility !== "VISIBILITY_UNSPECIFIED" /* VISIBILITY_UNSPECIFIED */) { - writer.uint32(80).int32(visibilityToNumber2(message.visibility)); - } - for (const v of message.tags) { - writer.uint32(90).string(v); - } - if (message.pinned !== false) { - writer.uint32(96).bool(message.pinned); - } - for (const v of message.resources) { - Resource2.encode(v, writer.uint32(114).fork()).join(); - } - for (const v of message.relations) { - MemoRelation2.encode(v, writer.uint32(122).fork()).join(); - } - for (const v of message.reactions) { - Reaction2.encode(v, writer.uint32(130).fork()).join(); - } - if (message.property !== void 0) { - MemoProperty2.encode(message.property, writer.uint32(138).fork()).join(); - } - if (message.parent !== void 0) { - writer.uint32(146).string(message.parent); - } - if (message.snippet !== "") { - writer.uint32(154).string(message.snippet); - } - if (message.location !== void 0) { - Location.encode(message.location, writer.uint32(162).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseMemo2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.state = stateFromJSON(reader.int32()); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - message.creator = reader.string(); - continue; - } - case 5: { - if (tag !== 42) { - break; - } - message.createTime = fromTimestamp5(Timestamp2.decode(reader, reader.uint32())); - continue; - } - case 6: { - if (tag !== 50) { - break; - } - message.updateTime = fromTimestamp5(Timestamp2.decode(reader, reader.uint32())); - continue; - } - case 7: { - if (tag !== 58) { - break; - } - message.displayTime = fromTimestamp5(Timestamp2.decode(reader, reader.uint32())); - continue; - } - case 8: { - if (tag !== 66) { - break; - } - message.content = reader.string(); - continue; - } - case 9: { - if (tag !== 74) { - break; - } - message.nodes.push(Node2.decode(reader, reader.uint32())); - continue; - } - case 10: { - if (tag !== 80) { - break; - } - message.visibility = visibilityFromJSON2(reader.int32()); - continue; - } - case 11: { - if (tag !== 90) { - break; - } - message.tags.push(reader.string()); - continue; - } - case 12: { - if (tag !== 96) { - break; - } - message.pinned = reader.bool(); - continue; - } - case 14: { - if (tag !== 114) { - break; - } - message.resources.push(Resource2.decode(reader, reader.uint32())); - continue; - } - case 15: { - if (tag !== 122) { - break; - } - message.relations.push(MemoRelation2.decode(reader, reader.uint32())); - continue; - } - case 16: { - if (tag !== 130) { - break; - } - message.reactions.push(Reaction2.decode(reader, reader.uint32())); - continue; - } - case 17: { - if (tag !== 138) { - break; - } - message.property = MemoProperty2.decode(reader, reader.uint32()); - continue; - } - case 18: { - if (tag !== 146) { - break; - } - message.parent = reader.string(); - continue; - } - case 19: { - if (tag !== 154) { - break; - } - message.snippet = reader.string(); - continue; - } - case 20: { - if (tag !== 162) { - break; - } - message.location = Location.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return Memo2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k, _l, _m, _n, _o, _p; - const message = createBaseMemo2(); - message.name = (_a = object.name) != null ? _a : ""; - message.state = (_b = object.state) != null ? _b : "STATE_UNSPECIFIED" /* STATE_UNSPECIFIED */; - message.creator = (_c = object.creator) != null ? _c : ""; - message.createTime = (_d = object.createTime) != null ? _d : void 0; - message.updateTime = (_e = object.updateTime) != null ? _e : void 0; - message.displayTime = (_f = object.displayTime) != null ? _f : void 0; - message.content = (_g = object.content) != null ? _g : ""; - message.nodes = ((_h = object.nodes) == null ? void 0 : _h.map((e) => Node2.fromPartial(e))) || []; - message.visibility = (_i = object.visibility) != null ? _i : "VISIBILITY_UNSPECIFIED" /* VISIBILITY_UNSPECIFIED */; - message.tags = ((_j = object.tags) == null ? void 0 : _j.map((e) => e)) || []; - message.pinned = (_k = object.pinned) != null ? _k : false; - message.resources = ((_l = object.resources) == null ? void 0 : _l.map((e) => Resource2.fromPartial(e))) || []; - message.relations = ((_m = object.relations) == null ? void 0 : _m.map((e) => MemoRelation2.fromPartial(e))) || []; - message.reactions = ((_n = object.reactions) == null ? void 0 : _n.map((e) => Reaction2.fromPartial(e))) || []; - message.property = object.property !== void 0 && object.property !== null ? MemoProperty2.fromPartial(object.property) : void 0; - message.parent = (_o = object.parent) != null ? _o : void 0; - message.snippet = (_p = object.snippet) != null ? _p : ""; - message.location = object.location !== void 0 && object.location !== null ? Location.fromPartial(object.location) : void 0; - return message; - } -}; -function createBaseMemoProperty2() { - return { hasLink: false, hasTaskList: false, hasCode: false, hasIncompleteTasks: false }; -} -var MemoProperty2 = { - encode(message, writer = new BinaryWriter()) { - if (message.hasLink !== false) { - writer.uint32(8).bool(message.hasLink); - } - if (message.hasTaskList !== false) { - writer.uint32(16).bool(message.hasTaskList); - } - if (message.hasCode !== false) { - writer.uint32(24).bool(message.hasCode); - } - if (message.hasIncompleteTasks !== false) { - writer.uint32(32).bool(message.hasIncompleteTasks); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseMemoProperty2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - message.hasLink = reader.bool(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.hasTaskList = reader.bool(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.hasCode = reader.bool(); - continue; - } - case 4: { - if (tag !== 32) { - break; - } - message.hasIncompleteTasks = reader.bool(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return MemoProperty2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d; - const message = createBaseMemoProperty2(); - message.hasLink = (_a = object.hasLink) != null ? _a : false; - message.hasTaskList = (_b = object.hasTaskList) != null ? _b : false; - message.hasCode = (_c = object.hasCode) != null ? _c : false; - message.hasIncompleteTasks = (_d = object.hasIncompleteTasks) != null ? _d : false; - return message; - } -}; -function createBaseLocation() { - return { placeholder: "", latitude: 0, longitude: 0 }; -} -var Location = { - encode(message, writer = new BinaryWriter()) { - if (message.placeholder !== "") { - writer.uint32(10).string(message.placeholder); - } - if (message.latitude !== 0) { - writer.uint32(17).double(message.latitude); - } - if (message.longitude !== 0) { - writer.uint32(25).double(message.longitude); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseLocation(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.placeholder = reader.string(); - continue; - } - case 2: { - if (tag !== 17) { - break; - } - message.latitude = reader.double(); - continue; - } - case 3: { - if (tag !== 25) { - break; - } - message.longitude = reader.double(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return Location.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseLocation(); - message.placeholder = (_a = object.placeholder) != null ? _a : ""; - message.latitude = (_b = object.latitude) != null ? _b : 0; - message.longitude = (_c = object.longitude) != null ? _c : 0; - return message; - } -}; -function createBaseCreateMemoRequest2() { - return { memo: void 0 }; -} -var CreateMemoRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.memo !== void 0) { - Memo2.encode(message.memo, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseCreateMemoRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.memo = Memo2.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return CreateMemoRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - const message = createBaseCreateMemoRequest2(); - message.memo = object.memo !== void 0 && object.memo !== null ? Memo2.fromPartial(object.memo) : void 0; - return message; - } -}; -function createBaseListMemosRequest2() { - return { - parent: "", - pageSize: 0, - pageToken: "", - state: "STATE_UNSPECIFIED" /* STATE_UNSPECIFIED */, - sort: "", - direction: "DIRECTION_UNSPECIFIED" /* DIRECTION_UNSPECIFIED */, - filter: "", - oldFilter: "" - }; -} -var ListMemosRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.parent !== "") { - writer.uint32(10).string(message.parent); - } - if (message.pageSize !== 0) { - writer.uint32(16).int32(message.pageSize); - } - if (message.pageToken !== "") { - writer.uint32(26).string(message.pageToken); - } - if (message.state !== "STATE_UNSPECIFIED" /* STATE_UNSPECIFIED */) { - writer.uint32(32).int32(stateToNumber(message.state)); - } - if (message.sort !== "") { - writer.uint32(42).string(message.sort); - } - if (message.direction !== "DIRECTION_UNSPECIFIED" /* DIRECTION_UNSPECIFIED */) { - writer.uint32(48).int32(directionToNumber(message.direction)); - } - if (message.filter !== "") { - writer.uint32(58).string(message.filter); - } - if (message.oldFilter !== "") { - writer.uint32(66).string(message.oldFilter); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemosRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.parent = reader.string(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.pageSize = reader.int32(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.pageToken = reader.string(); - continue; - } - case 4: { - if (tag !== 32) { - break; - } - message.state = stateFromJSON(reader.int32()); - continue; - } - case 5: { - if (tag !== 42) { - break; - } - message.sort = reader.string(); - continue; - } - case 6: { - if (tag !== 48) { - break; - } - message.direction = directionFromJSON(reader.int32()); - continue; - } - case 7: { - if (tag !== 58) { - break; - } - message.filter = reader.string(); - continue; - } - case 8: { - if (tag !== 66) { - break; - } - message.oldFilter = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemosRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d, _e, _f, _g, _h; - const message = createBaseListMemosRequest2(); - message.parent = (_a = object.parent) != null ? _a : ""; - message.pageSize = (_b = object.pageSize) != null ? _b : 0; - message.pageToken = (_c = object.pageToken) != null ? _c : ""; - message.state = (_d = object.state) != null ? _d : "STATE_UNSPECIFIED" /* STATE_UNSPECIFIED */; - message.sort = (_e = object.sort) != null ? _e : ""; - message.direction = (_f = object.direction) != null ? _f : "DIRECTION_UNSPECIFIED" /* DIRECTION_UNSPECIFIED */; - message.filter = (_g = object.filter) != null ? _g : ""; - message.oldFilter = (_h = object.oldFilter) != null ? _h : ""; - return message; - } -}; -function createBaseListMemosResponse2() { - return { memos: [], nextPageToken: "" }; -} -var ListMemosResponse2 = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.memos) { - Memo2.encode(v, writer.uint32(10).fork()).join(); - } - if (message.nextPageToken !== "") { - writer.uint32(18).string(message.nextPageToken); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemosResponse2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.memos.push(Memo2.decode(reader, reader.uint32())); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.nextPageToken = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemosResponse2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseListMemosResponse2(); - message.memos = ((_a = object.memos) == null ? void 0 : _a.map((e) => Memo2.fromPartial(e))) || []; - message.nextPageToken = (_b = object.nextPageToken) != null ? _b : ""; - return message; - } -}; -function createBaseGetMemoRequest2() { - return { name: "" }; -} -var GetMemoRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetMemoRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetMemoRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseGetMemoRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseUpdateMemoRequest2() { - return { memo: void 0, updateMask: void 0 }; -} -var UpdateMemoRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.memo !== void 0) { - Memo2.encode(message.memo, writer.uint32(10).fork()).join(); - } - if (message.updateMask !== void 0) { - FieldMask2.encode(FieldMask2.wrap(message.updateMask), writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUpdateMemoRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.memo = Memo2.decode(reader, reader.uint32()); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.updateMask = FieldMask2.unwrap(FieldMask2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UpdateMemoRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseUpdateMemoRequest2(); - message.memo = object.memo !== void 0 && object.memo !== null ? Memo2.fromPartial(object.memo) : void 0; - message.updateMask = (_a = object.updateMask) != null ? _a : void 0; - return message; - } -}; -function createBaseDeleteMemoRequest2() { - return { name: "" }; -} -var DeleteMemoRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseDeleteMemoRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return DeleteMemoRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseDeleteMemoRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseRenameMemoTagRequest2() { - return { parent: "", oldTag: "", newTag: "" }; -} -var RenameMemoTagRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.parent !== "") { - writer.uint32(10).string(message.parent); - } - if (message.oldTag !== "") { - writer.uint32(18).string(message.oldTag); - } - if (message.newTag !== "") { - writer.uint32(26).string(message.newTag); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseRenameMemoTagRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.parent = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.oldTag = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.newTag = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return RenameMemoTagRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseRenameMemoTagRequest2(); - message.parent = (_a = object.parent) != null ? _a : ""; - message.oldTag = (_b = object.oldTag) != null ? _b : ""; - message.newTag = (_c = object.newTag) != null ? _c : ""; - return message; - } -}; -function createBaseDeleteMemoTagRequest2() { - return { parent: "", tag: "", deleteRelatedMemos: false }; -} -var DeleteMemoTagRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.parent !== "") { - writer.uint32(10).string(message.parent); - } - if (message.tag !== "") { - writer.uint32(18).string(message.tag); - } - if (message.deleteRelatedMemos !== false) { - writer.uint32(24).bool(message.deleteRelatedMemos); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseDeleteMemoTagRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.parent = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.tag = reader.string(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.deleteRelatedMemos = reader.bool(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return DeleteMemoTagRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseDeleteMemoTagRequest2(); - message.parent = (_a = object.parent) != null ? _a : ""; - message.tag = (_b = object.tag) != null ? _b : ""; - message.deleteRelatedMemos = (_c = object.deleteRelatedMemos) != null ? _c : false; - return message; - } -}; -function createBaseSetMemoResourcesRequest2() { - return { name: "", resources: [] }; -} -var SetMemoResourcesRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - for (const v of message.resources) { - Resource2.encode(v, writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSetMemoResourcesRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.resources.push(Resource2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SetMemoResourcesRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseSetMemoResourcesRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - message.resources = ((_b = object.resources) == null ? void 0 : _b.map((e) => Resource2.fromPartial(e))) || []; - return message; - } -}; -function createBaseListMemoResourcesRequest2() { - return { name: "" }; -} -var ListMemoResourcesRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoResourcesRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoResourcesRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoResourcesRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseListMemoResourcesResponse2() { - return { resources: [] }; -} -var ListMemoResourcesResponse2 = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.resources) { - Resource2.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoResourcesResponse2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.resources.push(Resource2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoResourcesResponse2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoResourcesResponse2(); - message.resources = ((_a = object.resources) == null ? void 0 : _a.map((e) => Resource2.fromPartial(e))) || []; - return message; - } -}; -function createBaseSetMemoRelationsRequest2() { - return { name: "", relations: [] }; -} -var SetMemoRelationsRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - for (const v of message.relations) { - MemoRelation2.encode(v, writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSetMemoRelationsRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.relations.push(MemoRelation2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SetMemoRelationsRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseSetMemoRelationsRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - message.relations = ((_b = object.relations) == null ? void 0 : _b.map((e) => MemoRelation2.fromPartial(e))) || []; - return message; - } -}; -function createBaseListMemoRelationsRequest2() { - return { name: "" }; -} -var ListMemoRelationsRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoRelationsRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoRelationsRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoRelationsRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseListMemoRelationsResponse2() { - return { relations: [] }; -} -var ListMemoRelationsResponse2 = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.relations) { - MemoRelation2.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoRelationsResponse2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.relations.push(MemoRelation2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoRelationsResponse2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoRelationsResponse2(); - message.relations = ((_a = object.relations) == null ? void 0 : _a.map((e) => MemoRelation2.fromPartial(e))) || []; - return message; - } -}; -function createBaseCreateMemoCommentRequest2() { - return { name: "", comment: void 0 }; -} -var CreateMemoCommentRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.comment !== void 0) { - Memo2.encode(message.comment, writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseCreateMemoCommentRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.comment = Memo2.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return CreateMemoCommentRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseCreateMemoCommentRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - message.comment = object.comment !== void 0 && object.comment !== null ? Memo2.fromPartial(object.comment) : void 0; - return message; - } -}; -function createBaseListMemoCommentsRequest2() { - return { name: "" }; -} -var ListMemoCommentsRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoCommentsRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoCommentsRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoCommentsRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseListMemoCommentsResponse2() { - return { memos: [] }; -} -var ListMemoCommentsResponse2 = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.memos) { - Memo2.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoCommentsResponse2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.memos.push(Memo2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoCommentsResponse2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoCommentsResponse2(); - message.memos = ((_a = object.memos) == null ? void 0 : _a.map((e) => Memo2.fromPartial(e))) || []; - return message; - } -}; -function createBaseListMemoReactionsRequest2() { - return { name: "" }; -} -var ListMemoReactionsRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoReactionsRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoReactionsRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoReactionsRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseListMemoReactionsResponse2() { - return { reactions: [] }; -} -var ListMemoReactionsResponse2 = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.reactions) { - Reaction2.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListMemoReactionsResponse2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.reactions.push(Reaction2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListMemoReactionsResponse2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListMemoReactionsResponse2(); - message.reactions = ((_a = object.reactions) == null ? void 0 : _a.map((e) => Reaction2.fromPartial(e))) || []; - return message; - } -}; -function createBaseUpsertMemoReactionRequest2() { - return { name: "", reaction: void 0 }; -} -var UpsertMemoReactionRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.reaction !== void 0) { - Reaction2.encode(message.reaction, writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUpsertMemoReactionRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.reaction = Reaction2.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UpsertMemoReactionRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseUpsertMemoReactionRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - message.reaction = object.reaction !== void 0 && object.reaction !== null ? Reaction2.fromPartial(object.reaction) : void 0; - return message; - } -}; -function createBaseDeleteMemoReactionRequest2() { - return { id: 0 }; -} -var DeleteMemoReactionRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.id !== 0) { - writer.uint32(8).int32(message.id); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseDeleteMemoReactionRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - message.id = reader.int32(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return DeleteMemoReactionRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseDeleteMemoReactionRequest2(); - message.id = (_a = object.id) != null ? _a : 0; - return message; - } -}; -var MemoServiceDefinition2 = { - name: "MemoService", - fullName: "memos.api.v1.MemoService", - methods: { - /** CreateMemo creates a memo. */ - createMemo: { - name: "CreateMemo", - requestType: CreateMemoRequest2, - requestStream: false, - responseType: Memo2, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 21, - 58, - 4, - 109, - 101, - 109, - 111, - 34, - 13, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 109, - 101, - 109, - 111, - 115 - ]) - ] - } - } - }, - /** ListMemos lists memos with pagination and filter. */ - listMemos: { - name: "ListMemos", - requestType: ListMemosRequest2, - requestStream: false, - responseType: ListMemosResponse2, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 49, - 90, - 32, - 18, - 30, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 112, - 97, - 114, - 101, - 110, - 116, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125, - 47, - 109, - 101, - 109, - 111, - 115, - 18, - 13, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 109, - 101, - 109, - 111, - 115 - ]) - ] - } - } - }, - /** GetMemo gets a memo. */ - getMemo: { - name: "GetMemo", - requestType: GetMemoRequest2, - requestStream: false, - responseType: Memo2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 24, - 18, - 22, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125 - ]) - ] - } - } - }, - /** UpdateMemo updates a memo. */ - updateMemo: { - name: "UpdateMemo", - requestType: UpdateMemoRequest2, - requestStream: false, - responseType: Memo2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([16, 109, 101, 109, 111, 44, 117, 112, 100, 97, 116, 101, 95, 109, 97, 115, 107])], - 578365826: [ - new Uint8Array([ - 35, - 58, - 4, - 109, - 101, - 109, - 111, - 50, - 27, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 109, - 101, - 109, - 111, - 46, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125 - ]) - ] - } - } - }, - /** DeleteMemo deletes a memo. */ - deleteMemo: { - name: "DeleteMemo", - requestType: DeleteMemoRequest2, - requestStream: false, - responseType: Empty2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 24, - 42, - 22, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125 - ]) - ] - } - } - }, - /** RenameMemoTag renames a tag for a memo. */ - renameMemoTag: { - name: "RenameMemoTag", - requestType: RenameMemoTagRequest2, - requestStream: false, - responseType: Empty2, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 41, - 58, - 1, - 42, - 50, - 36, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 112, - 97, - 114, - 101, - 110, - 116, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 116, - 97, - 103, - 115, - 58, - 114, - 101, - 110, - 97, - 109, - 101 - ]) - ] - } - } - }, - /** DeleteMemoTag deletes a tag for a memo. */ - deleteMemoTag: { - name: "DeleteMemoTag", - requestType: DeleteMemoTagRequest2, - requestStream: false, - responseType: Empty2, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 37, - 42, - 35, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 112, - 97, - 114, - 101, - 110, - 116, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 116, - 97, - 103, - 115, - 47, - 123, - 116, - 97, - 103, - 125 - ]) - ] - } - } - }, - /** SetMemoResources sets resources for a memo. */ - setMemoResources: { - name: "SetMemoResources", - requestType: SetMemoResourcesRequest2, - requestStream: false, - responseType: Empty2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 37, - 58, - 1, - 42, - 50, - 32, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 115 - ]) - ] - } - } - }, - /** ListMemoResources lists resources for a memo. */ - listMemoResources: { - name: "ListMemoResources", - requestType: ListMemoResourcesRequest2, - requestStream: false, - responseType: ListMemoResourcesResponse2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 34, - 18, - 32, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 114, - 101, - 115, - 111, - 117, - 114, - 99, - 101, - 115 - ]) - ] - } - } - }, - /** SetMemoRelations sets relations for a memo. */ - setMemoRelations: { - name: "SetMemoRelations", - requestType: SetMemoRelationsRequest2, - requestStream: false, - responseType: Empty2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 37, - 58, - 1, - 42, - 50, - 32, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 114, - 101, - 108, - 97, - 116, - 105, - 111, - 110, - 115 - ]) - ] - } - } - }, - /** ListMemoRelations lists relations for a memo. */ - listMemoRelations: { - name: "ListMemoRelations", - requestType: ListMemoRelationsRequest2, - requestStream: false, - responseType: ListMemoRelationsResponse2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 34, - 18, - 32, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 114, - 101, - 108, - 97, - 116, - 105, - 111, - 110, - 115 - ]) - ] - } - } - }, - /** CreateMemoComment creates a comment for a memo. */ - createMemoComment: { - name: "CreateMemoComment", - requestType: CreateMemoCommentRequest2, - requestStream: false, - responseType: Memo2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 42, - 58, - 7, - 99, - 111, - 109, - 109, - 101, - 110, - 116, - 34, - 31, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 99, - 111, - 109, - 109, - 101, - 110, - 116, - 115 - ]) - ] - } - } - }, - /** ListMemoComments lists comments for a memo. */ - listMemoComments: { - name: "ListMemoComments", - requestType: ListMemoCommentsRequest2, - requestStream: false, - responseType: ListMemoCommentsResponse2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 33, - 18, - 31, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 99, - 111, - 109, - 109, - 101, - 110, - 116, - 115 - ]) - ] - } - } - }, - /** ListMemoReactions lists reactions for a memo. */ - listMemoReactions: { - name: "ListMemoReactions", - requestType: ListMemoReactionsRequest2, - requestStream: false, - responseType: ListMemoReactionsResponse2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 34, - 18, - 32, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 114, - 101, - 97, - 99, - 116, - 105, - 111, - 110, - 115 - ]) - ] - } - } - }, - /** UpsertMemoReaction upserts a reaction for a memo. */ - upsertMemoReaction: { - name: "UpsertMemoReaction", - requestType: UpsertMemoReactionRequest2, - requestStream: false, - responseType: Reaction2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 37, - 58, - 1, - 42, - 34, - 32, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 109, - 101, - 109, - 111, - 115, - 47, - 42, - 125, - 47, - 114, - 101, - 97, - 99, - 116, - 105, - 111, - 110, - 115 - ]) - ] - } - } - }, - /** DeleteMemoReaction deletes a reaction for a memo. */ - deleteMemoReaction: { - name: "DeleteMemoReaction", - requestType: DeleteMemoReactionRequest2, - requestStream: false, - responseType: Empty2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([2, 105, 100])], - 578365826: [ - new Uint8Array([ - 24, - 42, - 22, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 114, - 101, - 97, - 99, - 116, - 105, - 111, - 110, - 115, - 47, - 123, - 105, - 100, - 125 - ]) - ] - } - } - } - } -}; -function toTimestamp5(date) { - const seconds = Math.trunc(date.getTime() / 1e3); - const nanos = date.getTime() % 1e3 * 1e6; - return { seconds, nanos }; -} -function fromTimestamp5(t) { - let millis = (t.seconds || 0) * 1e3; - millis += (t.nanos || 0) / 1e6; - return new globalThis.Date(millis); -} - -// src/api/memos-proto-v0.24.0/gen/api/v1/user_service.ts -function user_RoleFromJSON2(object) { - switch (object) { - case 0: - case "ROLE_UNSPECIFIED": - return "ROLE_UNSPECIFIED" /* ROLE_UNSPECIFIED */; - case 1: - case "HOST": - return "HOST" /* HOST */; - case 2: - case "ADMIN": - return "ADMIN" /* ADMIN */; - case 3: - case "USER": - return "USER" /* USER */; - case -1: - case "UNRECOGNIZED": - default: - return "UNRECOGNIZED" /* UNRECOGNIZED */; - } -} -function user_RoleToNumber2(object) { - switch (object) { - case "ROLE_UNSPECIFIED" /* ROLE_UNSPECIFIED */: - return 0; - case "HOST" /* HOST */: - return 1; - case "ADMIN" /* ADMIN */: - return 2; - case "USER" /* USER */: - return 3; - case "UNRECOGNIZED" /* UNRECOGNIZED */: - default: - return -1; - } -} -function createBaseUser2() { - return { - name: "", - role: "ROLE_UNSPECIFIED" /* ROLE_UNSPECIFIED */, - username: "", - email: "", - nickname: "", - avatarUrl: "", - description: "", - password: "", - state: "STATE_UNSPECIFIED" /* STATE_UNSPECIFIED */, - createTime: void 0, - updateTime: void 0 - }; -} -var User2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.role !== "ROLE_UNSPECIFIED" /* ROLE_UNSPECIFIED */) { - writer.uint32(24).int32(user_RoleToNumber2(message.role)); - } - if (message.username !== "") { - writer.uint32(34).string(message.username); - } - if (message.email !== "") { - writer.uint32(42).string(message.email); - } - if (message.nickname !== "") { - writer.uint32(50).string(message.nickname); - } - if (message.avatarUrl !== "") { - writer.uint32(58).string(message.avatarUrl); - } - if (message.description !== "") { - writer.uint32(66).string(message.description); - } - if (message.password !== "") { - writer.uint32(74).string(message.password); - } - if (message.state !== "STATE_UNSPECIFIED" /* STATE_UNSPECIFIED */) { - writer.uint32(80).int32(stateToNumber(message.state)); - } - if (message.createTime !== void 0) { - Timestamp2.encode(toTimestamp6(message.createTime), writer.uint32(90).fork()).join(); - } - if (message.updateTime !== void 0) { - Timestamp2.encode(toTimestamp6(message.updateTime), writer.uint32(98).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUser2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.role = user_RoleFromJSON2(reader.int32()); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - message.username = reader.string(); - continue; - } - case 5: { - if (tag !== 42) { - break; - } - message.email = reader.string(); - continue; - } - case 6: { - if (tag !== 50) { - break; - } - message.nickname = reader.string(); - continue; - } - case 7: { - if (tag !== 58) { - break; - } - message.avatarUrl = reader.string(); - continue; - } - case 8: { - if (tag !== 66) { - break; - } - message.description = reader.string(); - continue; - } - case 9: { - if (tag !== 74) { - break; - } - message.password = reader.string(); - continue; - } - case 10: { - if (tag !== 80) { - break; - } - message.state = stateFromJSON(reader.int32()); - continue; - } - case 11: { - if (tag !== 90) { - break; - } - message.createTime = fromTimestamp6(Timestamp2.decode(reader, reader.uint32())); - continue; - } - case 12: { - if (tag !== 98) { - break; - } - message.updateTime = fromTimestamp6(Timestamp2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return User2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d, _e, _f, _g, _h, _i, _j, _k; - const message = createBaseUser2(); - message.name = (_a = object.name) != null ? _a : ""; - message.role = (_b = object.role) != null ? _b : "ROLE_UNSPECIFIED" /* ROLE_UNSPECIFIED */; - message.username = (_c = object.username) != null ? _c : ""; - message.email = (_d = object.email) != null ? _d : ""; - message.nickname = (_e = object.nickname) != null ? _e : ""; - message.avatarUrl = (_f = object.avatarUrl) != null ? _f : ""; - message.description = (_g = object.description) != null ? _g : ""; - message.password = (_h = object.password) != null ? _h : ""; - message.state = (_i = object.state) != null ? _i : "STATE_UNSPECIFIED" /* STATE_UNSPECIFIED */; - message.createTime = (_j = object.createTime) != null ? _j : void 0; - message.updateTime = (_k = object.updateTime) != null ? _k : void 0; - return message; - } -}; -function createBaseListUsersRequest2() { - return {}; -} -var ListUsersRequest2 = { - encode(_, writer = new BinaryWriter()) { - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListUsersRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListUsersRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(_) { - const message = createBaseListUsersRequest2(); - return message; - } -}; -function createBaseListUsersResponse2() { - return { users: [] }; -} -var ListUsersResponse2 = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.users) { - User2.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListUsersResponse2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.users.push(User2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListUsersResponse2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListUsersResponse2(); - message.users = ((_a = object.users) == null ? void 0 : _a.map((e) => User2.fromPartial(e))) || []; - return message; - } -}; -function createBaseGetUserRequest2() { - return { name: "" }; -} -var GetUserRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetUserRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetUserRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseGetUserRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseGetUserByUsernameRequest() { - return { username: "" }; -} -var GetUserByUsernameRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.username !== "") { - writer.uint32(10).string(message.username); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetUserByUsernameRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.username = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetUserByUsernameRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseGetUserByUsernameRequest(); - message.username = (_a = object.username) != null ? _a : ""; - return message; - } -}; -function createBaseGetUserAvatarBinaryRequest2() { - return { name: "", httpBody: void 0 }; -} -var GetUserAvatarBinaryRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.httpBody !== void 0) { - HttpBody2.encode(message.httpBody, writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetUserAvatarBinaryRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.httpBody = HttpBody2.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetUserAvatarBinaryRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseGetUserAvatarBinaryRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - message.httpBody = object.httpBody !== void 0 && object.httpBody !== null ? HttpBody2.fromPartial(object.httpBody) : void 0; - return message; - } -}; -function createBaseCreateUserRequest2() { - return { user: void 0 }; -} -var CreateUserRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.user !== void 0) { - User2.encode(message.user, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseCreateUserRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.user = User2.decode(reader, reader.uint32()); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return CreateUserRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - const message = createBaseCreateUserRequest2(); - message.user = object.user !== void 0 && object.user !== null ? User2.fromPartial(object.user) : void 0; - return message; - } -}; -function createBaseUpdateUserRequest2() { - return { user: void 0, updateMask: void 0 }; -} -var UpdateUserRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.user !== void 0) { - User2.encode(message.user, writer.uint32(10).fork()).join(); - } - if (message.updateMask !== void 0) { - FieldMask2.encode(FieldMask2.wrap(message.updateMask), writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUpdateUserRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.user = User2.decode(reader, reader.uint32()); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.updateMask = FieldMask2.unwrap(FieldMask2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UpdateUserRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseUpdateUserRequest2(); - message.user = object.user !== void 0 && object.user !== null ? User2.fromPartial(object.user) : void 0; - message.updateMask = (_a = object.updateMask) != null ? _a : void 0; - return message; - } -}; -function createBaseDeleteUserRequest2() { - return { name: "" }; -} -var DeleteUserRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseDeleteUserRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return DeleteUserRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseDeleteUserRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseUserStats() { - return { name: "", memoDisplayTimestamps: [], memoTypeStats: void 0, tagCount: {} }; -} -var UserStats = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - for (const v of message.memoDisplayTimestamps) { - Timestamp2.encode(toTimestamp6(v), writer.uint32(18).fork()).join(); - } - if (message.memoTypeStats !== void 0) { - UserStats_MemoTypeStats.encode(message.memoTypeStats, writer.uint32(26).fork()).join(); - } - Object.entries(message.tagCount).forEach(([key, value]) => { - UserStats_TagCountEntry.encode({ key, value }, writer.uint32(34).fork()).join(); - }); - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUserStats(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.memoDisplayTimestamps.push(fromTimestamp6(Timestamp2.decode(reader, reader.uint32()))); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.memoTypeStats = UserStats_MemoTypeStats.decode(reader, reader.uint32()); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - const entry4 = UserStats_TagCountEntry.decode(reader, reader.uint32()); - if (entry4.value !== void 0) { - message.tagCount[entry4.key] = entry4.value; - } - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UserStats.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseUserStats(); - message.name = (_a = object.name) != null ? _a : ""; - message.memoDisplayTimestamps = ((_b = object.memoDisplayTimestamps) == null ? void 0 : _b.map((e) => e)) || []; - message.memoTypeStats = object.memoTypeStats !== void 0 && object.memoTypeStats !== null ? UserStats_MemoTypeStats.fromPartial(object.memoTypeStats) : void 0; - message.tagCount = Object.entries((_c = object.tagCount) != null ? _c : {}).reduce((acc, [key, value]) => { - if (value !== void 0) { - acc[key] = globalThis.Number(value); - } - return acc; - }, {}); - return message; - } -}; -function createBaseUserStats_TagCountEntry() { - return { key: "", value: 0 }; -} -var UserStats_TagCountEntry = { - encode(message, writer = new BinaryWriter()) { - if (message.key !== "") { - writer.uint32(10).string(message.key); - } - if (message.value !== 0) { - writer.uint32(16).int32(message.value); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUserStats_TagCountEntry(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.key = reader.string(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.value = reader.int32(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UserStats_TagCountEntry.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseUserStats_TagCountEntry(); - message.key = (_a = object.key) != null ? _a : ""; - message.value = (_b = object.value) != null ? _b : 0; - return message; - } -}; -function createBaseUserStats_MemoTypeStats() { - return { linkCount: 0, codeCount: 0, todoCount: 0, undoCount: 0 }; -} -var UserStats_MemoTypeStats = { - encode(message, writer = new BinaryWriter()) { - if (message.linkCount !== 0) { - writer.uint32(8).int32(message.linkCount); - } - if (message.codeCount !== 0) { - writer.uint32(16).int32(message.codeCount); - } - if (message.todoCount !== 0) { - writer.uint32(24).int32(message.todoCount); - } - if (message.undoCount !== 0) { - writer.uint32(32).int32(message.undoCount); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUserStats_MemoTypeStats(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - message.linkCount = reader.int32(); - continue; - } - case 2: { - if (tag !== 16) { - break; - } - message.codeCount = reader.int32(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.todoCount = reader.int32(); - continue; - } - case 4: { - if (tag !== 32) { - break; - } - message.undoCount = reader.int32(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UserStats_MemoTypeStats.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d; - const message = createBaseUserStats_MemoTypeStats(); - message.linkCount = (_a = object.linkCount) != null ? _a : 0; - message.codeCount = (_b = object.codeCount) != null ? _b : 0; - message.todoCount = (_c = object.todoCount) != null ? _c : 0; - message.undoCount = (_d = object.undoCount) != null ? _d : 0; - return message; - } -}; -function createBaseListAllUserStatsRequest() { - return {}; -} -var ListAllUserStatsRequest = { - encode(_, writer = new BinaryWriter()) { - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListAllUserStatsRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListAllUserStatsRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(_) { - const message = createBaseListAllUserStatsRequest(); - return message; - } -}; -function createBaseListAllUserStatsResponse() { - return { userStats: [] }; -} -var ListAllUserStatsResponse = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.userStats) { - UserStats.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListAllUserStatsResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.userStats.push(UserStats.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListAllUserStatsResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListAllUserStatsResponse(); - message.userStats = ((_a = object.userStats) == null ? void 0 : _a.map((e) => UserStats.fromPartial(e))) || []; - return message; - } -}; -function createBaseGetUserStatsRequest() { - return { name: "" }; -} -var GetUserStatsRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetUserStatsRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetUserStatsRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseGetUserStatsRequest(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseUserSetting2() { - return { name: "", locale: "", appearance: "", memoVisibility: "" }; -} -var UserSetting2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.locale !== "") { - writer.uint32(18).string(message.locale); - } - if (message.appearance !== "") { - writer.uint32(26).string(message.appearance); - } - if (message.memoVisibility !== "") { - writer.uint32(34).string(message.memoVisibility); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUserSetting2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.locale = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.appearance = reader.string(); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - message.memoVisibility = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UserSetting2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d; - const message = createBaseUserSetting2(); - message.name = (_a = object.name) != null ? _a : ""; - message.locale = (_b = object.locale) != null ? _b : ""; - message.appearance = (_c = object.appearance) != null ? _c : ""; - message.memoVisibility = (_d = object.memoVisibility) != null ? _d : ""; - return message; - } -}; -function createBaseGetUserSettingRequest2() { - return { name: "" }; -} -var GetUserSettingRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetUserSettingRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetUserSettingRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseGetUserSettingRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseUpdateUserSettingRequest2() { - return { setting: void 0, updateMask: void 0 }; -} -var UpdateUserSettingRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.setting !== void 0) { - UserSetting2.encode(message.setting, writer.uint32(10).fork()).join(); - } - if (message.updateMask !== void 0) { - FieldMask2.encode(FieldMask2.wrap(message.updateMask), writer.uint32(18).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUpdateUserSettingRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.setting = UserSetting2.decode(reader, reader.uint32()); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.updateMask = FieldMask2.unwrap(FieldMask2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UpdateUserSettingRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseUpdateUserSettingRequest2(); - message.setting = object.setting !== void 0 && object.setting !== null ? UserSetting2.fromPartial(object.setting) : void 0; - message.updateMask = (_a = object.updateMask) != null ? _a : void 0; - return message; - } -}; -function createBaseUserAccessToken2() { - return { accessToken: "", description: "", issuedAt: void 0, expiresAt: void 0 }; -} -var UserAccessToken2 = { - encode(message, writer = new BinaryWriter()) { - if (message.accessToken !== "") { - writer.uint32(10).string(message.accessToken); - } - if (message.description !== "") { - writer.uint32(18).string(message.description); - } - if (message.issuedAt !== void 0) { - Timestamp2.encode(toTimestamp6(message.issuedAt), writer.uint32(26).fork()).join(); - } - if (message.expiresAt !== void 0) { - Timestamp2.encode(toTimestamp6(message.expiresAt), writer.uint32(34).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUserAccessToken2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.accessToken = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.description = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.issuedAt = fromTimestamp6(Timestamp2.decode(reader, reader.uint32())); - continue; - } - case 4: { - if (tag !== 34) { - break; - } - message.expiresAt = fromTimestamp6(Timestamp2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UserAccessToken2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c, _d; - const message = createBaseUserAccessToken2(); - message.accessToken = (_a = object.accessToken) != null ? _a : ""; - message.description = (_b = object.description) != null ? _b : ""; - message.issuedAt = (_c = object.issuedAt) != null ? _c : void 0; - message.expiresAt = (_d = object.expiresAt) != null ? _d : void 0; - return message; - } -}; -function createBaseListUserAccessTokensRequest2() { - return { name: "" }; -} -var ListUserAccessTokensRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListUserAccessTokensRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListUserAccessTokensRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListUserAccessTokensRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - return message; - } -}; -function createBaseListUserAccessTokensResponse2() { - return { accessTokens: [] }; -} -var ListUserAccessTokensResponse2 = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.accessTokens) { - UserAccessToken2.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListUserAccessTokensResponse2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.accessTokens.push(UserAccessToken2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListUserAccessTokensResponse2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListUserAccessTokensResponse2(); - message.accessTokens = ((_a = object.accessTokens) == null ? void 0 : _a.map((e) => UserAccessToken2.fromPartial(e))) || []; - return message; - } -}; -function createBaseCreateUserAccessTokenRequest2() { - return { name: "", description: "", expiresAt: void 0 }; -} -var CreateUserAccessTokenRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.description !== "") { - writer.uint32(18).string(message.description); - } - if (message.expiresAt !== void 0) { - Timestamp2.encode(toTimestamp6(message.expiresAt), writer.uint32(26).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseCreateUserAccessTokenRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.description = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.expiresAt = fromTimestamp6(Timestamp2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return CreateUserAccessTokenRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseCreateUserAccessTokenRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - message.description = (_b = object.description) != null ? _b : ""; - message.expiresAt = (_c = object.expiresAt) != null ? _c : void 0; - return message; - } -}; -function createBaseDeleteUserAccessTokenRequest2() { - return { name: "", accessToken: "" }; -} -var DeleteUserAccessTokenRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.name !== "") { - writer.uint32(10).string(message.name); - } - if (message.accessToken !== "") { - writer.uint32(18).string(message.accessToken); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseDeleteUserAccessTokenRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.name = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.accessToken = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return DeleteUserAccessTokenRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseDeleteUserAccessTokenRequest2(); - message.name = (_a = object.name) != null ? _a : ""; - message.accessToken = (_b = object.accessToken) != null ? _b : ""; - return message; - } -}; -function createBaseShortcut() { - return { id: "", title: "", filter: "" }; -} -var Shortcut = { - encode(message, writer = new BinaryWriter()) { - if (message.id !== "") { - writer.uint32(10).string(message.id); - } - if (message.title !== "") { - writer.uint32(18).string(message.title); - } - if (message.filter !== "") { - writer.uint32(26).string(message.filter); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseShortcut(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.id = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.title = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.filter = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return Shortcut.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseShortcut(); - message.id = (_a = object.id) != null ? _a : ""; - message.title = (_b = object.title) != null ? _b : ""; - message.filter = (_c = object.filter) != null ? _c : ""; - return message; - } -}; -function createBaseListShortcutsRequest() { - return { parent: "" }; -} -var ListShortcutsRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.parent !== "") { - writer.uint32(10).string(message.parent); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListShortcutsRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.parent = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListShortcutsRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListShortcutsRequest(); - message.parent = (_a = object.parent) != null ? _a : ""; - return message; - } -}; -function createBaseListShortcutsResponse() { - return { shortcuts: [] }; -} -var ListShortcutsResponse = { - encode(message, writer = new BinaryWriter()) { - for (const v of message.shortcuts) { - Shortcut.encode(v, writer.uint32(10).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseListShortcutsResponse(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.shortcuts.push(Shortcut.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return ListShortcutsResponse.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a; - const message = createBaseListShortcutsResponse(); - message.shortcuts = ((_a = object.shortcuts) == null ? void 0 : _a.map((e) => Shortcut.fromPartial(e))) || []; - return message; - } -}; -function createBaseCreateShortcutRequest() { - return { parent: "", shortcut: void 0, validateOnly: false }; -} -var CreateShortcutRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.parent !== "") { - writer.uint32(10).string(message.parent); - } - if (message.shortcut !== void 0) { - Shortcut.encode(message.shortcut, writer.uint32(18).fork()).join(); - } - if (message.validateOnly !== false) { - writer.uint32(24).bool(message.validateOnly); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseCreateShortcutRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.parent = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.shortcut = Shortcut.decode(reader, reader.uint32()); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.validateOnly = reader.bool(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return CreateShortcutRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseCreateShortcutRequest(); - message.parent = (_a = object.parent) != null ? _a : ""; - message.shortcut = object.shortcut !== void 0 && object.shortcut !== null ? Shortcut.fromPartial(object.shortcut) : void 0; - message.validateOnly = (_b = object.validateOnly) != null ? _b : false; - return message; - } -}; -function createBaseUpdateShortcutRequest() { - return { parent: "", shortcut: void 0, updateMask: void 0 }; -} -var UpdateShortcutRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.parent !== "") { - writer.uint32(10).string(message.parent); - } - if (message.shortcut !== void 0) { - Shortcut.encode(message.shortcut, writer.uint32(18).fork()).join(); - } - if (message.updateMask !== void 0) { - FieldMask2.encode(FieldMask2.wrap(message.updateMask), writer.uint32(26).fork()).join(); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseUpdateShortcutRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.parent = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.shortcut = Shortcut.decode(reader, reader.uint32()); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.updateMask = FieldMask2.unwrap(FieldMask2.decode(reader, reader.uint32())); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return UpdateShortcutRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseUpdateShortcutRequest(); - message.parent = (_a = object.parent) != null ? _a : ""; - message.shortcut = object.shortcut !== void 0 && object.shortcut !== null ? Shortcut.fromPartial(object.shortcut) : void 0; - message.updateMask = (_b = object.updateMask) != null ? _b : void 0; - return message; - } -}; -function createBaseDeleteShortcutRequest() { - return { parent: "", id: "" }; -} -var DeleteShortcutRequest = { - encode(message, writer = new BinaryWriter()) { - if (message.parent !== "") { - writer.uint32(10).string(message.parent); - } - if (message.id !== "") { - writer.uint32(18).string(message.id); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseDeleteShortcutRequest(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.parent = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.id = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return DeleteShortcutRequest.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseDeleteShortcutRequest(); - message.parent = (_a = object.parent) != null ? _a : ""; - message.id = (_b = object.id) != null ? _b : ""; - return message; - } -}; -var UserServiceDefinition2 = { - name: "UserService", - fullName: "memos.api.v1.UserService", - methods: { - /** ListUsers returns a list of users. */ - listUsers: { - name: "ListUsers", - requestType: ListUsersRequest2, - requestStream: false, - responseType: ListUsersResponse2, - responseStream: false, - options: { - _unknownFields: { - 578365826: [new Uint8Array([15, 18, 13, 47, 97, 112, 105, 47, 118, 49, 47, 117, 115, 101, 114, 115])] - } - } - }, - /** GetUser gets a user by name. */ - getUser: { - name: "GetUser", - requestType: GetUserRequest2, - requestStream: false, - responseType: User2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 24, - 18, - 22, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125 - ]) - ] - } - } - }, - /** GetUserByUsername gets a user by username. */ - getUserByUsername: { - name: "GetUserByUsername", - requestType: GetUserByUsernameRequest, - requestStream: false, - responseType: User2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([8, 117, 115, 101, 114, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 24, - 18, - 22, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 117, - 115, - 101, - 114, - 115, - 58, - 117, - 115, - 101, - 114, - 110, - 97, - 109, - 101 - ]) - ] - } - } - }, - /** GetUserAvatarBinary gets the avatar of a user. */ - getUserAvatarBinary: { - name: "GetUserAvatarBinary", - requestType: GetUserAvatarBinaryRequest2, - requestStream: false, - responseType: HttpBody2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 29, - 18, - 27, - 47, - 102, - 105, - 108, - 101, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125, - 47, - 97, - 118, - 97, - 116, - 97, - 114 - ]) - ] - } - } - }, - /** CreateUser creates a new user. */ - createUser: { - name: "CreateUser", - requestType: CreateUserRequest2, - requestStream: false, - responseType: User2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 117, 115, 101, 114])], - 578365826: [ - new Uint8Array([ - 21, - 58, - 4, - 117, - 115, - 101, - 114, - 34, - 13, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 117, - 115, - 101, - 114, - 115 - ]) - ] - } - } - }, - /** UpdateUser updates a user. */ - updateUser: { - name: "UpdateUser", - requestType: UpdateUserRequest2, - requestStream: false, - responseType: User2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([16, 117, 115, 101, 114, 44, 117, 112, 100, 97, 116, 101, 95, 109, 97, 115, 107])], - 578365826: [ - new Uint8Array([ - 35, - 58, - 4, - 117, - 115, - 101, - 114, - 50, - 27, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 117, - 115, - 101, - 114, - 46, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125 - ]) - ] - } - } - }, - /** DeleteUser deletes a user. */ - deleteUser: { - name: "DeleteUser", - requestType: DeleteUserRequest2, - requestStream: false, - responseType: Empty2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 24, - 42, - 22, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125 - ]) - ] - } - } - }, - /** ListAllUserStats returns all user stats. */ - listAllUserStats: { - name: "ListAllUserStats", - requestType: ListAllUserStatsRequest, - requestStream: false, - responseType: ListAllUserStatsResponse, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 23, - 34, - 21, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 117, - 115, - 101, - 114, - 115, - 47, - 45, - 47, - 115, - 116, - 97, - 116, - 115 - ]) - ] - } - } - }, - /** GetUserStats returns the stats of a user. */ - getUserStats: { - name: "GetUserStats", - requestType: GetUserStatsRequest, - requestStream: false, - responseType: UserStats, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 30, - 18, - 28, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125, - 47, - 115, - 116, - 97, - 116, - 115 - ]) - ] - } - } - }, - /** GetUserSetting gets the setting of a user. */ - getUserSetting: { - name: "GetUserSetting", - requestType: GetUserSettingRequest2, - requestStream: false, - responseType: UserSetting2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 32, - 18, - 30, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125, - 47, - 115, - 101, - 116, - 116, - 105, - 110, - 103 - ]) - ] - } - } - }, - /** UpdateUserSetting updates the setting of a user. */ - updateUserSetting: { - name: "UpdateUserSetting", - requestType: UpdateUserSettingRequest2, - requestStream: false, - responseType: UserSetting2, - responseStream: false, - options: { - _unknownFields: { - 8410: [ - new Uint8Array([ - 19, - 115, - 101, - 116, - 116, - 105, - 110, - 103, - 44, - 117, - 112, - 100, - 97, - 116, - 101, - 95, - 109, - 97, - 115, - 107 - ]) - ], - 578365826: [ - new Uint8Array([ - 49, - 58, - 7, - 115, - 101, - 116, - 116, - 105, - 110, - 103, - 50, - 38, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 115, - 101, - 116, - 116, - 105, - 110, - 103, - 46, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 47, - 115, - 101, - 116, - 116, - 105, - 110, - 103, - 125 - ]) - ] - } - } - }, - /** ListUserAccessTokens returns a list of access tokens for a user. */ - listUserAccessTokens: { - name: "ListUserAccessTokens", - requestType: ListUserAccessTokensRequest2, - requestStream: false, - responseType: ListUserAccessTokensResponse2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 38, - 18, - 36, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125, - 47, - 97, - 99, - 99, - 101, - 115, - 115, - 95, - 116, - 111, - 107, - 101, - 110, - 115 - ]) - ] - } - } - }, - /** CreateUserAccessToken creates a new access token for a user. */ - createUserAccessToken: { - name: "CreateUserAccessToken", - requestType: CreateUserAccessTokenRequest2, - requestStream: false, - responseType: UserAccessToken2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([4, 110, 97, 109, 101])], - 578365826: [ - new Uint8Array([ - 41, - 58, - 1, - 42, - 34, - 36, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125, - 47, - 97, - 99, - 99, - 101, - 115, - 115, - 95, - 116, - 111, - 107, - 101, - 110, - 115 - ]) - ] - } - } - }, - /** DeleteUserAccessToken deletes an access token for a user. */ - deleteUserAccessToken: { - name: "DeleteUserAccessToken", - requestType: DeleteUserAccessTokenRequest2, - requestStream: false, - responseType: Empty2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([17, 110, 97, 109, 101, 44, 97, 99, 99, 101, 115, 115, 95, 116, 111, 107, 101, 110])], - 578365826: [ - new Uint8Array([ - 53, - 42, - 51, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 110, - 97, - 109, - 101, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125, - 47, - 97, - 99, - 99, - 101, - 115, - 115, - 95, - 116, - 111, - 107, - 101, - 110, - 115, - 47, - 123, - 97, - 99, - 99, - 101, - 115, - 115, - 95, - 116, - 111, - 107, - 101, - 110, - 125 - ]) - ] - } - } - }, - /** ListShortcuts returns a list of shortcuts for a user. */ - listShortcuts: { - name: "ListShortcuts", - requestType: ListShortcutsRequest, - requestStream: false, - responseType: ListShortcutsResponse, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([6, 112, 97, 114, 101, 110, 116])], - 578365826: [ - new Uint8Array([ - 36, - 18, - 34, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 112, - 97, - 114, - 101, - 110, - 116, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125, - 47, - 115, - 104, - 111, - 114, - 116, - 99, - 117, - 116, - 115 - ]) - ] - } - } - }, - /** CreateShortcut creates a new shortcut for a user. */ - createShortcut: { - name: "CreateShortcut", - requestType: CreateShortcutRequest, - requestStream: false, - responseType: Shortcut, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([15, 112, 97, 114, 101, 110, 116, 44, 115, 104, 111, 114, 116, 99, 117, 116])], - 578365826: [ - new Uint8Array([ - 46, - 58, - 8, - 115, - 104, - 111, - 114, - 116, - 99, - 117, - 116, - 34, - 34, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 112, - 97, - 114, - 101, - 110, - 116, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125, - 47, - 115, - 104, - 111, - 114, - 116, - 99, - 117, - 116, - 115 - ]) - ] - } - } - }, - /** UpdateShortcut updates a shortcut for a user. */ - updateShortcut: { - name: "UpdateShortcut", - requestType: UpdateShortcutRequest, - requestStream: false, - responseType: Shortcut, - responseStream: false, - options: { - _unknownFields: { - 8410: [ - new Uint8Array([ - 27, - 112, - 97, - 114, - 101, - 110, - 116, - 44, - 115, - 104, - 111, - 114, - 116, - 99, - 117, - 116, - 44, - 117, - 112, - 100, - 97, - 116, - 101, - 95, - 109, - 97, - 115, - 107 - ]) - ], - 578365826: [ - new Uint8Array([ - 60, - 58, - 8, - 115, - 104, - 111, - 114, - 116, - 99, - 117, - 116, - 50, - 48, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 112, - 97, - 114, - 101, - 110, - 116, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125, - 47, - 115, - 104, - 111, - 114, - 116, - 99, - 117, - 116, - 115, - 47, - 123, - 115, - 104, - 111, - 114, - 116, - 99, - 117, - 116, - 46, - 105, - 100, - 125 - ]) - ] - } - } - }, - /** DeleteShortcut deletes a shortcut for a user. */ - deleteShortcut: { - name: "DeleteShortcut", - requestType: DeleteShortcutRequest, - requestStream: false, - responseType: Empty2, - responseStream: false, - options: { - _unknownFields: { - 8410: [new Uint8Array([9, 112, 97, 114, 101, 110, 116, 44, 105, 100])], - 578365826: [ - new Uint8Array([ - 41, - 42, - 39, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 123, - 112, - 97, - 114, - 101, - 110, - 116, - 61, - 117, - 115, - 101, - 114, - 115, - 47, - 42, - 125, - 47, - 115, - 104, - 111, - 114, - 116, - 99, - 117, - 116, - 115, - 47, - 123, - 105, - 100, - 125 - ]) - ] - } - } - } - } -}; -function toTimestamp6(date) { - const seconds = Math.trunc(date.getTime() / 1e3); - const nanos = date.getTime() % 1e3 * 1e6; - return { seconds, nanos }; -} -function fromTimestamp6(t) { - let millis = (t.seconds || 0) * 1e3; - millis += (t.nanos || 0) / 1e6; - return new globalThis.Date(millis); -} - -// src/api/memos-proto-v0.24.0/gen/api/v1/auth_service.ts -function createBaseGetAuthStatusRequest2() { - return {}; -} -var GetAuthStatusRequest2 = { - encode(_, writer = new BinaryWriter()) { - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseGetAuthStatusRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return GetAuthStatusRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(_) { - const message = createBaseGetAuthStatusRequest2(); - return message; - } -}; -function createBaseSignInRequest2() { - return { username: "", password: "", neverExpire: false }; -} -var SignInRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.username !== "") { - writer.uint32(10).string(message.username); - } - if (message.password !== "") { - writer.uint32(18).string(message.password); - } - if (message.neverExpire !== false) { - writer.uint32(24).bool(message.neverExpire); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSignInRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.username = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.password = reader.string(); - continue; - } - case 3: { - if (tag !== 24) { - break; - } - message.neverExpire = reader.bool(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SignInRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseSignInRequest2(); - message.username = (_a = object.username) != null ? _a : ""; - message.password = (_b = object.password) != null ? _b : ""; - message.neverExpire = (_c = object.neverExpire) != null ? _c : false; - return message; - } -}; -function createBaseSignInWithSSORequest2() { - return { idpId: 0, code: "", redirectUri: "" }; -} -var SignInWithSSORequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.idpId !== 0) { - writer.uint32(8).int32(message.idpId); - } - if (message.code !== "") { - writer.uint32(18).string(message.code); - } - if (message.redirectUri !== "") { - writer.uint32(26).string(message.redirectUri); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSignInWithSSORequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 8) { - break; - } - message.idpId = reader.int32(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.code = reader.string(); - continue; - } - case 3: { - if (tag !== 26) { - break; - } - message.redirectUri = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SignInWithSSORequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b, _c; - const message = createBaseSignInWithSSORequest2(); - message.idpId = (_a = object.idpId) != null ? _a : 0; - message.code = (_b = object.code) != null ? _b : ""; - message.redirectUri = (_c = object.redirectUri) != null ? _c : ""; - return message; - } -}; -function createBaseSignUpRequest2() { - return { username: "", password: "" }; -} -var SignUpRequest2 = { - encode(message, writer = new BinaryWriter()) { - if (message.username !== "") { - writer.uint32(10).string(message.username); - } - if (message.password !== "") { - writer.uint32(18).string(message.password); - } - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSignUpRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - case 1: { - if (tag !== 10) { - break; - } - message.username = reader.string(); - continue; - } - case 2: { - if (tag !== 18) { - break; - } - message.password = reader.string(); - continue; - } - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SignUpRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(object) { - var _a, _b; - const message = createBaseSignUpRequest2(); - message.username = (_a = object.username) != null ? _a : ""; - message.password = (_b = object.password) != null ? _b : ""; - return message; - } -}; -function createBaseSignOutRequest2() { - return {}; -} -var SignOutRequest2 = { - encode(_, writer = new BinaryWriter()) { - return writer; - }, - decode(input, length) { - const reader = input instanceof BinaryReader ? input : new BinaryReader(input); - let end = length === void 0 ? reader.len : reader.pos + length; - const message = createBaseSignOutRequest2(); - while (reader.pos < end) { - const tag = reader.uint32(); - switch (tag >>> 3) { - } - if ((tag & 7) === 4 || tag === 0) { - break; - } - reader.skip(tag & 7); - } - return message; - }, - create(base) { - return SignOutRequest2.fromPartial(base != null ? base : {}); - }, - fromPartial(_) { - const message = createBaseSignOutRequest2(); - return message; - } -}; -var AuthServiceDefinition2 = { - name: "AuthService", - fullName: "memos.api.v1.AuthService", - methods: { - /** GetAuthStatus returns the current auth status of the user. */ - getAuthStatus: { - name: "GetAuthStatus", - requestType: GetAuthStatusRequest2, - requestStream: false, - responseType: User2, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 21, - 34, - 19, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 97, - 117, - 116, - 104, - 47, - 115, - 116, - 97, - 116, - 117, - 115 - ]) - ] - } - } - }, - /** SignIn signs in the user with the given username and password. */ - signIn: { - name: "SignIn", - requestType: SignInRequest2, - requestStream: false, - responseType: User2, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 21, - 34, - 19, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 97, - 117, - 116, - 104, - 47, - 115, - 105, - 103, - 110, - 105, - 110 - ]) - ] - } - } - }, - /** SignInWithSSO signs in the user with the given SSO code. */ - signInWithSSO: { - name: "SignInWithSSO", - requestType: SignInWithSSORequest2, - requestStream: false, - responseType: User2, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 25, - 34, - 23, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 97, - 117, - 116, - 104, - 47, - 115, - 105, - 103, - 110, - 105, - 110, - 47, - 115, - 115, - 111 - ]) - ] - } - } - }, - /** SignUp signs up the user with the given username and password. */ - signUp: { - name: "SignUp", - requestType: SignUpRequest2, - requestStream: false, - responseType: User2, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 21, - 34, - 19, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 97, - 117, - 116, - 104, - 47, - 115, - 105, - 103, - 110, - 117, - 112 - ]) - ] - } - } - }, - /** SignOut signs out the user. */ - signOut: { - name: "SignOut", - requestType: SignOutRequest2, - requestStream: false, - responseType: Empty2, - responseStream: false, - options: { - _unknownFields: { - 578365826: [ - new Uint8Array([ - 22, - 34, - 20, - 47, - 97, - 112, - 105, - 47, - 118, - 49, - 47, - 97, - 117, - 116, - 104, - 47, - 115, - 105, - 103, - 110, - 111, - 117, - 116 - ]) - ] - } - } - } - } -}; - -// src/api/memos-v0.24.0.ts -var MemoListPaginator2 = class { - constructor(memoCli) { - this.memoCli = memoCli; - } - listMemos(pageSize, pageToken, currentUser) { - return this.memoCli.listMemos({ - parent: currentUser.name, - pageSize, - pageToken - }); - } -}; -function new0240Clients(endpoint, token) { - const channel = (0, import_nice_grpc_web3.createChannel)( - endpoint, - (0, import_nice_grpc_web3.FetchTransport)({ credentials: "include" }) - ); - const clientFactory = (0, import_nice_grpc_web3.createClientFactory)().use(loggingMiddleware).use(bearerAuthMiddleware(token)); - return { - memoListPaginator: new MemoListPaginator2( - clientFactory.create(MemoServiceDefinition2, channel) - ), - resourceCli: clientFactory.create( - ResourceServiceDefinition2, - channel - ), - authCli: clientFactory.create( - AuthServiceDefinition2, - channel - ) - }; -} - -// src/services/DailyMemos/MemosVersionFactory.ts -var MemosAbstractFactory = class { - constructor(settings) { - this.settings = settings; - this.createMemosPaginator = (lastTime, filter) => { - return this.inner.createMemosPaginator(lastTime, filter); - }; - this.createResourceFetcher = () => { - return this.inner.createResourceFetcher(); - }; - if (this.settings.memosAPIVersion === "v0.22.0") { - this.inner = new MemosFactory0220(this.settings, new0220Clients); - return; - } - if (this.settings.memosAPIVersion === "v0.24.0") { - this.inner = new MemosFactory0220(this.settings, new0240Clients); - return; - } - this.inner = new MemosFactory0191(this.settings); - } -}; -var MemosFactory0191 = class { - constructor(settings) { - this.settings = settings; - this.createMemosPaginator = (lastTime, filter) => { - return new MemosPaginator0191(this.client, lastTime, filter); - }; - this.createResourceFetcher = () => { - return new MemosResourceFetcher0191(this.client); - }; - const apiUrl = this.settings.memosAPIURL.endsWith("/") ? this.settings.memosAPIURL.slice(0, -1) : this.settings.memosAPIURL; - this.client = new MemosClient0191(apiUrl, this.settings.memosAPIToken); - } -}; -var MemosFactory0220 = class { - constructor(settings, newClients) { - this.settings = settings; - this.createMemosPaginator = (lastTime, filter) => { - return new MemosPaginator0220( - this.memoListPaginator, - this.authCli, - lastTime, - filter - ); - }; - this.createResourceFetcher = () => { - return new MemosResourceFetcher0220(this.resourceCli); - }; - const apiUrl = this.settings.memosAPIURL.endsWith("/") ? this.settings.memosAPIURL.slice(0, -1) : this.settings.memosAPIURL; - const { memoListPaginator, resourceCli, authCli } = newClients( - apiUrl, - this.settings.memosAPIToken - ); - this.memoListPaginator = memoListPaginator; - this.resourceCli = resourceCli; - this.authCli = authCli; - } -}; - -// src/services/DailyMemos/DailyMemos.ts -var DailyNoteManager = class { - constructor() { - this.getOrCreateDailyNote = async (date) => { - const dailyNote = (0, import_obsidian_daily_notes_interface.getDailyNote)(date, this.allDailyNotes); - if (!dailyNote) { - info(`Failed to find daily note for ${date}, creating...`); - const newDailyNote = await (0, import_obsidian_daily_notes_interface.createDailyNote)(date); - this.allDailyNotes = (0, import_obsidian_daily_notes_interface.getAllDailyNotes)(); - return newDailyNote; - } - return dailyNote; - }; - this.reload = () => { - this.allDailyNotes = (0, import_obsidian_daily_notes_interface.getAllDailyNotes)(); - }; - this.allDailyNotes = (0, import_obsidian_daily_notes_interface.getAllDailyNotes)(); - } -}; -var DailyMemos = class { - constructor(app, settings) { - /** - * Force syncing daily memos, ignore the lastTime. - * After syncing, save the lastTime to localStorage, and reload the memosPaginator. - */ - this.forceSync = async () => { - info("Force syncing daily memos..."); - const forcePaginator = this.memosFactory.createMemosPaginator(""); - this.downloadResource(); - this.insertDailyMemos(forcePaginator); - this.memosPaginator = forcePaginator; - }; - /** - * Sync daily memos, only sync the memos after the lastTime. - * After syncing, save the lastTime to localStorage. - */ - this.sync = async () => { - info("Syncing daily memos..."); - this.downloadResource(); - this.insertDailyMemos(this.memosPaginator); - }; - /** - * Sync daily memos for the current daily note file. - * If the current file is not a daily note, do nothing. - */ - this.syncForCurrentFile = async () => { - var _a; - const view = this.app.workspace.getActiveViewOfType(import_obsidian3.MarkdownView); - if (!view) { - debug("No active view found."); - return; - } - if (!(view.file instanceof import_obsidian3.TFile)) { - debug("Active view is not a file."); - return; - } - const file = view.file; - const currentDate = (_a = (0, import_obsidian_daily_notes_interface.getDateFromFile)(file, "day")) == null ? void 0 : _a.format("YYYY-MM-DD"); - if (!currentDate) { - debug("Failed to get date from file."); - return; - } - const currentMomentMmemosPaginator = this.memosFactory.createMemosPaginator( - "", - (date) => date === currentDate - ); - this.downloadResource(); - this.insertDailyMemos(currentMomentMmemosPaginator); - }; - /** - * Download resources to attachments folder. - */ - this.downloadResource = async () => { - const { origin: origin2 } = new URL(this.settings.memosAPIURL); - const resourceList = await this.memosResourceFetcher.listResources(); - if (!resourceList) { - debug(`No resources found: ${origin2}/resource`); - return; - } - const folder = this.settings.attachmentFolder; - if (!this.app.vault.getFolderByPath(folder)) { - info(`Creating folder: ${folder}`); - await this.app.vault.createFolder(folder); - } - await Promise.all( - resourceList.map(async (resource) => { - if (resource.externalLink) { - debug( - `External resource, skip download: ${resource.externalLink}` - ); - return; - } - const resourcePath = (0, import_obsidian3.normalizePath)( - `${folder}/${generateResourceName(resource)}` - ); - const isResourceExists = await this.app.vault.adapter.exists( - resourcePath - ); - if (isResourceExists) { - debug( - `Resource exists, skip download: ${resourcePath}` - ); - return; - } - const data = await this.memosResourceFetcher.fetchResource( - resource - ); - if (!data) { - warn(`Failed to fetch resource: ${resource}`); - return; - } - debug(`Download resource: ${resourcePath}`); - await this.app.vault.adapter.writeBinary(resourcePath, data); - }) - ); - }; - this.insertDailyMemos = async (memosPaginator) => { - const dailyNoteManager = new DailyNoteManager(); - const dailyNoteModifier = new DailyNoteModifier( - this.settings.dailyMemosHeader - ); - const lastTime = await memosPaginator.foreach( - async ([today, dailyMemosForToday]) => { - const momentDay = window.moment(today); - const targetFile = await dailyNoteManager.getOrCreateDailyNote( - momentDay - ); - await this.app.vault.process(targetFile, (originFileContent) => { - const modifiedFileContent = dailyNoteModifier.modifyDailyNote( - originFileContent, - today, - dailyMemosForToday - ); - if (!modifiedFileContent) { - return originFileContent; - } - return modifiedFileContent; - }); - } - ); - info(`Synced daily memos, lastTime: ${lastTime}`); - window.localStorage.setItem(this.localKey, lastTime); - }; - if (!settings.memosAPIURL) { - error( - "Please set the usememosAPI setting in the plugin settings." - ); - return; - } - this.app = app; - this.settings = settings; - this.memosFactory = new MemosAbstractFactory(this.settings); - this.localKey = `obsidian-memos-sync-last-time-${this.settings.memosAPIToken}`; - const lastTime = window.localStorage.getItem(this.localKey) || ""; - this.memosPaginator = this.memosFactory.createMemosPaginator(lastTime); - this.memosResourceFetcher = this.memosFactory.createResourceFetcher(); - } -}; - -// src/main.ts -var import_obsidian_daily_notes_interface2 = __toESM(require_main()); -var MEMOS_SYNC_DEFAULT_SETTINGS = { - dailyMemosHeader: "Memos", - memosAPIVersion: "v0.19.1", - memosAPIURL: "https://usememos.com", - memosAPIToken: "", - attachmentFolder: "Attachments" -}; -var MemosSyncPlugin = class extends import_obsidian4.Plugin { - constructor() { - super(...arguments); - this.loadSettings = async () => { - this.settings = Object.assign( - {}, - MEMOS_SYNC_DEFAULT_SETTINGS, - await this.loadData() - ); - }; - this.saveSettings = async () => { - await this.saveData(this.settings); - this.loadDailyMemos(); - }; - this.loadDailyMemos = async () => { - this.dailyMemos = new DailyMemos(this.app, this.settings); - this.addCommand({ - id: "memos-sync-daily-memos", - name: "Sync daily memos", - callback: this.dailyMemos.sync - }); - this.addCommand({ - id: "memos-force-sync-daily-memos", - name: "Force sync daily memos", - callback: this.dailyMemos.forceSync - }); - this.addCommand({ - id: "memos-sync-force-current-daily-memos", - name: "Force sync current daily memos", - callback: this.dailyMemos.syncForCurrentFile - }); - }; - } - async onload() { - await this.loadSettings(); - await this.loadDailyMemos(); - this.addSettingTab(new MemosSyncSettingTab(this.app, this)); - } - onunload() { - } -}; -var MemosSyncSettingTab = class extends import_obsidian4.PluginSettingTab { - constructor(app, plugin) { - super(app, plugin); - this.saveSettings = (newSettings) => { - this.plugin.settings = { - ...this.plugin.settings, - ...newSettings - }; - this.plugin.saveSettings(); - }; - this.plugin = plugin; - } - display() { - this.containerEl.empty(); - const dailyNotesEnabled = (0, import_obsidian_daily_notes_interface2.appHasDailyNotesPluginLoaded)(); - if (!dailyNotesEnabled) { - this.containerEl.createEl("h3", { - text: "Attention: Daily Notes is not enabled.", - attr: { - style: "color: red" - } - }); - this.containerEl.createEl("p", { - text: "Daily Notes feature is not enabled.", - attr: { - style: "color: red" - } - }); - this.containerEl.createEl("p", { - text: "Please enable the official Daily Notes plugin or daily notes feature in Periodic Notes plugin. Otherwise, this plugin will not work properly.", - attr: { - style: "color: red" - } - }); - } - new import_obsidian4.Setting(this.containerEl).setName("Daily memos header").setDesc("The header for the daily memos section.").addText((textfield) => { - textfield.setPlaceholder( - MEMOS_SYNC_DEFAULT_SETTINGS.dailyMemosHeader - ); - textfield.setValue(this.plugin.settings.dailyMemosHeader); - textfield.onChange((value) => { - this.saveSettings({ - dailyMemosHeader: value - }); - }); - }); - new import_obsidian4.Setting(this.containerEl).setName("Attachment folder").setDesc("The folder for attachments.").addText((textfield) => { - textfield.setPlaceholder( - MEMOS_SYNC_DEFAULT_SETTINGS.attachmentFolder - ); - textfield.setValue(this.plugin.settings.attachmentFolder); - textfield.onChange((value) => { - this.saveSettings({ - attachmentFolder: value - }); - }); - }); - new import_obsidian4.Setting(this.containerEl).setName("Memos API").setHeading(); - new import_obsidian4.Setting(this.containerEl).setName("Memos API version").setDesc("Which version your Memos server.").addDropdown((dropDown) => { - dropDown.addOptions({ - "v0.19.1": "before v0.21.x", - "v0.22.0": "v0.22.x ~ v0.23.x", - "v0.24.0": "after v0.24.x" - }); - dropDown.setValue(this.plugin.settings.memosAPIVersion); - dropDown.onChange((value) => { - this.saveSettings({ - memosAPIVersion: value - }); - }); - }); - new import_obsidian4.Setting(this.containerEl).setName("Memos API URL").setDesc("Memos API URL, e.g. http://localhost:5230").addText((textfield) => { - textfield.setPlaceholder( - MEMOS_SYNC_DEFAULT_SETTINGS.memosAPIURL - ); - textfield.setValue(this.plugin.settings.memosAPIURL); - textfield.onChange((value) => { - this.saveSettings({ - memosAPIURL: value - }); - }); - }); - new import_obsidian4.Setting(this.containerEl).setName("Memos API token").setDesc("Memos API token.").addText((textfield) => { - textfield.setPlaceholder( - MEMOS_SYNC_DEFAULT_SETTINGS.memosAPIToken - ); - textfield.setValue(this.plugin.settings.memosAPIToken); - textfield.onChange((value) => { - this.saveSettings({ - memosAPIToken: value - }); - }); - }); - } -}; - -/* nosourcemap */ \ No newline at end of file diff --git a/.obsidian/plugins/memos-sync/manifest.json b/.obsidian/plugins/memos-sync/manifest.json deleted file mode 100644 index 7bf183f..0000000 --- a/.obsidian/plugins/memos-sync/manifest.json +++ /dev/null @@ -1,10 +0,0 @@ -{ - "id": "memos-sync", - "name": "Memos Sync", - "version": "0.5.2", - "minAppVersion": "1.5.12", - "description": "Syncing memos from a [Memos](https://github.com/usememos/memos) server to your daily note. Fully compatible with official Daily Notes plugin, Calendar plugin and Periodic Notes plugin.", - "author": "RyoJerryYu", - "authorUrl": "https://github.com/RyoJerryYu", - "isDesktopOnly": true -} \ No newline at end of file diff --git a/.obsidian/plugins/memos-sync/styles.css b/.obsidian/plugins/memos-sync/styles.css deleted file mode 100644 index 71cc60f..0000000 --- a/.obsidian/plugins/memos-sync/styles.css +++ /dev/null @@ -1,8 +0,0 @@ -/* - -This CSS file will be included with your plugin, and -available in the app when your plugin is enabled. - -If your plugin does not need CSS, delete this file. - -*/ diff --git a/.obsidian/plugins/note-buddy/main.js b/.obsidian/plugins/note-buddy/main.js new file mode 100644 index 0000000..ba70431 --- /dev/null +++ b/.obsidian/plugins/note-buddy/main.js @@ -0,0 +1,692 @@ +/* +THIS IS A GENERATED/BUNDLED FILE BY ESBUILD +if you want to view the source, please visit the github repository of this plugin +*/ + +"use strict"; +var __defProp = Object.defineProperty; +var __getOwnPropDesc = Object.getOwnPropertyDescriptor; +var __getOwnPropNames = Object.getOwnPropertyNames; +var __hasOwnProp = Object.prototype.hasOwnProperty; +var __export = (target, all) => { + for (var name in all) + __defProp(target, name, { get: all[name], enumerable: true }); +}; +var __copyProps = (to, from, except, desc) => { + if (from && typeof from === "object" || typeof from === "function") { + for (let key of __getOwnPropNames(from)) + if (!__hasOwnProp.call(to, key) && key !== except) + __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable }); + } + return to; +}; +var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod); + +// src/main.ts +var main_exports = {}; +__export(main_exports, { + default: () => NoteBuddyPlugin +}); +module.exports = __toCommonJS(main_exports); +var import_obsidian4 = require("obsidian"); + +// src/chat-view.ts +var import_obsidian2 = require("obsidian"); + +// src/service.ts +var import_obsidian = require("obsidian"); + +// src/models.ts +var defaultSettings = { + serviceUrl: "http://127.0.0.1:4096" +}; +var MODELS_CACHE_TTL = 5 * 60 * 1e3; + +// src/service.ts +var OpenCodeClient = class _OpenCodeClient { + constructor(serviceUrl, defaultModelId, onModelUnavailable) { + this.session = null; + this.cachedProviders = null; + this.providersCacheTime = 0; + this.cachedDefaults = null; + this.serviceUrl = serviceUrl; + this.defaultModelId = defaultModelId; + this.onModelUnavailable = onModelUnavailable; + } + static { + this.DEFAULT_REQUEST_TIMEOUT_MS = 1e4; + } + static { + this.MESSAGE_REQUEST_TIMEOUT_MS = 6e4; + } + async request(options, timeoutMs = _OpenCodeClient.DEFAULT_REQUEST_TIMEOUT_MS) { + return await Promise.race([ + (0, import_obsidian.requestUrl)(options), + new Promise( + (_, reject) => setTimeout(() => reject(new Error(`Request timeout after ${timeoutMs / 1e3} seconds`)), timeoutMs) + ) + ]); + } + async healthCheck() { + const url = `${this.serviceUrl}/global/health`; + try { + const response = await this.request({ + url, + method: "GET" + }); + if (response.status === 200 && response.json.healthy === true) { + return { + status: "connected" /* Connected */, + lastTestTime: Date.now() + }; + } else { + return { + status: "disconnected" /* Disconnected */, + lastTestTime: Date.now(), + lastError: `Service unhealthy or unreachable` + }; + } + } catch (error) { + const err = error; + return { + status: "disconnected" /* Disconnected */, + lastTestTime: Date.now(), + lastError: err.message || "Unknown error" + }; + } + } + async createSession() { + const url = `${this.serviceUrl}/session`; + try { + const response = await this.request({ + url, + method: "POST", + headers: { + "Content-Type": "application/json" + }, + body: JSON.stringify({}) + }); + if (response.status === 200) { + const data = response.json; + return { + sessionID: data.id, + createTime: data.time.created, + title: data.title + }; + } + if (response.status === 400) { + const details = this.formatBadRequest(response.json, response.text); + throw new Error(details); + } + throw new Error(`HTTP ${response.status}: ${response.text}`); + } catch (error) { + const err = error; + throw new Error(`Failed to create session: ${err.message}`); + } + } + formatBadRequest(payload, fallbackText) { + if (!payload || typeof payload !== "object") { + return `Bad request: ${fallbackText || "Unknown error"}`; + } + const p = payload; + const errText = typeof p.errors === "string" ? p.errors : p.errors ? JSON.stringify(p.errors) : ""; + const dataText = p.data ? JSON.stringify(p.data) : ""; + const msg = [errText, dataText].filter(Boolean).join(" "); + return msg ? `Bad request: ${msg}` : `Bad request: ${fallbackText || "Unknown error"}`; + } + formatNotFound(payload, fallbackText) { + if (!payload || typeof payload !== "object") { + return fallbackText || "Not found"; + } + const p = payload; + const name = typeof p.name === "string" ? p.name : ""; + const data = p.data ? JSON.stringify(p.data) : ""; + return [name, data].filter(Boolean).join(" ") || fallbackText || "Not found"; + } + async sendMessageInternal(sessionID, message) { + const url = `${this.serviceUrl}/session/${sessionID}/message`; + try { + const response = await this.request( + { + url, + method: "POST", + headers: { + "Content-Type": "application/json" + }, + body: JSON.stringify(message) + }, + _OpenCodeClient.MESSAGE_REQUEST_TIMEOUT_MS + ); + if (response.status === 200) { + const raw = (response.text ?? "").trim(); + if (!raw) { + throw new Error("Server returned empty response"); + } + let data; + try { + data = JSON.parse(raw); + } catch { + throw new Error(`Invalid JSON response: ${raw.slice(0, 50)}${raw.length > 50 ? "..." : ""}`); + } + if (!data || typeof data !== "object" || !Array.isArray(data.parts)) { + throw new Error("Invalid response shape (expected {info, parts[]})"); + } + return data; + } + if (response.status === 400) { + const payload = response.json; + throw new Error(this.formatBadRequest(payload, response.text)); + } + if (response.status === 404) { + const payload = response.json; + throw new Error(`Session not found: ${this.formatNotFound(payload, response.text)}`); + } + throw new Error(`HTTP ${response.status}: ${response.text}`); + } catch (error) { + const err = error; + throw new Error(`Failed to send message: ${err.message}`); + } + } + async sendMessage(input) { + if (!this.session) { + this.session = await this.createSession(); + } + const message = { + parts: [{ type: "text", text: input }] + }; + if (this.defaultModelId) { + const parts = this.defaultModelId.split("/"); + if (parts.length === 2) { + message.model = { + providerID: parts[0], + modelID: parts[1] + }; + } + } + let response; + try { + response = await this.sendMessageInternal(this.session.sessionID, message); + } catch (error) { + const err = error; + if (message.model && this.isLikelyModelError(err)) { + console.log("[NoteBuddy] Selected model unavailable, falling back to server default"); + if (this.onModelUnavailable) { + this.onModelUnavailable(); + } + const fallbackMessage = { + parts: message.parts + }; + response = await this.sendMessageInternal(this.session.sessionID, fallbackMessage); + } else { + throw error; + } + } + const assistantText = response.parts.filter((part) => part.type === "text").map((part) => part.type === "text" ? part.text : "").filter(Boolean).join("\n"); + return assistantText; + } + async sendMessageToSession(sessionID, message) { + return await this.sendMessageInternal(sessionID, message); + } + isModelsCacheValid() { + if (!this.cachedProviders) { + return false; + } + const now = Date.now(); + return now - this.providersCacheTime < MODELS_CACHE_TTL; + } + clearModelsCache() { + this.cachedProviders = null; + this.providersCacheTime = 0; + this.cachedDefaults = null; + } + async getCapabilities(forceRefresh = false) { + const now = Date.now(); + if (!forceRefresh && this.cachedProviders && now - this.providersCacheTime < MODELS_CACHE_TTL) { + return this.cachedProviders; + } + const url = `${this.serviceUrl}/config/providers`; + try { + const response = await this.request({ + url, + method: "GET" + }); + if (response.status === 200) { + let data; + try { + data = response.json; + } catch { + const preview = (response.text || "").trim().slice(0, 50); + if (preview.toLowerCase().startsWith(" ({ + id: p.id, + name: p.name, + models: Object.entries(p.models || {}).map(([id, m]) => ({ id, name: m?.name ?? id })) + })); + this.cachedProviders = providers; + this.providersCacheTime = now; + return providers; + } else { + throw new Error(`HTTP ${response.status}: ${response.text}`); + } + } catch (error) { + const err = error; + throw new Error(`Failed to get capabilities: ${err.message}`); + } + } + isLikelyModelError(err) { + const msg = (err.message || "").toLowerCase(); + return msg.includes("model") && (msg.includes("not found") || msg.includes("invalid") || msg.includes("unknown")); + } +}; + +// src/chat-view.ts +var VIEW_TYPE_CHAT = "note-buddy-chat-view"; +var ChatView = class extends import_obsidian2.ItemView { + constructor(leaf, plugin) { + super(leaf); + this.plugin = plugin; + this.messages = []; + this.client = new OpenCodeClient( + plugin.settings.serviceUrl, + plugin.settings.defaultModelId, + plugin.onModelUnavailable?.bind(plugin) + ); + } + getViewType() { + return VIEW_TYPE_CHAT; + } + getDisplayText() { + return "NoteBuddy Chat"; + } + async onOpen() { + const container = this.containerEl.children[1]; + container.empty(); + const chatContainer = container.createDiv({ cls: "nb-chat-container" }); + chatContainer.style.cssText = ` + display: flex; + flex-direction: column; + height: 100%; + gap: 1rem; + `; + const messagesContainer = chatContainer.createDiv({ cls: "nb-messages-container" }); + this.messagesContainer = messagesContainer; + messagesContainer.style.cssText = ` + flex: 1; + overflow-y: auto; + display: flex; + flex-direction: column; + gap: 0.5rem; + padding: 1rem; + `; + this.renderMessages(); + const welcomeMessage = messagesContainer.createDiv({ cls: "nb-message nb-message-system" }); + welcomeMessage.createSpan({ text: "Welcome to NoteBuddy! Chat with your notes here." }); + welcomeMessage.style.cssText = ` + padding: 0.75rem; + background-color: var(--background-secondary); + border-radius: 0.5rem; + font-size: 0.9rem; + color: var(--text-muted); + `; + const inputContainer = chatContainer.createDiv({ cls: "nb-input-container" }); + inputContainer.style.cssText = ` + display: flex; + gap: 0.5rem; + padding: 1rem; + border-top: 1px solid var(--background-modifier-border); + `; + const textarea = inputContainer.createEl("textarea", { + cls: "nb-chat-input", + attr: { placeholder: "Type your message..." } + }); + textarea.style.cssText = ` + flex: 1; + min-height: 60px; + max-height: 150px; + padding: 0.5rem; + border: 1px solid var(--background-modifier-border); + border-radius: 0.375rem; + background-color: var(--background-primary); + color: var(--text-normal); + resize: vertical; + font-family: inherit; + `; + const sendButton = inputContainer.createEl("button", { + cls: "nb-send-button", + text: "Send" + }); + sendButton.style.cssText = ` + padding: 0.5rem 1rem; + background-color: var(--interactive-accent); + color: var(--text-on-accent); + border: none; + border-radius: 0.375rem; + cursor: pointer; + font-weight: 500; + `; + const sendMessage = async () => { + const message = textarea.value.trim(); + if (!message) return; + this.messages.push({ kind: "userText", text: message }); + this.renderMessages(); + textarea.value = ""; + try { + if (!this.plugin.sessionState) { + this.plugin.sessionState = await this.client.createSession(); + } + const sendData = { + parts: [{ type: "text", text: message }] + }; + if (this.plugin.settings.defaultModelId) { + const parts = this.plugin.settings.defaultModelId.split("/"); + if (parts.length === 2) { + sendData.model = { + providerID: parts[0], + modelID: parts[1] + }; + } + } + let response; + try { + response = await this.client.sendMessageToSession(this.plugin.sessionState.sessionID, sendData); + } catch (sendError) { + const err = sendError; + if (err.message.includes("Session not found")) { + this.plugin.sessionState = await this.client.createSession(); + response = await this.client.sendMessageToSession(this.plugin.sessionState.sessionID, sendData); + } else { + throw sendError; + } + } + for (const part of response.parts) { + this.messages.push({ kind: "assistantPart", part }); + } + this.renderMessages(); + this.messagesContainer.scrollTop = this.messagesContainer.scrollHeight; + } catch (error) { + console.error("[NoteBuddy] Send failed:", error); + new import_obsidian2.Notice(`Failed to send message: ${error.message}`); + } + }; + sendButton.onclick = sendMessage; + textarea.addEventListener("keydown", (e) => { + if (e.key === "Enter" && !e.shiftKey) { + e.preventDefault(); + sendMessage(); + } + }); + } + async onClose() { + console.log("[NoteBuddy] Chat view closed"); + } + renderMessages() { + this.messagesContainer.empty(); + if (this.messages.length === 0) { + const welcomeMessage = this.messagesContainer.createDiv({ cls: "nb-message nb-message-system" }); + welcomeMessage.createSpan({ text: "Welcome to NoteBuddy! Chat with your notes here." }); + welcomeMessage.style.cssText = ` + padding: 0.75rem; + background-color: var(--background-secondary); + border-radius: 0.5rem; + font-size: 0.9rem; + color: var(--text-muted); + `; + return; + } + for (const item of this.messages) { + if (item.kind === "userText") { + const messageEl2 = this.messagesContainer.createDiv({ cls: "nb-message nb-message-user" }); + messageEl2.createSpan({ text: item.text }); + messageEl2.style.cssText = ` + padding: 0.75rem; + background-color: var(--background-modifier-accent); + border-radius: 0.5rem; + font-size: 0.9rem; + align-self: flex-end; + max-width: 70%; + `; + continue; + } + const part = item.part; + const messageEl = this.messagesContainer.createDiv({ cls: "nb-message nb-message-assistant" }); + messageEl.style.cssText = ` + padding: 0.75rem; + background-color: var(--background-secondary); + border-radius: 0.5rem; + font-size: 0.9rem; + align-self: flex-start; + max-width: 70%; + `; + switch (part.type) { + case "text": + messageEl.createSpan({ text: part.text }); + break; + case "reasoning": + messageEl.createSpan({ text: part.text }); + break; + case "tool": + messageEl.createEl("strong", { text: `Tool: ${part.tool}` }); + messageEl.createEl("pre", { text: JSON.stringify(part.state ?? {}, null, 2) }); + break; + case "patch": + messageEl.createEl("strong", { text: `Patch: ${part.hash}` }); + messageEl.createEl("pre", { text: (part.files || []).join("\n") }); + break; + case "file": + messageEl.createEl("strong", { text: `File: ${part.filename ?? part.url}` }); + messageEl.createEl("div", { text: `mime: ${part.mime}` }); + messageEl.createEl("div", { text: `url: ${part.url}` }); + break; + case "agent": + messageEl.createEl("strong", { text: `Agent: ${part.name}` }); + break; + case "step_start": + messageEl.createEl("strong", { text: `Step start${part.title ? `: ${part.title}` : ""}` }); + break; + case "step_finish": + messageEl.createEl("strong", { text: `Step finish${part.title ? `: ${part.title}` : ""}` }); + break; + case "snapshot": + messageEl.createEl("strong", { text: "Snapshot" }); + messageEl.createEl("pre", { text: JSON.stringify(part, null, 2) }); + break; + case "retry": + messageEl.createEl("strong", { text: "Retry" }); + messageEl.createEl("pre", { text: JSON.stringify(part, null, 2) }); + break; + case "compaction": + messageEl.createEl("strong", { text: "Compaction" }); + messageEl.createEl("pre", { text: JSON.stringify(part, null, 2) }); + break; + case "unknown": + messageEl.createEl("strong", { + text: `Unsupported part type: ${part.originalType}` + }); + messageEl.createEl("pre", { text: JSON.stringify(part, null, 2) }); + break; + } + } + } +}; + +// src/settings.ts +var import_obsidian3 = require("obsidian"); +var NoteBuddySettingTab = class extends import_obsidian3.PluginSettingTab { + constructor(app, plugin) { + super(app, plugin); + this.providers = []; + this.isLoadingModels = false; + this.plugin = plugin; + } + async display(useCachedProviders) { + const { containerEl } = this; + containerEl.empty(); + containerEl.createEl("h2", { text: "NoteBuddy Settings" }); + if (!useCachedProviders) { + try { + await this.loadProviders(); + } catch { + } + } + new import_obsidian3.Setting(containerEl).setName("Service URL").setDesc("The URL of the OpenCode service (must include protocol, hostname, and port)").addText( + (text) => text.setPlaceholder("http://127.0.0.1:4096").setValue(this.plugin.settings.serviceUrl).onChange(async (value) => { + if (!value.startsWith("http://") && !value.startsWith("https://")) { + new import_obsidian3.Notice("Service URL must start with http:// or https://"); + return; + } + try { + const url = new URL(value); + if (!url.hostname || url.hostname === "") { + new import_obsidian3.Notice("Service URL must include a valid hostname"); + return; + } + if (!url.port || url.port === "") { + new import_obsidian3.Notice("Service URL must include a port number"); + return; + } + } catch (e) { + new import_obsidian3.Notice("Service URL must be a valid URL format"); + return; + } + this.plugin.settings.serviceUrl = value; + await this.plugin.saveSettings(); + }) + ); + new import_obsidian3.Setting(containerEl).setName("Test Connection").setDesc("Test the connection to the service").addButton( + (button) => button.setButtonText("Test").setCta().onClick(async () => { + const client = new OpenCodeClient(this.plugin.settings.serviceUrl, this.plugin.settings.defaultModelId); + const result = await client.healthCheck(); + if (result.status === "connected") { + new import_obsidian3.Notice("Connection successful!"); + } else { + new import_obsidian3.Notice(`Connection failed: ${result.lastError}`); + } + }) + ); + this.displayModelSelection(containerEl); + this.displayRefreshButton(containerEl); + } + async loadProviders(client, forceRefresh) { + if (this.isLoadingModels) { + return; + } + this.isLoadingModels = true; + try { + const c = client ?? new OpenCodeClient(this.plugin.settings.serviceUrl, this.plugin.settings.defaultModelId); + this.providers = await c.getCapabilities(forceRefresh ?? false); + } catch (error) { + this.providers = []; + console.error("[NoteBuddy] Failed to load providers:", error); + throw error; + } finally { + this.isLoadingModels = false; + } + } + displayModelSelection(containerEl) { + const modelOptions = {}; + modelOptions[""] = "Use server default"; + for (const provider of this.providers) { + for (const model of provider.models) { + const value = `${provider.id}/${model.id}`; + modelOptions[value] = `${provider.name} - ${model.name}`; + } + } + const currentValue = this.getCurrentModelSelection(); + new import_obsidian3.Setting(containerEl).setName("Default Model").setDesc("Select the default AI model to use for conversations").addDropdown( + (dropdown) => dropdown.addOptions(modelOptions).setValue(currentValue).onChange(async (value) => { + if (value) { + this.plugin.settings.defaultModelId = value; + } else { + this.plugin.settings.defaultModelId = void 0; + } + await this.plugin.saveSettings(); + }) + ); + } + getCurrentModelSelection() { + return this.plugin.settings.defaultModelId || ""; + } + displayRefreshButton(container) { + new import_obsidian3.Setting(container).setName("Refresh Models").setDesc("Reload the list of available models from the service").addButton( + (button) => button.setButtonText("Refresh").onClick(async () => { + const client = new OpenCodeClient(this.plugin.settings.serviceUrl, this.plugin.settings.defaultModelId); + client.clearModelsCache(); + try { + await this.loadProviders(client, true); + new import_obsidian3.Notice("Models refreshed"); + await this.display(true); + } catch (error) { + console.error("[NoteBuddy] Failed to load providers:", error); + new import_obsidian3.Notice(`Failed to refresh models: ${error.message}`); + await this.display(true); + } + }) + ); + } +}; + +// src/main.ts +var DEFAULT_SETTINGS = defaultSettings; +var NoteBuddyPlugin = class extends import_obsidian4.Plugin { + constructor() { + super(...arguments); + this.ribbonIconEl = null; + } + async onload() { + console.log("Loading NoteBuddy plugin..."); + await this.loadSettings(); + this.registerView( + VIEW_TYPE_CHAT, + (leaf) => new ChatView(leaf, this) + ); + this.addRibbonIcon("bot", "NoteBuddy", () => { + this.activateView(); + }); + this.addCommand({ + id: "open-chat-view", + name: "Open NoteBuddy Chat", + callback: () => { + this.activateView(); + } + }); + this.app.workspace.onLayoutReady(() => { + this.activateView(); + }); + this.addSettingTab(new NoteBuddySettingTab(this.app, this)); + } + onunload() { + console.log("Unloading NoteBuddy plugin..."); + } + async activateView() { + const { workspace } = this.app; + let leaf = null; + const leaves = workspace.getLeavesOfType(VIEW_TYPE_CHAT); + if (leaves.length > 0) { + leaf = leaves[0]; + } else { + leaf = workspace.getRightLeaf(false); + } + if (leaf) { + await workspace.setActiveLeaf(leaf); + await leaf.setViewState({ type: VIEW_TYPE_CHAT, active: true }); + } + } + async loadSettings() { + this.settings = Object.assign({}, DEFAULT_SETTINGS, await this.loadData()); + } + // Callback for when selected model is unavailable + onModelUnavailable() { + new import_obsidian4.Notice("Selected model is unavailable. Using server default instead."); + } + async saveSettings() { + await this.saveData(this.settings); + } +}; diff --git a/.obsidian/plugins/note-buddy/styles.css b/.obsidian/plugins/note-buddy/styles.css new file mode 100644 index 0000000..4868068 --- /dev/null +++ b/.obsidian/plugins/note-buddy/styles.css @@ -0,0 +1,48 @@ +.note-buddy-chat { + height: 100%; + display: flex; + flex-direction: column; + background-color: var(--background-secondary); +} + +.note-buddy-chat h2 { + margin: 10px; + font-size: var(--font-ui-medium); + color: var(--text-normal); + font-weight: var(--font-semibold); +} + +.message-container { + background-color: var(--background-primary-alt); + border-radius: var(--radius-md); + margin: 0 10px 10px 10px; +} + +.input-bar textarea { + background-color: var(--background-primary); + color: var(--text-normal); + border: 1px solid var(--background-modifier-border); + border-radius: var(--radius-sm); + font-family: var(--font-interface); + font-size: var(--font-ui-sm); +} + +.input-bar textarea:focus { + outline: none; + border-color: var(--interactive-accent); +} + +.input-bar button { + background-color: var(--interactive-accent); + color: var(--text-on-accent); + border: none; + border-radius: var(--radius-sm); + font-family: var(--font-interface); + font-weight: var(--font-semibold); + font-size: var(--font-ui-sm); + transition: background-color 0.2s; +} + +.input-bar button:hover { + background-color: var(--interactive-accent-hover); +} diff --git a/.obsidian/plugins/obsidian-advanced-uri/main.js b/.obsidian/plugins/obsidian-advanced-uri/main.js index 7ed6fe2..1d11e77 100644 --- a/.obsidian/plugins/obsidian-advanced-uri/main.js +++ b/.obsidian/plugins/obsidian-advanced-uri/main.js @@ -3,16 +3,16 @@ THIS IS A GENERATED/BUNDLED FILE BY ESBUILD if you want to view the source visit the plugins github repository (https://github.com/Vinzent03/obsidian-advanced-uri) */ -var Ue=Object.create;var Z=Object.defineProperty;var ze=Object.getOwnPropertyDescriptor;var He=Object.getOwnPropertyNames;var Ne=Object.getPrototypeOf,We=Object.prototype.hasOwnProperty;var Be=(s,n)=>()=>(n||s((n={exports:{}}).exports,n),n.exports),$e=(s,n)=>{for(var e in n)Z(s,e,{get:n[e],enumerable:!0})},ge=(s,n,e,t)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of He(n))!We.call(s,i)&&i!==e&&Z(s,i,{get:()=>n[i],enumerable:!(t=ze(n,i))||t.enumerable});return s};var Ke=(s,n,e)=>(e=s!=null?Ue(Ne(s)):{},ge(n||!s||!s.__esModule?Z(e,"default",{value:s,enumerable:!0}):e,s)),Ge=s=>ge(Z({},"__esModule",{value:!0}),s);var xe=Be((N,se)=>{(function(n,e){typeof N=="object"&&typeof se=="object"?se.exports=e():typeof define=="function"&&define.amd?define([],e):typeof N=="object"?N.feather=e():n.feather=e()})(typeof self!="undefined"?self:N,function(){return function(s){var n={};function e(t){if(n[t])return n[t].exports;var i=n[t]={i:t,l:!1,exports:{}};return s[t].call(i.exports,i,i.exports,e),i.l=!0,i.exports}return e.m=s,e.c=n,e.d=function(t,i,o){e.o(t,i)||Object.defineProperty(t,i,{configurable:!1,enumerable:!0,get:o})},e.r=function(t){Object.defineProperty(t,"__esModule",{value:!0})},e.n=function(t){var i=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(i,"a",i),i},e.o=function(t,i){return Object.prototype.hasOwnProperty.call(t,i)},e.p="",e(e.s=0)}({"./dist/icons.json":function(s){s.exports={activity:'',airplay:'',"alert-circle":'',"alert-octagon":'',"alert-triangle":'',"align-center":'',"align-justify":'',"align-left":'',"align-right":'',anchor:'',aperture:'',archive:'',"arrow-down-circle":'',"arrow-down-left":'',"arrow-down-right":'',"arrow-down":'',"arrow-left-circle":'',"arrow-left":'',"arrow-right-circle":'',"arrow-right":'',"arrow-up-circle":'',"arrow-up-left":'',"arrow-up-right":'',"arrow-up":'',"at-sign":'',award:'',"bar-chart-2":'',"bar-chart":'',"battery-charging":'',battery:'',"bell-off":'',bell:'',bluetooth:'',bold:'',"book-open":'',book:'',bookmark:'',box:'',briefcase:'',calendar:'',"camera-off":'',camera:'',cast:'',"check-circle":'',"check-square":'',check:'',"chevron-down":'',"chevron-left":'',"chevron-right":'',"chevron-up":'',"chevrons-down":'',"chevrons-left":'',"chevrons-right":'',"chevrons-up":'',chrome:'',circle:'',clipboard:'',clock:'',"cloud-drizzle":'',"cloud-lightning":'',"cloud-off":'',"cloud-rain":'',"cloud-snow":'',cloud:'',code:'',codepen:'',codesandbox:'',coffee:'',columns:'',command:'',compass:'',copy:'',"corner-down-left":'',"corner-down-right":'',"corner-left-down":'',"corner-left-up":'',"corner-right-down":'',"corner-right-up":'',"corner-up-left":'',"corner-up-right":'',cpu:'',"credit-card":'',crop:'',crosshair:'',database:'',delete:'',disc:'',"divide-circle":'',"divide-square":'',divide:'',"dollar-sign":'',"download-cloud":'',download:'',dribbble:'',droplet:'',"edit-2":'',"edit-3":'',edit:'',"external-link":'',"eye-off":'',eye:'',facebook:'',"fast-forward":'',feather:'',figma:'',"file-minus":'',"file-plus":'',"file-text":'',file:'',film:'',filter:'',flag:'',"folder-minus":'',"folder-plus":'',folder:'',framer:'',frown:'',gift:'',"git-branch":'',"git-commit":'',"git-merge":'',"git-pull-request":'',github:'',gitlab:'',globe:'',grid:'',"hard-drive":'',hash:'',headphones:'',heart:'',"help-circle":'',hexagon:'',home:'',image:'',inbox:'',info:'',instagram:'',italic:'',key:'',layers:'',layout:'',"life-buoy":'',"link-2":'',link:'',linkedin:'',list:'',loader:'',lock:'',"log-in":'',"log-out":'',mail:'',"map-pin":'',map:'',"maximize-2":'',maximize:'',meh:'',menu:'',"message-circle":'',"message-square":'',"mic-off":'',mic:'',"minimize-2":'',minimize:'',"minus-circle":'',"minus-square":'',minus:'',monitor:'',moon:'',"more-horizontal":'',"more-vertical":'',"mouse-pointer":'',move:'',music:'',"navigation-2":'',navigation:'',octagon:'',package:'',paperclip:'',"pause-circle":'',pause:'',"pen-tool":'',percent:'',"phone-call":'',"phone-forwarded":'',"phone-incoming":'',"phone-missed":'',"phone-off":'',"phone-outgoing":'',phone:'',"pie-chart":'',"play-circle":'',play:'',"plus-circle":'',"plus-square":'',plus:'',pocket:'',power:'',printer:'',radio:'',"refresh-ccw":'',"refresh-cw":'',repeat:'',rewind:'',"rotate-ccw":'',"rotate-cw":'',rss:'',save:'',scissors:'',search:'',send:'',server:'',settings:'',"share-2":'',share:'',"shield-off":'',shield:'',"shopping-bag":'',"shopping-cart":'',shuffle:'',sidebar:'',"skip-back":'',"skip-forward":'',slack:'',slash:'',sliders:'',smartphone:'',smile:'',speaker:'',square:'',star:'',"stop-circle":'',sun:'',sunrise:'',sunset:'',table:'',tablet:'',tag:'',target:'',terminal:'',thermometer:'',"thumbs-down":'',"thumbs-up":'',"toggle-left":'',"toggle-right":'',tool:'',"trash-2":'',trash:'',trello:'',"trending-down":'',"trending-up":'',triangle:'',truck:'',tv:'',twitch:'',twitter:'',type:'',umbrella:'',underline:'',unlock:'',"upload-cloud":'',upload:'',"user-check":'',"user-minus":'',"user-plus":'',"user-x":'',user:'',users:'',"video-off":'',video:'',voicemail:'',"volume-1":'',"volume-2":'',"volume-x":'',volume:'',watch:'',"wifi-off":'',wifi:'',wind:'',"x-circle":'',"x-octagon":'',"x-square":'',x:'',youtube:'',"zap-off":'',zap:'',"zoom-in":'',"zoom-out":''}},"./node_modules/classnames/dedupe.js":function(s,n,e){var t,i;(function(){"use strict";var o=function(){function a(){}a.prototype=Object.create(null);function l(f,y){for(var x=y.length,m=0;m1?arguments[1]:void 0,y=f!==void 0,x=0,m=c(h),M,j,b,I;if(y&&(f=t(f,g>2?arguments[2]:void 0,2)),m!=null&&!(u==Array&&a(m)))for(I=m.call(h),j=new u;!(b=I.next()).done;x++)r(j,x,y?o(I,f,[b.value,x],!0):b.value);else for(M=l(h.length),j=new u(M);M>x;x++)r(j,x,y?f(h[x],x):h[x]);return j.length=x,j}},"./node_modules/core-js/internals/array-includes.js":function(s,n,e){var t=e("./node_modules/core-js/internals/to-indexed-object.js"),i=e("./node_modules/core-js/internals/to-length.js"),o=e("./node_modules/core-js/internals/to-absolute-index.js");s.exports=function(a){return function(l,r,c){var d=t(l),p=i(d.length),h=o(c,p),u;if(a&&r!=r){for(;p>h;)if(u=d[h++],u!=u)return!0}else for(;p>h;h++)if((a||h in d)&&d[h]===r)return a||h||0;return!a&&-1}}},"./node_modules/core-js/internals/bind-context.js":function(s,n,e){var t=e("./node_modules/core-js/internals/a-function.js");s.exports=function(i,o,a){if(t(i),o===void 0)return i;switch(a){case 0:return function(){return i.call(o)};case 1:return function(l){return i.call(o,l)};case 2:return function(l,r){return i.call(o,l,r)};case 3:return function(l,r,c){return i.call(o,l,r,c)}}return function(){return i.apply(o,arguments)}}},"./node_modules/core-js/internals/call-with-safe-iteration-closing.js":function(s,n,e){var t=e("./node_modules/core-js/internals/an-object.js");s.exports=function(i,o,a,l){try{return l?o(t(a)[0],a[1]):o(a)}catch(c){var r=i.return;throw r!==void 0&&t(r.call(i)),c}}},"./node_modules/core-js/internals/check-correctness-of-iteration.js":function(s,n,e){var t=e("./node_modules/core-js/internals/well-known-symbol.js"),i=t("iterator"),o=!1;try{var a=0,l={next:function(){return{done:!!a++}},return:function(){o=!0}};l[i]=function(){return this},Array.from(l,function(){throw 2})}catch(r){}s.exports=function(r,c){if(!c&&!o)return!1;var d=!1;try{var p={};p[i]=function(){return{next:function(){return{done:d=!0}}}},r(p)}catch(h){}return d}},"./node_modules/core-js/internals/classof-raw.js":function(s,n){var e={}.toString;s.exports=function(t){return e.call(t).slice(8,-1)}},"./node_modules/core-js/internals/classof.js":function(s,n,e){var t=e("./node_modules/core-js/internals/classof-raw.js"),i=e("./node_modules/core-js/internals/well-known-symbol.js"),o=i("toStringTag"),a=t(function(){return arguments}())=="Arguments",l=function(r,c){try{return r[c]}catch(d){}};s.exports=function(r){var c,d,p;return r===void 0?"Undefined":r===null?"Null":typeof(d=l(c=Object(r),o))=="string"?d:a?t(c):(p=t(c))=="Object"&&typeof c.callee=="function"?"Arguments":p}},"./node_modules/core-js/internals/copy-constructor-properties.js":function(s,n,e){var t=e("./node_modules/core-js/internals/has.js"),i=e("./node_modules/core-js/internals/own-keys.js"),o=e("./node_modules/core-js/internals/object-get-own-property-descriptor.js"),a=e("./node_modules/core-js/internals/object-define-property.js");s.exports=function(l,r){for(var c=i(r),d=a.f,p=o.f,h=0;h",M="java"+x+":",j;for(g.style.display="none",l.appendChild(g),g.src=String(M),j=g.contentWindow.document,j.open(),j.write(y+x+m+"document.F=Object"+y+"/"+x+m),j.close(),u=j.F;f--;)delete u[p][o[f]];return u()};s.exports=Object.create||function(f,y){var x;return f!==null?(h[p]=t(f),x=new h,h[p]=null,x[d]=f):x=u(),y===void 0?x:i(x,y)},a[d]=!0},"./node_modules/core-js/internals/object-define-properties.js":function(s,n,e){var t=e("./node_modules/core-js/internals/descriptors.js"),i=e("./node_modules/core-js/internals/object-define-property.js"),o=e("./node_modules/core-js/internals/an-object.js"),a=e("./node_modules/core-js/internals/object-keys.js");s.exports=t?Object.defineProperties:function(r,c){o(r);for(var d=a(c),p=d.length,h=0,u;p>h;)i.f(r,u=d[h++],c[u]);return r}},"./node_modules/core-js/internals/object-define-property.js":function(s,n,e){var t=e("./node_modules/core-js/internals/descriptors.js"),i=e("./node_modules/core-js/internals/ie8-dom-define.js"),o=e("./node_modules/core-js/internals/an-object.js"),a=e("./node_modules/core-js/internals/to-primitive.js"),l=Object.defineProperty;n.f=t?l:function(c,d,p){if(o(c),d=a(d,!0),o(p),i)try{return l(c,d,p)}catch(h){}if("get"in p||"set"in p)throw TypeError("Accessors not supported");return"value"in p&&(c[d]=p.value),c}},"./node_modules/core-js/internals/object-get-own-property-descriptor.js":function(s,n,e){var t=e("./node_modules/core-js/internals/descriptors.js"),i=e("./node_modules/core-js/internals/object-property-is-enumerable.js"),o=e("./node_modules/core-js/internals/create-property-descriptor.js"),a=e("./node_modules/core-js/internals/to-indexed-object.js"),l=e("./node_modules/core-js/internals/to-primitive.js"),r=e("./node_modules/core-js/internals/has.js"),c=e("./node_modules/core-js/internals/ie8-dom-define.js"),d=Object.getOwnPropertyDescriptor;n.f=t?d:function(h,u){if(h=a(h),u=l(u,!0),c)try{return d(h,u)}catch(g){}if(r(h,u))return o(!i.f.call(h,u),h[u])}},"./node_modules/core-js/internals/object-get-own-property-names.js":function(s,n,e){var t=e("./node_modules/core-js/internals/object-keys-internal.js"),i=e("./node_modules/core-js/internals/enum-bug-keys.js"),o=i.concat("length","prototype");n.f=Object.getOwnPropertyNames||function(l){return t(l,o)}},"./node_modules/core-js/internals/object-get-own-property-symbols.js":function(s,n){n.f=Object.getOwnPropertySymbols},"./node_modules/core-js/internals/object-get-prototype-of.js":function(s,n,e){var t=e("./node_modules/core-js/internals/has.js"),i=e("./node_modules/core-js/internals/to-object.js"),o=e("./node_modules/core-js/internals/shared-key.js"),a=e("./node_modules/core-js/internals/correct-prototype-getter.js"),l=o("IE_PROTO"),r=Object.prototype;s.exports=a?Object.getPrototypeOf:function(c){return c=i(c),t(c,l)?c[l]:typeof c.constructor=="function"&&c instanceof c.constructor?c.constructor.prototype:c instanceof Object?r:null}},"./node_modules/core-js/internals/object-keys-internal.js":function(s,n,e){var t=e("./node_modules/core-js/internals/has.js"),i=e("./node_modules/core-js/internals/to-indexed-object.js"),o=e("./node_modules/core-js/internals/array-includes.js"),a=e("./node_modules/core-js/internals/hidden-keys.js"),l=o(!1);s.exports=function(r,c){var d=i(r),p=0,h=[],u;for(u in d)!t(a,u)&&t(d,u)&&h.push(u);for(;c.length>p;)t(d,u=c[p++])&&(~l(h,u)||h.push(u));return h}},"./node_modules/core-js/internals/object-keys.js":function(s,n,e){var t=e("./node_modules/core-js/internals/object-keys-internal.js"),i=e("./node_modules/core-js/internals/enum-bug-keys.js");s.exports=Object.keys||function(a){return t(a,i)}},"./node_modules/core-js/internals/object-property-is-enumerable.js":function(s,n,e){"use strict";var t={}.propertyIsEnumerable,i=Object.getOwnPropertyDescriptor,o=i&&!t.call({1:2},1);n.f=o?function(l){var r=i(this,l);return!!r&&r.enumerable}:t},"./node_modules/core-js/internals/object-set-prototype-of.js":function(s,n,e){var t=e("./node_modules/core-js/internals/validate-set-prototype-of-arguments.js");s.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var i=!1,o={},a;try{a=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set,a.call(o,[]),i=o instanceof Array}catch(l){}return function(r,c){return t(r,c),i?a.call(r,c):r.__proto__=c,r}}():void 0)},"./node_modules/core-js/internals/own-keys.js":function(s,n,e){var t=e("./node_modules/core-js/internals/global.js"),i=e("./node_modules/core-js/internals/object-get-own-property-names.js"),o=e("./node_modules/core-js/internals/object-get-own-property-symbols.js"),a=e("./node_modules/core-js/internals/an-object.js"),l=t.Reflect;s.exports=l&&l.ownKeys||function(c){var d=i.f(a(c)),p=o.f;return p?d.concat(p(c)):d}},"./node_modules/core-js/internals/path.js":function(s,n,e){s.exports=e("./node_modules/core-js/internals/global.js")},"./node_modules/core-js/internals/redefine.js":function(s,n,e){var t=e("./node_modules/core-js/internals/global.js"),i=e("./node_modules/core-js/internals/shared.js"),o=e("./node_modules/core-js/internals/hide.js"),a=e("./node_modules/core-js/internals/has.js"),l=e("./node_modules/core-js/internals/set-global.js"),r=e("./node_modules/core-js/internals/function-to-string.js"),c=e("./node_modules/core-js/internals/internal-state.js"),d=c.get,p=c.enforce,h=String(r).split("toString");i("inspectSource",function(u){return r.call(u)}),(s.exports=function(u,g,f,y){var x=y?!!y.unsafe:!1,m=y?!!y.enumerable:!1,M=y?!!y.noTargetGet:!1;if(typeof f=="function"&&(typeof g=="string"&&!a(f,"name")&&o(f,"name",g),p(f).source=h.join(typeof g=="string"?g:"")),u===t){m?u[g]=f:l(g,f);return}else x?!M&&u[g]&&(m=!0):delete u[g];m?u[g]=f:o(u,g,f)})(Function.prototype,"toString",function(){return typeof this=="function"&&d(this).source||r.call(this)})},"./node_modules/core-js/internals/require-object-coercible.js":function(s,n){s.exports=function(e){if(e==null)throw TypeError("Can't call method on "+e);return e}},"./node_modules/core-js/internals/set-global.js":function(s,n,e){var t=e("./node_modules/core-js/internals/global.js"),i=e("./node_modules/core-js/internals/hide.js");s.exports=function(o,a){try{i(t,o,a)}catch(l){t[o]=a}return a}},"./node_modules/core-js/internals/set-to-string-tag.js":function(s,n,e){var t=e("./node_modules/core-js/internals/object-define-property.js").f,i=e("./node_modules/core-js/internals/has.js"),o=e("./node_modules/core-js/internals/well-known-symbol.js"),a=o("toStringTag");s.exports=function(l,r,c){l&&!i(l=c?l:l.prototype,a)&&t(l,a,{configurable:!0,value:r})}},"./node_modules/core-js/internals/shared-key.js":function(s,n,e){var t=e("./node_modules/core-js/internals/shared.js"),i=e("./node_modules/core-js/internals/uid.js"),o=t("keys");s.exports=function(a){return o[a]||(o[a]=i(a))}},"./node_modules/core-js/internals/shared.js":function(s,n,e){var t=e("./node_modules/core-js/internals/global.js"),i=e("./node_modules/core-js/internals/set-global.js"),o=e("./node_modules/core-js/internals/is-pure.js"),a="__core-js_shared__",l=t[a]||i(a,{});(s.exports=function(r,c){return l[r]||(l[r]=c!==void 0?c:{})})("versions",[]).push({version:"3.1.3",mode:o?"pure":"global",copyright:"\xA9 2019 Denis Pushkarev (zloirock.ru)"})},"./node_modules/core-js/internals/string-at.js":function(s,n,e){var t=e("./node_modules/core-js/internals/to-integer.js"),i=e("./node_modules/core-js/internals/require-object-coercible.js");s.exports=function(o,a,l){var r=String(i(o)),c=t(a),d=r.length,p,h;return c<0||c>=d?l?"":void 0:(p=r.charCodeAt(c),p<55296||p>56319||c+1===d||(h=r.charCodeAt(c+1))<56320||h>57343?l?r.charAt(c):p:l?r.slice(c,c+2):(p-55296<<10)+(h-56320)+65536)}},"./node_modules/core-js/internals/to-absolute-index.js":function(s,n,e){var t=e("./node_modules/core-js/internals/to-integer.js"),i=Math.max,o=Math.min;s.exports=function(a,l){var r=t(a);return r<0?i(r+l,0):o(r,l)}},"./node_modules/core-js/internals/to-indexed-object.js":function(s,n,e){var t=e("./node_modules/core-js/internals/indexed-object.js"),i=e("./node_modules/core-js/internals/require-object-coercible.js");s.exports=function(o){return t(i(o))}},"./node_modules/core-js/internals/to-integer.js":function(s,n){var e=Math.ceil,t=Math.floor;s.exports=function(i){return isNaN(i=+i)?0:(i>0?t:e)(i)}},"./node_modules/core-js/internals/to-length.js":function(s,n,e){var t=e("./node_modules/core-js/internals/to-integer.js"),i=Math.min;s.exports=function(o){return o>0?i(t(o),9007199254740991):0}},"./node_modules/core-js/internals/to-object.js":function(s,n,e){var t=e("./node_modules/core-js/internals/require-object-coercible.js");s.exports=function(i){return Object(t(i))}},"./node_modules/core-js/internals/to-primitive.js":function(s,n,e){var t=e("./node_modules/core-js/internals/is-object.js");s.exports=function(i,o){if(!t(i))return i;var a,l;if(o&&typeof(a=i.toString)=="function"&&!t(l=a.call(i))||typeof(a=i.valueOf)=="function"&&!t(l=a.call(i))||!o&&typeof(a=i.toString)=="function"&&!t(l=a.call(i)))return l;throw TypeError("Can't convert object to primitive value")}},"./node_modules/core-js/internals/uid.js":function(s,n){var e=0,t=Math.random();s.exports=function(i){return"Symbol(".concat(i===void 0?"":i,")_",(++e+t).toString(36))}},"./node_modules/core-js/internals/validate-set-prototype-of-arguments.js":function(s,n,e){var t=e("./node_modules/core-js/internals/is-object.js"),i=e("./node_modules/core-js/internals/an-object.js");s.exports=function(o,a){if(i(o),!t(a)&&a!==null)throw TypeError("Can't set "+String(a)+" as a prototype")}},"./node_modules/core-js/internals/well-known-symbol.js":function(s,n,e){var t=e("./node_modules/core-js/internals/global.js"),i=e("./node_modules/core-js/internals/shared.js"),o=e("./node_modules/core-js/internals/uid.js"),a=e("./node_modules/core-js/internals/native-symbol.js"),l=t.Symbol,r=i("wks");s.exports=function(c){return r[c]||(r[c]=a&&l[c]||(a?l:o)("Symbol."+c))}},"./node_modules/core-js/modules/es.array.from.js":function(s,n,e){var t=e("./node_modules/core-js/internals/export.js"),i=e("./node_modules/core-js/internals/array-from.js"),o=e("./node_modules/core-js/internals/check-correctness-of-iteration.js"),a=!o(function(l){Array.from(l)});t({target:"Array",stat:!0,forced:a},{from:i})},"./node_modules/core-js/modules/es.string.iterator.js":function(s,n,e){"use strict";var t=e("./node_modules/core-js/internals/string-at.js"),i=e("./node_modules/core-js/internals/internal-state.js"),o=e("./node_modules/core-js/internals/define-iterator.js"),a="String Iterator",l=i.set,r=i.getterFor(a);o(String,"String",function(c){l(this,{type:a,string:String(c),index:0})},function(){var d=r(this),p=d.string,h=d.index,u;return h>=p.length?{value:void 0,done:!0}:(u=t(p,h,!0),d.index+=u.length,{value:u,done:!1})})},"./node_modules/webpack/buildin/global.js":function(s,n){var e;e=function(){return this}();try{e=e||Function("return this")()||(0,eval)("this")}catch(t){typeof window=="object"&&(e=window)}s.exports=e},"./src/default-attrs.json":function(s){s.exports={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"}},"./src/icon.js":function(s,n,e){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=Object.assign||function(u){for(var g=1;g2&&arguments[2]!==void 0?arguments[2]:[];d(this,u),this.name=g,this.contents=f,this.tags=y,this.attrs=t({},r.default,{class:"feather feather-"+g})}return i(u,[{key:"toSvg",value:function(){var f=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},y=t({},this.attrs,f,{class:(0,a.default)(this.attrs.class,f.class)});return""+this.contents+""}},{key:"toString",value:function(){return this.contents}}]),u}();function h(u){return Object.keys(u).map(function(g){return g+'="'+u[g]+'"'}).join(" ")}n.default=p},"./src/icons.js":function(s,n,e){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=e("./src/icon.js"),i=c(t),o=e("./dist/icons.json"),a=c(o),l=e("./src/tags.json"),r=c(l);function c(d){return d&&d.__esModule?d:{default:d}}n.default=Object.keys(a.default).map(function(d){return new i.default(d,a.default[d],r.default[d])}).reduce(function(d,p){return d[p.name]=p,d},{})},"./src/index.js":function(s,n,e){"use strict";var t=e("./src/icons.js"),i=c(t),o=e("./src/to-svg.js"),a=c(o),l=e("./src/replace.js"),r=c(l);function c(d){return d&&d.__esModule?d:{default:d}}s.exports={icons:i.default,toSvg:a.default,replace:r.default}},"./src/replace.js":function(s,n,e){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=Object.assign||function(h){for(var u=1;u0&&arguments[0]!==void 0?arguments[0]:{};if(typeof document=="undefined")throw new Error("`feather.replace()` only works in a browser environment.");var u=document.querySelectorAll("[data-feather]");Array.from(u).forEach(function(g){return d(g,h)})}function d(h){var u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},g=p(h),f=g["data-feather"];if(delete g["data-feather"],l.default[f]===void 0){console.warn("feather: '"+f+"' is not a valid icon");return}var y=l.default[f].toSvg(t({},u,g,{class:(0,o.default)(u.class,g.class)})),x=new DOMParser().parseFromString(y,"image/svg+xml"),m=x.querySelector("svg");h.parentNode.replaceChild(m,h)}function p(h){return Array.from(h.attributes).reduce(function(u,g){return u[g.name]=g.value,u},{})}n.default=c},"./src/tags.json":function(s){s.exports={activity:["pulse","health","action","motion"],airplay:["stream","cast","mirroring"],"alert-circle":["warning","alert","danger"],"alert-octagon":["warning","alert","danger"],"alert-triangle":["warning","alert","danger"],"align-center":["text alignment","center"],"align-justify":["text alignment","justified"],"align-left":["text alignment","left"],"align-right":["text alignment","right"],anchor:[],archive:["index","box"],"at-sign":["mention","at","email","message"],award:["achievement","badge"],aperture:["camera","photo"],"bar-chart":["statistics","diagram","graph"],"bar-chart-2":["statistics","diagram","graph"],battery:["power","electricity"],"battery-charging":["power","electricity"],bell:["alarm","notification","sound"],"bell-off":["alarm","notification","silent"],bluetooth:["wireless"],"book-open":["read","library"],book:["read","dictionary","booklet","magazine","library"],bookmark:["read","clip","marker","tag"],box:["cube"],briefcase:["work","bag","baggage","folder"],calendar:["date"],camera:["photo"],cast:["chromecast","airplay"],"chevron-down":["expand"],"chevron-up":["collapse"],circle:["off","zero","record"],clipboard:["copy"],clock:["time","watch","alarm"],"cloud-drizzle":["weather","shower"],"cloud-lightning":["weather","bolt"],"cloud-rain":["weather"],"cloud-snow":["weather","blizzard"],cloud:["weather"],codepen:["logo"],codesandbox:["logo"],code:["source","programming"],coffee:["drink","cup","mug","tea","cafe","hot","beverage"],columns:["layout"],command:["keyboard","cmd","terminal","prompt"],compass:["navigation","safari","travel","direction"],copy:["clone","duplicate"],"corner-down-left":["arrow","return"],"corner-down-right":["arrow"],"corner-left-down":["arrow"],"corner-left-up":["arrow"],"corner-right-down":["arrow"],"corner-right-up":["arrow"],"corner-up-left":["arrow"],"corner-up-right":["arrow"],cpu:["processor","technology"],"credit-card":["purchase","payment","cc"],crop:["photo","image"],crosshair:["aim","target"],database:["storage","memory"],delete:["remove"],disc:["album","cd","dvd","music"],"dollar-sign":["currency","money","payment"],droplet:["water"],edit:["pencil","change"],"edit-2":["pencil","change"],"edit-3":["pencil","change"],eye:["view","watch"],"eye-off":["view","watch","hide","hidden"],"external-link":["outbound"],facebook:["logo","social"],"fast-forward":["music"],figma:["logo","design","tool"],"file-minus":["delete","remove","erase"],"file-plus":["add","create","new"],"file-text":["data","txt","pdf"],film:["movie","video"],filter:["funnel","hopper"],flag:["report"],"folder-minus":["directory"],"folder-plus":["directory"],folder:["directory"],framer:["logo","design","tool"],frown:["emoji","face","bad","sad","emotion"],gift:["present","box","birthday","party"],"git-branch":["code","version control"],"git-commit":["code","version control"],"git-merge":["code","version control"],"git-pull-request":["code","version control"],github:["logo","version control"],gitlab:["logo","version control"],globe:["world","browser","language","translate"],"hard-drive":["computer","server","memory","data"],hash:["hashtag","number","pound"],headphones:["music","audio","sound"],heart:["like","love","emotion"],"help-circle":["question mark"],hexagon:["shape","node.js","logo"],home:["house","living"],image:["picture"],inbox:["email"],instagram:["logo","camera"],key:["password","login","authentication","secure"],layers:["stack"],layout:["window","webpage"],"life-buoy":["help","life ring","support"],link:["chain","url"],"link-2":["chain","url"],linkedin:["logo","social media"],list:["options"],lock:["security","password","secure"],"log-in":["sign in","arrow","enter"],"log-out":["sign out","arrow","exit"],mail:["email","message"],"map-pin":["location","navigation","travel","marker"],map:["location","navigation","travel"],maximize:["fullscreen"],"maximize-2":["fullscreen","arrows","expand"],meh:["emoji","face","neutral","emotion"],menu:["bars","navigation","hamburger"],"message-circle":["comment","chat"],"message-square":["comment","chat"],"mic-off":["record","sound","mute"],mic:["record","sound","listen"],minimize:["exit fullscreen","close"],"minimize-2":["exit fullscreen","arrows","close"],minus:["subtract"],monitor:["tv","screen","display"],moon:["dark","night"],"more-horizontal":["ellipsis"],"more-vertical":["ellipsis"],"mouse-pointer":["arrow","cursor"],move:["arrows"],music:["note"],navigation:["location","travel"],"navigation-2":["location","travel"],octagon:["stop"],package:["box","container"],paperclip:["attachment"],pause:["music","stop"],"pause-circle":["music","audio","stop"],"pen-tool":["vector","drawing"],percent:["discount"],"phone-call":["ring"],"phone-forwarded":["call"],"phone-incoming":["call"],"phone-missed":["call"],"phone-off":["call","mute"],"phone-outgoing":["call"],phone:["call"],play:["music","start"],"pie-chart":["statistics","diagram"],"play-circle":["music","start"],plus:["add","new"],"plus-circle":["add","new"],"plus-square":["add","new"],pocket:["logo","save"],power:["on","off"],printer:["fax","office","device"],radio:["signal"],"refresh-cw":["synchronise","arrows"],"refresh-ccw":["arrows"],repeat:["loop","arrows"],rewind:["music"],"rotate-ccw":["arrow"],"rotate-cw":["arrow"],rss:["feed","subscribe"],save:["floppy disk"],scissors:["cut"],search:["find","magnifier","magnifying glass"],send:["message","mail","email","paper airplane","paper aeroplane"],settings:["cog","edit","gear","preferences"],"share-2":["network","connections"],shield:["security","secure"],"shield-off":["security","insecure"],"shopping-bag":["ecommerce","cart","purchase","store"],"shopping-cart":["ecommerce","cart","purchase","store"],shuffle:["music"],"skip-back":["music"],"skip-forward":["music"],slack:["logo"],slash:["ban","no"],sliders:["settings","controls"],smartphone:["cellphone","device"],smile:["emoji","face","happy","good","emotion"],speaker:["audio","music"],star:["bookmark","favorite","like"],"stop-circle":["media","music"],sun:["brightness","weather","light"],sunrise:["weather","time","morning","day"],sunset:["weather","time","evening","night"],tablet:["device"],tag:["label"],target:["logo","bullseye"],terminal:["code","command line","prompt"],thermometer:["temperature","celsius","fahrenheit","weather"],"thumbs-down":["dislike","bad","emotion"],"thumbs-up":["like","good","emotion"],"toggle-left":["on","off","switch"],"toggle-right":["on","off","switch"],tool:["settings","spanner"],trash:["garbage","delete","remove","bin"],"trash-2":["garbage","delete","remove","bin"],triangle:["delta"],truck:["delivery","van","shipping","transport","lorry"],tv:["television","stream"],twitch:["logo"],twitter:["logo","social"],type:["text"],umbrella:["rain","weather"],unlock:["security"],"user-check":["followed","subscribed"],"user-minus":["delete","remove","unfollow","unsubscribe"],"user-plus":["new","add","create","follow","subscribe"],"user-x":["delete","remove","unfollow","unsubscribe","unavailable"],user:["person","account"],users:["group"],"video-off":["camera","movie","film"],video:["camera","movie","film"],voicemail:["phone"],volume:["music","sound","mute"],"volume-1":["music","sound"],"volume-2":["music","sound"],"volume-x":["music","sound","mute"],watch:["clock","time"],"wifi-off":["disabled"],wifi:["connection","signal","wireless"],wind:["weather","air"],"x-circle":["cancel","close","delete","remove","times","clear"],"x-octagon":["delete","stop","alert","warning","times","clear"],"x-square":["cancel","close","delete","remove","times","clear"],x:["cancel","close","delete","remove","times","clear"],youtube:["logo","video","play"],"zap-off":["flash","camera","lightning"],zap:["flash","camera","lightning"],"zoom-in":["magnifying glass"],"zoom-out":["magnifying glass"]}},"./src/to-svg.js":function(s,n,e){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=e("./src/icons.js"),i=o(t);function o(l){return l&&l.__esModule?l:{default:l}}function a(l){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(console.warn("feather.toSvg() is deprecated. Please use feather.icons[name].toSvg() instead."),!l)throw new Error("The required `key` (icon name) parameter is missing.");if(!i.default[l])throw new Error("No icon matching '"+l+"'. See the complete list of icons at https://feathericons.com");return i.default[l].toSvg(r)}n.default=a},0:function(s,n,e){e("./node_modules/core-js/es/array/from.js"),s.exports=e("./src/index.js")}})})});var et={};$e(et,{default:()=>ae});module.exports=Ge(et);var w=require("obsidian");var Ye=Ke(xe()),O=require("obsidian");var W=s=>s.match(/\.MD$|\.md$/m)?s.split(/\.MD$|\.md$/m).slice(0,-1).join(".md"):s;var me=require("obsidian"),B=class s{static getBlock(n,e,t){var c,d;let i=e.getCursor("to"),o=n.metadataCache.getFileCache(t),a=o==null?void 0:o.sections;if(!a||a.length===0){console.log("error reading FileCache (empty file?)");return}let l=a.findIndex(p=>p.position.start.line>i.line),r=l>0?a[l-1]:a[a.length-1];return(r==null?void 0:r.type)=="list"&&(r=(d=(c=o.listItems)==null?void 0:c.find(p=>p.position.start.line<=i.line&&p.position.end.line>=i.line))!=null?d:r),r}static getIdOfBlock(n,e){let t=e.id;if(t)return t;let i=e.position.end,o={ch:i.col,line:i.line},a=Math.random().toString(36).substring(2,8),l=s.shouldInsertAfter(e)?` +var ze=Object.create;var Z=Object.defineProperty;var De=Object.getOwnPropertyDescriptor;var He=Object.getOwnPropertyNames;var Ne=Object.getPrototypeOf,We=Object.prototype.hasOwnProperty;var Be=(s,n)=>()=>(n||s((n={exports:{}}).exports,n),n.exports),$e=(s,n)=>{for(var e in n)Z(s,e,{get:n[e],enumerable:!0})},ge=(s,n,e,t)=>{if(n&&typeof n=="object"||typeof n=="function")for(let i of He(n))!We.call(s,i)&&i!==e&&Z(s,i,{get:()=>n[i],enumerable:!(t=De(n,i))||t.enumerable});return s};var Ke=(s,n,e)=>(e=s!=null?ze(Ne(s)):{},ge(n||!s||!s.__esModule?Z(e,"default",{value:s,enumerable:!0}):e,s)),Ge=s=>ge(Z({},"__esModule",{value:!0}),s);var xe=Be((N,se)=>{(function(n,e){typeof N=="object"&&typeof se=="object"?se.exports=e():typeof define=="function"&&define.amd?define([],e):typeof N=="object"?N.feather=e():n.feather=e()})(typeof self!="undefined"?self:N,function(){return function(s){var n={};function e(t){if(n[t])return n[t].exports;var i=n[t]={i:t,l:!1,exports:{}};return s[t].call(i.exports,i,i.exports,e),i.l=!0,i.exports}return e.m=s,e.c=n,e.d=function(t,i,o){e.o(t,i)||Object.defineProperty(t,i,{configurable:!1,enumerable:!0,get:o})},e.r=function(t){Object.defineProperty(t,"__esModule",{value:!0})},e.n=function(t){var i=t&&t.__esModule?function(){return t.default}:function(){return t};return e.d(i,"a",i),i},e.o=function(t,i){return Object.prototype.hasOwnProperty.call(t,i)},e.p="",e(e.s=0)}({"./dist/icons.json":function(s){s.exports={activity:'',airplay:'',"alert-circle":'',"alert-octagon":'',"alert-triangle":'',"align-center":'',"align-justify":'',"align-left":'',"align-right":'',anchor:'',aperture:'',archive:'',"arrow-down-circle":'',"arrow-down-left":'',"arrow-down-right":'',"arrow-down":'',"arrow-left-circle":'',"arrow-left":'',"arrow-right-circle":'',"arrow-right":'',"arrow-up-circle":'',"arrow-up-left":'',"arrow-up-right":'',"arrow-up":'',"at-sign":'',award:'',"bar-chart-2":'',"bar-chart":'',"battery-charging":'',battery:'',"bell-off":'',bell:'',bluetooth:'',bold:'',"book-open":'',book:'',bookmark:'',box:'',briefcase:'',calendar:'',"camera-off":'',camera:'',cast:'',"check-circle":'',"check-square":'',check:'',"chevron-down":'',"chevron-left":'',"chevron-right":'',"chevron-up":'',"chevrons-down":'',"chevrons-left":'',"chevrons-right":'',"chevrons-up":'',chrome:'',circle:'',clipboard:'',clock:'',"cloud-drizzle":'',"cloud-lightning":'',"cloud-off":'',"cloud-rain":'',"cloud-snow":'',cloud:'',code:'',codepen:'',codesandbox:'',coffee:'',columns:'',command:'',compass:'',copy:'',"corner-down-left":'',"corner-down-right":'',"corner-left-down":'',"corner-left-up":'',"corner-right-down":'',"corner-right-up":'',"corner-up-left":'',"corner-up-right":'',cpu:'',"credit-card":'',crop:'',crosshair:'',database:'',delete:'',disc:'',"divide-circle":'',"divide-square":'',divide:'',"dollar-sign":'',"download-cloud":'',download:'',dribbble:'',droplet:'',"edit-2":'',"edit-3":'',edit:'',"external-link":'',"eye-off":'',eye:'',facebook:'',"fast-forward":'',feather:'',figma:'',"file-minus":'',"file-plus":'',"file-text":'',file:'',film:'',filter:'',flag:'',"folder-minus":'',"folder-plus":'',folder:'',framer:'',frown:'',gift:'',"git-branch":'',"git-commit":'',"git-merge":'',"git-pull-request":'',github:'',gitlab:'',globe:'',grid:'',"hard-drive":'',hash:'',headphones:'',heart:'',"help-circle":'',hexagon:'',home:'',image:'',inbox:'',info:'',instagram:'',italic:'',key:'',layers:'',layout:'',"life-buoy":'',"link-2":'',link:'',linkedin:'',list:'',loader:'',lock:'',"log-in":'',"log-out":'',mail:'',"map-pin":'',map:'',"maximize-2":'',maximize:'',meh:'',menu:'',"message-circle":'',"message-square":'',"mic-off":'',mic:'',"minimize-2":'',minimize:'',"minus-circle":'',"minus-square":'',minus:'',monitor:'',moon:'',"more-horizontal":'',"more-vertical":'',"mouse-pointer":'',move:'',music:'',"navigation-2":'',navigation:'',octagon:'',package:'',paperclip:'',"pause-circle":'',pause:'',"pen-tool":'',percent:'',"phone-call":'',"phone-forwarded":'',"phone-incoming":'',"phone-missed":'',"phone-off":'',"phone-outgoing":'',phone:'',"pie-chart":'',"play-circle":'',play:'',"plus-circle":'',"plus-square":'',plus:'',pocket:'',power:'',printer:'',radio:'',"refresh-ccw":'',"refresh-cw":'',repeat:'',rewind:'',"rotate-ccw":'',"rotate-cw":'',rss:'',save:'',scissors:'',search:'',send:'',server:'',settings:'',"share-2":'',share:'',"shield-off":'',shield:'',"shopping-bag":'',"shopping-cart":'',shuffle:'',sidebar:'',"skip-back":'',"skip-forward":'',slack:'',slash:'',sliders:'',smartphone:'',smile:'',speaker:'',square:'',star:'',"stop-circle":'',sun:'',sunrise:'',sunset:'',table:'',tablet:'',tag:'',target:'',terminal:'',thermometer:'',"thumbs-down":'',"thumbs-up":'',"toggle-left":'',"toggle-right":'',tool:'',"trash-2":'',trash:'',trello:'',"trending-down":'',"trending-up":'',triangle:'',truck:'',tv:'',twitch:'',twitter:'',type:'',umbrella:'',underline:'',unlock:'',"upload-cloud":'',upload:'',"user-check":'',"user-minus":'',"user-plus":'',"user-x":'',user:'',users:'',"video-off":'',video:'',voicemail:'',"volume-1":'',"volume-2":'',"volume-x":'',volume:'',watch:'',"wifi-off":'',wifi:'',wind:'',"x-circle":'',"x-octagon":'',"x-square":'',x:'',youtube:'',"zap-off":'',zap:'',"zoom-in":'',"zoom-out":''}},"./node_modules/classnames/dedupe.js":function(s,n,e){var t,i;(function(){"use strict";var o=function(){function a(){}a.prototype=Object.create(null);function l(y,f){for(var x=f.length,m=0;m1?arguments[1]:void 0,f=y!==void 0,x=0,m=c(h),M,j,b,I;if(f&&(y=t(y,g>2?arguments[2]:void 0,2)),m!=null&&!(u==Array&&a(m)))for(I=m.call(h),j=new u;!(b=I.next()).done;x++)r(j,x,f?o(I,y,[b.value,x],!0):b.value);else for(M=l(h.length),j=new u(M);M>x;x++)r(j,x,f?y(h[x],x):h[x]);return j.length=x,j}},"./node_modules/core-js/internals/array-includes.js":function(s,n,e){var t=e("./node_modules/core-js/internals/to-indexed-object.js"),i=e("./node_modules/core-js/internals/to-length.js"),o=e("./node_modules/core-js/internals/to-absolute-index.js");s.exports=function(a){return function(l,r,c){var d=t(l),p=i(d.length),h=o(c,p),u;if(a&&r!=r){for(;p>h;)if(u=d[h++],u!=u)return!0}else for(;p>h;h++)if((a||h in d)&&d[h]===r)return a||h||0;return!a&&-1}}},"./node_modules/core-js/internals/bind-context.js":function(s,n,e){var t=e("./node_modules/core-js/internals/a-function.js");s.exports=function(i,o,a){if(t(i),o===void 0)return i;switch(a){case 0:return function(){return i.call(o)};case 1:return function(l){return i.call(o,l)};case 2:return function(l,r){return i.call(o,l,r)};case 3:return function(l,r,c){return i.call(o,l,r,c)}}return function(){return i.apply(o,arguments)}}},"./node_modules/core-js/internals/call-with-safe-iteration-closing.js":function(s,n,e){var t=e("./node_modules/core-js/internals/an-object.js");s.exports=function(i,o,a,l){try{return l?o(t(a)[0],a[1]):o(a)}catch(c){var r=i.return;throw r!==void 0&&t(r.call(i)),c}}},"./node_modules/core-js/internals/check-correctness-of-iteration.js":function(s,n,e){var t=e("./node_modules/core-js/internals/well-known-symbol.js"),i=t("iterator"),o=!1;try{var a=0,l={next:function(){return{done:!!a++}},return:function(){o=!0}};l[i]=function(){return this},Array.from(l,function(){throw 2})}catch(r){}s.exports=function(r,c){if(!c&&!o)return!1;var d=!1;try{var p={};p[i]=function(){return{next:function(){return{done:d=!0}}}},r(p)}catch(h){}return d}},"./node_modules/core-js/internals/classof-raw.js":function(s,n){var e={}.toString;s.exports=function(t){return e.call(t).slice(8,-1)}},"./node_modules/core-js/internals/classof.js":function(s,n,e){var t=e("./node_modules/core-js/internals/classof-raw.js"),i=e("./node_modules/core-js/internals/well-known-symbol.js"),o=i("toStringTag"),a=t(function(){return arguments}())=="Arguments",l=function(r,c){try{return r[c]}catch(d){}};s.exports=function(r){var c,d,p;return r===void 0?"Undefined":r===null?"Null":typeof(d=l(c=Object(r),o))=="string"?d:a?t(c):(p=t(c))=="Object"&&typeof c.callee=="function"?"Arguments":p}},"./node_modules/core-js/internals/copy-constructor-properties.js":function(s,n,e){var t=e("./node_modules/core-js/internals/has.js"),i=e("./node_modules/core-js/internals/own-keys.js"),o=e("./node_modules/core-js/internals/object-get-own-property-descriptor.js"),a=e("./node_modules/core-js/internals/object-define-property.js");s.exports=function(l,r){for(var c=i(r),d=a.f,p=o.f,h=0;h",M="java"+x+":",j;for(g.style.display="none",l.appendChild(g),g.src=String(M),j=g.contentWindow.document,j.open(),j.write(f+x+m+"document.F=Object"+f+"/"+x+m),j.close(),u=j.F;y--;)delete u[p][o[y]];return u()};s.exports=Object.create||function(y,f){var x;return y!==null?(h[p]=t(y),x=new h,h[p]=null,x[d]=y):x=u(),f===void 0?x:i(x,f)},a[d]=!0},"./node_modules/core-js/internals/object-define-properties.js":function(s,n,e){var t=e("./node_modules/core-js/internals/descriptors.js"),i=e("./node_modules/core-js/internals/object-define-property.js"),o=e("./node_modules/core-js/internals/an-object.js"),a=e("./node_modules/core-js/internals/object-keys.js");s.exports=t?Object.defineProperties:function(r,c){o(r);for(var d=a(c),p=d.length,h=0,u;p>h;)i.f(r,u=d[h++],c[u]);return r}},"./node_modules/core-js/internals/object-define-property.js":function(s,n,e){var t=e("./node_modules/core-js/internals/descriptors.js"),i=e("./node_modules/core-js/internals/ie8-dom-define.js"),o=e("./node_modules/core-js/internals/an-object.js"),a=e("./node_modules/core-js/internals/to-primitive.js"),l=Object.defineProperty;n.f=t?l:function(c,d,p){if(o(c),d=a(d,!0),o(p),i)try{return l(c,d,p)}catch(h){}if("get"in p||"set"in p)throw TypeError("Accessors not supported");return"value"in p&&(c[d]=p.value),c}},"./node_modules/core-js/internals/object-get-own-property-descriptor.js":function(s,n,e){var t=e("./node_modules/core-js/internals/descriptors.js"),i=e("./node_modules/core-js/internals/object-property-is-enumerable.js"),o=e("./node_modules/core-js/internals/create-property-descriptor.js"),a=e("./node_modules/core-js/internals/to-indexed-object.js"),l=e("./node_modules/core-js/internals/to-primitive.js"),r=e("./node_modules/core-js/internals/has.js"),c=e("./node_modules/core-js/internals/ie8-dom-define.js"),d=Object.getOwnPropertyDescriptor;n.f=t?d:function(h,u){if(h=a(h),u=l(u,!0),c)try{return d(h,u)}catch(g){}if(r(h,u))return o(!i.f.call(h,u),h[u])}},"./node_modules/core-js/internals/object-get-own-property-names.js":function(s,n,e){var t=e("./node_modules/core-js/internals/object-keys-internal.js"),i=e("./node_modules/core-js/internals/enum-bug-keys.js"),o=i.concat("length","prototype");n.f=Object.getOwnPropertyNames||function(l){return t(l,o)}},"./node_modules/core-js/internals/object-get-own-property-symbols.js":function(s,n){n.f=Object.getOwnPropertySymbols},"./node_modules/core-js/internals/object-get-prototype-of.js":function(s,n,e){var t=e("./node_modules/core-js/internals/has.js"),i=e("./node_modules/core-js/internals/to-object.js"),o=e("./node_modules/core-js/internals/shared-key.js"),a=e("./node_modules/core-js/internals/correct-prototype-getter.js"),l=o("IE_PROTO"),r=Object.prototype;s.exports=a?Object.getPrototypeOf:function(c){return c=i(c),t(c,l)?c[l]:typeof c.constructor=="function"&&c instanceof c.constructor?c.constructor.prototype:c instanceof Object?r:null}},"./node_modules/core-js/internals/object-keys-internal.js":function(s,n,e){var t=e("./node_modules/core-js/internals/has.js"),i=e("./node_modules/core-js/internals/to-indexed-object.js"),o=e("./node_modules/core-js/internals/array-includes.js"),a=e("./node_modules/core-js/internals/hidden-keys.js"),l=o(!1);s.exports=function(r,c){var d=i(r),p=0,h=[],u;for(u in d)!t(a,u)&&t(d,u)&&h.push(u);for(;c.length>p;)t(d,u=c[p++])&&(~l(h,u)||h.push(u));return h}},"./node_modules/core-js/internals/object-keys.js":function(s,n,e){var t=e("./node_modules/core-js/internals/object-keys-internal.js"),i=e("./node_modules/core-js/internals/enum-bug-keys.js");s.exports=Object.keys||function(a){return t(a,i)}},"./node_modules/core-js/internals/object-property-is-enumerable.js":function(s,n,e){"use strict";var t={}.propertyIsEnumerable,i=Object.getOwnPropertyDescriptor,o=i&&!t.call({1:2},1);n.f=o?function(l){var r=i(this,l);return!!r&&r.enumerable}:t},"./node_modules/core-js/internals/object-set-prototype-of.js":function(s,n,e){var t=e("./node_modules/core-js/internals/validate-set-prototype-of-arguments.js");s.exports=Object.setPrototypeOf||("__proto__"in{}?function(){var i=!1,o={},a;try{a=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set,a.call(o,[]),i=o instanceof Array}catch(l){}return function(r,c){return t(r,c),i?a.call(r,c):r.__proto__=c,r}}():void 0)},"./node_modules/core-js/internals/own-keys.js":function(s,n,e){var t=e("./node_modules/core-js/internals/global.js"),i=e("./node_modules/core-js/internals/object-get-own-property-names.js"),o=e("./node_modules/core-js/internals/object-get-own-property-symbols.js"),a=e("./node_modules/core-js/internals/an-object.js"),l=t.Reflect;s.exports=l&&l.ownKeys||function(c){var d=i.f(a(c)),p=o.f;return p?d.concat(p(c)):d}},"./node_modules/core-js/internals/path.js":function(s,n,e){s.exports=e("./node_modules/core-js/internals/global.js")},"./node_modules/core-js/internals/redefine.js":function(s,n,e){var t=e("./node_modules/core-js/internals/global.js"),i=e("./node_modules/core-js/internals/shared.js"),o=e("./node_modules/core-js/internals/hide.js"),a=e("./node_modules/core-js/internals/has.js"),l=e("./node_modules/core-js/internals/set-global.js"),r=e("./node_modules/core-js/internals/function-to-string.js"),c=e("./node_modules/core-js/internals/internal-state.js"),d=c.get,p=c.enforce,h=String(r).split("toString");i("inspectSource",function(u){return r.call(u)}),(s.exports=function(u,g,y,f){var x=f?!!f.unsafe:!1,m=f?!!f.enumerable:!1,M=f?!!f.noTargetGet:!1;if(typeof y=="function"&&(typeof g=="string"&&!a(y,"name")&&o(y,"name",g),p(y).source=h.join(typeof g=="string"?g:"")),u===t){m?u[g]=y:l(g,y);return}else x?!M&&u[g]&&(m=!0):delete u[g];m?u[g]=y:o(u,g,y)})(Function.prototype,"toString",function(){return typeof this=="function"&&d(this).source||r.call(this)})},"./node_modules/core-js/internals/require-object-coercible.js":function(s,n){s.exports=function(e){if(e==null)throw TypeError("Can't call method on "+e);return e}},"./node_modules/core-js/internals/set-global.js":function(s,n,e){var t=e("./node_modules/core-js/internals/global.js"),i=e("./node_modules/core-js/internals/hide.js");s.exports=function(o,a){try{i(t,o,a)}catch(l){t[o]=a}return a}},"./node_modules/core-js/internals/set-to-string-tag.js":function(s,n,e){var t=e("./node_modules/core-js/internals/object-define-property.js").f,i=e("./node_modules/core-js/internals/has.js"),o=e("./node_modules/core-js/internals/well-known-symbol.js"),a=o("toStringTag");s.exports=function(l,r,c){l&&!i(l=c?l:l.prototype,a)&&t(l,a,{configurable:!0,value:r})}},"./node_modules/core-js/internals/shared-key.js":function(s,n,e){var t=e("./node_modules/core-js/internals/shared.js"),i=e("./node_modules/core-js/internals/uid.js"),o=t("keys");s.exports=function(a){return o[a]||(o[a]=i(a))}},"./node_modules/core-js/internals/shared.js":function(s,n,e){var t=e("./node_modules/core-js/internals/global.js"),i=e("./node_modules/core-js/internals/set-global.js"),o=e("./node_modules/core-js/internals/is-pure.js"),a="__core-js_shared__",l=t[a]||i(a,{});(s.exports=function(r,c){return l[r]||(l[r]=c!==void 0?c:{})})("versions",[]).push({version:"3.1.3",mode:o?"pure":"global",copyright:"\xA9 2019 Denis Pushkarev (zloirock.ru)"})},"./node_modules/core-js/internals/string-at.js":function(s,n,e){var t=e("./node_modules/core-js/internals/to-integer.js"),i=e("./node_modules/core-js/internals/require-object-coercible.js");s.exports=function(o,a,l){var r=String(i(o)),c=t(a),d=r.length,p,h;return c<0||c>=d?l?"":void 0:(p=r.charCodeAt(c),p<55296||p>56319||c+1===d||(h=r.charCodeAt(c+1))<56320||h>57343?l?r.charAt(c):p:l?r.slice(c,c+2):(p-55296<<10)+(h-56320)+65536)}},"./node_modules/core-js/internals/to-absolute-index.js":function(s,n,e){var t=e("./node_modules/core-js/internals/to-integer.js"),i=Math.max,o=Math.min;s.exports=function(a,l){var r=t(a);return r<0?i(r+l,0):o(r,l)}},"./node_modules/core-js/internals/to-indexed-object.js":function(s,n,e){var t=e("./node_modules/core-js/internals/indexed-object.js"),i=e("./node_modules/core-js/internals/require-object-coercible.js");s.exports=function(o){return t(i(o))}},"./node_modules/core-js/internals/to-integer.js":function(s,n){var e=Math.ceil,t=Math.floor;s.exports=function(i){return isNaN(i=+i)?0:(i>0?t:e)(i)}},"./node_modules/core-js/internals/to-length.js":function(s,n,e){var t=e("./node_modules/core-js/internals/to-integer.js"),i=Math.min;s.exports=function(o){return o>0?i(t(o),9007199254740991):0}},"./node_modules/core-js/internals/to-object.js":function(s,n,e){var t=e("./node_modules/core-js/internals/require-object-coercible.js");s.exports=function(i){return Object(t(i))}},"./node_modules/core-js/internals/to-primitive.js":function(s,n,e){var t=e("./node_modules/core-js/internals/is-object.js");s.exports=function(i,o){if(!t(i))return i;var a,l;if(o&&typeof(a=i.toString)=="function"&&!t(l=a.call(i))||typeof(a=i.valueOf)=="function"&&!t(l=a.call(i))||!o&&typeof(a=i.toString)=="function"&&!t(l=a.call(i)))return l;throw TypeError("Can't convert object to primitive value")}},"./node_modules/core-js/internals/uid.js":function(s,n){var e=0,t=Math.random();s.exports=function(i){return"Symbol(".concat(i===void 0?"":i,")_",(++e+t).toString(36))}},"./node_modules/core-js/internals/validate-set-prototype-of-arguments.js":function(s,n,e){var t=e("./node_modules/core-js/internals/is-object.js"),i=e("./node_modules/core-js/internals/an-object.js");s.exports=function(o,a){if(i(o),!t(a)&&a!==null)throw TypeError("Can't set "+String(a)+" as a prototype")}},"./node_modules/core-js/internals/well-known-symbol.js":function(s,n,e){var t=e("./node_modules/core-js/internals/global.js"),i=e("./node_modules/core-js/internals/shared.js"),o=e("./node_modules/core-js/internals/uid.js"),a=e("./node_modules/core-js/internals/native-symbol.js"),l=t.Symbol,r=i("wks");s.exports=function(c){return r[c]||(r[c]=a&&l[c]||(a?l:o)("Symbol."+c))}},"./node_modules/core-js/modules/es.array.from.js":function(s,n,e){var t=e("./node_modules/core-js/internals/export.js"),i=e("./node_modules/core-js/internals/array-from.js"),o=e("./node_modules/core-js/internals/check-correctness-of-iteration.js"),a=!o(function(l){Array.from(l)});t({target:"Array",stat:!0,forced:a},{from:i})},"./node_modules/core-js/modules/es.string.iterator.js":function(s,n,e){"use strict";var t=e("./node_modules/core-js/internals/string-at.js"),i=e("./node_modules/core-js/internals/internal-state.js"),o=e("./node_modules/core-js/internals/define-iterator.js"),a="String Iterator",l=i.set,r=i.getterFor(a);o(String,"String",function(c){l(this,{type:a,string:String(c),index:0})},function(){var d=r(this),p=d.string,h=d.index,u;return h>=p.length?{value:void 0,done:!0}:(u=t(p,h,!0),d.index+=u.length,{value:u,done:!1})})},"./node_modules/webpack/buildin/global.js":function(s,n){var e;e=function(){return this}();try{e=e||Function("return this")()||(0,eval)("this")}catch(t){typeof window=="object"&&(e=window)}s.exports=e},"./src/default-attrs.json":function(s){s.exports={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor","stroke-width":2,"stroke-linecap":"round","stroke-linejoin":"round"}},"./src/icon.js":function(s,n,e){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=Object.assign||function(u){for(var g=1;g2&&arguments[2]!==void 0?arguments[2]:[];d(this,u),this.name=g,this.contents=y,this.tags=f,this.attrs=t({},r.default,{class:"feather feather-"+g})}return i(u,[{key:"toSvg",value:function(){var y=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},f=t({},this.attrs,y,{class:(0,a.default)(this.attrs.class,y.class)});return""+this.contents+""}},{key:"toString",value:function(){return this.contents}}]),u}();function h(u){return Object.keys(u).map(function(g){return g+'="'+u[g]+'"'}).join(" ")}n.default=p},"./src/icons.js":function(s,n,e){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=e("./src/icon.js"),i=c(t),o=e("./dist/icons.json"),a=c(o),l=e("./src/tags.json"),r=c(l);function c(d){return d&&d.__esModule?d:{default:d}}n.default=Object.keys(a.default).map(function(d){return new i.default(d,a.default[d],r.default[d])}).reduce(function(d,p){return d[p.name]=p,d},{})},"./src/index.js":function(s,n,e){"use strict";var t=e("./src/icons.js"),i=c(t),o=e("./src/to-svg.js"),a=c(o),l=e("./src/replace.js"),r=c(l);function c(d){return d&&d.__esModule?d:{default:d}}s.exports={icons:i.default,toSvg:a.default,replace:r.default}},"./src/replace.js":function(s,n,e){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=Object.assign||function(h){for(var u=1;u0&&arguments[0]!==void 0?arguments[0]:{};if(typeof document=="undefined")throw new Error("`feather.replace()` only works in a browser environment.");var u=document.querySelectorAll("[data-feather]");Array.from(u).forEach(function(g){return d(g,h)})}function d(h){var u=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},g=p(h),y=g["data-feather"];if(delete g["data-feather"],l.default[y]===void 0){console.warn("feather: '"+y+"' is not a valid icon");return}var f=l.default[y].toSvg(t({},u,g,{class:(0,o.default)(u.class,g.class)})),x=new DOMParser().parseFromString(f,"image/svg+xml"),m=x.querySelector("svg");h.parentNode.replaceChild(m,h)}function p(h){return Array.from(h.attributes).reduce(function(u,g){return u[g.name]=g.value,u},{})}n.default=c},"./src/tags.json":function(s){s.exports={activity:["pulse","health","action","motion"],airplay:["stream","cast","mirroring"],"alert-circle":["warning","alert","danger"],"alert-octagon":["warning","alert","danger"],"alert-triangle":["warning","alert","danger"],"align-center":["text alignment","center"],"align-justify":["text alignment","justified"],"align-left":["text alignment","left"],"align-right":["text alignment","right"],anchor:[],archive:["index","box"],"at-sign":["mention","at","email","message"],award:["achievement","badge"],aperture:["camera","photo"],"bar-chart":["statistics","diagram","graph"],"bar-chart-2":["statistics","diagram","graph"],battery:["power","electricity"],"battery-charging":["power","electricity"],bell:["alarm","notification","sound"],"bell-off":["alarm","notification","silent"],bluetooth:["wireless"],"book-open":["read","library"],book:["read","dictionary","booklet","magazine","library"],bookmark:["read","clip","marker","tag"],box:["cube"],briefcase:["work","bag","baggage","folder"],calendar:["date"],camera:["photo"],cast:["chromecast","airplay"],"chevron-down":["expand"],"chevron-up":["collapse"],circle:["off","zero","record"],clipboard:["copy"],clock:["time","watch","alarm"],"cloud-drizzle":["weather","shower"],"cloud-lightning":["weather","bolt"],"cloud-rain":["weather"],"cloud-snow":["weather","blizzard"],cloud:["weather"],codepen:["logo"],codesandbox:["logo"],code:["source","programming"],coffee:["drink","cup","mug","tea","cafe","hot","beverage"],columns:["layout"],command:["keyboard","cmd","terminal","prompt"],compass:["navigation","safari","travel","direction"],copy:["clone","duplicate"],"corner-down-left":["arrow","return"],"corner-down-right":["arrow"],"corner-left-down":["arrow"],"corner-left-up":["arrow"],"corner-right-down":["arrow"],"corner-right-up":["arrow"],"corner-up-left":["arrow"],"corner-up-right":["arrow"],cpu:["processor","technology"],"credit-card":["purchase","payment","cc"],crop:["photo","image"],crosshair:["aim","target"],database:["storage","memory"],delete:["remove"],disc:["album","cd","dvd","music"],"dollar-sign":["currency","money","payment"],droplet:["water"],edit:["pencil","change"],"edit-2":["pencil","change"],"edit-3":["pencil","change"],eye:["view","watch"],"eye-off":["view","watch","hide","hidden"],"external-link":["outbound"],facebook:["logo","social"],"fast-forward":["music"],figma:["logo","design","tool"],"file-minus":["delete","remove","erase"],"file-plus":["add","create","new"],"file-text":["data","txt","pdf"],film:["movie","video"],filter:["funnel","hopper"],flag:["report"],"folder-minus":["directory"],"folder-plus":["directory"],folder:["directory"],framer:["logo","design","tool"],frown:["emoji","face","bad","sad","emotion"],gift:["present","box","birthday","party"],"git-branch":["code","version control"],"git-commit":["code","version control"],"git-merge":["code","version control"],"git-pull-request":["code","version control"],github:["logo","version control"],gitlab:["logo","version control"],globe:["world","browser","language","translate"],"hard-drive":["computer","server","memory","data"],hash:["hashtag","number","pound"],headphones:["music","audio","sound"],heart:["like","love","emotion"],"help-circle":["question mark"],hexagon:["shape","node.js","logo"],home:["house","living"],image:["picture"],inbox:["email"],instagram:["logo","camera"],key:["password","login","authentication","secure"],layers:["stack"],layout:["window","webpage"],"life-buoy":["help","life ring","support"],link:["chain","url"],"link-2":["chain","url"],linkedin:["logo","social media"],list:["options"],lock:["security","password","secure"],"log-in":["sign in","arrow","enter"],"log-out":["sign out","arrow","exit"],mail:["email","message"],"map-pin":["location","navigation","travel","marker"],map:["location","navigation","travel"],maximize:["fullscreen"],"maximize-2":["fullscreen","arrows","expand"],meh:["emoji","face","neutral","emotion"],menu:["bars","navigation","hamburger"],"message-circle":["comment","chat"],"message-square":["comment","chat"],"mic-off":["record","sound","mute"],mic:["record","sound","listen"],minimize:["exit fullscreen","close"],"minimize-2":["exit fullscreen","arrows","close"],minus:["subtract"],monitor:["tv","screen","display"],moon:["dark","night"],"more-horizontal":["ellipsis"],"more-vertical":["ellipsis"],"mouse-pointer":["arrow","cursor"],move:["arrows"],music:["note"],navigation:["location","travel"],"navigation-2":["location","travel"],octagon:["stop"],package:["box","container"],paperclip:["attachment"],pause:["music","stop"],"pause-circle":["music","audio","stop"],"pen-tool":["vector","drawing"],percent:["discount"],"phone-call":["ring"],"phone-forwarded":["call"],"phone-incoming":["call"],"phone-missed":["call"],"phone-off":["call","mute"],"phone-outgoing":["call"],phone:["call"],play:["music","start"],"pie-chart":["statistics","diagram"],"play-circle":["music","start"],plus:["add","new"],"plus-circle":["add","new"],"plus-square":["add","new"],pocket:["logo","save"],power:["on","off"],printer:["fax","office","device"],radio:["signal"],"refresh-cw":["synchronise","arrows"],"refresh-ccw":["arrows"],repeat:["loop","arrows"],rewind:["music"],"rotate-ccw":["arrow"],"rotate-cw":["arrow"],rss:["feed","subscribe"],save:["floppy disk"],scissors:["cut"],search:["find","magnifier","magnifying glass"],send:["message","mail","email","paper airplane","paper aeroplane"],settings:["cog","edit","gear","preferences"],"share-2":["network","connections"],shield:["security","secure"],"shield-off":["security","insecure"],"shopping-bag":["ecommerce","cart","purchase","store"],"shopping-cart":["ecommerce","cart","purchase","store"],shuffle:["music"],"skip-back":["music"],"skip-forward":["music"],slack:["logo"],slash:["ban","no"],sliders:["settings","controls"],smartphone:["cellphone","device"],smile:["emoji","face","happy","good","emotion"],speaker:["audio","music"],star:["bookmark","favorite","like"],"stop-circle":["media","music"],sun:["brightness","weather","light"],sunrise:["weather","time","morning","day"],sunset:["weather","time","evening","night"],tablet:["device"],tag:["label"],target:["logo","bullseye"],terminal:["code","command line","prompt"],thermometer:["temperature","celsius","fahrenheit","weather"],"thumbs-down":["dislike","bad","emotion"],"thumbs-up":["like","good","emotion"],"toggle-left":["on","off","switch"],"toggle-right":["on","off","switch"],tool:["settings","spanner"],trash:["garbage","delete","remove","bin"],"trash-2":["garbage","delete","remove","bin"],triangle:["delta"],truck:["delivery","van","shipping","transport","lorry"],tv:["television","stream"],twitch:["logo"],twitter:["logo","social"],type:["text"],umbrella:["rain","weather"],unlock:["security"],"user-check":["followed","subscribed"],"user-minus":["delete","remove","unfollow","unsubscribe"],"user-plus":["new","add","create","follow","subscribe"],"user-x":["delete","remove","unfollow","unsubscribe","unavailable"],user:["person","account"],users:["group"],"video-off":["camera","movie","film"],video:["camera","movie","film"],voicemail:["phone"],volume:["music","sound","mute"],"volume-1":["music","sound"],"volume-2":["music","sound"],"volume-x":["music","sound","mute"],watch:["clock","time"],"wifi-off":["disabled"],wifi:["connection","signal","wireless"],wind:["weather","air"],"x-circle":["cancel","close","delete","remove","times","clear"],"x-octagon":["delete","stop","alert","warning","times","clear"],"x-square":["cancel","close","delete","remove","times","clear"],x:["cancel","close","delete","remove","times","clear"],youtube:["logo","video","play"],"zap-off":["flash","camera","lightning"],zap:["flash","camera","lightning"],"zoom-in":["magnifying glass"],"zoom-out":["magnifying glass"]}},"./src/to-svg.js":function(s,n,e){"use strict";Object.defineProperty(n,"__esModule",{value:!0});var t=e("./src/icons.js"),i=o(t);function o(l){return l&&l.__esModule?l:{default:l}}function a(l){var r=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{};if(console.warn("feather.toSvg() is deprecated. Please use feather.icons[name].toSvg() instead."),!l)throw new Error("The required `key` (icon name) parameter is missing.");if(!i.default[l])throw new Error("No icon matching '"+l+"'. See the complete list of icons at https://feathericons.com");return i.default[l].toSvg(r)}n.default=a},0:function(s,n,e){e("./node_modules/core-js/es/array/from.js"),s.exports=e("./src/index.js")}})})});var et={};$e(et,{default:()=>ae});module.exports=Ge(et);var w=require("obsidian");var Ye=Ke(xe()),O=require("obsidian");var W=s=>s.match(/\.MD$|\.md$/m)?s.split(/\.MD$|\.md$/m).slice(0,-1).join(".md"):s;var me=require("obsidian"),B=class s{static getBlock(n,e,t){var c,d;let i=e.getCursor("to"),o=n.metadataCache.getFileCache(t),a=o==null?void 0:o.sections;if(!a||a.length===0){console.log("error reading FileCache (empty file?)");return}let l=a.findIndex(p=>p.position.start.line>i.line),r=l>0?a[l-1]:a[a.length-1];return(r==null?void 0:r.type)=="list"&&(r=(d=(c=o.listItems)==null?void 0:c.find(p=>p.position.start.line<=i.line&&p.position.end.line>=i.line))!=null?d:r),r}static getIdOfBlock(n,e){let t=e.id;if(t)return t;let i=e.position.end,o={ch:i.col,line:i.line},a=Math.random().toString(36).substring(2,8),l=s.shouldInsertAfter(e)?` -`:" ";return n.replaceRange(`${l}^${a}`,o),a}static shouldInsertAfter(n){if(n.type)return["blockquote","code","table","heading","comment","footnoteDefinition"].includes(n.type)}static getBlockId(n){let e=n.workspace.getActiveViewOfType(me.MarkdownView);if(e){let t=e.editor,i=e.file,o=this.getBlock(n,t,i);if(o)return this.getIdOfBlock(t,o)}}};var ve={openFileOnWrite:!0,openDailyInNewPane:!1,openFileOnWriteInNewPane:!1,openFileWithoutWriteInNewPane:!1,idField:"id",useUID:!1,addFilepathWhenUsingUID:!1,allowEval:!1,includeVaultName:!0,vaultParam:"name",linkFormats:[{name:"Markdown",format:"[{{name}}]({{uri}})"}]};var we=require("obsidian");function je(s){let n=s.internalPlugins.plugins["daily-notes"];if(n&&n.enabled)return!0}function Ze(...s){let n=[];for(let t=0,i=s.length;t{this.file?this.plugin.tools.copyURI({filepath:this.file,data:e,mode:i},this.withFormat,this.app.vault.getFileByPath(this.file)):this.plugin.tools.copyURI({daily:"true",data:e,mode:i},this.withFormat,void 0)}})}return t}renderSuggestion(e,t){t.innerText=e.display}onChooseSuggestion(e,t){e.func()}};var Ie=require("obsidian"),R=class extends Ie.FuzzySuggestModal{constructor(e,t,i=!0){super(e.app);this.placeHolder=t;this.allowNoFile=i;this.plugin=e,this.setPlaceholder(this.placeHolder)}getItems(){let e=[];this.allowNoFile&&e.push({display:"",source:void 0});let t=this.app.workspace.getActiveFile();return t&&e.push({display:"",source:t.path}),[...e,...this.app.vault.getFiles().map(i=>({display:i.path,source:i.path}))]}getItemText(e){return e.display}onChooseItem(e,t){}};var Ae=require("obsidian");function re(s){return s.viewmode?{state:{mode:s.viewmode,source:s.viewmode=="source"}}:void 0}function z(s){return navigator.clipboard.writeText(s)}function J(s,n){var o;let e=(o=n.parent)==null?void 0:o.path,t=e==="/"?"":e,i=n.name;for(let a=1;a<100;a++){let l=W(i),r=t+(t==""?"":"/")+l+` ${a}.md`;if(!(s.vault.getAbstractFileByPath(r)!==null))return r}}function Fe(s,n){let e=new URL(s.vault.getResourcePath(n));return e.host="localhosthostlocal",e.protocol="file",e.search="",e.pathname=decodeURIComponent(e.pathname),e.toString().replace("/localhosthostlocal/","/")}function ce(s,n,e){var a,l;let t=s.metadataCache.getFileCache(n),i=t.sections,o=(a=t.headings)==null?void 0:a.find(r=>r.heading===e);if(o){let r=i.findIndex(u=>u.type==="heading"&&u.position.start.line===o.position.start.line),c=i.slice(r+1),d=c==null?void 0:c.findIndex(u=>u.type==="heading");return{lastLine:((l=c[(d!==-1?d:c.length)-1])!=null?l:i[r]).position.end.line+1,firstLine:i[r].position.end.line+1}}else new Ae.Notice("Can't find heading")}var U=class extends Error{constructor(e,t,i){super(e);this.name="KeyPathError",this.errKey=t,i&&(this.cause=i)}};function Ce(s){let{originalObject:n,key:e,data:t}=s;if(e.startsWith("[")&&e.endsWith("]")){let i=e.substring(1,e.length-1).split(","),o=n;for(let a=0;ap==l)),r===void 0)throw new U(`Failed to resolve or convert "${l}" to a valid array index.`,l);r=Math.min(r,o.length),r=Math.max(r,-1)}if(a==i.length-1){o instanceof Array?r===-1?o.unshift(t):o[r]=t:o[l]=t;return}let d=!Number.isNaN(parseInt(i[a+1]))?[]:{};try{o instanceof Array?r>=o.length?(o.push(d),o=d):r===-1?(o.unshift(d),o=d):o=o[Math.max(r,0)]:o[l]===void 0?(o[l]=d,o=d):o=o[l]}catch(p){throw new U(`Failed to resolve "${l}" as a valid object key`,l,p)}}}else n[e]=t}function Pe(s){let{obj:n,key:e}=s;if(e.startsWith("[")&&e.endsWith("]")){let t=e.substring(1,e.length-1).split(","),i=n;for(let o of t)if(i instanceof Array){let a=parseInt(o);Number.isNaN(a)?i=i.find(l=>l==o):i=i[a]}else if(i&&typeof i=="object")i=i[o];else return;return i}else return n?n[e]:void 0}var $=class{constructor(n){this.plugin=n;this.app=this.plugin.app}get tools(){return this.plugin.tools}handlePluginManagement(n){if(n["enable-plugin"]){let e=n["enable-plugin"];e in this.app.plugins.manifests&&!this.app.plugins.getPlugin(e)?(this.app.plugins.enablePluginAndSave(e),new v.Notice(`Enabled ${e}`)):this.app.internalPlugins.plugins[e]&&(this.app.internalPlugins.plugins[e].enable(!0),new v.Notice(`Enabled ${e}`))}else if(n["disable-plugin"]){let e=n["disable-plugin"];this.app.plugins.getPlugin(e)?(this.app.plugins.disablePluginAndSave(e),new v.Notice(`Disabled ${e}`)):this.app.internalPlugins.plugins[e]&&(this.app.internalPlugins.plugins[e].disable(!0),new v.Notice(`Disabled ${e}`))}}handleFrontmatterKey(n){var o;let e=n.frontmatterkey,t=this.app.vault.getAbstractFileByPath((o=n.filepath)!=null?o:this.app.workspace.getActiveFile().path);if(!(t instanceof v.TFile))return;let i=this.app.metadataCache.getFileCache(t).frontmatter;if(n.data){let a=n.data;try{a=JSON.parse(a)}catch(l){try{a=`"${a}"`,a=JSON.parse(a)}catch(r){new v.Notice("Failed to parse data, check console for more details"),console.error(r);return}}this.app.fileManager.processFrontMatter(t,l=>{try{Ce({originalObject:l,key:e,data:a})}catch(r){console.error(r),r instanceof U?new v.Notice(`Invalid key in path. -${r.message}`):new v.Notice("Failed to update frontmatter, check console for more details")}});return}z(Pe({obj:i,key:e}))}handleWorkspace(n){let e=this.app.internalPlugins.getEnabledPluginById("workspaces");if(!e)new v.Notice("Workspaces plugin is not enabled"),this.plugin.failure(n);else{if(n.saveworkspace=="true"){let t=e.activeWorkspace;e.saveWorkspace(t),new v.Notice(`Saved current workspace to ${t}`)}n.clipboard&&n.clipboard!="false"?this.tools.copyURI({workspace:e.activeWorkspace}):n.workspace!=null&&e.loadWorkspace(n.workspace),this.plugin.success(n)}}async handleCommand(n){if(n.filepath)if(n.mode){if(n.mode=="new"){let t=this.app.metadataCache.getFirstLinkpathDest(n.filepath,"/");t instanceof v.TFile&&(n.filepath=J(this.app,t))}await this.plugin.open({file:n.filepath,mode:"source",parameters:n});let e=this.app.workspace.getActiveViewOfType(v.MarkdownView);if(e){let t=e.editor,i=t.getValue();if(n.mode==="append"){t.setValue(i+` +`:" ";return n.replaceRange(`${l}^${a}`,o),a}static shouldInsertAfter(n){if(n.type)return["blockquote","code","table","heading","comment","footnoteDefinition"].includes(n.type)}static getBlockId(n){let e=n.workspace.getActiveViewOfType(me.MarkdownView);if(e){let t=e.editor,i=e.file,o=this.getBlock(n,t,i);if(o)return this.getIdOfBlock(t,o)}}};var ve={openFileOnWrite:!0,openDailyInNewPane:!1,openFileOnWriteInNewPane:!1,openFileWithoutWriteInNewPane:!1,idField:"id",useUID:!1,addFilepathWhenUsingUID:!1,allowEval:!1,includeVaultName:!0,vaultParam:"name",linkFormats:[{name:"Markdown",format:"[{{name}}]({{uri}})"}]};var we=require("obsidian");function je(s){let n=s.internalPlugins.plugins["daily-notes"];if(n&&n.enabled)return!0}function Ze(...s){let n=[];for(let t=0,i=s.length;t{this.file?this.plugin.tools.copyURI({filepath:this.file,data:e,mode:i},this.withFormat,this.app.vault.getFileByPath(this.file)):this.plugin.tools.copyURI({daily:"true",data:e,mode:i},this.withFormat,void 0)}})}return t}renderSuggestion(e,t){t.innerText=e.display}onChooseSuggestion(e,t){e.func()}};var Ie=require("obsidian"),R=class extends Ie.FuzzySuggestModal{constructor(e,t,i=!0){super(e.app);this.placeHolder=t;this.allowNoFile=i;this.plugin=e,this.setPlaceholder(this.placeHolder)}getItems(){let e=[];this.allowNoFile&&e.push({display:"",source:void 0});let t=this.app.workspace.getActiveFile();return t&&e.push({display:"",source:t.path}),[...e,...this.app.vault.getFiles().map(i=>({display:i.path,source:i.path}))]}getItemText(e){return e.display}onChooseItem(e,t){}};var Ae=require("obsidian");function re(s){return s.viewmode?{state:{mode:s.viewmode,source:s.viewmode=="source"}}:void 0}function D(s){return navigator.clipboard.writeText(s)}function J(s,n){var o;let e=(o=n.parent)==null?void 0:o.path,t=e==="/"?"":e,i=n.name;for(let a=1;a<100;a++){let l=W(i),r=t+(t==""?"":"/")+l+` ${a}.md`;if(!(s.vault.getAbstractFileByPath(r)!==null))return r}}function Fe(s,n){let e=new URL(s.vault.getResourcePath(n));return e.host="localhosthostlocal",e.protocol="file",e.search="",e.pathname=decodeURIComponent(e.pathname),e.toString().replace("/localhosthostlocal/","/")}function ce(s,n,e){var a,l;let t=s.metadataCache.getFileCache(n),i=t.sections,o=(a=t.headings)==null?void 0:a.find(r=>r.heading===e);if(o){let r=i.findIndex(u=>u.type==="heading"&&u.position.start.line===o.position.start.line),c=i.slice(r+1),d=c==null?void 0:c.findIndex(u=>u.type==="heading");return{lastLine:((l=c[(d!==-1?d:c.length)-1])!=null?l:i[r]).position.end.line+1,firstLine:i[r].position.end.line+1}}else new Ae.Notice("Can't find heading")}var z=class extends Error{constructor(e,t,i){super(e);this.name="KeyPathError",this.errKey=t,i&&(this.cause=i)}};function Pe(s){let{originalObject:n,key:e,data:t}=s;if(e.startsWith("[")&&e.endsWith("]")){let i=e.substring(1,e.length-1).split(","),o=n;for(let a=0;ap==l)),r===void 0)throw new z(`Failed to resolve or convert "${l}" to a valid array index.`,l);r=Math.min(r,o.length),r=Math.max(r,-1)}if(a==i.length-1){o instanceof Array?r===-1?o.unshift(t):o[r]=t:o[l]=t;return}let d=!Number.isNaN(parseInt(i[a+1]))?[]:{};try{o instanceof Array?r>=o.length?(o.push(d),o=d):r===-1?(o.unshift(d),o=d):o=o[Math.max(r,0)]:o[l]===void 0?(o[l]=d,o=d):o=o[l]}catch(p){throw new z(`Failed to resolve "${l}" as a valid object key`,l,p)}}}else n[e]=t}function Ce(s){let{obj:n,key:e}=s;if(e.startsWith("[")&&e.endsWith("]")){let t=e.substring(1,e.length-1).split(","),i=n;for(let o of t)if(i instanceof Array){let a=parseInt(o);Number.isNaN(a)?i=i.find(l=>l==o):i=i[a]}else if(i&&typeof i=="object")i=i[o];else return;return i}else return n?n[e]:void 0}var $=class{constructor(n){this.plugin=n;this.app=this.plugin.app}get tools(){return this.plugin.tools}handlePluginManagement(n){if(n["enable-plugin"]){let e=n["enable-plugin"];e in this.app.plugins.manifests&&!this.app.plugins.getPlugin(e)?(this.app.plugins.enablePluginAndSave(e),new v.Notice(`Enabled ${e}`)):this.app.internalPlugins.plugins[e]&&(this.app.internalPlugins.plugins[e].enable(!0),new v.Notice(`Enabled ${e}`))}else if(n["disable-plugin"]){let e=n["disable-plugin"];this.app.plugins.getPlugin(e)?(this.app.plugins.disablePluginAndSave(e),new v.Notice(`Disabled ${e}`)):this.app.internalPlugins.plugins[e]&&(this.app.internalPlugins.plugins[e].disable(!0),new v.Notice(`Disabled ${e}`))}}handleFrontmatterKey(n){var o;let e=n.frontmatterkey,t=this.app.vault.getAbstractFileByPath((o=n.filepath)!=null?o:this.app.workspace.getActiveFile().path);if(!(t instanceof v.TFile))return;let i=this.app.metadataCache.getFileCache(t).frontmatter;if(n.data){let a=n.data;try{a=JSON.parse(a)}catch(l){try{a=`"${a}"`,a=JSON.parse(a)}catch(r){new v.Notice("Failed to parse data, check console for more details"),console.error(r);return}}this.app.fileManager.processFrontMatter(t,l=>{try{Pe({originalObject:l,key:e,data:a})}catch(r){console.error(r),r instanceof z?new v.Notice(`Invalid key in path. +${r.message}`):new v.Notice("Failed to update frontmatter, check console for more details")}});return}D(Ce({obj:i,key:e}))}handleWorkspace(n){let e=this.app.internalPlugins.getEnabledPluginById("workspaces");if(!e)new v.Notice("Workspaces plugin is not enabled"),this.plugin.failure(n);else{if(n.saveworkspace=="true"){let t=e.activeWorkspace;e.saveWorkspace(t),new v.Notice(`Saved current workspace to ${t}`)}n.clipboard&&n.clipboard!="false"?this.tools.copyURI({workspace:e.activeWorkspace}):n.workspace!=null&&e.loadWorkspace(n.workspace),this.plugin.success(n)}}async handleCommand(n){if(n.filepath)if(n.mode){if(n.mode=="new"){let t=this.app.metadataCache.getFirstLinkpathDest(n.filepath,"/");t instanceof v.TFile&&(n.filepath=J(this.app,t))}await this.plugin.open({file:n.filepath,mode:"source",parameters:n});let e=this.app.workspace.getActiveViewOfType(v.MarkdownView);if(e){let t=e.editor,i=t.getValue();if(n.mode==="append"){t.setValue(i+` `);let o=t.lineCount();t.setCursor({ch:0,line:o})}else n.mode==="prepend"?(t.setValue(` -`+i),t.setCursor({ch:0,line:0})):n.mode==="overwrite"&&t.setValue("")}}else n.line!=null||n.column!=null||n.offset!=null?(await this.plugin.open({file:n.filepath,mode:"source",parameters:n}),await this.plugin.setCursorInLine(n)):await this.plugin.open({file:n.filepath,setting:this.plugin.settings.openFileWithoutWriteInNewPane,parameters:n});else(n.openmode||n.viewmode)&&await this.plugin.open({parameters:n});if(n.commandid)this.app.commands.executeCommandById(n.commandid);else if(n.commandname){let e=this.app.commands.commands;for(let t in e)if(e[t].name===n.commandname){e[t].callback?await e[t].callback():e[t].checkCallback(!1);break}}if(n.confirm&&n.confirm!="false"){await new Promise(t=>setTimeout(t,750));let e=document.querySelector(".mod-cta:not([style*='display: none'])");e.click instanceof Function&&e.click()}this.plugin.success(n)}async handleEval(n){if(n.filepath)if(n.mode){if(n.mode=="new"){let t=this.app.metadataCache.getFirstLinkpathDest(n.filepath,"/");t instanceof v.TFile&&(n.filepath=J(this.app,t))}await this.plugin.open({file:n.filepath,mode:"source",parameters:n});let e=this.app.workspace.getActiveViewOfType(v.MarkdownView);if(e){let t=e.editor,i=t.getValue();if(n.mode==="append"){t.setValue(i+` +`+i),t.setCursor({ch:0,line:0})):n.mode==="overwrite"&&t.setValue("")}}else n.line!=null||n.column!=null||n.offset!=null?(await this.plugin.open({file:n.filepath,mode:"source",parameters:n}),await this.plugin.setCursorInLine(n)):await this.plugin.open({file:n.filepath,setting:this.plugin.settings.openFileWithoutWriteInNewPane,parameters:n});else(n.openmode||n.viewmode)&&await this.plugin.open({parameters:n});if(n.commandid)this.app.commands.executeCommandById(n.commandid);else if(n.commandname){let e=this.app.commands.commands;for(let t in e)if(e[t].name===n.commandname){e[t].callback?await e[t].callback():e[t].checkCallback(!1);break}}if(n.confirm&&n.confirm!="false"){await new Promise(t=>setTimeout(t,750));let e=document.querySelector(".mod-cta:not([style*='display: none'])");e.click instanceof Function&&e.click()}this.plugin.success(n),await new Promise(e=>setTimeout(e,4e3))}async handleEval(n){if(n.filepath)if(n.mode){if(n.mode=="new"){let t=this.app.metadataCache.getFirstLinkpathDest(n.filepath,"/");t instanceof v.TFile&&(n.filepath=J(this.app,t))}await this.plugin.open({file:n.filepath,mode:"source",parameters:n});let e=this.app.workspace.getActiveViewOfType(v.MarkdownView);if(e){let t=e.editor,i=t.getValue();if(n.mode==="append"){t.setValue(i+` `);let o=t.lineCount();t.setCursor({ch:0,line:o})}else n.mode==="prepend"?(t.setValue(` -`+i),t.setCursor({ch:0,line:0})):n.mode==="overwrite"&&t.setValue("")}}else n.line!=null||n.column!=null||n.offset!=null?(await this.plugin.open({file:n.filepath,mode:"source",parameters:n}),await this.plugin.setCursorInLine(n)):await this.plugin.open({file:n.filepath,setting:this.plugin.settings.openFileWithoutWriteInNewPane,parameters:n});this.plugin.settings.allowEval?((0,eval)(n.eval),this.plugin.success(n)):(new v.Notice("Eval is not allowed. Please enable it in the settings."),this.plugin.failure(n))}async handleDoesFileExist(n){let e=await this.app.vault.adapter.exists(n.filepath);z((e?1:0).toString()),this.plugin.success(n)}async handleSearchAndReplace(n){let e;if(n.filepath){let t=this.app.vault.getAbstractFileByPath(n.filepath);t instanceof v.TFile&&(e=t)}else e=this.app.workspace.getActiveFile();if(e){let t=await this.app.vault.read(e);if(n.searchregex)try{let[,,i,o]=n.searchregex.match(/(\/?)(.+)\1([a-z]*)/i),a=new RegExp(i,o);t=t.replace(a,n.replace),this.plugin.success(n)}catch(i){new v.Notice(`Can't parse ${n.searchregex} as RegEx`),this.plugin.failure(n)}else t=t.replaceAll(n.search,n.replace),this.plugin.success(n);await this.plugin.writeAndOpenFile(e.path,t,n)}else new v.Notice("Cannot find file"),this.plugin.failure(n)}async handleSearch(n){n.filepath&&await this.plugin.open({file:n.filepath,parameters:n});let e=this.app.workspace.getActiveViewOfType(v.FileView);e.currentMode.showSearch();let t=e.currentMode.search;t.searchInputEl.value=n.search,t.searchInputEl.dispatchEvent(new Event("input"))}async handleWrite(n,e=!1){var i;let t;if(n.filepath?t=this.app.vault.getAbstractFileByPath(n.filepath):t=this.app.workspace.getActiveFile(),n.filepath||t){let o,a=(i=n.filepath)!=null?i:t.path;n.mode==="overwrite"?(o=await this.plugin.writeAndOpenFile(a,n.data,n),this.plugin.success(n)):n.mode==="prepend"?(t instanceof v.TFile?o=await this.plugin.prepend(t,n):o=await this.plugin.prepend(a,n),this.plugin.success(n)):n.mode==="append"?(t instanceof v.TFile?o=await this.plugin.append(t,n):o=await this.plugin.append(a,n),this.plugin.success(n)):n.mode==="new"?t instanceof v.TFile?(o=await this.plugin.writeAndOpenFile(J(this.app,t),n.data,n),this.plugin.hookSuccess(n,o)):(o=await this.plugin.writeAndOpenFile(a,n.data,n),this.plugin.hookSuccess(n,o)):!e&&t instanceof v.TFile?(new v.Notice("File already exists"),this.plugin.openExistingFileAndSetCursor(t.path,n),this.plugin.failure(n)):(o=await this.plugin.writeAndOpenFile(a,n.data,n),this.plugin.success(n)),n.uid&&this.tools.writeUIDToFile(o,n.uid)}else new v.Notice("Cannot find file"),this.plugin.failure(n)}async handleOpen(n){if(n.heading!=null){await this.plugin.open({file:n.filepath+"#"+n.heading,setting:this.plugin.settings.openFileWithoutWriteInNewPane,parameters:n});let e=this.app.workspace.getActiveViewOfType(v.MarkdownView);if(!e)return;let i=this.app.metadataCache.getFileCache(e.file).headings.find(o=>o.heading===n.heading);e.editor.focus(),e.editor.setCursor({line:i.position.start.line+1,ch:0})}else if(n.block!=null){await this.plugin.open({file:n.filepath+"#^"+n.block,setting:this.plugin.settings.openFileWithoutWriteInNewPane,parameters:n});let e=this.app.workspace.getActiveViewOfType(v.MarkdownView);if(!e)return;let i=this.app.metadataCache.getFileCache(e.file).blocks[n.block.toLowerCase()];e.editor.focus(),i&&e.editor.setCursor({line:i.position.start.line,ch:0})}else await this.plugin.open({file:n.filepath,setting:this.plugin.settings.openFileWithoutWriteInNewPane,parameters:n}),(n.line!=null||n.column!=null||n.offset!=null)&&await this.plugin.setCursorInLine(n);if(n.mode!=null&&await this.plugin.setCursor(n),n.uid){let e=this.app.workspace.getActiveViewOfType(v.MarkdownView);this.tools.writeUIDToFile(e.file,n.uid)}this.plugin.success(n)}async handleOpenBlock(n){let e=this.tools.getFileFromBlockID(n.block);e&&await this.plugin.chooseHandler({...n,filepath:e.path},!1)}handleCopyFileURI(n,e,t){let i=this.app.workspace.getActiveViewOfType(v.FileView);if(!(!i&&!t)){if(t=t!=null?t:i.file,i instanceof v.MarkdownView){let o=i.editor.getCursor(),a=this.app.metadataCache.getFileCache(i.file);if(a.headings){for(let l of a.headings)if(l.position.start.line<=o.line&&l.position.end.line>=o.line){this.tools.copyURI({filepath:i.file.path,heading:l.heading},e,t);return}}if(a.blocks)for(let l of Object.keys(a.blocks)){let r=a.blocks[l];if(r.position.start.line<=o.line&&r.position.end.line>=o.line){this.tools.copyURI({filepath:i.file.path,block:r.id},e,t);return}}}if(n){let o=t!=null?t:this.app.workspace.getActiveFile();if(!o){new v.Notice("No file opened");return}this.tools.copyURI({filepath:o.path},e,t)}else{let o=new R(this.plugin,"Choose a file",!1);o.open(),o.onChooseItem=(a,l)=>{new D(this.plugin,e,a.source).open()}}}}handleOpenSettings(n){if(this.app.setting.containerEl.parentElement===null&&this.app.setting.open(),n.settingid=="plugin-browser"?(this.app.setting.openTabById("community-plugins"),this.app.setting.activeTab.containerEl.find(".mod-cta").click()):n.settingid=="theme-browser"?(this.app.setting.openTabById("appearance"),this.app.setting.activeTab.containerEl.find(".mod-cta").click()):this.app.setting.openTabById(n.settingid),n.settingsection){let e=this.app.setting.tabContentContainer.querySelectorAll("*"),t=Array.prototype.find.call(e,i=>i.textContent==n.settingsection);t&&t.scrollIntoView()}this.plugin.success(n)}async handleUpdatePlugins(n){new v.Notice("Checking for updates\u2026"),await this.app.plugins.checkForUpdates(),Object.keys(this.app.plugins.updates).length>0&&(n.settingid="community-plugins",this.handleOpenSettings(n),this.app.setting.activeTab.containerEl.findAll(".mod-cta").last().click()),this.plugin.success(n)}async handleBookmarks(n){let e=this.app.internalPlugins.getEnabledPluginById("bookmarks"),i=e.getBookmarks().find(a=>a.title==n.bookmark),o;n.openmode=="true"||n.openmode=="false"?o=n.openmode=="true":o=n.openmode,e.openBookmark(i,o)}async handleCanvas(n){n.filepath&&await this.plugin.open({file:n.filepath,setting:this.plugin.settings.openFileWithoutWriteInNewPane,parameters:n});let e=this.app.workspace.activeLeaf.view;if(e.getViewType()!="canvas"){new v.Notice("Active view is not a canvas");return}let t=e;if(n.canvasnodes){let i=n.canvasnodes.split(","),o=t.canvas.nodes,a=i.map(r=>o.get(r)),l=t.canvas.selection;t.canvas.updateSelection(()=>{for(let r of a)l.add(r)}),t.canvas.zoomToSelection()}if(n.canvasviewport){let[i,o,a]=n.canvasviewport.split(",");if(i!="-")if(i.startsWith("--")||i.startsWith("++")){let l=t.canvas.tx+Number(i.substring(1));t.canvas.tx=l}else t.canvas.tx=Number(i);if(o!="-")if(o.startsWith("--")||o.startsWith("++")){let l=t.canvas.ty+Number(o.substring(1));t.canvas.ty=l}else t.canvas.ty=Number(o);if(a!="-")if(a.startsWith("--")||a.startsWith("++")){let l=t.canvas.tZoom+Number(a.substring(1));t.canvas.tZoom=l}else t.canvas.tZoom=Number(a);t.canvas.markViewportChanged()}}};var Se=require("obsidian"),Q=class extends Se.FuzzySuggestModal{constructor(e,t){super(e.app);this.plugin=e,this.file=t}getItems(){let e=this.app.commands.commands;return Object.keys(e).map(i=>({id:e[i].id,name:e[i].name}))}getItemText(e){return e.name}onChooseItem(e,t){this.plugin.tools.copyURI({filepath:this.file,commandid:e.id})}};var ke=require("obsidian"),X=class extends ke.SuggestModal{constructor(e,t,i){super(e.app);this.search=t;this.filepath=i;this.emptyText="Empty text (replace with nothing)";this.plugin=e,this.setPlaceholder("Replacement text")}getSuggestions(e){return e===""&&(e=this.emptyText),[e]}renderSuggestion(e,t){t.innerText=e}onChooseSuggestion(e,t){this.search.isRegEx?this.plugin.tools.copyURI({filepath:this.filepath,searchregex:this.search.source,replace:e==this.emptyText?"":e}):this.plugin.tools.copyURI({filepath:this.filepath,search:this.search.source,replace:e==this.emptyText?"":e})}};var Oe=require("obsidian"),q=class extends Oe.SuggestModal{constructor(e){super(e.app);this.plugin=e,this.setPlaceholder("Searched text. RegEx is supported")}getSuggestions(e){e===""&&(e="...");let t;try{t=new RegExp(e)}catch(i){}return[{source:e,isRegEx:!1,display:e},{source:e,display:t?`As RegEx: ${e}`:"Can't parse RegEx",isRegEx:!0}]}renderSuggestion(e,t){t.innerText=e.display}onChooseSuggestion(e,t){}};var A=require("obsidian"),_=class extends A.PluginSettingTab{constructor(e,t){super(e,t);this.plugin=t}display(){let{containerEl:e}=this;e.empty(),e.createEl("h2",{text:this.plugin.manifest.name}),new A.Setting(e).setName("Open file on write").addToggle(o=>o.setValue(this.plugin.settings.openFileOnWrite).onChange(a=>{this.plugin.settings.openFileOnWrite=a,this.plugin.saveSettings()})),new A.Setting(e).setName("Open file on write in a new pane").setDisabled(this.plugin.settings.openFileOnWrite).addToggle(o=>o.setValue(this.plugin.settings.openFileOnWriteInNewPane).onChange(a=>{this.plugin.settings.openFileOnWriteInNewPane=a,this.plugin.saveSettings()})),new A.Setting(e).setName("Open daily note in a new pane").addToggle(o=>o.setValue(this.plugin.settings.openDailyInNewPane).onChange(a=>{this.plugin.settings.openDailyInNewPane=a,this.plugin.saveSettings()})),new A.Setting(e).setName("Open file without write in new pane").addToggle(o=>o.setValue(this.plugin.settings.openFileWithoutWriteInNewPane).onChange(a=>{this.plugin.settings.openFileWithoutWriteInNewPane=a,this.plugin.saveSettings()})),new A.Setting(e).setName("Use UID instead of file paths").addToggle(o=>o.setValue(this.plugin.settings.useUID).onChange(a=>{this.plugin.settings.useUID=a,this.plugin.saveSettings(),this.display()})),new A.Setting(e).setName("Include vault name/ID parameter").addToggle(o=>o.setValue(this.plugin.settings.includeVaultName).onChange(a=>{this.plugin.settings.includeVaultName=a,this.plugin.saveSettings(),this.display()})),this.plugin.settings.includeVaultName&&new A.Setting(e).setName("Vault identifying parameter").setDesc("Choose whether to use the vault Name or its internal ID as the identifying parameter.").addDropdown(o=>o.addOption("name","Name").addOption("id","ID").setValue(this.plugin.settings.vaultParam).onChange(a=>{this.plugin.settings.vaultParam=a,this.plugin.saveSettings()})),this.plugin.settings.useUID&&new A.Setting(e).setName("Add filepath parameter").setDesc("When using UID instead of file paths, you can still add the filepath parameter to know what this URI is about. It's NOT actually used.").addToggle(o=>o.setValue(this.plugin.settings.addFilepathWhenUsingUID).onChange(a=>{this.plugin.settings.addFilepathWhenUsingUID=a,this.plugin.saveSettings()})),new A.Setting(e).setName("UID field in frontmatter").addText(o=>o.setValue(this.plugin.settings.idField).onChange(a=>{this.plugin.settings.idField=a,this.plugin.saveSettings()})),new A.Setting(e).setName("Allow executing arbitrary code via eval").setDesc("\u26A0\uFE0F This can be dangerous as it allows executing arbitrary code. Only enable this if you trust the source of the URIs you are using and know what you are doing. \u26A0\uFE0F").addToggle(o=>o.setValue(this.plugin.settings.allowEval).onChange(a=>{this.plugin.settings.allowEval=a,this.plugin.saveSettings()}));let t=new A.Setting(e).setName("Link formats").setDesc("Define custom link formats to use when using 'Copy formatted URI for ...' commands. Specify a name to identify and the format template. Available variables:").setHeading();t.descEl.createEl("p").setText("{{uri}} - The Advanced URI"),t.descEl.createEl("p").setText("{{path}} - The file path"),t.descEl.createEl("p").setText("{{name}} - The file name"),t.descEl.createEl("p").setText("{{folder}} - The path of the file folder"),t.descEl.createEl("p").setText("{{vaultName}} - The vault name"),t.descEl.createEl("p").setText("{{vaultId}} - The vault id"),t.descEl.createEl("p").setText("{{uid}} - The file's UID, defaults to file name if not available"),t.descEl.createEl("p").setText("{{alias}} - The file's first alias, defaults to file name if not available"),new A.Setting(e).setName("Add link format").addButton(o=>o.setButtonText("Add format").onClick(()=>{this.plugin.settings.linkFormats.push({name:"",format:""}),this.plugin.saveSettings(),this.display()}));let i=this.plugin.settings.linkFormats;for(let o=0;ol.setPlaceholder("Name").setValue(i[o].name).onChange(r=>{i[o].name=r,this.plugin.saveSettings()})),a.addText(l=>l.setPlaceholder("[{{path}}]({{uri}})").setValue(i[o].format).onChange(r=>{i[o].format=r,this.plugin.saveSettings()})),a.addExtraButton(l=>l.setIcon("trash").onClick(()=>{i.splice(o,1),this.plugin.saveSettings(),this.display()}))}new A.Setting(e).setName("Support").setHeading(),new A.Setting(e).setName("Donate").setDesc("If you like this Plugin, consider donating to support continued development.").addButton(o=>{o.buttonEl.outerHTML="Buy Me a Coffee at ko-fi.com"})}};var C=require("obsidian");var ee,Je=new Uint8Array(16);function de(){if(!ee&&(ee=typeof crypto!="undefined"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||typeof msCrypto!="undefined"&&typeof msCrypto.getRandomValues=="function"&&msCrypto.getRandomValues.bind(msCrypto),!ee))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return ee(Je)}var Te=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function Qe(s){return typeof s=="string"&&Te.test(s)}var Ee=Qe;var F=[];for(te=0;te<256;++te)F.push((te+256).toString(16).substr(1));var te;function Xe(s){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,e=(F[s[n+0]]+F[s[n+1]]+F[s[n+2]]+F[s[n+3]]+"-"+F[s[n+4]]+F[s[n+5]]+"-"+F[s[n+6]]+F[s[n+7]]+"-"+F[s[n+8]]+F[s[n+9]]+"-"+F[s[n+10]]+F[s[n+11]]+F[s[n+12]]+F[s[n+13]]+F[s[n+14]]+F[s[n+15]]).toLowerCase();if(!Ee(e))throw TypeError("Stringified UUID is invalid");return e}var Re=Xe;function qe(s,n,e){s=s||{};var t=s.random||(s.rng||de)();if(t[6]=t[6]&15|64,t[8]=t[8]&63|128,n){e=e||0;for(var i=0;i<16;++i)n[e+i]=t[i];return n}return Re(t)}var pe=qe;var Ve=require("obsidian"),_e={options:[],placeholder:"",allowEmpty:!1,onlySelection:!1,initialValue:void 0},ne=class extends Ve.SuggestModal{constructor(e,t){super(e.app);this.config={..._e,...t},this.setPlaceholder(this.config.placeholder)}openAndGetResult(){return new Promise(e=>{this.resolve=e,this.open(),this.config.initialValue!=null&&(this.inputEl.value=this.config.initialValue,this.inputEl.dispatchEvent(new Event("input")))})}onClose(){new Promise(e=>setTimeout(e,10)).then(()=>{this.resolve&&this.resolve(void 0)})}getSuggestions(e){return this.config.onlySelection?this.config.options:this.config.allowEmpty?[e.length>0?e:" ",...this.config.options]:[e.length>0?e:"...",...this.config.options]}renderSuggestion(e,t){t.setText(e)}onChooseSuggestion(e,t){if(this.resolve){let i;this.config.allowEmpty&&e===" "?i="":e==="..."?i=void 0:i=e,this.resolve(i)}}};var K=class{constructor(n){this.plugin=n;this.app=this.plugin.app}get settings(){return this.plugin.settings}async writeUIDToFile(n,e){var c;let t=(c=this.app.metadataCache.getFileCache(n))==null?void 0:c.frontmatter,i=await this.app.vault.read(n),o=(!t||t.length===0)&&!i.match(/^-{3}\s*\n*\r*-{3}/),a=i.split(` +`+i),t.setCursor({ch:0,line:0})):n.mode==="overwrite"&&t.setValue("")}}else n.line!=null||n.column!=null||n.offset!=null?(await this.plugin.open({file:n.filepath,mode:"source",parameters:n}),await this.plugin.setCursorInLine(n)):await this.plugin.open({file:n.filepath,setting:this.plugin.settings.openFileWithoutWriteInNewPane,parameters:n});this.plugin.settings.allowEval?((0,eval)(n.eval),this.plugin.success(n)):(new v.Notice("Eval is not allowed. Please enable it in the settings."),this.plugin.failure(n))}async handleDoesFileExist(n){let e=await this.app.vault.adapter.exists(n.filepath);D((e?1:0).toString()),this.plugin.success(n)}async handleSearchAndReplace(n){let e;if(n.filepath){let t=this.app.vault.getAbstractFileByPath(n.filepath);t instanceof v.TFile&&(e=t)}else e=this.app.workspace.getActiveFile();if(e){let t=await this.app.vault.read(e);if(n.searchregex)try{let[,,i,o]=n.searchregex.match(/(\/?)(.+)\1([a-z]*)/i),a=new RegExp(i,o);t=t.replace(a,n.replace),this.plugin.success(n)}catch(i){new v.Notice(`Can't parse ${n.searchregex} as RegEx`),this.plugin.failure(n)}else t=t.replaceAll(n.search,n.replace),this.plugin.success(n);await this.plugin.writeAndOpenFile(e.path,t,n)}else new v.Notice("Cannot find file"),this.plugin.failure(n)}async handleSearch(n){n.filepath&&await this.plugin.open({file:n.filepath,parameters:n});let e=this.app.workspace.getActiveViewOfType(v.FileView);e.currentMode.showSearch();let t=e.currentMode.search;t.searchInputEl.value=n.search,t.searchInputEl.dispatchEvent(new Event("input"))}async handleWrite(n,e=!1){var i;let t;if(n.filepath?t=this.app.vault.getAbstractFileByPath(n.filepath):t=this.app.workspace.getActiveFile(),n.filepath||t){let o,a=(i=n.filepath)!=null?i:t.path;n.mode==="overwrite"?(o=await this.plugin.writeAndOpenFile(a,n.data,n),this.plugin.success(n)):n.mode==="prepend"?(t instanceof v.TFile?o=await this.plugin.prepend(t,n):o=await this.plugin.prepend(a,n),this.plugin.success(n)):n.mode==="append"?(t instanceof v.TFile?o=await this.plugin.append(t,n):o=await this.plugin.append(a,n),this.plugin.success(n)):n.mode==="new"?t instanceof v.TFile?(o=await this.plugin.writeAndOpenFile(J(this.app,t),n.data,n),this.plugin.hookSuccess(n,o)):(o=await this.plugin.writeAndOpenFile(a,n.data,n),this.plugin.hookSuccess(n,o)):!e&&t instanceof v.TFile?(new v.Notice("File already exists"),this.plugin.openExistingFileAndSetCursor(t.path,n),this.plugin.failure(n)):(o=await this.plugin.writeAndOpenFile(a,n.data,n),this.plugin.success(n)),n.uid&&this.tools.writeUIDToFile(o,n.uid)}else new v.Notice("Cannot find file"),this.plugin.failure(n)}async handleOpen(n){if(n.heading!=null){await this.plugin.open({file:n.filepath+"#"+n.heading,setting:this.plugin.settings.openFileWithoutWriteInNewPane,parameters:n});let e=this.app.workspace.getActiveViewOfType(v.MarkdownView);if(!e)return;let i=this.app.metadataCache.getFileCache(e.file).headings.find(o=>o.heading===n.heading);e.editor.focus(),e.editor.setCursor({line:i.position.start.line+1,ch:0})}else if(n.block!=null){await this.plugin.open({file:n.filepath+"#^"+n.block,setting:this.plugin.settings.openFileWithoutWriteInNewPane,parameters:n});let e=this.app.workspace.getActiveViewOfType(v.MarkdownView);if(!e)return;let i=this.app.metadataCache.getFileCache(e.file).blocks[n.block.toLowerCase()];e.editor.focus(),i&&e.editor.setCursor({line:i.position.start.line,ch:0})}else await this.plugin.open({file:n.filepath,setting:this.plugin.settings.openFileWithoutWriteInNewPane,parameters:n}),(n.line!=null||n.column!=null||n.offset!=null)&&await this.plugin.setCursorInLine(n);if(n.mode!=null&&await this.plugin.setCursor(n),n.uid){let e=this.app.workspace.getActiveViewOfType(v.MarkdownView);this.tools.writeUIDToFile(e.file,n.uid)}this.plugin.success(n)}async handleOpenBlock(n){let e=this.tools.getFileFromBlockID(n.block);e&&await this.plugin.chooseHandler({...n,filepath:e.path},!1)}handleCopyFileURI(n,e,t){let i=this.app.workspace.getActiveViewOfType(v.FileView);if(!(!i&&!t)){if(t=t!=null?t:i.file,i instanceof v.MarkdownView){let o=i.editor.getCursor(),a=this.app.metadataCache.getFileCache(i.file);if(a.headings){for(let l of a.headings)if(l.position.start.line<=o.line&&l.position.end.line>=o.line){this.tools.copyURI({filepath:i.file.path,heading:l.heading},e,t);return}}if(a.blocks)for(let l of Object.keys(a.blocks)){let r=a.blocks[l];if(r.position.start.line<=o.line&&r.position.end.line>=o.line){this.tools.copyURI({filepath:i.file.path,block:r.id},e,t);return}}}if(n){let o=t!=null?t:this.app.workspace.getActiveFile();if(!o){new v.Notice("No file opened");return}this.tools.copyURI({filepath:o.path},e,t)}else{let o=new R(this.plugin,"Choose a file",!1);o.open(),o.onChooseItem=(a,l)=>{new U(this.plugin,e,a.source).open()}}}}handleOpenSettings(n){if(this.app.setting.containerEl.parentElement===null&&this.app.setting.open(),n.settingid=="plugin-browser"?(this.app.setting.openTabById("community-plugins"),this.app.setting.activeTab.containerEl.find(".mod-cta").click()):n.settingid=="theme-browser"?(this.app.setting.openTabById("appearance"),this.app.setting.activeTab.containerEl.find(".mod-cta").click()):this.app.setting.openTabById(n.settingid),n.settingsection){let e=this.app.setting.tabContentContainer.querySelectorAll("*"),t=Array.prototype.find.call(e,i=>i.textContent==n.settingsection);t&&t.scrollIntoView()}this.plugin.success(n)}async handleUpdatePlugins(n){new v.Notice("Checking for updates\u2026"),await this.app.plugins.checkForUpdates(),Object.keys(this.app.plugins.updates).length>0&&(n.settingid="community-plugins",this.handleOpenSettings(n),this.app.setting.activeTab.containerEl.findAll(".mod-cta").last().click()),this.plugin.success(n)}async handleBookmarks(n){let e=this.app.internalPlugins.getEnabledPluginById("bookmarks"),i=e.getBookmarks().find(a=>a.title==n.bookmark),o;n.openmode=="true"||n.openmode=="false"?o=n.openmode=="true":o=n.openmode,e.openBookmark(i,o)}async handleCanvas(n){n.filepath&&await this.plugin.open({file:n.filepath,setting:this.plugin.settings.openFileWithoutWriteInNewPane,parameters:n});let e=this.app.workspace.activeLeaf.view;if(e.getViewType()!="canvas"){new v.Notice("Active view is not a canvas");return}let t=e;if(n.canvasnodes){let i=n.canvasnodes.split(","),o=t.canvas.nodes,a=i.map(r=>o.get(r)),l=t.canvas.selection;t.canvas.updateSelection(()=>{for(let r of a)l.add(r)}),t.canvas.zoomToSelection()}if(n.canvasviewport){let[i,o,a]=n.canvasviewport.split(",");if(i!="-")if(i.startsWith("--")||i.startsWith("++")){let l=t.canvas.tx+Number(i.substring(1));t.canvas.tx=l}else t.canvas.tx=Number(i);if(o!="-")if(o.startsWith("--")||o.startsWith("++")){let l=t.canvas.ty+Number(o.substring(1));t.canvas.ty=l}else t.canvas.ty=Number(o);if(a!="-")if(a.startsWith("--")||a.startsWith("++")){let l=t.canvas.tZoom+Number(a.substring(1));t.canvas.tZoom=l}else t.canvas.tZoom=Number(a);t.canvas.markViewportChanged()}}};var Se=require("obsidian"),Q=class extends Se.FuzzySuggestModal{constructor(e,t){super(e.app);this.plugin=e,this.file=t}getItems(){let e=this.app.commands.commands;return Object.keys(e).map(i=>({id:e[i].id,name:e[i].name}))}getItemText(e){return e.name}onChooseItem(e,t){this.plugin.tools.copyURI({filepath:this.file,commandid:e.id})}};var ke=require("obsidian"),X=class extends ke.SuggestModal{constructor(e,t,i){super(e.app);this.search=t;this.filepath=i;this.emptyText="Empty text (replace with nothing)";this.plugin=e,this.setPlaceholder("Replacement text")}getSuggestions(e){return e===""&&(e=this.emptyText),[e]}renderSuggestion(e,t){t.innerText=e}onChooseSuggestion(e,t){this.search.isRegEx?this.plugin.tools.copyURI({filepath:this.filepath,searchregex:this.search.source,replace:e==this.emptyText?"":e}):this.plugin.tools.copyURI({filepath:this.filepath,search:this.search.source,replace:e==this.emptyText?"":e})}};var Oe=require("obsidian"),q=class extends Oe.SuggestModal{constructor(e){super(e.app);this.plugin=e,this.setPlaceholder("Searched text. RegEx is supported")}getSuggestions(e){e===""&&(e="...");let t;try{t=new RegExp(e)}catch(i){}return[{source:e,isRegEx:!1,display:e},{source:e,display:t?`As RegEx: ${e}`:"Can't parse RegEx",isRegEx:!0}]}renderSuggestion(e,t){t.innerText=e.display}onChooseSuggestion(e,t){}};var A=require("obsidian"),_=class extends A.PluginSettingTab{constructor(e,t){super(e,t);this.plugin=t}display(){let{containerEl:e}=this;e.empty(),e.createEl("h2",{text:this.plugin.manifest.name}),new A.Setting(e).setName("Open file on write").addToggle(o=>o.setValue(this.plugin.settings.openFileOnWrite).onChange(a=>{this.plugin.settings.openFileOnWrite=a,this.plugin.saveSettings()})),new A.Setting(e).setName("Open file on write in a new pane").setDisabled(this.plugin.settings.openFileOnWrite).addToggle(o=>o.setValue(this.plugin.settings.openFileOnWriteInNewPane).onChange(a=>{this.plugin.settings.openFileOnWriteInNewPane=a,this.plugin.saveSettings()})),new A.Setting(e).setName("Open daily note in a new pane").addToggle(o=>o.setValue(this.plugin.settings.openDailyInNewPane).onChange(a=>{this.plugin.settings.openDailyInNewPane=a,this.plugin.saveSettings()})),new A.Setting(e).setName("Open file without write in new pane").addToggle(o=>o.setValue(this.plugin.settings.openFileWithoutWriteInNewPane).onChange(a=>{this.plugin.settings.openFileWithoutWriteInNewPane=a,this.plugin.saveSettings()})),new A.Setting(e).setName("Use UID instead of file paths").addToggle(o=>o.setValue(this.plugin.settings.useUID).onChange(a=>{this.plugin.settings.useUID=a,this.plugin.saveSettings(),this.display()})),new A.Setting(e).setName("Include vault name/ID parameter").addToggle(o=>o.setValue(this.plugin.settings.includeVaultName).onChange(a=>{this.plugin.settings.includeVaultName=a,this.plugin.saveSettings(),this.display()})),this.plugin.settings.includeVaultName&&new A.Setting(e).setName("Vault identifying parameter").setDesc("Choose whether to use the vault Name or its internal ID as the identifying parameter.").addDropdown(o=>o.addOption("name","Name").addOption("id","ID").setValue(this.plugin.settings.vaultParam).onChange(a=>{this.plugin.settings.vaultParam=a,this.plugin.saveSettings()})),this.plugin.settings.useUID&&new A.Setting(e).setName("Add filepath parameter").setDesc("When using UID instead of file paths, you can still add the filepath parameter to know what this URI is about. It's NOT actually used.").addToggle(o=>o.setValue(this.plugin.settings.addFilepathWhenUsingUID).onChange(a=>{this.plugin.settings.addFilepathWhenUsingUID=a,this.plugin.saveSettings()})),new A.Setting(e).setName("UID field in frontmatter").addText(o=>o.setValue(this.plugin.settings.idField).onChange(a=>{this.plugin.settings.idField=a,this.plugin.saveSettings()})),new A.Setting(e).setName("Allow executing arbitrary code via eval").setDesc("\u26A0\uFE0F This can be dangerous as it allows executing arbitrary code. Only enable this if you trust the source of the URIs you are using and know what you are doing. \u26A0\uFE0F").addToggle(o=>o.setValue(this.plugin.settings.allowEval).onChange(a=>{this.plugin.settings.allowEval=a,this.plugin.saveSettings()}));let t=new A.Setting(e).setName("Link formats").setDesc("Define custom link formats to use when using 'Copy formatted URI for ...' commands. Specify a name to identify and the format template. Available variables:").setHeading();t.descEl.createEl("p").setText("{{uri}} - The Advanced URI"),t.descEl.createEl("p").setText("{{path}} - The file path"),t.descEl.createEl("p").setText("{{name}} - The file name"),t.descEl.createEl("p").setText("{{folder}} - The path of the file folder"),t.descEl.createEl("p").setText("{{vaultName}} - The vault name"),t.descEl.createEl("p").setText("{{vaultId}} - The vault id"),t.descEl.createEl("p").setText("{{uid}} - The file's UID, defaults to file name if not available"),t.descEl.createEl("p").setText("{{alias}} - The file's first alias, defaults to file name if not available"),new A.Setting(e).setName("Add link format").addButton(o=>o.setButtonText("Add format").onClick(()=>{this.plugin.settings.linkFormats.push({name:"",format:""}),this.plugin.saveSettings(),this.display()}));let i=this.plugin.settings.linkFormats;for(let o=0;ol.setPlaceholder("Name").setValue(i[o].name).onChange(r=>{i[o].name=r,this.plugin.saveSettings()})),a.addText(l=>l.setPlaceholder("[{{path}}]({{uri}})").setValue(i[o].format).onChange(r=>{i[o].format=r,this.plugin.saveSettings()})),a.addExtraButton(l=>l.setIcon("trash").onClick(()=>{i.splice(o,1),this.plugin.saveSettings(),this.display()}))}new A.Setting(e).setName("Support").setHeading(),new A.Setting(e).setName("Donate").setDesc("If you like this Plugin, consider donating to support continued development.").addButton(o=>{o.buttonEl.outerHTML="Buy Me a Coffee at ko-fi.com"})}};var P=require("obsidian");var ee,Je=new Uint8Array(16);function de(){if(!ee&&(ee=typeof crypto!="undefined"&&crypto.getRandomValues&&crypto.getRandomValues.bind(crypto)||typeof msCrypto!="undefined"&&typeof msCrypto.getRandomValues=="function"&&msCrypto.getRandomValues.bind(msCrypto),!ee))throw new Error("crypto.getRandomValues() not supported. See https://github.com/uuidjs/uuid#getrandomvalues-not-supported");return ee(Je)}var Te=/^(?:[0-9a-f]{8}-[0-9a-f]{4}-[1-5][0-9a-f]{3}-[89ab][0-9a-f]{3}-[0-9a-f]{12}|00000000-0000-0000-0000-000000000000)$/i;function Qe(s){return typeof s=="string"&&Te.test(s)}var Ee=Qe;var F=[];for(te=0;te<256;++te)F.push((te+256).toString(16).substr(1));var te;function Xe(s){var n=arguments.length>1&&arguments[1]!==void 0?arguments[1]:0,e=(F[s[n+0]]+F[s[n+1]]+F[s[n+2]]+F[s[n+3]]+"-"+F[s[n+4]]+F[s[n+5]]+"-"+F[s[n+6]]+F[s[n+7]]+"-"+F[s[n+8]]+F[s[n+9]]+"-"+F[s[n+10]]+F[s[n+11]]+F[s[n+12]]+F[s[n+13]]+F[s[n+14]]+F[s[n+15]]).toLowerCase();if(!Ee(e))throw TypeError("Stringified UUID is invalid");return e}var Re=Xe;function qe(s,n,e){s=s||{};var t=s.random||(s.rng||de)();if(t[6]=t[6]&15|64,t[8]=t[8]&63|128,n){e=e||0;for(var i=0;i<16;++i)n[e+i]=t[i];return n}return Re(t)}var pe=qe;var Ve=require("obsidian"),_e={options:[],placeholder:"",allowEmpty:!1,onlySelection:!1,initialValue:void 0},ne=class extends Ve.SuggestModal{constructor(e,t){super(e.app);this.config={..._e,...t},this.setPlaceholder(this.config.placeholder)}openAndGetResult(){return new Promise(e=>{this.resolve=e,this.open(),this.config.initialValue!=null&&(this.inputEl.value=this.config.initialValue,this.inputEl.dispatchEvent(new Event("input")))})}onClose(){new Promise(e=>setTimeout(e,10)).then(()=>{this.resolve&&this.resolve(void 0)})}getSuggestions(e){return this.config.onlySelection?this.config.options:this.config.allowEmpty?[e.length>0?e:" ",...this.config.options]:[e.length>0?e:"...",...this.config.options]}renderSuggestion(e,t){t.setText(e)}onChooseSuggestion(e,t){if(this.resolve){let i;this.config.allowEmpty&&e===" "?i="":e==="..."?i=void 0:i=e,this.resolve(i)}}};var K=class{constructor(n){this.plugin=n;this.app=this.plugin.app}get settings(){return this.plugin.settings}async writeUIDToFile(n,e){var c;let t=(c=this.app.metadataCache.getFileCache(n))==null?void 0:c.frontmatter,i=await this.app.vault.read(n),o=(!t||t.length===0)&&!i.match(/^-{3}\s*\n*\r*-{3}/),a=i.split(` `),l=`${this.plugin.settings.idField}:`;if(o)a.unshift("---"),a.unshift(`${l} ${e}`),a.unshift("---");else{let d=a.findIndex(p=>p.startsWith(l));d!=-1?a[d]=`${l} ${e}`:a.splice(1,0,`${l} ${e}`)}let r=a.join(` -`);return await this.app.vault.modify(n,r),e}async getUIDFromFile(n){var i;let e=(i=this.app.metadataCache.getFileCache(n))!=null?i:await new Promise(o=>{let a=this.app.metadataCache.on("changed",l=>{if(l.path==n.path){let r=this.app.metadataCache.getFileCache(n);this.app.metadataCache.offref(a),o(r)}})}),t=(0,C.parseFrontMatterEntry)(e.frontmatter,this.plugin.settings.idField);if(t!=null)return t instanceof Array?t[0]:t}async generateURI(n){var a;let e="obsidian://adv-uri",t="",i=this.app.vault.getAbstractFileByPath(n.filepath);this.settings.includeVaultName&&(t+="?vault=",this.settings.vaultParam=="id"&&this.app.appId?t+=encodeURIComponent(this.app.appId):t+=encodeURIComponent(this.app.vault.getName())),this.settings.useUID&&i instanceof C.TFile&&i.extension=="md"&&(this.settings.addFilepathWhenUsingUID||(n.filepath=void 0),n.uid=(a=await this.getUIDFromFile(i))!=null?a:await this.writeUIDToFile(i,pe()));let o=Object.keys(n).filter(l=>n[l]).sort((l,r)=>{let c=["filepath","filename","uid","daily"],d=["data","eval"];return c.includes(l)?-1:c.includes(r)||d.includes(l)?1:d.includes(r)?-1:0});for(let l of o)n[l]!=null&&(t+=t?"&":"?",t+=`${l}=${encodeURIComponent(n[l])}`);return t.endsWith("%20")&&(t+="&"),e+t}async copyURI(n,e=!1,t=void 0){var o,a;let i=await this.generateURI(n);if(e){let l=this.settings.linkFormats;if(l.length==0){new C.Notice("No link formats defined in the settings");return}let r;if(l.length==1)r=l[0];else{let d=l.map(h=>h.name),p=await new ne(this.plugin,{options:d,onlySelection:!0,placeholder:"Select link format"}).openAndGetResult();if(!p){new C.Notice("No link format selected");return}r=l.find(h=>h.name==p)}let c=r.format.replace(/\{\{uri\}\}/g,i).replace(/\{\{path\}\}/g,t==null?void 0:t.path).replace(/\{\{folder\}\}/g,(o=t==null?void 0:t.parent)==null?void 0:o.path).replace(/\{\{name\}\}/g,t==null?void 0:t.basename).replace(/\{\{vaultName\}\}/g,this.app.vault.getName()).replace(/\{\{vaultId\}\}/g,this.app.appId);if(t&&c.match(/\{\{uid\}\}/g)){let d=(a=await this.getUIDFromFile(t))!=null?a:t.basename;c=c.replace(/\{\{uid\}\}/g,d)}if(t&&c.match(/\{\{alias\}\}/g)){let d=(0,C.parseFrontMatterAliases)(this.app.metadataCache.getFileCache(t).frontmatter),p=d?d[0]:t==null?void 0:t.basename;c=c.replace(/\{\{alias\}\}/g,p)}await z(c),new C.Notice(`Advanced URI in format "${r.name}" copied to your clipboard`);return}await z(i),new C.Notice("Advanced URI copied to your clipboard")}getFileFromUID(n){var i;let e=this.app.vault.getMarkdownFiles(),t=this.settings.idField;for(let o of e){let a=(0,C.parseFrontMatterEntry)((i=this.app.metadataCache.getFileCache(o))==null?void 0:i.frontmatter,t);if(a instanceof Array){if(a.contains(n))return o}else if(a==n)return o}}getFileFromBlockID(n){var t,i;let e=this.app.vault.getMarkdownFiles();n=n.toLowerCase();for(let o of e)if(((i=(t=this.app.metadataCache.getFileCache(o))==null?void 0:t.blocks)==null?void 0:i[n])!=null)return o}};var oe=require("obsidian"),ie=class extends oe.FuzzySuggestModal{constructor(e){super(e.app);this.plugin=e,this.setPlaceholder("Choose a workspace")}getItems(){let e=this.app.internalPlugins.getEnabledPluginById("workspaces");if(!e)new oe.Notice("Workspaces plugin is not enabled");else return Object.keys(e.workspaces)}getItemText(e){return e}onChooseItem(e,t){this.plugin.tools.copyURI({workspace:e})}};var ae=class extends w.Plugin{constructor(){super(...arguments);this.handlers=new $(this);this.tools=new K(this)}async onload(){await this.loadSettings(),this.addSettingTab(new _(this.app,this)),this.addCommand({id:"copy-uri-current-file",name:"Copy URI for file with options",callback:()=>this.handlers.handleCopyFileURI(!1,!1)}),this.addCommand({id:"copy-uri-current-file-simple",name:"Copy URI for current file",callback:()=>this.handlers.handleCopyFileURI(!0,!1)}),this.addCommand({id:"copy-uri-current-file-with-format",name:"Copy formatted URI for file with options ",callback:()=>this.handlers.handleCopyFileURI(!1,!0)}),this.addCommand({id:"copy-uri-current-file-simple-with-format",name:"Copy formatted URI for current file",callback:()=>this.handlers.handleCopyFileURI(!0,!0)}),this.addCommand({id:"copy-uri-daily",name:"Copy URI for daily note",callback:()=>new D(this,!1).open()}),this.addCommand({id:"copy-uri-search-and-replace",name:"Copy URI for search and replace",callback:()=>{let e=new R(this,"Used file for search and replace");e.open(),e.onChooseItem=t=>{let i=new q(this);i.open(),i.onChooseSuggestion=o=>{new X(this,o,t==null?void 0:t.source).open()}}}}),this.addCommand({id:"copy-uri-command",name:"Copy URI for command",callback:()=>{let e=new R(this,"Select a file to be opened before executing the command");e.open(),e.onChooseItem=t=>{new Q(this,t==null?void 0:t.source).open()}}}),this.addCommand({id:"copy-uri-block",name:"Copy URI for current block",checkCallback:e=>{let t=this.app.workspace.getActiveViewOfType(w.MarkdownView);if(e)return t!=null;let i=B.getBlockId(this.app);i&&this.tools.copyURI({filepath:t.file.path,block:i},!1,t.file)}}),this.addCommand({id:"copy-uri-block-with-format",name:"Copy formatted URI for current block",checkCallback:e=>{let t=this.app.workspace.getActiveViewOfType(w.MarkdownView);if(e)return t!=null;let i=B.getBlockId(this.app);i&&this.tools.copyURI({filepath:t.file.path,block:i},!0,t.file)}}),this.addCommand({id:"copy-uri-workspace",name:"Copy URI for workspace",callback:()=>{new ie(this).open()}}),this.addCommand({id:"copy-uri-canvas-node",name:"Copy URI for selected canvas nodes",checkCallback:e=>{let t=this.app.workspace.activeLeaf.view;if(e)return t.getViewType()==="canvas"&&t.canvas.selection.size>0;if(t.getViewType()!=="canvas")return!1;let i=t,o=[];i.canvas.selection.forEach(a=>{o.push(a.id)}),this.tools.copyURI({canvasnodes:o.join(","),filepath:t.file.path},!1,t.file)}}),this.addCommand({id:"copy-uri-canvas-viewport",name:"Copy URI for current canvas viewport",checkCallback:e=>{let t=this.app.workspace.activeLeaf.view;if(e)return t.getViewType()==="canvas";if(t.getViewType()!=="canvas")return!1;let o=t.canvas,a=o.tx.toFixed(0),l=o.ty.toFixed(0),r=o.tZoom.toFixed(3);this.tools.copyURI({filepath:t.file.path,canvasviewport:`${a},${l},${r}`},!1,t.file)}}),this.registerObsidianProtocolHandler("advanced-uri",async e=>{let t=e;for(let i in t)t[i]=decodeURIComponent(t[i]);this.onUriCall(t)}),this.registerObsidianProtocolHandler("adv-uri",async e=>{let t=e;this.onUriCall(t)}),this.registerObsidianProtocolHandler("hook-get-advanced-uri",async e=>{let t=e;for(let o in t)t[o]=decodeURIComponent(t[o]);let i=this.app.workspace.getActiveFile();i?this.hookSuccess(t,i):this.failure(t,{errorMessage:"No file opened"})}),this.registerEvent(this.app.workspace.on("file-menu",(e,t,i)=>{(i==="more-options"||i==="tab-header"||i=="file-explorer-context-menu")&&t instanceof w.TFile&&(e.addItem(o=>{o.setTitle("Copy Advanced URI").setIcon("link").setSection("info").onClick(a=>this.handlers.handleCopyFileURI(!0,!1,t))}),e.addItem(o=>{o.setTitle("Copy formatted Advanced URI").setIcon("link").setSection("info").onClick(a=>this.handlers.handleCopyFileURI(!0,!0,t))}))}))}async onUriCall(e){var i,o,a;let t=!1;if(this.lastParameters={...e},e.uid){let l=(i=this.tools.getFileFromUID(e.uid))==null?void 0:i.path;l!=null&&(e.filepath=l,e.uid=void 0)}else if(e.filename){let l=this.app.metadataCache.getFirstLinkpathDest(e.filename,"");l||(l=this.app.vault.getMarkdownFiles().find(d=>{var p;return(p=(0,w.parseFrontMatterAliases)(this.app.metadataCache.getFileCache(d).frontmatter))==null?void 0:p.includes(e.filename)}));let r=this.app.fileManager.getNewFileParent((o=this.app.workspace.getActiveFile())==null?void 0:o.path),c=r.isRoot()?"":r.path+"/";e.filepath=(a=l==null?void 0:l.path)!=null?a:c+(0,w.normalizePath)(e.filename)}if(e.filepath){e.filepath=(0,w.normalizePath)(e.filepath);let l=e.filepath.lastIndexOf(".");e.filepath.substring(l<0?e.filepath.length:l)===""&&(e.filepath=e.filepath+".md")}else if(e.daily==="true"){if(!je(this.app)){new w.Notice("Daily notes plugin is not loaded");return}let l=window.moment(Date.now()),r=await be(l,this.app),c=this.app.vault.getAbstractFileByPath(r);c||(e.exists==="true"?e.filepath=r:(c=await this.app.internalPlugins.getEnabledPluginById("daily-notes").getDailyNote(),t=!0)),c&&(e.filepath=c.path)}e.clipboard==="true"&&(e.data=await navigator.clipboard.readText()),this.chooseHandler(e,t)}async chooseHandler(e,t){e["enable-plugin"]||e["disable-plugin"]?this.handlers.handlePluginManagement(e):e.frontmatterkey?this.handlers.handleFrontmatterKey(e):e.workspace||e.saveworkspace=="true"?this.handlers.handleWorkspace(e):e.commandname||e.commandid?this.handlers.handleCommand(e):e.bookmark?this.handlers.handleBookmarks(e):e.eval?this.handlers.handleEval(e):e.filepath&&e.exists==="true"?this.handlers.handleDoesFileExist(e):e.canvasnodes||e.canvasviewport?this.handlers.handleCanvas(e):e.data?this.handlers.handleWrite(e,t):e.filepath&&e.heading?(await this.handlers.handleOpen(e),e.filepath=void 0,e.heading=void 0,this.chooseHandler(e,t)):e.filepath&&e.block?(await this.handlers.handleOpen(e),e.filepath=void 0,e.block=void 0,this.chooseHandler(e,t)):(e.search||e.searchregex)&&e.replace!=null?this.handlers.handleSearchAndReplace(e):e.search?this.handlers.handleSearch(e):e.filepath?this.handlers.handleOpen(e):e.block?this.handlers.handleOpenBlock(e):e.settingid?this.handlers.handleOpenSettings(e):e.updateplugins&&this.handlers.handleUpdatePlugins(e)}async hookSuccess(e,t){if(!e["x-success"])return;let i={title:W(t.name),advanceduri:await this.tools.generateURI({filepath:t.path}),urlkey:"advanceduri",fileuri:Fe(this.app,t)};this.success(e,i)}success(e,t){if(e["x-success"]){let i=new URL(e["x-success"]);for(let o in t)i.searchParams.set(o,t[o]);window.open(i.toString())}}failure(e,t){if(e["x-error"]){let i=new URL(e["x-error"]);for(let o in t)i.searchParams.set(o,t[o]);window.open(i.toString())}}async append(e,t){var a,l;let i,o;if(e instanceof w.TFile){i=e.path;let c=(await this.app.vault.read(e)).split(` +`);return await this.app.vault.modify(n,r),e}async getUIDFromFile(n){var i;let e=(i=this.app.metadataCache.getFileCache(n))!=null?i:await new Promise(o=>{let a=this.app.metadataCache.on("changed",l=>{if(l.path==n.path){let r=this.app.metadataCache.getFileCache(n);this.app.metadataCache.offref(a),o(r)}})}),t=(0,P.parseFrontMatterEntry)(e.frontmatter,this.plugin.settings.idField);if(t!=null)return t instanceof Array?t[0]:t}async generateURI(n){var a;let e="obsidian://adv-uri",t="",i=this.app.vault.getAbstractFileByPath(n.filepath);this.settings.includeVaultName&&(t+="?vault=",this.settings.vaultParam=="id"&&this.app.appId?t+=encodeURIComponent(this.app.appId):t+=encodeURIComponent(this.app.vault.getName())),this.settings.useUID&&i instanceof P.TFile&&i.extension=="md"&&(this.settings.addFilepathWhenUsingUID||(n.filepath=void 0),n.uid=(a=await this.getUIDFromFile(i))!=null?a:await this.writeUIDToFile(i,pe()));let o=Object.keys(n).filter(l=>n[l]).sort((l,r)=>{let c=["filepath","filename","uid","daily"],d=["data","eval"];return c.includes(l)?-1:c.includes(r)||d.includes(l)?1:d.includes(r)?-1:0});for(let l of o)n[l]!=null&&(t+=t?"&":"?",t+=`${l}=${encodeURIComponent(n[l])}`);return t.endsWith("%20")&&(t+="&"),e+t}async copyURI(n,e=!1,t=void 0){var o,a;let i=await this.generateURI(n);if(e){let l=this.settings.linkFormats;if(l.length==0){new P.Notice("No link formats defined in the settings");return}let r;if(l.length==1)r=l[0];else{let d=l.map(h=>h.name),p=await new ne(this.plugin,{options:d,onlySelection:!0,placeholder:"Select link format"}).openAndGetResult();if(!p){new P.Notice("No link format selected");return}r=l.find(h=>h.name==p)}let c=r.format.replace(/\{\{uri\}\}/g,i).replace(/\{\{path\}\}/g,t==null?void 0:t.path).replace(/\{\{folder\}\}/g,(o=t==null?void 0:t.parent)==null?void 0:o.path).replace(/\{\{name\}\}/g,t==null?void 0:t.basename).replace(/\{\{vaultName\}\}/g,this.app.vault.getName()).replace(/\{\{vaultId\}\}/g,this.app.appId);if(t&&c.match(/\{\{uid\}\}/g)){let d=(a=await this.getUIDFromFile(t))!=null?a:t.basename;c=c.replace(/\{\{uid\}\}/g,d)}if(t&&c.match(/\{\{alias\}\}/g)){let d=(0,P.parseFrontMatterAliases)(this.app.metadataCache.getFileCache(t).frontmatter),p=d?d[0]:t==null?void 0:t.basename;c=c.replace(/\{\{alias\}\}/g,p)}await D(c),new P.Notice(`Advanced URI in format "${r.name}" copied to your clipboard`);return}await D(i),new P.Notice("Advanced URI copied to your clipboard")}getFileFromUID(n){var i;let e=this.app.vault.getMarkdownFiles(),t=this.settings.idField;for(let o of e){let a=(0,P.parseFrontMatterEntry)((i=this.app.metadataCache.getFileCache(o))==null?void 0:i.frontmatter,t);if(a instanceof Array){if(a.contains(n))return o}else if(a==n)return o}}getFileFromBlockID(n){var t,i;let e=this.app.vault.getMarkdownFiles();n=n.toLowerCase();for(let o of e)if(((i=(t=this.app.metadataCache.getFileCache(o))==null?void 0:t.blocks)==null?void 0:i[n])!=null)return o}};var oe=require("obsidian"),ie=class extends oe.FuzzySuggestModal{constructor(e){super(e.app);this.plugin=e,this.setPlaceholder("Choose a workspace")}getItems(){let e=this.app.internalPlugins.getEnabledPluginById("workspaces");if(!e)new oe.Notice("Workspaces plugin is not enabled");else return Object.keys(e.workspaces)}getItemText(e){return e}onChooseItem(e,t){this.plugin.tools.copyURI({workspace:e})}};var ae=class extends w.Plugin{constructor(){super(...arguments);this.handlers=new $(this);this.tools=new K(this)}async onload(){await this.loadSettings(),this.addSettingTab(new _(this.app,this)),this.addCommand({id:"copy-uri-current-file",name:"Copy URI for file with options",callback:()=>this.handlers.handleCopyFileURI(!1,!1)}),this.addCommand({id:"copy-uri-current-file-simple",name:"Copy URI for current file",callback:()=>this.handlers.handleCopyFileURI(!0,!1)}),this.addCommand({id:"copy-uri-current-file-with-format",name:"Copy formatted URI for file with options ",callback:()=>this.handlers.handleCopyFileURI(!1,!0)}),this.addCommand({id:"copy-uri-current-file-simple-with-format",name:"Copy formatted URI for current file",callback:()=>this.handlers.handleCopyFileURI(!0,!0)}),this.addCommand({id:"copy-uri-daily",name:"Copy URI for daily note",callback:()=>new U(this,!1).open()}),this.addCommand({id:"copy-uri-search-and-replace",name:"Copy URI for search and replace",callback:()=>{let e=new R(this,"Used file for search and replace");e.open(),e.onChooseItem=t=>{let i=new q(this);i.open(),i.onChooseSuggestion=o=>{new X(this,o,t==null?void 0:t.source).open()}}}}),this.addCommand({id:"copy-uri-command",name:"Copy URI for command",callback:()=>{let e=new R(this,"Select a file to be opened before executing the command");e.open(),e.onChooseItem=t=>{new Q(this,t==null?void 0:t.source).open()}}}),this.addCommand({id:"copy-uri-block",name:"Copy URI for current block",checkCallback:e=>{let t=this.app.workspace.getActiveViewOfType(w.MarkdownView);if(e)return t!=null;let i=B.getBlockId(this.app);i&&this.tools.copyURI({filepath:t.file.path,block:i},!1,t.file)}}),this.addCommand({id:"copy-uri-block-with-format",name:"Copy formatted URI for current block",checkCallback:e=>{let t=this.app.workspace.getActiveViewOfType(w.MarkdownView);if(e)return t!=null;let i=B.getBlockId(this.app);i&&this.tools.copyURI({filepath:t.file.path,block:i},!0,t.file)}}),this.addCommand({id:"copy-uri-workspace",name:"Copy URI for workspace",callback:()=>{new ie(this).open()}}),this.addCommand({id:"copy-uri-canvas-node",name:"Copy URI for selected canvas nodes",checkCallback:e=>{let t=this.app.workspace.activeLeaf.view;if(e)return t.getViewType()==="canvas"&&t.canvas.selection.size>0;if(t.getViewType()!=="canvas")return!1;let i=t,o=[];i.canvas.selection.forEach(a=>{o.push(a.id)}),this.tools.copyURI({canvasnodes:o.join(","),filepath:t.file.path},!1,t.file)}}),this.addCommand({id:"copy-uri-canvas-viewport",name:"Copy URI for current canvas viewport",checkCallback:e=>{let t=this.app.workspace.activeLeaf.view;if(e)return t.getViewType()==="canvas";if(t.getViewType()!=="canvas")return!1;let o=t.canvas,a=o.tx.toFixed(0),l=o.ty.toFixed(0),r=o.tZoom.toFixed(3);this.tools.copyURI({filepath:t.file.path,canvasviewport:`${a},${l},${r}`},!1,t.file)}}),this.registerObsidianProtocolHandler("advanced-uri",async e=>{let t=e;for(let i in t)t[i]=decodeURIComponent(t[i]);this.onUriCall(t)}),this.registerObsidianProtocolHandler("adv-uri",async e=>{let t=e;this.onUriCall(t)}),this.registerObsidianProtocolHandler("hook-get-advanced-uri",async e=>{let t=e;for(let o in t)t[o]=decodeURIComponent(t[o]);let i=this.app.workspace.getActiveFile();i?this.hookSuccess(t,i):this.failure(t,{errorMessage:"No file opened"})}),this.registerEvent(this.app.workspace.on("file-menu",(e,t,i)=>{(i==="more-options"||i==="tab-header"||i=="file-explorer-context-menu")&&t instanceof w.TFile&&(e.addItem(o=>{o.setTitle("Copy Advanced URI").setIcon("link").setSection("info").onClick(a=>this.handlers.handleCopyFileURI(!0,!1,t))}),e.addItem(o=>{o.setTitle("Copy formatted Advanced URI").setIcon("link").setSection("info").onClick(a=>this.handlers.handleCopyFileURI(!0,!0,t))}))}))}async onUriCall(e){var i,o,a;let t=!1;if(this.lastParameters={...e},e.uid){let l=(i=this.tools.getFileFromUID(e.uid))==null?void 0:i.path;l!=null&&(e.filepath=l,e.uid=void 0)}else if(e.filename){let l=this.app.metadataCache.getFirstLinkpathDest(e.filename,"");l||(l=this.app.vault.getMarkdownFiles().find(d=>{var p;return(p=(0,w.parseFrontMatterAliases)(this.app.metadataCache.getFileCache(d).frontmatter))==null?void 0:p.includes(e.filename)}));let r=this.app.fileManager.getNewFileParent((o=this.app.workspace.getActiveFile())==null?void 0:o.path),c=r.isRoot()?"":r.path+"/";e.filepath=(a=l==null?void 0:l.path)!=null?a:c+(0,w.normalizePath)(e.filename)}if(e.filepath){e.filepath=(0,w.normalizePath)(e.filepath);let l=e.filepath.lastIndexOf(".");e.filepath.substring(l<0?e.filepath.length:l)===""&&(e.filepath=e.filepath+".md")}else if(e.daily==="true"){if(!je(this.app)){new w.Notice("Daily notes plugin is not loaded");return}let l=window.moment(Date.now()),r=await be(l,this.app),c=this.app.vault.getAbstractFileByPath(r);c||(e.exists==="true"?e.filepath=r:(c=await this.app.internalPlugins.getEnabledPluginById("daily-notes").getDailyNote(),t=!0)),c&&(e.filepath=c.path)}e.clipboard==="true"&&(e.data=await navigator.clipboard.readText()),this.chooseHandler(e,t)}async chooseHandler(e,t){e["enable-plugin"]||e["disable-plugin"]?this.handlers.handlePluginManagement(e):e.workspace||e.saveworkspace=="true"?this.handlers.handleWorkspace(e):e.commandname||e.commandid?(await this.handlers.handleCommand(e),e.filepath=void 0,e.commandid=void 0,e.commandname=void 0,await this.chooseHandler(e,t)):e.frontmatterkey?this.handlers.handleFrontmatterKey(e):e.bookmark?this.handlers.handleBookmarks(e):e.eval?this.handlers.handleEval(e):e.filepath&&e.exists==="true"?this.handlers.handleDoesFileExist(e):e.canvasnodes||e.canvasviewport?this.handlers.handleCanvas(e):e.data?this.handlers.handleWrite(e,t):e.filepath&&e.heading?(await this.handlers.handleOpen(e),e.filepath=void 0,e.heading=void 0,this.chooseHandler(e,t)):e.filepath&&e.block?(await this.handlers.handleOpen(e),e.filepath=void 0,e.block=void 0,this.chooseHandler(e,t)):(e.search||e.searchregex)&&e.replace!=null?this.handlers.handleSearchAndReplace(e):e.search?this.handlers.handleSearch(e):e.filepath?this.handlers.handleOpen(e):e.block?this.handlers.handleOpenBlock(e):e.settingid?this.handlers.handleOpenSettings(e):e.updateplugins&&this.handlers.handleUpdatePlugins(e)}async hookSuccess(e,t){if(!e["x-success"])return;let i={title:W(t.name),advanceduri:await this.tools.generateURI({filepath:t.path}),urlkey:"advanceduri",fileuri:Fe(this.app,t)};this.success(e,i)}success(e,t){if(e["x-success"]){let i=new URL(e["x-success"]);for(let o in t)i.searchParams.set(o,t[o]);window.open(i.toString())}}failure(e,t){if(e["x-error"]){let i=new URL(e["x-error"]);for(let o in t)i.searchParams.set(o,t[o]);window.open(i.toString())}}async append(e,t){var a,l;let i,o;if(e instanceof w.TFile){i=e.path;let c=(await this.app.vault.read(e)).split(` `),d;if(t.heading){let p=ce(this.app,e,t.heading);if(d=p==null?void 0:p.lastLine,d===void 0)return;p.firstLine==p.lastLine&&t.separator&&(t.separator=` `+t.separator)}else t.line?d=Number(t.line):d=c.length;d=Math.max(1,d),c[d-1]=((a=c[d-1])!=null?a:"")+((l=t.separator)!=null?l:` `)+t.data,o=c.join(` diff --git a/.obsidian/plugins/obsidian-advanced-uri/manifest.json b/.obsidian/plugins/obsidian-advanced-uri/manifest.json index 838d9e7..ddea869 100644 --- a/.obsidian/plugins/obsidian-advanced-uri/manifest.json +++ b/.obsidian/plugins/obsidian-advanced-uri/manifest.json @@ -5,7 +5,7 @@ "isDesktopOnly": false, "js": "main.js", "fundingUrl": "https://ko-fi.com/vinzent", - "version": "1.46.0", + "version": "1.46.1", "author": "Vinzent", "authorUrl": "https://github.com/Vinzent03" } diff --git a/.obsidian/plugins/obsidian-excalidraw-plugin/data.json b/.obsidian/plugins/obsidian-excalidraw-plugin/data.json index cb4b75d..115d4e7 100644 --- a/.obsidian/plugins/obsidian-excalidraw-plugin/data.json +++ b/.obsidian/plugins/obsidian-excalidraw-plugin/data.json @@ -123,7 +123,7 @@ "mdBorderColor": "Black", "mdCSS": "", "scriptEngineSettings": {}, - "previousRelease": "2.19.2", + "previousRelease": "2.20.0", "showReleaseNotes": true, "compareManifestToPluginVersion": true, "showNewVersionNotification": true, diff --git a/.obsidian/plugins/obsidian-excalidraw-plugin/main.js b/.obsidian/plugins/obsidian-excalidraw-plugin/main.js index cdc34af..006acc1 100644 --- a/.obsidian/plugins/obsidian-excalidraw-plugin/main.js +++ b/.obsidian/plugins/obsidian-excalidraw-plugin/main.js @@ -1,10 +1,10 @@ "use strict";var obsidian_module=require("obsidian"),view=require("@codemirror/view"),commands=require("@codemirror/commands"),lr=require("@lezer/lr"),language=require("@codemirror/language"),state=require("@codemirror/state");;const INITIAL_TIMESTAMP=Date.now();var LZString=function(){var r=String.fromCharCode,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=",n="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+-$",e={};function t(r,o){if(!e[r]){e[r]={};for(var n=0;n>>8,n[2*e+1]=s%256}return n},decompressFromUint8Array:function(o){if(null==o)return i.decompress(o);for(var n=new Array(o.length/2),e=0,t=n.length;e>=1}else{for(t=1,e=0;e>=1}0==--l&&(l=Math.pow(2,h),h++),delete u[c]}else for(t=s[c],e=0;e>=1;0==--l&&(l=Math.pow(2,h),h++),s[p]=f++,c=String(a)}if(""!==c){if(Object.prototype.hasOwnProperty.call(u,c)){if(c.charCodeAt(0)<256){for(e=0;e>=1}else{for(t=1,e=0;e>=1}0==--l&&(l=Math.pow(2,h),h++),delete u[c]}else for(t=s[c],e=0;e>=1;0==--l&&(l=Math.pow(2,h),h++)}for(t=2,e=0;e>=1;for(;;){if(m<<=1,v==o-1){d.push(n(m));break}v++}return d.join("")},decompress:function(r){return null==r?"":""==r?null:i._decompress(r.length,32768,function(o){return r.charCodeAt(o)})},_decompress:function(o,n,e){var t,i,s,u,a,p,c,l=[],f=4,h=4,d=3,m="",v=[],g={val:e(0),position:n,index:1};for(t=0;t<3;t+=1)l[t]=t;for(s=0,a=Math.pow(2,2),p=1;p!=a;)u=g.val&g.position,g.position>>=1,0==g.position&&(g.position=n,g.val=e(g.index++)),s|=(u>0?1:0)*p,p<<=1;switch(s){case 0:for(s=0,a=Math.pow(2,8),p=1;p!=a;)u=g.val&g.position,g.position>>=1,0==g.position&&(g.position=n,g.val=e(g.index++)),s|=(u>0?1:0)*p,p<<=1;c=r(s);break;case 1:for(s=0,a=Math.pow(2,16),p=1;p!=a;)u=g.val&g.position,g.position>>=1,0==g.position&&(g.position=n,g.val=e(g.index++)),s|=(u>0?1:0)*p,p<<=1;c=r(s);break;case 2:return""}for(l[3]=c,i=c,v.push(c);;){if(g.index>o)return"";for(s=0,a=Math.pow(2,d),p=1;p!=a;)u=g.val&g.position,g.position>>=1,0==g.position&&(g.position=n,g.val=e(g.index++)),s|=(u>0?1:0)*p,p<<=1;switch(c=s){case 0:for(s=0,a=Math.pow(2,8),p=1;p!=a;)u=g.val&g.position,g.position>>=1,0==g.position&&(g.position=n,g.val=e(g.index++)),s|=(u>0?1:0)*p,p<<=1;l[h++]=r(s),c=h-1,f--;break;case 1:for(s=0,a=Math.pow(2,16),p=1;p!=a;)u=g.val&g.position,g.position>>=1,0==g.position&&(g.position=n,g.val=e(g.index++)),s|=(u>0?1:0)*p,p<<=1;l[h++]=r(s),c=h-1,f--;break;case 2:return v.join("")}if(0==f&&(f=Math.pow(2,d),d++),l[c])m=l[c];else{if(c!==h)return null;m=i+i.charAt(0)}v.push(m),l[h++]=i+m.charAt(0),i=m,0==--f&&(f=Math.pow(2,d),d++)}}};return i}();"function"==typeof define&&define.amd?define(function(){return LZString}):"undefined"!=typeof module&&null!=module?module.exports=LZString:"undefined"!=typeof angular&&null!=angular&&angular.module("LZString",[]).factory("LZString",function(){return LZString}); let REACT_PACKAGES = `!function(){var e,t;e=this,t=function(e){function M(e){return null!==e&&"object"==typeof e&&"function"==typeof(e=te&&e[te]||e["@@iterator"])?e:null}function t(e,t,n){this.props=e,this.context=t,this.refs=oe,this.updater=n||ne}function n(){}function r(e,t,n){this.props=e,this.context=t,this.refs=oe,this.updater=n||ne}function o(e,t,n){var r,o={},u=null,a=null;if(null!=t)for(r in void 0!==t.ref&&(a=t.ref),void 0!==t.key&&(u=""+t.key),t)ae.call(t,r)&&!ie.hasOwnProperty(r)&&(o[r]=t[r]);var i=arguments.length-2;if(1===i)o.children=n;else if(1>>1,o=e[r];if(!(0>>1;rt)||e&&!q());){var r,o=R.callback;"function"==typeof o?(R.callback=null,P=R.priorityLevel,r=o(R.expirationTime<=t),t=v(),"function"==typeof r?R.callback=r:R===i(C)&&l(C),y(t)):l(C),R=i(C)}var u,a=null!==R||(null!==(u=i(E))&&_(d,u.startTime-t),!1);return a}finally{R=null,P=n,$=!1}}function q(){return!(v()-de")?l.replace("",n.displayName):l}while(1<=u&&0<=i);break}}}finally{xo=!1,Error.prepareStackTrace=t}return(n=n?n.displayName||n.name:"")?Q(n):""}function $(e){switch(e.tag){case 5:return Q(e.type);case 16:return Q("Lazy");case 13:return Q("Suspense");case 19:return Q("SuspenseList");case 0:case 2:case 15:return e=j(e.type,!1);case 11:return e=j(e.type.render,!1);case 1:return e=j(e.type,!0);default:return""}}function q(e){if(null!=e){if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case co:return"Fragment";case so:return"Portal";case po:return"Profiler";case fo:return"StrictMode";case yo:return"Suspense";case vo:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case ho:return(e.displayName||"Context")+".Consumer";case mo:return(e._context.displayName||"Context")+".Provider";case go:var n=e.render;return e=(e=e.displayName)?e:""!==(e=n.displayName||n.name||"")?"ForwardRef("+e+")":"ForwardRef";case bo:return null!==(n=e.displayName||null)?n:q(e.type)||"Memo";case ko:n=e._payload,e=e._init;try{return q(e(n))}catch(e){}}}return null}function K(e){var n=e.type;switch(e.tag){case 24:return"Cache";case 9:return(n.displayName||"Context")+".Consumer";case 10:return(n._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=(e=n.render).displayName||e.name||"",n.displayName||(""!==e?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return n;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return q(n);case 8:return n===fo?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if("function"==typeof n)return n.displayName||n.name||null;if("string"==typeof n)return n}return null}function Y(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":case"object":return e;default:return""}}function X(e){var n=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===n||"radio"===n)}function G(e){var n,t,r=X(e)?"checked":"value",l=Object.getOwnPropertyDescriptor(e.constructor.prototype,r),a=""+e[r];if(!e.hasOwnProperty(r)&&void 0!==l&&"function"==typeof l.get&&"function"==typeof l.set)return n=l.get,t=l.set,Object.defineProperty(e,r,{configurable:!0,get:function(){return n.call(this)},set:function(e){a=""+e,t.call(this,e)}}),Object.defineProperty(e,r,{enumerable:l.enumerable}),{getValue:function(){return a},setValue:function(e){a=""+e},stopTracking:function(){e._valueTracker=null,delete e[r]}}}function Z(e){e._valueTracker||(e._valueTracker=G(e))}function J(e){var n,t,r;return!(!e||(n=e._valueTracker)&&(t=n.getValue(),r="",(e=r=e?X(e)?e.checked?"true":"false":e.value:r)===t||(n.setValue(e),0)))}function ee(n){if(void 0===(n=n||("undefined"!=typeof document?document:void 0)))return null;try{return n.activeElement||n.body}catch(e){return n.body}}function ne(e,n){var t=n.checked;return g({},n,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=t?t:e._wrapperState.initialChecked})}function te(e,n){var t=null==n.defaultValue?"":n.defaultValue,r=null!=n.checked?n.checked:n.defaultChecked,t=Y(null!=n.value?n.value:t);e._wrapperState={initialChecked:r,initialValue:t,controlled:"checkbox"===n.type||"radio"===n.type?null!=n.checked:null!=n.value}}function re(e,n){null!=(n=n.checked)&&B(e,"checked",n,!1)}function le(e,n){re(e,n);var t=Y(n.value),r=n.type;if(null!=t)"number"===r?(0===t&&""===e.value||e.value!=t)&&(e.value=""+t):e.value!==""+t&&(e.value=""+t);else if("submit"===r||"reset"===r)return void e.removeAttribute("value");n.hasOwnProperty("value")?oe(e,n.type,t):n.hasOwnProperty("defaultValue")&&oe(e,n.type,Y(n.defaultValue)),null==n.checked&&null!=n.defaultChecked&&(e.defaultChecked=!!n.defaultChecked)}function ae(e,n,t){if(n.hasOwnProperty("value")||n.hasOwnProperty("defaultValue")){var r=n.type;if(("submit"===r||"reset"===r)&&null==n.value)return;n=""+e._wrapperState.initialValue,t||n===e.value||(e.value=n),e.defaultValue=n}""!==(t=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==t&&(e.name=t)}function oe(e,n,t){"number"===n&&ee(e.ownerDocument)===e||(null==t?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+t&&(e.defaultValue=""+t))}function ue(e,n,t,r){if(e=e.options,n){n={};for(var l=0;l>>=0)?32:31-(iu(e)/su|0)|0}function Re(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return 4194240&e;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return 130023424&e;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function De(e,n){var t=e.pendingLanes;if(0===t)return 0;var r,l=0,a=e.suspendedLanes,o=e.pingedLanes,u=268435455&t;if(0!==u?0!==(r=u&~a)?l=Re(r):0!==(o&=u)&&(l=Re(o)):0!==(u=t&~a)?l=Re(u):0!==o&&(l=Re(o)),0===l)return 0;if(0!==n&&n!==l&&0==(n&a)&&((o=n&-n)<=(a=l&-l)||16===a&&0!=(4194240&o)))return n;if(0!=(4&l)&&(l|=16&t),0!==(n=e.entangledLanes))for(e=e.entanglements,n&=l;0>=r,a-=r,Xi=1<<32-uu(n)+a|t<u?(i=o,o=null):i=o.sibling;var s=y(n,o,t[u],r);if(null===s){null===o&&(o=i);break}f&&o&&null===s.alternate&&d(n,o),e=h(s,e,u),null===a?l=s:a.sibling=s,a=s,o=i}if(u===t.length)p(n,o);else if(null===o)for(;uu?(i=o,o=null):i=o.sibling;var c=y(n,o,s.value,r);if(null===c){null===o&&(o=i);break}f&&o&&null===c.alternate&&d(n,o),e=h(c,e,u),null===a?l=c:a.sibling=c,a=c,o=i}if(s.done)p(n,o);else if(null===o)for(;!s.done;u++,s=t.next())null!==(s=g(n,s.value,r))&&(e=h(s,e,u),null===a?l=s:a.sibling=s,a=s);else{for(o=m(n,o);!s.done;u++,s=t.next())null!==(s=v(o,n,u,s.value,r))&&(f&&null!==s.alternate&&o.delete(null===s.key?u:s.key),e=h(s,e,u),null===a?l=s:a.sibling=s,a=s);f&&o.forEach(function(e){return d(n,e)})}return E&&vt(n,u),l}function w(e,n,t,r){if("object"==typeof(t="object"==typeof t&&null!==t&&t.type===co&&null===t.key?t.props.children:t)&&null!==t){switch(t.$$typeof){case io:e:{for(var l=t.key,a=n;null!==a;){if(a.key===l){if((l=t.type)===co){if(7===a.tag){p(e,a.sibling),(n=o(a,t.props.children)).return=e,e=n;break e}}else if(a.elementType===l||"object"==typeof l&&null!==l&&l.$$typeof===ko&&Mt(l)===a.type){p(e,a.sibling),(n=o(a,t.props)).ref=Lt(e,a,t),n.return=e,e=n;break e}p(e,a);break}d(e,a),a=a.sibling}e=t.type===co?((n=za(t.props.children,e.mode,r,t.key)).return=e,n):((r=Na(t.type,t.key,t.props,null,e.mode,r)).ref=Lt(e,n,t),r.return=e,r)}return u(e);case so:e:{for(a=t.key;null!==n;){if(n.key===a){if(4===n.tag&&n.stateNode.containerInfo===t.containerInfo&&n.stateNode.implementation===t.implementation){p(e,n.sibling),(n=o(n,t.children||[])).return=e,e=n;break e}p(e,n);break}d(e,n),n=n.sibling}(n=La(t,e.mode,r)).return=e,e=n}return u(e);case ko:return w(e,n,(a=t._init)(t._payload),r)}if(Eo(t))return b(e,n,t,r);if(H(t))return k(e,n,t,r);Tt(e,t)}return"string"==typeof t&&""!==t||"number"==typeof t?(t=""+t,(n=null!==n&&6===n.tag?(p(e,n.sibling),o(n,t)):(p(e,n),_a(t,e.mode,r))).return=e,u(e=n)):p(e,n)}return w}function Rt(){os=as=ls=null}function Dt(e,n){n=rs.current,s(rs),e._currentValue=n}function Ot(e,n,t){for(;null!==e;){var r=e.alternate;if((e.childLanes&n)!==n?(e.childLanes|=n,null!==r&&(r.childLanes|=n)):null!==r&&(r.childLanes&n)!==n&&(r.childLanes|=n),e===t)break;e=e.return}}function It(e,n){(os=as=null)!==(e=(ls=e).dependencies)&&null!==e.firstContext&&(0!=(e.lanes&n)&&(_=!0),e.firstContext=null)}function Ut(e){var n=e._currentValue;if(os!==e)if(e={context:e,memoizedValue:n,next:null},null===as){if(null===ls)throw Error(S(308));as=e,ls.dependencies={lanes:0,firstContext:e}}else as=as.next=e;return n}function Vt(e){null===us?us=[e]:us.push(e)}function At(e,n,t,r){var l=n.interleaved;return null===l?(t.next=t,Vt(n)):(t.next=l.next,l.next=t),n.interleaved=t,Wt(e,r)}function Wt(e,n){e.lanes|=n;var t=e.alternate;for(null!==t&&(t.lanes|=n),e=(t=e).return;null!==e;)e.childLanes|=n,null!==(t=e.alternate)&&(t.childLanes|=n),e=(t=e).return;return 3===t.tag?t.stateNode:null}function Bt(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function Ht(e,n){e=e.updateQueue,n.updateQueue===e&&(n.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function Qt(e,n){return{eventTime:e,lane:n,tag:0,payload:null,callback:null,next:null}}function jt(e,n,t){var r,l=e.updateQueue;return null===l?null:(l=l.shared,(0!=(2&F)?(null===(r=l.pending)?n.next=n:(n.next=r.next,r.next=n),l.pending=n,is):(null===(r=l.interleaved)?(n.next=n,Vt(l)):(n.next=r.next,r.next=n),l.interleaved=n,Wt))(e,t))}function $t(e,n,t){var r;null!==(n=n.updateQueue)&&(n=n.shared,0!=(4194240&t))&&(r=n.lanes,r&=e.pendingLanes,He(e,n.lanes=t|=r))}function qt(e,n){var t=e.updateQueue,r=e.alternate;if(null!==r&&t===(r=r.updateQueue)){var l=null,a=null;if(null!==(t=t.firstBaseUpdate)){do{var o={eventTime:t.eventTime,lane:t.lane,tag:t.tag,payload:t.payload,callback:t.callback,next:null}}while(null===a?l=a=o:a=a.next=o,null!==(t=t.next));null===a?l=a=n:a=a.next=n}else l=a=n;t={baseState:r.baseState,firstBaseUpdate:l,lastBaseUpdate:a,shared:r.shared,effects:r.effects},e.updateQueue=t}else null===(e=t.lastBaseUpdate)?t.firstBaseUpdate=n:e.next=n,t.lastBaseUpdate=n}function Kt(e,n,t,r){var l,a,o=e.updateQueue,u=(ss=!1,o.firstBaseUpdate),i=o.lastBaseUpdate;if(null!==(f=o.shared.pending)&&(o.shared.pending=null,a=(l=f).next,(l.next=null)===i?u=a:i.next=a,i=l,null!==(c=e.alternate))&&(f=(c=c.updateQueue).lastBaseUpdate)!==i&&(null===f?c.firstBaseUpdate=a:f.next=a,c.lastBaseUpdate=l),null!==u){for(var s=o.baseState,i=0,c=a=l=null,f=u;;){var d=f.lane,p=f.eventTime;if((r&d)===d){null!==c&&(c=c.next={eventTime:p,lane:0,tag:f.tag,payload:f.payload,callback:f.callback,next:null});e:{var m=e,h=f,d=n,p=t;switch(h.tag){case 1:if("function"==typeof(m=h.payload)){s=m.call(p,s,d);break e}s=m;break e;case 3:m.flags=-65537&m.flags|128;case 0:if(null==(d="function"==typeof(m=h.payload)?m.call(p,s,d):m))break e;s=g({},s,d);break e;case 2:ss=!0}}null!==f.callback&&0!==f.lane&&(e.flags|=64,null===(d=o.effects)?o.effects=[f]:d.push(f))}else p={eventTime:p,lane:d,tag:f.tag,payload:f.payload,callback:f.callback,next:null},null===c?(a=c=p,l=s):c=c.next=p,i|=d;if(null===(f=f.next)){if(null===(f=o.shared.pending))break;f=(d=f).next,d.next=null,o.lastBaseUpdate=d,o.shared.pending=null}}if(null===c&&(l=s),o.baseState=l,o.firstBaseUpdate=a,o.lastBaseUpdate=c,null!==(n=o.shared.interleaved))for(o=n;i|=o.lane,(o=o.next)!==n;);else null===u&&(o.shared.lanes=0);Qs|=i,e.lanes=i,e.memoizedState=s}}function Yt(e,n,t){if(e=n.effects,(n.effects=null)!==e)for(n=0;n<\\/script>",e=e.removeChild(e.firstChild)):"string"==typeof r.is?e=o.createElement(t,{is:r.is}):(e=o.createElement(t),"select"===t&&(o=e,r.multiple?o.multiple=!0:r.size&&(o.size=r.size))):e=o.createElementNS(e,t),e[Li]=n,e[Ti]=r,Ls(e,n,!1,!1),n.stateNode=e;e:{switch(o=ye(t,r),t){case"dialog":c("cancel",e),c("close",e),a=r;break;case"iframe":case"object":case"embed":c("load",e),a=r;break;case"video":case"audio":for(a=0;aYs&&(n.flags|=128,wl(i,!(r=!0)),n.lanes=4194304)}else{if(!r)if(null!==(e=nr(o))){if(n.flags|=128,r=!0,null!==(t=e.updateQueue)&&(n.updateQueue=t,n.flags|=4),wl(i,!0),null===i.tail&&"hidden"===i.tailMode&&!o.alternate&&!E)return p(n),null}else 2*y()-i.renderingStartTime>Ys&&1073741824!==t&&(n.flags|=128,wl(i,!(r=!0)),n.lanes=4194304);i.isBackwards?(o.sibling=n.child,n.child=o):(null!==(t=i.last)?t.sibling=o:n.child=o,i.last=o)}if(null!==i.tail)return n=i.tail,i.rendering=n,i.tail=n.sibling,i.renderingStartTime=y(),n.sibling=null,t=C.current,f(C,r?1&t|2:1&t),n}return p(n),null;case 22:case 23:return O=Bs.current,s(Bs),r=null!==n.memoizedState,null!==e&&null!==e.memoizedState!==r&&(n.flags|=8192),r&&0!=(1&n.mode)?0!=(1073741824&O)&&(p(n),6&n.subtreeFlags)&&(n.flags|=8192):p(n),null;case 24:case 25:return null}throw Error(S(156,n.tag))}function xl(e,n,t){switch(wt(n),n.tag){case 1:return h(n.type)&&(s(b),s(v)),65536&(e=n.flags)?(n.flags=-65537&e|128,n):null;case 3:return Zt(),s(b),s(v),tr(),0!=(65536&(e=n.flags))&&0==(128&e)?(n.flags=-65537&e|128,n):null;case 5:return er(n),null;case 13:if(s(C),null!==(e=n.memoizedState)&&null!==e.dehydrated){if(null===n.alternate)throw Error(S(340));Pt()}return 65536&(e=n.flags)?(n.flags=-65537&e|128,n):null;case 19:return s(C),null;case 4:return Zt(),null;case 10:return Dt(n.type._context),null;case 22:case 23:return O=Bs.current,s(Bs),null;default:return null}}function El(n,t){var e=n.ref;if(null!==e)if("function"==typeof e)try{e(null)}catch(e){w(n,t,e)}else e.current=null}function Cl(n,t,e){try{e()}catch(e){w(n,t,e)}}function Nl(e,n){if(Ei=Su,Dn(e=Rn())){if("selectionStart"in e)var t={start:e.selectionStart,end:e.selectionEnd};else e:if((a=(t=(t=e.ownerDocument)&&t.defaultView||window).getSelection&&t.getSelection())&&0!==a.rangeCount){var t=a.anchorNode,r=a.anchorOffset,l=a.focusNode,a=a.focusOffset;try{t.nodeType,l.nodeType}catch(e){t=null;break e}var o,u=0,i=-1,s=-1,c=0,f=0,d=e,p=null;n:for(;;){for(;d!==t||0!==r&&3!==d.nodeType||(i=u+r),d!==l||0!==a&&3!==d.nodeType||(s=u+a),3===d.nodeType&&(u+=d.nodeValue.length),null!==(o=d.firstChild);)p=d,d=o;for(;;){if(d===e)break n;if(p===t&&++c===r&&(i=u),p===l&&++f===a&&(s=u),null!==(o=d.nextSibling))break;p=(d=p).parentNode}d=o}t=-1===i||-1===s?null:{start:i,end:s}}else t=null;t=t||{start:0,end:0}}else t=null;for(Su=!(Ci={focusedElem:e,selectionRange:t}),T=n;null!==T;)if(e=(n=T).child,0!=(1028&n.subtreeFlags)&&null!==e)e.return=n,T=e;else for(;null!==T;){n=T;try{var m,h,g,y,v=n.alternate;if(0!=(1024&n.flags))switch(n.tag){case 0:case 11:case 15:break;case 1:null!==v&&(m=v.memoizedProps,h=v.memoizedState,y=(g=n.stateNode).getSnapshotBeforeUpdate(n.elementType===n.type?m:Ar(n.type,m),h),g.__reactInternalSnapshotBeforeUpdate=y);break;case 3:var b=n.stateNode.containerInfo;1===b.nodeType?b.textContent="":9===b.nodeType&&b.documentElement&&b.removeChild(b.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(S(163))}}catch(e){w(n,n.return,e)}if(null!==(e=n.sibling)){e.return=n.return,T=e;break}T=n.return}return v=Os,Os=!1,v}function zl(e,n,t){var r=n.updateQueue;if(null!==(r=null!==r?r.lastEffect:null)){var l,a=r=r.next;do{}while((a.tag&e)===e&&(l=a.destroy,(a.destroy=void 0)!==l)&&Cl(n,t,l),(a=a.next)!==r)}}function Pl(e,n){if(null!==(n=null!==(n=n.updateQueue)?n.lastEffect:null)){var t,r=n=n.next;do{}while((r.tag&e)===e&&(t=r.create,r.destroy=t()),(r=r.next)!==n)}}function _l(e){var n,t=e.ref;null!==t&&(n=e.stateNode,e.tag,e=n,"function"==typeof t?t(e):t.current=e)}function Ll(e){var n=e.alternate;null!==n&&(e.alternate=null,Ll(n)),e.child=null,e.deletions=null,e.sibling=null,5===e.tag&&null!==(n=e.stateNode)&&(delete n[Li],delete n[Ti],delete n[Fi],delete n[Ri],delete n[Di]),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function Tl(e){return 5===e.tag||3===e.tag||4===e.tag}function Ml(e){e:for(;;){for(;null===e.sibling;){if(null===e.return||Tl(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;5!==e.tag&&6!==e.tag&&18!==e.tag;){if(2&e.flags)continue e;if(null===e.child||4===e.tag)continue e;e=(e.child.return=e).child}if(!(2&e.flags))return e.stateNode}}function Fl(e,n,t){var r=e.tag;if(5===r||6===r)e=e.stateNode,n?(8===t.nodeType?t.parentNode:t).insertBefore(e,n):(8===t.nodeType?(n=t.parentNode).insertBefore(e,t):(n=t).appendChild(e),null==(t=t._reactRootContainer)&&null===n.onclick&&(n.onclick=Jn));else if(4!==r&&null!==(e=e.child))for(Fl(e,n,t),e=e.sibling;null!==e;)Fl(e,n,t),e=e.sibling}function Rl(e,n,t){var r=e.tag;if(5===r||6===r)e=e.stateNode,n?t.insertBefore(e,n):t.appendChild(e);else if(4!==r&&null!==(e=e.child))for(Rl(e,n,t),e=e.sibling;null!==e;)Rl(e,n,t),e=e.sibling}function Dl(e,n,t){for(t=t.child;null!==t;)Ol(e,n,t),t=t.sibling}function Ol(e,n,t){if(ou&&"function"==typeof ou.onCommitFiberUnmount)try{ou.onCommitFiberUnmount(au,t)}catch(e){}switch(t.tag){case 5:L||El(t,n);case 6:var r=M,l=Is;M=null,Dl(e,n,t),Is=l,null!==(M=r)&&(Is?(e=M,t=t.stateNode,(8===e.nodeType?e.parentNode:e).removeChild(t)):M.removeChild(t.stateNode));break;case 18:null!==M&&(Is?(e=M,t=t.stateNode,8===e.nodeType?tt(e.parentNode,t):1===e.nodeType&&tt(e,t),Je(e)):tt(M,t.stateNode));break;case 4:r=M,l=Is,M=t.stateNode.containerInfo,Is=!0,Dl(e,n,t),M=r,Is=l;break;case 0:case 11:case 14:case 15:if(!L&&null!==(r=t.updateQueue)&&null!==(r=r.lastEffect)){l=r=r.next;do{var a=(o=l).destroy,o=o.tag}while(void 0===a||0==(2&o)&&0==(4&o)||Cl(t,n,a),(l=l.next)!==r)}Dl(e,n,t);break;case 1:if(!L&&(El(t,n),"function"==typeof(r=t.stateNode).componentWillUnmount))try{r.props=t.memoizedProps,r.state=t.memoizedState,r.componentWillUnmount()}catch(e){w(t,n,e)}Dl(e,n,t);break;case 21:Dl(e,n,t);break;case 22:1&t.mode?(L=(r=L)||null!==t.memoizedState,Dl(e,n,t),L=r):Dl(e,n,t);break;default:Dl(e,n,t)}}function Il(t){var r,e=t.updateQueue;null!==e&&((t.updateQueue=null)===(r=t.stateNode)&&(r=t.stateNode=new Ds),e.forEach(function(e){var n=ka.bind(null,t,e);r.has(e)||(r.add(e),e.then(n,n))}))}function Ul(e,n,t){if(null!==(t=n.deletions))for(var r=0;r