skilld 1.7.3 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (161) hide show
  1. package/dist/_chunks/add.mjs +66 -0
  2. package/dist/_chunks/add.mjs.map +1 -0
  3. package/dist/_chunks/agent-prompt.mjs +88 -0
  4. package/dist/_chunks/agent-prompt.mjs.map +1 -0
  5. package/dist/_chunks/agent.mjs +737 -619
  6. package/dist/_chunks/agent.mjs.map +1 -1
  7. package/dist/_chunks/args.mjs +42 -0
  8. package/dist/_chunks/args.mjs.map +1 -0
  9. package/dist/_chunks/assemble.mjs +11 -8
  10. package/dist/_chunks/assemble.mjs.map +1 -1
  11. package/dist/_chunks/author.mjs +77 -131
  12. package/dist/_chunks/author.mjs.map +1 -1
  13. package/dist/_chunks/cache.mjs +320 -54
  14. package/dist/_chunks/cache.mjs.map +1 -1
  15. package/dist/_chunks/cache2.mjs +7 -6
  16. package/dist/_chunks/cache2.mjs.map +1 -1
  17. package/dist/_chunks/client.mjs +117 -0
  18. package/dist/_chunks/client.mjs.map +1 -0
  19. package/dist/_chunks/core.mjs +7 -4
  20. package/dist/_chunks/detect.mjs +54 -44
  21. package/dist/_chunks/detect.mjs.map +1 -1
  22. package/dist/_chunks/eject.mjs +69 -0
  23. package/dist/_chunks/eject.mjs.map +1 -0
  24. package/dist/_chunks/embedding-cache2.mjs +2 -2
  25. package/dist/_chunks/env.mjs +19 -0
  26. package/dist/_chunks/env.mjs.map +1 -0
  27. package/dist/_chunks/install-many.mjs +376 -0
  28. package/dist/_chunks/install-many.mjs.map +1 -0
  29. package/dist/_chunks/install.mjs +86 -371
  30. package/dist/_chunks/install.mjs.map +1 -1
  31. package/dist/_chunks/intro.mjs +63 -0
  32. package/dist/_chunks/intro.mjs.map +1 -0
  33. package/dist/_chunks/list.mjs +2 -2
  34. package/dist/_chunks/list.mjs.map +1 -1
  35. package/dist/_chunks/lockfile.mjs +31 -7
  36. package/dist/_chunks/lockfile.mjs.map +1 -1
  37. package/dist/_chunks/login.mjs +233 -0
  38. package/dist/_chunks/login.mjs.map +1 -0
  39. package/dist/_chunks/logout.mjs +27 -0
  40. package/dist/_chunks/logout.mjs.map +1 -0
  41. package/dist/_chunks/map.mjs +11 -0
  42. package/dist/_chunks/map.mjs.map +1 -0
  43. package/dist/_chunks/markdown.mjs +79 -54
  44. package/dist/_chunks/markdown.mjs.map +1 -1
  45. package/dist/_chunks/menu.mjs +33 -0
  46. package/dist/_chunks/menu.mjs.map +1 -0
  47. package/dist/_chunks/model-picker.mjs +61 -0
  48. package/dist/_chunks/model-picker.mjs.map +1 -0
  49. package/dist/_chunks/monorepo.mjs +73 -0
  50. package/dist/_chunks/monorepo.mjs.map +1 -0
  51. package/dist/_chunks/package-json.mjs.map +1 -1
  52. package/dist/_chunks/paths.mjs +47 -0
  53. package/dist/_chunks/paths.mjs.map +1 -0
  54. package/dist/_chunks/pipeline.mjs +985 -0
  55. package/dist/_chunks/pipeline.mjs.map +1 -0
  56. package/dist/_chunks/pool2.mjs +2 -2
  57. package/dist/_chunks/portable.mjs +151 -0
  58. package/dist/_chunks/portable.mjs.map +1 -0
  59. package/dist/_chunks/prepare-hook.mjs +2 -0
  60. package/dist/_chunks/prepare-hook2.mjs +61 -0
  61. package/dist/_chunks/prepare-hook2.mjs.map +1 -0
  62. package/dist/_chunks/prepare.mjs +47 -3
  63. package/dist/_chunks/prepare.mjs.map +1 -1
  64. package/dist/_chunks/prepare2.mjs +9 -8
  65. package/dist/_chunks/prepare2.mjs.map +1 -1
  66. package/dist/_chunks/prompts.mjs +784 -26
  67. package/dist/_chunks/prompts.mjs.map +1 -1
  68. package/dist/_chunks/pull.mjs +219 -0
  69. package/dist/_chunks/pull.mjs.map +1 -0
  70. package/dist/_chunks/regex.mjs +19 -0
  71. package/dist/_chunks/regex.mjs.map +1 -0
  72. package/dist/_chunks/retriv.mjs +2 -171
  73. package/dist/_chunks/retriv2.mjs +159 -0
  74. package/dist/_chunks/retriv2.mjs.map +1 -0
  75. package/dist/_chunks/sanitize.mjs +12 -9
  76. package/dist/_chunks/sanitize.mjs.map +1 -1
  77. package/dist/_chunks/search-helpers.mjs +9 -8
  78. package/dist/_chunks/search-helpers.mjs.map +1 -1
  79. package/dist/_chunks/search-interactive.mjs +23 -20
  80. package/dist/_chunks/search-interactive.mjs.map +1 -1
  81. package/dist/_chunks/search.mjs +3 -4
  82. package/dist/_chunks/search.mjs.map +1 -1
  83. package/dist/_chunks/{sources.mjs → semver.mjs} +1128 -838
  84. package/dist/_chunks/semver.mjs.map +1 -0
  85. package/dist/_chunks/skill-installer.mjs +2 -0
  86. package/dist/_chunks/skill-installer2.mjs +154 -0
  87. package/dist/_chunks/skill-installer2.mjs.map +1 -0
  88. package/dist/_chunks/skills.mjs +12 -12
  89. package/dist/_chunks/skills.mjs.map +1 -1
  90. package/dist/_chunks/store.mjs +107 -0
  91. package/dist/_chunks/store.mjs.map +1 -0
  92. package/dist/_chunks/sync.mjs +761 -1349
  93. package/dist/_chunks/sync.mjs.map +1 -1
  94. package/dist/_chunks/sync2.mjs +2 -3
  95. package/dist/_chunks/telemetry.mjs +26 -0
  96. package/dist/_chunks/telemetry.mjs.map +1 -0
  97. package/dist/_chunks/uninstall.mjs +15 -13
  98. package/dist/_chunks/uninstall.mjs.map +1 -1
  99. package/dist/_chunks/update.mjs +171 -0
  100. package/dist/_chunks/update.mjs.map +1 -0
  101. package/dist/_chunks/upload.mjs +4 -4
  102. package/dist/_chunks/validate.mjs +1 -1
  103. package/dist/_chunks/version.mjs +16 -27
  104. package/dist/_chunks/version.mjs.map +1 -1
  105. package/dist/_chunks/whoami.mjs +21 -0
  106. package/dist/_chunks/whoami.mjs.map +1 -0
  107. package/dist/_chunks/wizard.mjs +2 -190
  108. package/dist/_chunks/wizard2.mjs +200 -0
  109. package/dist/_chunks/wizard2.mjs.map +1 -0
  110. package/dist/cli.mjs +77 -59
  111. package/dist/cli.mjs.map +1 -1
  112. package/dist/prepare.mjs +5 -4
  113. package/dist/prepare.mjs.map +1 -1
  114. package/dist/retriv/worker.d.mts +5 -1
  115. package/dist/retriv/worker.d.mts.map +1 -1
  116. package/dist/retriv/worker.mjs +1 -1
  117. package/package.json +20 -29
  118. package/dist/_chunks/author-group.mjs +0 -17
  119. package/dist/_chunks/author-group.mjs.map +0 -1
  120. package/dist/_chunks/cli-helpers.mjs +0 -335
  121. package/dist/_chunks/cli-helpers.mjs.map +0 -1
  122. package/dist/_chunks/cli-helpers2.mjs +0 -2
  123. package/dist/_chunks/config.mjs +0 -122
  124. package/dist/_chunks/config.mjs.map +0 -1
  125. package/dist/_chunks/index.d.mts +0 -151
  126. package/dist/_chunks/index.d.mts.map +0 -1
  127. package/dist/_chunks/index2.d.mts +0 -44
  128. package/dist/_chunks/index2.d.mts.map +0 -1
  129. package/dist/_chunks/index3.d.mts +0 -589
  130. package/dist/_chunks/index3.d.mts.map +0 -1
  131. package/dist/_chunks/prefix.mjs +0 -108
  132. package/dist/_chunks/prefix.mjs.map +0 -1
  133. package/dist/_chunks/retriv.mjs.map +0 -1
  134. package/dist/_chunks/setup.mjs +0 -17
  135. package/dist/_chunks/setup.mjs.map +0 -1
  136. package/dist/_chunks/shared.mjs +0 -503
  137. package/dist/_chunks/shared.mjs.map +0 -1
  138. package/dist/_chunks/skill.mjs +0 -329
  139. package/dist/_chunks/skill.mjs.map +0 -1
  140. package/dist/_chunks/sources.mjs.map +0 -1
  141. package/dist/_chunks/sync-registry.mjs +0 -59
  142. package/dist/_chunks/sync-registry.mjs.map +0 -1
  143. package/dist/_chunks/sync-shared.mjs +0 -2
  144. package/dist/_chunks/sync-shared2.mjs +0 -1020
  145. package/dist/_chunks/sync-shared2.mjs.map +0 -1
  146. package/dist/_chunks/types.d.mts +0 -88
  147. package/dist/_chunks/types.d.mts.map +0 -1
  148. package/dist/_chunks/wizard.mjs.map +0 -1
  149. package/dist/agent/index.d.mts +0 -346
  150. package/dist/agent/index.d.mts.map +0 -1
  151. package/dist/agent/index.mjs +0 -5
  152. package/dist/cache/index.d.mts +0 -2
  153. package/dist/cache/index.mjs +0 -4
  154. package/dist/index.d.mts +0 -5
  155. package/dist/index.mjs +0 -5
  156. package/dist/retriv/index.d.mts +0 -3
  157. package/dist/retriv/index.mjs +0 -2
  158. package/dist/sources/index.d.mts +0 -2
  159. package/dist/sources/index.mjs +0 -3
  160. package/dist/types.d.mts +0 -4
  161. package/dist/types.mjs +0 -1
@@ -1,151 +0,0 @@
1
- /**
2
- * Cache configuration
3
- */
4
- /** Global cache directory */
5
- declare const CACHE_DIR: string;
6
- /** References subdirectory */
7
- declare const REFERENCES_DIR: string;
8
- /** Repo-level cache (issues, discussions, releases shared across monorepo packages) */
9
- declare const REPOS_DIR: string;
10
- /** Get repo cache dir for owner/repo with path traversal validation */
11
- declare function getRepoCacheDir(owner: string, repo: string): string;
12
- /** Get search DB path for a specific package@version */
13
- declare function getPackageDbPath(name: string, version: string): string;
14
- /**
15
- * Cache types
16
- */
17
- interface CacheConfig {
18
- /** Package name */
19
- name: string;
20
- /** Package version (full semver) */
21
- version: string;
22
- }
23
- interface CachedPackage {
24
- name: string;
25
- version: string;
26
- dir: string;
27
- }
28
- interface CachedDoc {
29
- path: string;
30
- content: string;
31
- }
32
- /** Resolve package directory: node_modules first, then global cache */
33
- declare function resolvePkgDir(name: string, cwd: string, version?: string): string | null;
34
- interface ShippedSkill {
35
- skillName: string;
36
- skillDir: string;
37
- }
38
- /** Check if package ships a skills/ directory with SKILL.md or _SKILL.md subdirs */
39
- declare function getShippedSkills(name: string, cwd: string, version?: string): ShippedSkill[];
40
- /** Create symlink from skills dir to shipped skill dir */
41
- declare function linkShippedSkill(baseDir: string, skillName: string, targetDir: string): void;
42
- /**
43
- * Check if package is cached at given version
44
- */
45
- declare function isCached(name: string, version: string): boolean;
46
- /** Check if cache only has docs/README.md (pkg/ already has this) */
47
- declare function isReadmeOnlyCache(cacheDir: string): boolean;
48
- declare function inferDocsTypeFromCache(cacheDir: string, source?: string): 'llms.txt' | 'readme' | 'docs';
49
- /**
50
- * Ensure cache directories exist
51
- */
52
- declare function ensureCacheDir(): void;
53
- /**
54
- * Write docs to cache
55
- */
56
- declare function writeToCache(name: string, version: string, docs: CachedDoc[]): string;
57
- /**
58
- * Write docs to repo-level cache (~/.skilld/repos/<owner>/<repo>/)
59
- */
60
- declare function writeToRepoCache(owner: string, repo: string, docs: CachedDoc[]): string;
61
- /**
62
- * Create symlink from .skilld dir to a repo-level cached subdirectory.
63
- * .claude/skills/<skill>/.skilld/<subdir> -> ~/.skilld/repos/<owner>/<repo>/<subdir>
64
- */
65
- declare function linkRepoCachedDir(skillDir: string, owner: string, repo: string, subdir: string): void;
66
- /**
67
- * Create symlink from .skilld dir to a cached subdirectory.
68
- * Unified handler for docs, issues, discussions, sections, releases.
69
- *
70
- * Structure:
71
- * .claude/skills/<skill>/.skilld/<subdir> -> ~/.skilld/references/<pkg>@<version>/<subdir>
72
- *
73
- * The .skilld/ dirs are gitignored. After clone, `skilld install` recreates from lockfile.
74
- */
75
- declare function linkCachedDir(skillDir: string, name: string, version: string, subdir: string): void;
76
- /**
77
- * Create symlink from .skilld dir to package directory
78
- *
79
- * Structure:
80
- * .claude/skills/<skill>/.skilld/pkg -> node_modules/<pkg> OR ~/.skilld/references/<pkg>@<version>/pkg
81
- *
82
- * This gives access to package.json, README.md, dist/, and any shipped docs/
83
- */
84
- declare function linkPkg(skillDir: string, name: string, cwd: string, version?: string): void;
85
- /**
86
- * Create named symlink from .skilld dir to package directory.
87
- * Short name = last segment of package name (e.g., @vue/reactivity → pkg-reactivity)
88
- *
89
- * Structure:
90
- * .claude/skills/<skill>/.skilld/pkg-<short> -> node_modules/<pkg>
91
- */
92
- declare function linkPkgNamed(skillDir: string, name: string, cwd: string, version?: string): void;
93
- /**
94
- * Get key files from a package directory for display
95
- * Returns entry points + docs files
96
- */
97
- declare function getPkgKeyFiles(name: string, cwd: string, version?: string): string[];
98
- /**
99
- * Write LLM-generated section outputs to global cache for cross-project reuse
100
- *
101
- * Structure:
102
- * ~/.skilld/references/<pkg>@<version>/sections/_BEST_PRACTICES.md
103
- */
104
- declare function writeSections(name: string, version: string, sections: Array<{
105
- file: string;
106
- content: string;
107
- }>): void;
108
- /**
109
- * Read a cached section from the global references dir
110
- */
111
- declare function readCachedSection(name: string, version: string, file: string): string | null;
112
- declare function hasShippedDocs(name: string, cwd: string, version?: string): boolean;
113
- /**
114
- * List all cached packages
115
- */
116
- declare function listCached(): CachedPackage[];
117
- /**
118
- * Read cached docs for a package
119
- */
120
- declare function readCachedDocs(name: string, version: string): CachedDoc[];
121
- /**
122
- * Clear cache for a specific package
123
- */
124
- declare function clearCache(name: string, version: string): boolean;
125
- /**
126
- * Clear all cache
127
- */
128
- declare function clearAllCache(): number;
129
- /**
130
- * List files in .skilld directory (pkg + docs) as relative paths for prompt context
131
- * Returns paths like ./.skilld/pkg/README.md, ./.skilld/docs/api.md
132
- */
133
- declare function listReferenceFiles(skillDir: string, maxDepth?: number): string[];
134
- /**
135
- * Version utilities
136
- */
137
- /**
138
- * Get exact version key for cache keying
139
- */
140
- declare function getVersionKey(version: string): string;
141
- /**
142
- * Get cache key for a package: name@version
143
- */
144
- declare function getCacheKey(name: string, version: string): string;
145
- /**
146
- * Get path to cached package references.
147
- * Validates name/version to prevent path traversal.
148
- */
149
- declare function getCacheDir(name: string, version: string): string;
150
- export { CACHE_DIR as A, ShippedSkill as C, CacheConfig as D, resolvePkgDir as E, REPOS_DIR as M, getPackageDbPath as N, CachedDoc as O, getRepoCacheDir as P, writeToRepoCache as S, linkShippedSkill as T, listReferenceFiles as _, clearCache as a, writeSections as b, hasShippedDocs as c, isReadmeOnlyCache as d, linkCachedDir as f, listCached as g, linkRepoCachedDir as h, clearAllCache as i, REFERENCES_DIR as j, CachedPackage as k, inferDocsTypeFromCache as l, linkPkgNamed as m, getCacheKey as n, ensureCacheDir as o, linkPkg as p, getVersionKey as r, getPkgKeyFiles as s, getCacheDir as t, isCached as u, readCachedDocs as v, getShippedSkills as w, writeToCache as x, readCachedSection as y };
151
- //# sourceMappingURL=index.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index.d.mts","names":[],"sources":["../../src/cache/config.ts","../../src/cache/types.ts","../../src/core/prepare.ts","../../src/cache/storage.ts","../../src/cache/version.ts"],"mappings":"AAQA;;;;cAAa,SAAA;AAGb;AAAA,cAAa,cAAA;;cAGA,SAAA;;iBAGG,eAAA,CAAgB,KAAA,UAAe,IAAA;;iBAO/B,gBAAA,CAAiB,IAAA,UAAc,OAAA;AAhB/C;;;AAAA,UCJiB,WAAA;EDIkC;ECFjD,IAAA;EDKyD;ECHzD,OAAA;AAAA;AAAA,UAGe,aAAA;EACf,IAAA;EACA,OAAA;EACA,GAAA;AAAA;AAAA,UAGe,SAAA;EACf,IAAA;EACA,OAAA;AAAA;;iBCEc,aAAA,CAAc,IAAA,UAAc,GAAA,UAAa,OAAA;AAAA,UAiDxC,YAAA;EACf,SAAA;EACA,QAAA;AAAA;;iBAIc,gBAAA,CAAiB,IAAA,UAAc,GAAA,UAAa,OAAA,YAAmB,YAAA;;iBAe/D,gBAAA,CAAiB,OAAA,UAAiB,SAAA,UAAmB,SAAA;;AFhFrE;;iBGoBgB,QAAA,CAAS,IAAA,UAAc,OAAA;;iBAKvB,iBAAA,CAAkB,QAAA;AAAA,iBAQlB,sBAAA,CAAuB,QAAA,UAAkB,MAAA;;;;iBASzC,cAAA,CAAA;AHpChB;;;AAAA,iBG4CgB,YAAA,CACd,IAAA,UACA,OAAA,UACA,IAAA,EAAM,SAAA;;AHxCR;;iBGyDgB,gBAAA,CACd,KAAA,UACA,IAAA,UACA,IAAA,EAAM,SAAA;;;;AFhFR;iBEkGgB,iBAAA,CAAkB,QAAA,UAAkB,KAAA,UAAe,IAAA,UAAc,MAAA;;;;AF3FjF;;;;;;iBEiHgB,aAAA,CAAc,QAAA,UAAkB,IAAA,UAAc,OAAA,UAAiB,MAAA;;ADvG/E;;;;;;;iBCoIgB,OAAA,CAAQ,QAAA,UAAkB,IAAA,UAAc,GAAA,UAAa,OAAA;;ADnFrE;;;;;AAMA;iBCqGgB,YAAA,CAAa,QAAA,UAAkB,IAAA,UAAc,GAAA,UAAa,OAAA;;;;;iBAsB1D,cAAA,CAAe,IAAA,UAAc,GAAA,UAAa,OAAA;;;;AD5G1D;;;iBCmJgB,aAAA,CAAc,IAAA,UAAc,OAAA,UAAiB,QAAA,EAAU,KAAA;EAAQ,IAAA;EAAc,OAAA;AAAA;;;;iBAY7E,iBAAA,CAAkB,IAAA,UAAc,OAAA,UAAiB,IAAA;AAAA,iBAOjD,cAAA,CAAe,IAAA,UAAc,GAAA,UAAa,OAAA;;;;iBAiB1C,UAAA,CAAA,GAAc,aAAA;;;;iBAed,cAAA,CAAe,IAAA,UAAc,OAAA,WAAkB,SAAA;AArP/D;;;AAAA,iBAoRgB,UAAA,CAAW,IAAA,UAAc,OAAA;;AA3QzC;;iBAuRgB,aAAA,CAAA;;;AA/QhB;;iBA8RgB,kBAAA,CAAmB,QAAA,UAAkB,QAAA;AHnVrD;;;;;AAGA;iBIKgB,aAAA,CAAc,OAAA;;;;iBAOd,WAAA,CAAY,IAAA,UAAc,OAAA;;;;;iBAQ1B,WAAA,CAAY,IAAA,UAAc,OAAA"}
@@ -1,44 +0,0 @@
1
- import { c as SearchResult, l as SearchSnippet, n as Document, r as IndexConfig, s as SearchOptions } from "./types.mjs";
2
- import * as _$retriv from "retriv";
3
- type RetrivInstance = Awaited<ReturnType<typeof getDb>>;
4
- declare class SearchDepsUnavailableError extends Error {
5
- constructor(cause: unknown, message?: string);
6
- }
7
- declare function getDb(config: Pick<IndexConfig, 'dbPath'>): Promise<_$retriv.SearchProvider & {
8
- _testSetCategories?: (cats: string[]) => void;
9
- }>;
10
- /**
11
- * Index documents in-process (no worker thread).
12
- * Preferred for tests and environments where worker_threads is unreliable.
13
- */
14
- declare function createIndexDirect(documents: Document[], config: IndexConfig & {
15
- removeIds?: string[];
16
- }): Promise<void>;
17
- /**
18
- * Index documents in a background worker thread.
19
- * Falls back to direct indexing if worker fails to spawn.
20
- */
21
- declare function createIndex(documents: Document[], config: IndexConfig & {
22
- removeIds?: string[];
23
- }): Promise<void>;
24
- /**
25
- * List all raw document IDs in an existing index.
26
- * Returns chunk IDs (e.g. "doc-id#chunk-0") for chunked docs.
27
- * Queries sqlite directly to bypass createRetriv's parent-ID deduplication,
28
- * so callers can use these IDs for exact removal and parent-ID grouping.
29
- */
30
- declare function listIndexIds(config: Pick<IndexConfig, 'dbPath'>): Promise<string[]>;
31
- /**
32
- * Remove documents by ID from an existing index.
33
- */
34
- declare function removeFromIndex(ids: string[], config: Pick<IndexConfig, 'dbPath'>): Promise<void>;
35
- declare function search(query: string, config: IndexConfig, options?: SearchOptions): Promise<SearchResult[]>;
36
- /**
37
- * Search and return formatted snippets
38
- */
39
- declare function searchSnippets(query: string, config: IndexConfig, options?: SearchOptions): Promise<SearchSnippet[]>;
40
- declare function openPool(dbPaths: string[]): Promise<Map<string, RetrivInstance>>;
41
- declare function searchPooled(query: string, pool: Map<string, RetrivInstance>, options?: SearchOptions): Promise<SearchSnippet[]>;
42
- declare function closePool(pool: Map<string, RetrivInstance>): Promise<void>;
43
- export { getDb as a, removeFromIndex as c, searchSnippets as d, createIndexDirect as i, search as l, closePool as n, listIndexIds as o, createIndex as r, openPool as s, SearchDepsUnavailableError as t, searchPooled as u };
44
- //# sourceMappingURL=index2.d.mts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"index2.d.mts","names":[],"sources":["../../src/retriv/index.ts"],"mappings":";;KAKK,cAAA,GAAiB,OAAA,CAAQ,UAAA,QAAkB,KAAA;AAAA,cAEnC,0BAAA,SAAmC,KAAA;cAClC,KAAA,WAAgB,OAAA;AAAA;AAAA,iBAqCR,KAAA,CAAM,MAAA,EAAQ,IAAA,CAAK,WAAA,cAAsB,OAAA,CAAvB,QAAA,CAAuB,cAAA;;;;;;;iBA0CzC,iBAAA,CACpB,SAAA,EAAW,QAAA,IACX,MAAA,EAAQ,WAAA;EAAgB,SAAA;AAAA,IACvB,OAAA;AAnFH;;;;AAAA,iBA+FsB,WAAA,CACpB,SAAA,EAAW,QAAA,IACX,MAAA,EAAQ,WAAA;EAAgB,SAAA;AAAA,IACvB,OAAA;;;;AA5DH;;;iBAwEsB,YAAA,CACpB,MAAA,EAAQ,IAAA,CAAK,WAAA,cACZ,OAAA;;;;iBAiBmB,eAAA,CACpB,GAAA,YACA,MAAA,EAAQ,IAAA,CAAK,WAAA,cACZ,OAAA;AAAA,iBAQmB,MAAA,CACpB,KAAA,UACA,MAAA,EAAQ,WAAA,EACR,OAAA,GAAS,aAAA,GACR,OAAA,CAAQ,YAAA;;;;iBAqBW,cAAA,CACpB,KAAA,UACA,MAAA,EAAQ,WAAA,EACR,OAAA,GAAS,aAAA,GACR,OAAA,CAAQ,aAAA;AAAA,iBA2BW,QAAA,CAAS,OAAA,aAAoB,OAAA,CAAQ,GAAA,SAAY,cAAA;AAAA,iBASjD,YAAA,CACpB,KAAA,UACA,IAAA,EAAM,GAAA,SAAY,cAAA,GAClB,OAAA,GAAS,aAAA,GACR,OAAA,CAAQ,aAAA;AAAA,iBAkCW,SAAA,CAAU,IAAA,EAAM,GAAA,SAAY,cAAA,IAAkB,OAAA"}