@podlite/to-jsx 0.0.70 → 0.0.72

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.podlite CHANGED
@@ -2,6 +2,14 @@
2
2
 
3
3
  =head1 Upcoming
4
4
 
5
+ =head1 0.0.72
6
+
7
+ =item a link pointing inside the document can carry a preview. The renderer takes a `linkPreview` handler, hands it the target and the text found there, and shows whatever the handler returns. Without a handler a link renders as before and nothing is looked up
8
+
9
+ =item the modules that held syntax highlighting are gone from this package: the shiki module and the code component moved to @podlite/highlight. Both were reachable as deep imports and now are not; the component is still exported from the package root
10
+
11
+ =item syntax highlighting comes from @podlite/highlight instead of a copy kept here. shiki is no longer a direct dependency but a peer of @podlite/highlight: install it alongside. Type checking passes without it, and a chunk that fails to load leaves plain text rather than an error, but the name still has to resolve when you bundle
12
+
5
13
  =head1 0.0.70
6
14
 
7
15
  =item a code block wraps at spaces instead of breaking inside a word, so a long command stays readable
package/esm/index.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { PodNode, PodliteExport } from '@podlite/schema';
3
+ import { LinkPreviewResolver } from './link-preview';
4
+ export type { LinkPreviewResolver, LinkPreviewTarget } from './link-preview';
3
5
  export type CreateElement = typeof React.createElement;
4
6
  export declare class BlockBoundary extends React.Component<{
5
7
  blockName?: string;
@@ -32,6 +34,7 @@ export declare const Podlite: React.FC<{
32
34
  expandPaths?: ExpandPaths;
33
35
  imageSrc?: ImageSrcResolver;
34
36
  imageBaseDir?: string;
37
+ linkPreview?: LinkPreviewResolver;
35
38
  renderMode?: 'production' | 'draft';
36
39
  }>;
37
40
  type IncludeReader = (path: string, baseDir?: string) => string | null;
package/esm/index.js CHANGED
@@ -1,12 +1,14 @@
1
1
  import * as React from 'react';
2
2
  import { createElement } from 'react';
3
3
  import { podlite as podlite_core } from 'podlite';
4
- import { parse, makeAttrs, emptyContent, content as nodeContent, setFn, subUse, toAny, isNamedBlock, isSemanticBlock, Writer, toAnyRules, frozenIds, getSafeNodeId, sameDocTarget, } from '@podlite/schema';
4
+ import { parse, makeAttrs, emptyContent, content as nodeContent, setFn, subUse, toAny, isNamedBlock, isSemanticBlock, Writer, toAnyRules, frozenIds, getSafeNodeId, linkTarget, sameDocTarget, } from '@podlite/schema';
5
5
  import { pluginCleanLocation as clean_plugin } from '@podlite/schema';
6
- import { parseSelector, runSelector, getTextContentFromNode, maskText, collectText } from '@podlite/schema';
6
+ import { parseSelector, runSelector, getTextContentFromNode, maskText, collectText, isCovered, writtenValue, } from '@podlite/schema';
7
+ import { buildLinkPreviewIndex } from './link-preview';
8
+ import { applyFoldedSections } from '@podlite/schema';
7
9
  import { readLinkConfig, codeConfigWithDefaults } from '@podlite/schema';
8
10
  import { decodeHTMLStrict } from 'entities';
9
- import HighlightedCode from './HighlightedCode';
11
+ import { HighlightedCode } from '@podlite/highlight';
10
12
  // Client-side safety net: a crash inside one block leaves the rest of the
11
13
  // page alive instead of unmounting the whole preview.
12
14
  export class BlockBoundary extends React.Component {
@@ -70,81 +72,6 @@ export const Podlite = ({ children, ...options }) => {
70
72
  const result = podlite(children, options);
71
73
  return result;
72
74
  };
73
- // `:folded` on a heading folds the whole section — the heading plus every
74
- // following node up to the next same-or-higher-level heading. Detect the
75
- // attribute on =head nodes in a container's content array and wrap that
76
- // range in a synthetic `_folded_section` block so the JSX renderer can emit
77
- // <details> around it.
78
- const getFoldedAttr = (node) => {
79
- const config = node && node.config;
80
- if (!Array.isArray(config))
81
- return null;
82
- const entry = config.find((c) => c && c.name === 'folded');
83
- return entry ? entry.value : null;
84
- };
85
- const isHeadBlock = (node) => node && node.type === 'block' && node.name === 'head' && node.level !== undefined && node.level !== null;
86
- const headLevel = (node) => Number(node.level);
87
- const groupFoldedSections = (content) => {
88
- if (!Array.isArray(content))
89
- return content;
90
- const result = [];
91
- let i = 0;
92
- while (i < content.length) {
93
- const node = content[i];
94
- if (isHeadBlock(node)) {
95
- const folded = getFoldedAttr(node);
96
- if (folded !== null) {
97
- const level = headLevel(node);
98
- const sectionNodes = [node];
99
- let j = i + 1;
100
- while (j < content.length) {
101
- const next = content[j];
102
- if (isHeadBlock(next) && headLevel(next) <= level)
103
- break;
104
- sectionNodes.push(next);
105
- j++;
106
- }
107
- result.push({
108
- type: 'block',
109
- name: '_folded_section',
110
- content: sectionNodes,
111
- foldedState: folded,
112
- location: node.location,
113
- });
114
- i = j;
115
- continue;
116
- }
117
- }
118
- result.push(node);
119
- i++;
120
- }
121
- return result;
122
- };
123
- // Walk the AST and apply `groupFoldedSections` to every block's `content`
124
- // array, so :folded heads inside named blocks, defn, nested etc. fold the
125
- // same way they do at the pod-level. Inside an already-built
126
- // `_folded_section`, the first element is the heading the wrapper belongs
127
- // to — skip it when grouping the rest, otherwise the same head would be
128
- // re-wrapped on every recursion. Nested folds (a folded heading inside a
129
- // folded section's body) are still picked up by grouping the remainder.
130
- const applyFoldedSectionsRecursively = (node) => {
131
- if (!node || typeof node !== 'object')
132
- return node;
133
- if (Array.isArray(node))
134
- return node.map(applyFoldedSectionsRecursively);
135
- if (!Array.isArray(node.content))
136
- return node;
137
- if (node.name === '_folded_section') {
138
- const [head, ...rest] = node.content;
139
- const grouped = groupFoldedSections(rest);
140
- return {
141
- ...node,
142
- content: [applyFoldedSectionsRecursively(head), ...grouped.map(applyFoldedSectionsRecursively)],
143
- };
144
- }
145
- const grouped = groupFoldedSections(node.content);
146
- return { ...node, content: grouped.map(applyFoldedSectionsRecursively) };
147
- };
148
75
  export const HookedImage = ({ src, alt, hook, baseDir, render }) => {
149
76
  const initial = React.useMemo(() => {
150
77
  const r = hook(src, baseDir);
@@ -177,6 +104,35 @@ const linkConfigProps = (config) => {
177
104
  props.download = download;
178
105
  return props;
179
106
  };
107
+ // React drops an undefined href, which is the anchor HTML gives a link whose
108
+ // target the author never wrote.
109
+ const hrefOf = (node, ctx) => {
110
+ const target = linkTarget(node);
111
+ if (target === undefined)
112
+ return undefined;
113
+ const address = sameDocTarget(target, ctx);
114
+ return address === undefined ? undefined : String(address);
115
+ };
116
+ // Both link codes ask for the same index over the same document, and each rule is
117
+ // initialised separately. Keyed by the tree so the walk happens once; weak so a
118
+ // document that is done with is not held here.
119
+ const previewIndexes = new WeakMap();
120
+ const previewIndexFor = (tree) => {
121
+ if (!tree || typeof tree !== 'object')
122
+ return new Map();
123
+ const known = previewIndexes.get(tree);
124
+ if (known)
125
+ return known;
126
+ const built = buildLinkPreviewIndex(tree);
127
+ previewIndexes.set(tree, built);
128
+ return built;
129
+ };
130
+ const previewOf = (node, ctx, index) => {
131
+ const href = hrefOf(node, ctx);
132
+ if (href === undefined || !href.startsWith('#') || href === '#')
133
+ return undefined;
134
+ return index.get(href.slice(1));
135
+ };
180
136
  const isGlobPattern = (s) => /[*?[]/.test(s);
181
137
  const mapToReact = (makeComponent, opts = {}) => {
182
138
  const mkComponent = src => (writer, processor) => (node, ctx, interator) => {
@@ -191,6 +147,25 @@ const mapToReact = (makeComponent, opts = {}) => {
191
147
  const id = getSafeNodeId(node, ctx);
192
148
  return makeComponent(src, node, undefined, { id }, ctx);
193
149
  };
150
+ // Both link codes render the same anchor and differ only by class. The preview
151
+ // of the target is the renderer's own behaviour until a resolver is supplied:
152
+ // once one is, it decides alone, and returning null from it means nothing shows.
153
+ const linkRule = (className) => (writer, processor, tree) => {
154
+ const resolver = opts.linkPreview;
155
+ // Built where the tree is in hand. Memoising on the context instead built it
156
+ // four times over: rules clone the context before recursing, so links in
157
+ // different blocks each got their own. Nothing is built without a resolver.
158
+ const index = resolver ? previewIndexFor(tree) : undefined;
159
+ return (node, ctx, interator) => {
160
+ const href = hrefOf(node, ctx);
161
+ const linkProps = linkConfigProps(codeConfigWithDefaults(node, ctx));
162
+ const supplied = resolver && index ? resolver(linkTarget(node) ?? '', previewOf(node, ctx, index)) : null;
163
+ const src = ({ children, key }) => supplied ? (React.createElement(React.Fragment, { key: key },
164
+ React.createElement("a", { href: href, className: className, ...linkProps }, children),
165
+ supplied)) : (React.createElement("a", { href: href, key: key, className: className, ...linkProps }, children));
166
+ return mkComponent(src)(writer, processor)(node, ctx, interator);
167
+ };
168
+ };
194
169
  // Handle nested block and :nested block attribute
195
170
  const handleNested = (defaultHandler, implicitLevel) => {
196
171
  return (writer, processor) => {
@@ -290,16 +265,17 @@ const mapToReact = (makeComponent, opts = {}) => {
290
265
  image: nodeContent,
291
266
  ':image': setFn((node, ctx) => {
292
267
  const hook = opts.imageSrc;
268
+ const alt = writtenValue(node.alt);
293
269
  if (hook) {
294
- return mkComponent(({ key }) => (React.createElement(HookedImage, { key: key, src: node.src, alt: node.alt, hook: hook, baseDir: opts.imageBaseDir })));
270
+ return mkComponent(({ key }) => (React.createElement(HookedImage, { key: key, src: node.src, alt: alt, hook: hook, baseDir: opts.imageBaseDir })));
295
271
  }
296
- return mkComponent(({ children, key }) => React.createElement("img", { key: key, src: node.src, alt: node.alt }));
272
+ return mkComponent(({ children, key }) => React.createElement("img", { key: key, src: node.src, alt: alt }));
297
273
  }),
298
274
  ':text': (writer, processor) => (node, ctx, interator) => {
299
- return ctx?.maskMode ? maskText(node.value) : node.value;
275
+ return isCovered(node, ctx) ? maskText(node.value) : node.value;
300
276
  },
301
277
  ':verbatim': (writer, processor) => (node, ctx, interator) => {
302
- return ctx?.maskMode ? maskText(node.value) : node.value;
278
+ return isCovered(node, ctx) ? maskText(node.value) : node.value;
303
279
  },
304
280
  'head:block': subUse({
305
281
  // inside head don't wrap into <p>
@@ -530,37 +506,8 @@ const mapToReact = (makeComponent, opts = {}) => {
530
506
  writer.DEFINITIONS.push({ definition });
531
507
  return makeComponent('dfn', node, interator(node.content, ctx));
532
508
  },
533
- 'L<>': setFn((node, ctx) => {
534
- let { meta } = node;
535
- if (meta === null) {
536
- meta = node.content;
537
- }
538
- //TODO: extract text from content array
539
- if (Array.isArray(meta)) {
540
- meta = meta[0];
541
- }
542
- if (meta && typeof meta !== 'string' && 'value' in meta) {
543
- meta = meta.value;
544
- }
545
- const href = sameDocTarget(meta, ctx);
546
- const linkProps = linkConfigProps(codeConfigWithDefaults(node, ctx));
547
- return mkComponent(({ children, key }) => (React.createElement("a", { href: href, key: key, ...linkProps }, children)));
548
- }),
549
- 'W<>': setFn((node, ctx) => {
550
- let { meta } = node;
551
- if (meta === null) {
552
- meta = node.content;
553
- }
554
- if (Array.isArray(meta)) {
555
- meta = meta[0];
556
- }
557
- if (meta && typeof meta !== 'string' && 'value' in meta) {
558
- meta = meta.value;
559
- }
560
- const href = sameDocTarget(meta, ctx);
561
- const linkProps = linkConfigProps(codeConfigWithDefaults(node, ctx));
562
- return mkComponent(({ children, key }) => (React.createElement("a", { href: href, key: key, className: "backlink", ...linkProps }, children)));
563
- }),
509
+ 'L<>': linkRule(),
510
+ 'W<>': linkRule('backlink'),
564
511
  'S<>': (writer, processor) => (node, ctx, interator) => {
565
512
  let content = node.content || '';
566
513
  if (typeof content !== 'string' && 'value' in content) {
@@ -776,7 +723,7 @@ const mapToReact = (makeComponent, opts = {}) => {
776
723
  })),
777
724
  };
778
725
  };
779
- function podlite(children, { file, plugins = () => { }, wrapElement, tree, mode = 'pod', includeReader, includeBaseDir, expandPaths, imageSrc, imageBaseDir, renderMode = 'production', }, ...args) {
726
+ function podlite(children, { file, plugins = () => { }, wrapElement, tree, mode = 'pod', includeReader, includeBaseDir, expandPaths, imageSrc, imageBaseDir, linkPreview, renderMode = 'production', }, ...args) {
780
727
  const podliteParser = podlite_core({ importPlugins: true });
781
728
  const astRaw = (tree => {
782
729
  if (tree)
@@ -785,7 +732,7 @@ function podlite(children, { file, plugins = () => { }, wrapElement, tree, mode
785
732
  const treeAfterParsed = podliteParser.parse(children || file, parseOptions);
786
733
  return podliteParser.toAst(treeAfterParsed);
787
734
  })(tree);
788
- const ast = applyFoldedSectionsRecursively(astRaw);
735
+ const ast = applyFoldedSections(astRaw);
789
736
  // const ast = parse( children || content )
790
737
  let i_key_i = 10000;
791
738
  const makeComponent = helperMakeReact({ wrapElement });
@@ -799,6 +746,7 @@ function podlite(children, { file, plugins = () => { }, wrapElement, tree, mode
799
746
  expandPaths,
800
747
  imageSrc,
801
748
  imageBaseDir,
749
+ linkPreview,
802
750
  parser: podliteParser,
803
751
  }),
804
752
  ...plugins(makeComponent),
@@ -828,15 +776,19 @@ function podlite(children, { file, plugins = () => { }, wrapElement, tree, mode
828
776
  // defaultFn chains to a single next rule, so masking and the render
829
777
  // safety net share this one wildcard hook
830
778
  const dispatch = () => {
831
- if (!node || node.type !== 'block')
779
+ if (!node)
832
780
  return defaultFn();
833
781
  if (ctx?.maskMode)
834
782
  return defaultFn();
783
+ if (ctx?.renderMode === 'draft')
784
+ return defaultFn();
785
+ if (node.guarded)
786
+ return defaultFn(node, { ...(ctx || {}), maskMode: true }, interator);
787
+ if (node.type !== 'block')
788
+ return defaultFn();
835
789
  const conf = makeAttrs(node, ctx || {});
836
790
  if (!conf.exists('masked') || !conf.getFirstValue('masked'))
837
791
  return defaultFn();
838
- if (ctx?.renderMode === 'draft')
839
- return defaultFn();
840
792
  return defaultFn(node, { ...(ctx || {}), maskMode: true }, interator);
841
793
  };
842
794
  const blockName = node && typeof node === 'object' ? node.name || node.type : undefined;
package/esm/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAC9B,OAAO,EAAE,aAAa,EAAE,MAAM,OAAO,CAAA;AACrC,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,SAAS,CAAA;AACjD,OAAO,EAML,KAAK,EACL,SAAS,EACT,YAAY,EACZ,OAAO,IAAI,WAAW,EACtB,KAAK,EACL,MAAM,EACN,KAAK,EACL,YAAY,EACZ,eAAe,EACf,MAAM,EACN,UAAU,EAEV,SAAS,EAET,aAAa,EACb,aAAa,GACd,MAAM,iBAAiB,CAAA;AACxB,OAAO,EAAe,mBAAmB,IAAI,YAAY,EAAY,MAAM,iBAAiB,CAAA;AAC5F,OAAO,EAAE,aAAa,EAAE,WAAW,EAAE,sBAAsB,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAA;AAC3G,OAAO,EAAE,cAAc,EAAE,sBAAsB,EAAE,MAAM,iBAAiB,CAAA;AACxE,OAAO,EAAE,gBAAgB,EAAE,MAAM,UAAU,CAAA;AAC3C,OAAO,eAAe,MAAM,mBAAmB,CAAA;AAM/C,0EAA0E;AAC1E,sDAAsD;AACtD,MAAM,OAAO,aAAc,SAAQ,KAAK,CAAC,SAGxC;IACC,KAAK,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,CAAA;IACzB,MAAM,CAAC,wBAAwB;QAC7B,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,CAAA;IACzB,CAAC;IACD,iBAAiB,CAAC,KAAY;QAC5B,OAAO,CAAC,IAAI,CAAC,mBAAmB,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,uBAAuB,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;IACpG,CAAC;IACD,MAAM;QACJ,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,CAAC;YACtB,OAAO,8BAAM,SAAS,EAAC,sBAAsB;;gBAAS,IAAI,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE;qCAA0B,CAAA;QAC5G,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAA;IAC5B,CAAC;CACF;AACD,MAAM,eAAe,GAAG,CAAC,EAAE,WAAW,EAAiC,EAAa,EAAE;IACpF,IAAI,OAAO,GAAG,CAAC,CAAA;IACf,IAAI,SAAS,GAAG,EAAE,CAAA;IAClB,MAAM,YAAY,GAAG,CAAC,EAAE,IAAI,GAAG,QAAQ,EAAE,IAAI,GAAG,QAAQ,EAAE,EAAE,EAAE;QAC5D,MAAM,QAAQ,GAAG,GAAG,IAAI,IAAI,IAAI,EAAE,CAAA;QAClC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAC;YACzB,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAA;QACzB,CAAC;QACD,EAAE,SAAS,CAAC,QAAQ,CAAC,CAAA;QACrB,OAAO,GAAG,QAAQ,IAAI,SAAS,CAAC,QAAQ,CAAC,EAAE,CAAA;IAC7C,CAAC,CAAA;IACD,OAAO,UAAU,GAAG,EAAE,IAAa,EAAE,QAAQ,EAAE,UAAU,GAAG,EAAE,EAAE,GAAG,GAAG,EAAE;QACtE,uBAAuB;QACvB,IAAI,OAAO,IAAI,IAAI,QAAQ,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAA;QACb,CAAC;QACD,MAAM,EAAE,GAAG,IAAI,EAAE,GAAG,IAAI,CAAA;QAExB,MAAM,GAAG,GAAG,MAAM,IAAI,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,OAAO,CAAA;QACxE,MAAM,MAAM,GACV,OAAO,GAAG,KAAK,UAAU;YACvB,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,QAAQ,CAAC;YAC3C,CAAC,CAAC,aAAa,CAAC,GAAG,EAAE,EAAE,GAAG,UAAU,EAAE,GAAG,EAAE,EAAE,QAAQ,CAAC,CAAA;QAE1D,uCAAuC;QACvC,kCAAkC;QAClC,iEAAiE;QACjE,IAAI;QAEJ,IAAI,OAAO,WAAW,KAAK,UAAU,EAAE,CAAC;YACtC,kEAAkE;YAClE,qEAAqE;YACrE,sEAAsE;YACtE,sEAAsE;YACtE,0CAA0C;YAC1C,MAAM,QAAQ,GAAI,IAA0B,CAAC,IAAI,CAAA;YACjD,IAAI,QAAQ,KAAK,KAAK,IAAI,QAAQ,KAAK,MAAM;gBAAE,OAAO,MAAM,CAAA;YAC5D,OAAO,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAA;QACvC,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC,CAAA;AACH,CAAC,CAAA;AAKD,MAAM,CAAC,MAAM,OAAO,GAcf,CAAC,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE;IAChC,MAAM,MAAM,GAAQ,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;IAC9C,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AACD,0EAA0E;AAC1E,yEAAyE;AACzE,wEAAwE;AACxE,4EAA4E;AAC5E,uBAAuB;AACvB,MAAM,aAAa,GAAG,CAAC,IAAS,EAAoC,EAAE;IACpE,MAAM,MAAM,GAAG,IAAI,IAAI,IAAI,CAAC,MAAM,CAAA;IAClC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,IAAI,CAAA;IACvC,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAA;IAC/D,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAA;AACnC,CAAC,CAAA;AAED,MAAM,WAAW,GAAG,CAAC,IAAS,EAAW,EAAE,CACzC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,IAAI,IAAI,CAAC,KAAK,KAAK,IAAI,CAAA;AAE1G,MAAM,SAAS,GAAG,CAAC,IAAS,EAAU,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAA;AAE3D,MAAM,mBAAmB,GAAG,CAAC,OAAc,EAAS,EAAE;IACpD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC;QAAE,OAAO,OAAO,CAAA;IAC3C,MAAM,MAAM,GAAU,EAAE,CAAA;IACxB,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;QAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;QACvB,IAAI,WAAW,CAAC,IAAI,CAAC,EAAE,CAAC;YACtB,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAA;YAClC,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBACpB,MAAM,KAAK,GAAG,SAAS,CAAC,IAAI,CAAC,CAAA;gBAC7B,MAAM,YAAY,GAAU,CAAC,IAAI,CAAC,CAAA;gBAClC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;gBACb,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;oBAC1B,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;oBACvB,IAAI,WAAW,CAAC,IAAI,CAAC,IAAI,SAAS,CAAC,IAAI,CAAC,IAAI,KAAK;wBAAE,MAAK;oBACxD,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;oBACvB,CAAC,EAAE,CAAA;gBACL,CAAC;gBACD,MAAM,CAAC,IAAI,CAAC;oBACV,IAAI,EAAE,OAAO;oBACb,IAAI,EAAE,iBAAiB;oBACvB,OAAO,EAAE,YAAY;oBACrB,WAAW,EAAE,MAAM;oBACnB,QAAQ,EAAE,IAAI,CAAC,QAAQ;iBACxB,CAAC,CAAA;gBACF,CAAC,GAAG,CAAC,CAAA;gBACL,SAAQ;YACV,CAAC;QACH,CAAC;QACD,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACjB,CAAC,EAAE,CAAA;IACL,CAAC;IACD,OAAO,MAAM,CAAA;AACf,CAAC,CAAA;AAED,0EAA0E;AAC1E,0EAA0E;AAC1E,6DAA6D;AAC7D,0EAA0E;AAC1E,wEAAwE;AACxE,yEAAyE;AACzE,wEAAwE;AACxE,MAAM,8BAA8B,GAAG,CAAC,IAAS,EAAO,EAAE;IACxD,IAAI,CAAC,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAA;IAClD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAA;IACxE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;QAAE,OAAO,IAAI,CAAA;IAC7C,IAAI,IAAI,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;QACpC,MAAM,CAAC,IAAI,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,OAAO,CAAA;QACpC,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAA;QACzC,OAAO;YACL,GAAG,IAAI;YACP,OAAO,EAAE,CAAC,8BAA8B,CAAC,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,CAAC;SAChG,CAAA;IACH,CAAC;IACD,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;IACjD,OAAO,EAAE,GAAG,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,GAAG,CAAC,8BAA8B,CAAC,EAAE,CAAA;AAC1E,CAAC,CAAA;AAiBD,MAAM,CAAC,MAAM,WAAW,GAMnB,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE;IAC3C,MAAM,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC,GAAG,EAAE;QACjC,MAAM,CAAC,GAAG,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;QAC5B,OAAO,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IACzC,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC,CAAA;IACxB,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,KAAK,CAAC,QAAQ,CAAgB,OAAO,CAAC,CAAA;IACtE,KAAK,CAAC,SAAS,CAAC,GAAG,EAAE;QACnB,IAAI,OAAO,KAAK,IAAI;YAAE,OAAM;QAC5B,IAAI,KAAK,GAAG,IAAI,CAAA;QAChB,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAC,CAAC,IAAI,CACtC,CAAC,CAAC,EAAE,CAAC,KAAK,IAAI,WAAW,CAAC,CAAC,CAAC,EAC5B,GAAG,EAAE,CAAC,KAAK,IAAI,WAAW,CAAC,IAAI,CAAC,CACjC,CAAA;QACD,OAAO,GAAG,EAAE;YACV,KAAK,GAAG,KAAK,CAAA;QACf,CAAC,CAAA;IACH,CAAC,EAAE,CAAC,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC,CAAA;IACjC,IAAI,QAAQ,IAAI,IAAI;QAAE,OAAO,IAAI,CAAA;IACjC,OAAO,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,6BAAK,GAAG,EAAE,QAAQ,EAAE,GAAG,EAAE,GAAG,GAAI,CAAA;AACrE,CAAC,CAAA;AAED,MAAM,eAAe,GAAG,CAAC,MAAW,EAAE,EAAE;IACtC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,cAAc,CAAC,MAAM,CAAC,CAAA;IACpE,MAAM,KAAK,GAA2B,EAAE,CAAA;IACxC,IAAI,UAAU;QAAE,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAA;IACvC,IAAI,KAAK,KAAK,SAAS;QAAE,KAAK,CAAC,KAAK,GAAG,KAAK,CAAA;IAC5C,IAAI,IAAI,KAAK,SAAS;QAAE,KAAK,CAAC,QAAQ,GAAG,IAAI,CAAA;IAC7C,IAAI,QAAQ,KAAK,SAAS;QAAE,KAAK,CAAC,QAAQ,GAAG,QAAQ,CAAA;IACrD,OAAO,KAAK,CAAA;AACd,CAAC,CAAA;AAED,MAAM,aAAa,GAAG,CAAC,CAAS,EAAW,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;AAE7D,MAAM,UAAU,GAAG,CAAC,aAAwB,EAAE,OAA0B,EAAE,EAAwB,EAAE;IAClG,MAAM,WAAW,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;QACzE,uCAAuC;QACvC,6BAA6B;QAC7B,MAAM,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QACnC,gCAAgC;QAChC,OAAO,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,IAAI,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;IAC5G,CAAC,CAAA;IACD,kEAAkE;IAClE,MAAM,eAAe,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;QAC7E,MAAM,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;QACnC,OAAO,aAAa,CAAC,GAAG,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;IACzD,CAAC,CAAA;IACD,kDAAkD;IAClD,MAAM,YAAY,GAAG,CAAC,cAAc,EAAE,aAAsB,EAAE,EAAE;QAC9D,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE;YAC3B,MAAM,oBAAoB,GAAG,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;YAC9D,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;gBAC9B,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,aAAa,CAAA;gBAC7E,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,CAAA;gBAC3D,+CAA+C;gBAC/C,IAAI,CAAC,OAAO,EAAE,CAAC;oBACb,OAAO,QAAQ,CAAA;gBACjB,CAAC;gBAED,MAAM,GAAG,GAAG,CAAC,GAAG,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;gBACtC,OAAO,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,aAAa,CAAC,YAAY,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,QAAQ,CAAC,CAAA;YAC5E,CAAC,CAAA;QACH,CAAC,CAAA;IACH,CAAC,CAAA;IACD,4EAA4E;IAC5E,MAAM,YAAY,GAAG,cAAc,CAAC,EAAE;QACpC,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE;YAC3B,MAAM,oBAAoB,GAAG,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;YAC9D,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;gBAC9B,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;gBACjC,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;gBAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;gBAC7E,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,CAAA;gBAE3D,mDAAmD;gBACnD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;oBACpB,OAAO,QAAQ,CAAA;gBACjB,CAAC;gBAED,mEAAmE;gBACnE,wEAAwE;gBACxE,MAAM,UAAU,GAAG,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,CAAC,IAAI,MAAM,KAAK,GAAG,CAAA;gBAErE,OAAO,aAAa,CAClB,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACrB,iCAAS,SAAS,EAAC,QAAQ,EAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,IAAI,SAAS;oBAChE,OAAO,IAAI,iCAAS,SAAS,EAAC,gBAAgB,IAAE,OAAO,CAAW;oBACnE,6BAAK,SAAS,EAAC,gBAAgB,IAAE,QAAQ,CAAO,CACxC,CACX,EACD,IAAI,EACJ,QAAQ,EACR,EAAE,EACF,GAAG,CACJ,CAAA;YACH,CAAC,CAAA;QACH,CAAC,CAAA;IACH,CAAC,CAAA;IAED,kDAAkD;IAClD,MAAM,uBAAuB,GAAG,cAAc,CAAC,EAAE;QAC/C,OAAO,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE;YAC3B,MAAM,oBAAoB,GAAG,cAAc,CAAC,MAAM,EAAE,SAAS,CAAC,CAAA;YAC9D,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;gBAC9B,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;gBACjC,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;gBAC3C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;gBAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;gBAC7E,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,CAAC,CAAA;gBAC3D,kDAAkD;gBAClD,IAAI,CAAC,MAAM,EAAE,CAAC;oBACZ,OAAO,QAAQ,CAAA;gBACjB,CAAC;gBAED,2CAA2C;gBAC3C,MAAM,KAAK,GAAG,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;gBAEzE,+CAA+C;gBAC/C,+CAA+C;gBAC/C,MAAM,UAAU,GAAG,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,CAAC,IAAI,MAAM,KAAK,GAAG,CAAA;gBAErE,6CAA6C;gBAC7C,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;oBACpB,OAAO,aAAa,CAClB,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACrB,iCAAS,SAAS,EAAE,UAAU,MAAM,CAAC,WAAW,EAAE,SAAS,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,IAAI,SAAS;wBAClG,iCAAS,SAAS,EAAC,cAAc,IAAE,KAAK,CAAW;wBACnD,6BAAK,SAAS,EAAC,gBAAgB,IAAE,QAAQ,CAAO,CACxC,CACX,EACD,IAAI,EACJ,QAAQ,EACR,EAAE,EACF,GAAG,CACJ,CAAA;gBACH,CAAC;gBAED,oCAAoC;gBACpC,OAAO,aAAa,CAClB,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACrB,+BAAO,SAAS,EAAE,UAAU,MAAM,CAAC,WAAW,EAAE,EAAE,EAAE,GAAG,EAAE,GAAG;oBAC1D,2BAAG,SAAS,EAAC,cAAc,IAAE,KAAK,CAAK;oBACtC,QAAQ,CACH,CACT,EACD,IAAI,EACJ,QAAQ,EACR,EAAE,EACF,GAAG,CACJ,CAAA;YACH,CAAC,CAAA;QACH,CAAC,CAAA;IACH,CAAC,CAAA;IAED,OAAO;QACL,GAAG,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YACnD,MAAM,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACnC,OAAO,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,EAAE,GAAG,CAAC,CAAA;QACrF,CAAC;QACD,eAAe,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,IAAS,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YACpE,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,GAAG,IAAI,CAAC,OAAgB,CAAA;YAChD,MAAM,UAAU,GAAG,IAAI,CAAC,WAAW,KAAK,KAAK,IAAI,IAAI,CAAC,WAAW,KAAK,CAAC,IAAI,IAAI,CAAC,WAAW,KAAK,GAAG,CAAA;YACnG,MAAM,UAAU,GAAG,SAAS,CAAC,CAAC,OAAO,CAAC,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,CAAA;YACnD,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,CAAA;YAC3C,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACpC,OAAO,CACL,iCAAS,SAAS,EAAC,gBAAgB,EAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,IAAI,SAAS;gBACzE,iCAAS,SAAS,EAAC,wBAAwB,IAAE,UAAU,CAAW;gBAClE,6BAAK,SAAS,EAAC,wBAAwB,IAAE,OAAO,CAAO,CAC/C,CACX,CAAA;QACH,CAAC;QACD,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,YAAY,EAAE;QACpB,UAAU,EAAE,YAAY,EAAE;QAC1B,OAAO,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YAC3B,MAAM,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACnC,OAAO,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACxC,oBAAC,eAAe,IAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAC,UAAU,IACzE,QAAQ,CACO,CACnB,CAAC,CAAA;QACJ,CAAC,CAAC;QACF,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YACxB,MAAM,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACnC,OAAO,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACxC,oBAAC,eAAe,IAAC,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,EAAE,EAAE,EAAE,EAAE,EAAE,IAAI,EAAC,OAAO,IACtE,QAAQ,CACO,CACnB,CAAC,CAAA;QACJ,CAAC,CAAC;QACF,KAAK,EAAE,WAAW;QAClB,QAAQ,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,QAAQ,CAAA;YAC1B,IAAI,IAAI,EAAE,CAAC;gBACT,OAAO,WAAW,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CAC9B,oBAAC,WAAW,IAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,CAAC,YAAY,GAAI,CAChG,CAAC,CAAA;YACJ,CAAC;YACD,OAAO,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,6BAAK,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,GAAI,CAAC,CAAA;QAC5F,CAAC,CAAC;QAEF,OAAO,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,IAAU,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YAC7D,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAA;QAC1D,CAAC;QACD,WAAW,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,IAAc,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YACrE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAA;QAC1D,CAAC;QACD,YAAY,EAAE,MAAM,CAClB;YACE,kCAAkC;YAClC,OAAO,EAAE,WAAW;SACrB,EACD,KAAK,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YAClB,MAAM,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;YACtB,oCAAoC;YACpC,MAAM,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACnC,MAAM,YAAY,GAAG,IAAI,CAAC,YAAY,CAAA;YACtC,OAAO,WAAW,CAAC,CAAC,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAC9C,aAAa,CACX,IAAI,KAAK,EAAE,EACX,EAAE,GAAG,EAAE,EAAE,EAAE,EACX,YAAY;gBACV,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,GAAG,GAAG,MAAM,EAAE,SAAS,EAAE,aAAa,EAAE,EAAE,YAAY,CAAC,EAAE,GAAG,EAAE,QAAQ,CAAC;gBACvG,CAAC,CAAC,QAAQ,CACb,CACF,CAAA;QACH,CAAC,CAAC,CACH;QAED,YAAY,EAAE,YAAY,EAAE;QAC5B,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC;QACzB,IAAI,EAAE,YAAY,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;QACtC,eAAe,EAAE,YAAY,EAAE;QAC/B,gBAAgB,EAAE,eAAe,CAAC,IAAI,CAAC;QACvC,IAAI,EAAE,MAAM,CACV;YACE,wCAAwC;YACxC,gCAAgC;YAChC,EAAE,OAAO,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE;YAC9B,EAAE,WAAW,EAAE,WAAW,CAAC,IAAI,CAAC,EAAE;SACnC,EACD,WAAW,CACZ;QACD,MAAM,EAAE,uBAAuB,CAAC,YAAY,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC;QAC7D,MAAM,EAAE,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACzC,6BAAK,GAAG,EAAE,GAAG;YACX,kCAAO,QAAQ,CAAQ,CACnB,CACP,CAAC;QACF,KAAK,EAAE,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACxC,6BAAK,GAAG,EAAE,GAAG;YACX,iCAAM,QAAQ,CAAO,CACjB,CACP,CAAC;QACF,wEAAwE;QACxE,qEAAqE;QACrE,kEAAkE;QAClE,mEAAmE;QACnE,oEAAoE;QACpE,oEAAoE;QACpE,sDAAsD;QACtD,OAAO,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YACvD,IAAI,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,IAAI,CAAC,MAAM;gBAAE,OAAO,IAAI,CAAA;YACpD,MAAM,QAAQ,GAAG,sBAAsB,CAAC,IAAI,CAAC,OAAc,CAAC;gBAC1D,EAAE,QAAQ,EAAE;iBACX,IAAI,EAAE,CAAA;YACT,IAAI,CAAC,QAAQ;gBAAE,OAAO,IAAI,CAAA;YAC1B,MAAM,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,CAAA;YACtC,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,MAAM,CAAC,QAAQ;gBAAE,OAAO,IAAI,CAAA;YAExE,qEAAqE;YACrE,2DAA2D;YAC3D,uDAAuD;YACvD,MAAM,KAAK,GAAc,GAAG,CAAC,YAAyB,IAAI,EAAE,CAAA;YAC5D,MAAM,KAAK,GACT,aAAa,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,WAAW;gBAChD,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,CAAC;gBACxD,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;YAEvB,MAAM,IAAI,GAAkC,EAAE,CAAA;YAC9C,KAAK,MAAM,CAAC,IAAI,KAAK,EAAE,CAAC;gBACtB,IAAI,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC;oBAAE,SAAQ;gBAC/B,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,CAAC,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;gBACzD,IAAI,MAAM,IAAI,IAAI;oBAAE,SAAQ;gBAC5B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;gBAC3E,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAA;YACtC,CAAC;YACD,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAA;YAElC,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,EAAE,IAAI,CAAc,CAAA;YACvD,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,IAAI,CAAA;YAE/C,OAAO,SAAS,CAAC,MAAM,EAAE,EAAE,GAAG,GAAG,EAAE,YAAY,EAAE,CAAC,GAAG,KAAK,EAAE,GAAG,KAAK,CAAC,EAAE,CAAC,CAAA;QAC1E,CAAC;QAED,aAAa;QACb,SAAS,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YAC7B,gBAAgB;YAChB,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,QAAQ,CAAC;gBAAE,GAAG,CAAC,MAAM,GAAG,EAAE,CAAA;YAClD,4BAA4B;YAC5B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,CAAA;YACnC,OAAO,YAAY,EAAE,CAAA;QACvB,CAAC,CAAC;QACF,QAAQ,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YAC5B,YAAY;YACZ,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,OAAO,CAAC;gBAAE,GAAG,CAAC,KAAK,GAAG,EAAE,CAAA;YAChD,4BAA4B;YAC5B,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,WAAW,CAAA;YACvC,OAAO,YAAY,EAAE,CAAA;QACvB,CAAC,CAAC;QAEF,eAAe;QACf,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YACrD,IAAI,IAAI,GAAG,IAAI,CAAC,OAAO,CAAA;YAEvB,IAAI,UAAkB,CAAA;YACtB,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,UAAU,GAAG,IAAI,CAAA;YACnB,CAAC;iBAAM,IAAI,IAAI,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;gBACnC,UAAU,GAAG,IAAI,CAAC,KAAe,CAAA;YACnC,CAAC;iBAAM,CAAC;gBACN,UAAU,GAAG,EAAE,CAAA;YACjB,CAAC;YACD,UAAU,GAAG,UAAU,CAAC,IAAI,EAAE,CAAA;YAC9B,sBAAsB;YACtB,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,KAAK,CAAC,cAAc,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC;gBACzD,OAAO,aAAa,CAClB,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,8BAAM,GAAG,EAAE,GAAG;;oBAAQ,QAAQ;wBAAY,EACjE,IAAI,EACJ,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAC7B,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,GAAG,GAAG,UAAU,IAAI,GAAG,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;gBAC1D,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,CAAA;gBAC7B,sBAAsB;gBACtB,MAAM,IAAI,GAAG,YAAY,EAAE,CAAC,MAAM,CAAC,CAAA;gBACnC,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;oBAC7B,OAAO,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;gBACxC,CAAC;qBAAM,CAAC;oBACN,OAAO,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;gBAC7B,CAAC;YACH,CAAC;QACH,CAAC;QACD,KAAK,EAAE,WAAW,CAAC,QAAQ,CAAC;QAC5B,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC;QAC1B,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YACrD,IAAI,SAAS,IAAI,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC;gBAClD,OAAO,IAAI,CAAC,OAAO;qBAChB,MAAM,CAAC,OAAO,CAAC;qBACf,GAAG,CAAC,OAAO,CAAC,EAAE;oBACb,IAAI,OAAO,OAAO,IAAI,QAAQ,EAAE,CAAC;wBAC/B,OAAO,OAAO,CAAA;oBAChB,CAAC;oBACD,IAAI,OAAO,CAAC,IAAI,IAAI,QAAQ,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;wBACnD,OAAO,MAAM,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;oBAC3C,CAAC;oBACD,IAAI,OAAO,CAAC,IAAI,IAAI,YAAY,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;wBACvD,OAAO,gBAAgB,CAAC,IAAI,OAAO,CAAC,KAAK,GAAG,CAAC,CAAA;oBAC/C,CAAC;oBACD,IAAI,OAAO,CAAC,IAAI,IAAI,MAAM,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;wBACjD,OAAO,OAAO,CAAC,KAAK,CAAA;oBACtB,CAAC;oBACD,OAAO,CAAC,IAAI,CAAC,kDAAkD,OAAO,CAAC,IAAI,EAAE,CAAC,CAAA;oBAC9E,OAAO,EAAE,CAAA;gBACX,CAAC,CAAC;qBACD,IAAI,CAAC,EAAE,CAAC,CAAA;QACf,CAAC;QACD,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC;QACzB,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC;QACvB,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC;QACzB,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC;QACzB;;;;;;;;;;;WAWG;QACH,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE;YAC3B,MAAM,CAAC,WAAW,CAAC,KAAK,EAAE,GAAG,EAAE;gBAC7B,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC;oBACxC,OAAM;gBACR,CAAC;gBACD,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAA;gBAClC,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACzB,OAAM;gBACR,CAAC,CAAC,qBAAqB;gBACvB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,eAAe,CAAC,EAAE,CAAC;oBAC5C,MAAM,CAAC,aAAa,GAAG,EAAE,CAAA;gBAC3B,CAAC;gBAED,MAAM,SAAS,GAAG,aAAa,CAC7B,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACrB,6BAAK,GAAG,EAAE,GAAG,GAAG,YAAY,EAAE,SAAS,EAAC,WAAW,IAChD,SAAS,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE,EAAE,EAAE;oBAC9B,OAAO,CACL,2BAAG,GAAG,EAAE,EAAE;wBACR,6BAAK,EAAE,EAAE,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAC,UAAU;4BAC1C,2BAAG,IAAI,EAAE,IAAI,QAAQ,CAAC,OAAO,EAAE;;gCAAI,QAAQ,CAAC,GAAG;oCAAM,CACjD;wBACL,QAAQ,CAAC,IAAI,EAAE,CACd,CACL,CAAA;gBACH,CAAC,CAAC,CACE,CACP,EACD,EAAE,EACF,EAAE,CACH,CAAA;gBAED,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;YACtC,CAAC,CAAC,CAAA;YACF,OAAO,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;gBAC9B,mBAAmB;gBACnB,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAC5B,OAAM;gBACR,CAAC;gBACD,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,KAAK,CAAC,EAAE,CAAC;oBAClC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAA;gBAChB,CAAC;gBACD,mBAAmB;gBACnB,MAAM,GAAG,GAAG,MAAM,CAAC,GAAG,EAAE,CAAA;gBACxB,MAAM,OAAO,GAAG,SAAS,GAAG,EAAE,CAAA;gBAC9B,MAAM,IAAI,GAAG,MAAM,GAAG,EAAE,CAAA;gBACxB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,CAAC;oBACxC,MAAM,CAAC,SAAS,GAAG,EAAE,CAAA;gBACvB,CAAC;gBACD,MAAM,CAAC,SAAS,CAAC,IAAI,CAAC;oBACpB,GAAG;oBACH,OAAO;oBACP,IAAI;oBACJ,IAAI;oBACJ,IAAI,EAAE,GAAG,EAAE;wBACT,OAAO,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;oBACrC,CAAC;iBACF,CAAC,CAAA;gBACF,OAAO,aAAa,CAClB,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACrB,6BAAK,GAAG,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,SAAS,EAAC,UAAU;oBAC9C,2BAAG,IAAI,EAAE,IAAI,IAAI,EAAE;;wBAAI,GAAG;4BAAM,CAC5B,CACP,EACD,IAAI,EACJ,EAAE,CACH,CAAA;YACH,CAAC,CAAA;QACH,CAAC;QACD,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC;QACzB,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC;QAC1B,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YACrD,IAAI,EAAE,QAAQ,EAAE,GAAG,IAAI,CAAA;YACvB,IAAI,UAAU,GAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;YAC5C,IAAI,QAAQ,EAAE,CAAC;gBACb,UAAU,GAAG,QAAQ,CAAA;YACvB,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,CAAC;gBAC1C,MAAM,CAAC,WAAW,GAAG,EAAE,CAAA;YACzB,CAAC;YACD,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,CAAC,CAAA;YACvC,OAAO,aAAa,CAAC,KAAK,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAA;QACjE,CAAC;QACD,KAAK,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YACzB,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACnB,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAA;YACrB,CAAC;YACD,uCAAuC;YACvC,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YAChB,CAAC;YACD,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;gBACxD,IAAI,GAAG,IAAI,CAAC,KAAK,CAAA;YACnB,CAAC;YACD,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACrC,MAAM,SAAS,GAAG,eAAe,CAAC,sBAAsB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAA;YACpE,OAAO,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACxC,2BAAG,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,KAAM,SAAS,IACnC,QAAQ,CACP,CACL,CAAC,CAAA;QACJ,CAAC,CAAC;QACF,KAAK,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YACzB,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAA;YACnB,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;gBAClB,IAAI,GAAG,IAAI,CAAC,OAAO,CAAA;YACrB,CAAC;YACD,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;gBACxB,IAAI,GAAG,IAAI,CAAC,CAAC,CAAC,CAAA;YAChB,CAAC;YACD,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,OAAO,IAAI,IAAI,EAAE,CAAC;gBACxD,IAAI,GAAG,IAAI,CAAC,KAAK,CAAA;YACnB,CAAC;YACD,MAAM,IAAI,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACrC,MAAM,SAAS,GAAG,eAAe,CAAC,sBAAsB,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC,CAAA;YACpE,OAAO,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACxC,2BAAG,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAC,UAAU,KAAK,SAAS,IACxD,QAAQ,CACP,CACL,CAAC,CAAA;QACJ,CAAC,CAAC;QACF,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YACrD,IAAI,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,EAAE,CAAA;YAChC,IAAI,OAAO,OAAO,KAAK,QAAQ,IAAI,OAAO,IAAI,OAAO,EAAE,CAAC;gBACtD,OAAO,GAAG,OAAO,CAAC,KAAK,CAAA;YACzB,CAAC;YACD,MAAM,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,KAAK,EAAE,EAAE;gBACtD,IAAI,MAAM,KAAK,GAAG;oBAAE,OAAO,QAAQ,CAAA;gBACnC,IAAI,MAAM,KAAK,IAAI;oBAAE,OAAO,4BAAI,GAAG,EAAE,KAAK,GAAI,CAAA;gBAC9C,OAAO,MAAM,CAAA;YACf,CAAC,CAAC,CAAA;YACF,OAAO,aAAa,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,EAAE,OAAO,CAAC,CAAA;QACpE,CAAC;QACD,KAAK,EAAE,WAAW;QAClB,KAAK,EAAE,YAAY,EAAE;QACrB,KAAK,EAAE,WAAW,CAAC,GAAG,CAAC;QACvB,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YACrD,IAAI,EAAE,KAAK,EAAE,GAAG,IAAI,CAAA;YACpB,IAAI,KAAK,KAAK,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9C,YAAY;gBACZ,KAAK,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;YAC3B,CAAC;YACD,kBAAkB;YAClB,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC;gBACzC,MAAM,CAAC,UAAU,GAAG,EAAE,CAAA;YACxB,CAAC;YACD,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC;gBACrB,KAAK;aACN,CAAC,CAAA;YACF,OAAO,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAAA;QACrC,CAAC;QACD,KAAK,EAAE,WAAW,CAAC,KAAK,CAAC;QACzB,KAAK,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YACvD,IAAI,GAAG,CAAC,UAAU,KAAK,OAAO,EAAE,CAAC;gBAC/B,OAAO,aAAa,CAClB,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,CACrB,8BAAM,GAAG,EAAE,GAAG,EAAE,SAAS,EAAC,cAAc,IACrC,QAAQ,CACJ,CACR,EACD,IAAI,EACJ,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,CAAC,CAC7B,CAAA;YACH,CAAC;YACD,MAAM,MAAM,GAAG,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAA;YAClD,OAAO,aAAa,CAClB,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACX,8BAAM,GAAG,EAAE,GAAG,EAAE,SAAS,EAAC,QAAQ,IAC/B,MAAM,CACF,CACR,EACD,IAAI,EACJ,EAAE,CACH,CAAA;QACH,CAAC;QACD,gBAAgB;QAChB,KAAK,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YACrD,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACjC,MAAM,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;YAC3E,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;YAE1E,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,OAAO,IAAI,CAAA;YACb,CAAC;YACD,IAAI,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,EAAE,CAAC;gBACzB,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;gBACxC,OAAO,EAAE,CAAA;YACX,CAAC;YACD,MAAM,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YAEnC,+CAA+C;YAC/C,+CAA+C;YAC/C,MAAM,UAAU,GAAG,MAAM,KAAK,KAAK,IAAI,MAAM,KAAK,CAAC,IAAI,MAAM,KAAK,GAAG,CAAA;YAErE,MAAM,QAAQ,GAAG,EAAE,GAAG,GAAG,EAAE,GAAG,CAAC,IAAI,CAAC,KAAK,IAAI,EAAE,aAAa,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,CAAA;YAC7E,MAAM,OAAO,GAAW,IAAY,CAAC,OAAO,IAAI,EAAE,CAAA;YAClD,MAAM,WAAW,GAAG,CAAC,CAAM,EAAE,EAAE,CAC7B,CAAC;gBACD,CAAC,CAAC,IAAI,KAAK,KAAK;gBAChB,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC;gBACvB,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,CAAC,KAAK,KAAK,KAAK,CAAC,CAAA;YACrE,MAAM,SAAS,GAAG,OAAO,CAAC,IAAI,CAAC,WAAW,CAAC,CAAA;YAE3C,IAAI,WAAuD,CAAA;YAC3D,IAAI,CAAC,SAAS,EAAE,CAAC;gBACf,MAAM,QAAQ,GAAG,SAAS,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;gBAC7C,WAAW,GAAG,QAAQ,CAAC,EAAE,CAAC,CACxB,+BAAO,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE;oBACzB,OAAO,CAAC,CAAC,CAAC,iCAAS,SAAS,EAAC,SAAS,IAAE,OAAO,CAAW,CAAC,CAAC,CAAC,IAAI;oBAClE,mCAAQ,QAAQ,CAAS,CACnB,CACT,CAAA;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,QAAQ,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAA;gBAClE,MAAM,aAAa,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,KAAK,KAAK,CAAC,CAAA;gBACxE,IAAI,SAAS,GAAG,CAAC,CAAA;gBACjB,OAAO,SAAS,GAAG,QAAQ,CAAC,MAAM,IAAI,WAAW,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC;oBAAE,SAAS,EAAE,CAAA;gBACnF,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAA;gBAC/C,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;gBAC1C,MAAM,cAAc,GAAG,SAAS,CAAC,aAAa,EAAE,QAAQ,CAAC,CAAA;gBACzD,MAAM,cAAc,GAAG,SAAS,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAA;gBACtD,MAAM,YAAY,GAAG,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;gBAC/E,WAAW,GAAG,QAAQ,CAAC,EAAE,CAAC,CACxB,+BAAO,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,EAAE;oBACzB,OAAO,CAAC,CAAC,CAAC,iCAAS,SAAS,EAAC,SAAS,IAAE,OAAO,CAAW,CAAC,CAAC,CAAC,IAAI;oBACjE,cAAc;oBACf,mCAAQ,cAAc,CAAS;oBAC9B,YAAY,CAAC,CAAC,CAAC,mCAAQ,YAAY,CAAS,CAAC,CAAC,CAAC,IAAI,CAC9C,CACT,CAAA;YACH,CAAC;YAED,mDAAmD;YACnD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;gBACpB,OAAO,aAAa,CAClB,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACX,iCAAS,SAAS,EAAC,qBAAqB,EAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,IAAI,SAAS;oBAC7E,OAAO,IAAI,iCAAS,SAAS,EAAC,gBAAgB,IAAE,OAAO,CAAW;oBACnE,6BAAK,SAAS,EAAC,gBAAgB,IAAE,WAAW,CAAC,GAAG,GAAG,QAAQ,CAAC,CAAO,CAC3D,CACX,EACD,IAAI,EACJ,EAAE,CACH,CAAA;YACH,CAAC;YAED,OAAO,aAAa,CAAC,CAAC,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,WAAW,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,EAAE,CAAC,CAAA;QAC/D,CAAC;QACD,YAAY,EAAE,YAAY,EAAE;QAC5B,GAAG,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YACvB,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,KAAK,CAAA;YAChF,GAAG,CAAC,YAAY,GAAG,QAAQ,CAAA;YAC3B,IAAI,GAAG,CAAC,aAAa,CAAC;gBAAE,GAAG,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;YAC5C,OAAO,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,4BAAI,GAAG,EAAE,GAAG,IAAG,QAAQ,CAAM,CAAC,CAAA;QAC1E,CAAC,CAAC;QACF,IAAI,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YACxB,MAAM,QAAQ,GAAG,CAAC,QAAQ,CAAC,EAAE;gBAC3B,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;oBAAE,OAAO,IAAI,CAAA;gBACzC,MAAM,GAAG,GAAG,GAAG,CAAC,WAAW,CAAC,EAAE,CAAA;gBAC9B,OAAO,QAAQ,CAAC,GAAG,CAAC,IAAI,IAAI,CAAA;YAC9B,CAAC,CAAC,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC,CAAA;YACtB,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAA;YACjC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACjC,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YACrF,MAAM,UAAU,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YACrF,MAAM,OAAO,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAA;YACvD,MAAM,OAAO,GAAG,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,SAAS,CAAA;YACvD,MAAM,KAAK,GACT,QAAQ,IAAI,CAAC,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC;gBACnE,CAAC,CAAC,EAAE,SAAS,EAAE,QAAmD,EAAE;gBACpE,CAAC,CAAC,SAAS,CAAA;YACf,OAAO,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CACvC,QAAQ,CAAC,CAAC,CAAC,CACT,4BAAI,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,IAC3D,QAAQ,CACN,CACN,CAAC,CAAC,CAAC,CACF,4BAAI,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,IAC3D,QAAQ,CACN,CACN,CACF,CAAA;QACH,CAAC,CAAC;QACF,OAAO,EAAE,KAAK,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE,CAC3B,IAAI,CAAC,IAAI,KAAK,SAAS;YACrB,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;YACnB,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU;gBAC1B,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC;gBACnB,CAAC,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM;oBACtB,CAAC,CAAC,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACjC,4BAAI,SAAS,EAAC,WAAW,EAAC,GAAG,EAAE,GAAG,IAC/B,QAAQ,CACN,CACN,CAAC;oBACJ,CAAC,CAAC,WAAW,CAAC,IAAI,CAAC,CACtB;QACD,YAAY,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YAC5D,IAAI,OAAO,IAAI,KAAK,QAAQ,EAAE,CAAC;gBAC7B,OAAO,IAAI,CAAA;YACb,CAAC;YACD,IAAI,CAAC,CAAC,SAAS,IAAI,IAAI,CAAC,EAAE,CAAC;gBACzB,OAAO,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAA;gBACxC,OAAO,EAAE,CAAA;YACX,CAAC;YACD,4BAA4B;YAC5B,IAAI,CAAC,CAAC,IAAI,CAAC,OAAO,YAAY,KAAK,CAAC,EAAE,CAAC;gBACrC,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;YACrB,CAAC;YACD,MAAM,EAAE,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACnC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,KAAK,SAAS,CAAA;YAEzC,IAAI,MAAM,EAAE,CAAC;gBACX,MAAM,QAAQ,GAAG,+BAAO,GAAG,EAAC,UAAU,EAAC,IAAI,EAAC,UAAU,EAAC,QAAQ,QAAC,OAAO,EAAE,IAAI,CAAC,OAAO,IAAI,SAAS,GAAI,CAAA;gBACtG,MAAM,OAAO,GAAG,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,CAAA;gBACnD,OAAO,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC,CAAA;YAC1G,CAAC;YAED,OAAO,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;QAC/E,CAAC;QACD,mBAAmB;QACnB,MAAM,EAAE,KAAK,CAAC,CAAC,IAAS,EAAE,GAAG,EAAE,EAAE;YAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAA;YAC3B,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;gBACtB,GAAG,CAAC,gBAAgB,GAAG,IAAI,CAAC,YAAY,CAAA;YAC1C,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;YAC1B,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,MAAM,UAAU,GAAG,MAAM,KAAK,KAAK,CAAA;gBACnC,OAAO,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACxC,iCAAS,SAAS,EAAC,kBAAkB,EAAC,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,UAAU,IAAI,SAAS;oBAC3E,iCAAS,SAAS,EAAC,UAAU,IAAE,QAAQ,IAAI,UAAU,CAAW;oBAC/D,QAAQ,CACD,CACX,CAAC,CAAA;YACJ,CAAC;YACD,OAAO,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACxC,6BAAK,SAAS,EAAC,KAAK,EAAC,GAAG,EAAE,GAAG;gBAC1B,QAAQ,CAAC,CAAC,CAAC,6BAAK,SAAS,EAAC,UAAU,IAAE,QAAQ,CAAO,CAAC,CAAC,CAAC,EAAE;gBAC1D,QAAQ,CACL,CACP,CAAC,CAAA;QACJ,CAAC,CAAC;QACF,WAAW,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,IAAS,EAAE,GAAQ,EAAE,SAAc,EAAE,EAAE;YAC1E,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;YACxB,MAAM,YAAY,GAAG,GAAG,CAAC,gBAAuD,CAAA;YAChF,MAAM,OAAO,GAAU,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAA;YACtE,MAAM,GAAG,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;YACpC,MAAM,UAAU,GAAG,YAAY,CAAC,CAAC,CAAC,YAAY,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC,KAAK,CAAA;YAEtE,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO,CACL,4BAAI,SAAS,EAAE,qBAAqB,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,IAClD,SAAS,CAAC,OAAO,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,CAC5B,CACN,CAAA;YACH,CAAC;YAED,0EAA0E;YAC1E,wEAAwE;YACxE,0EAA0E;YAC1E,2EAA2E;YAC3E,MAAM,QAAQ,GAAU,EAAE,CAAA;YAC1B,IAAI,CAAC,GAAG,CAAC,CAAA;YACT,OAAO,CAAC,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;gBAC1B,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;gBACrB,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;gBAC3B,MAAM,MAAM,GAAG,EAAE,IAAI,EAAE,CAAC,IAAI,KAAK,UAAU,CAAA;gBAC3C,MAAM,WAAW,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,UAAU,CAAA;gBAEpD,IAAI,MAAM,IAAI,WAAW,EAAE,CAAC;oBAC1B,kEAAkE;oBAClE,kEAAkE;oBAClE,oEAAoE;oBACpE,2BAA2B;oBAC3B,MAAM,YAAY,GAAG,EAAE,CAAC,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,OAAO,CAAA;oBAC7F,MAAM,WAAW,GAAG,SAAS,CAAC,YAAY,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,CAAA;oBACvD,MAAM,WAAW,GAAG,SAAS,CAAC,CAAC,IAAI,CAAC,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,CAAA;oBACjD,QAAQ,CAAC,IAAI,CACX,4BAAI,SAAS,EAAC,4BAA4B,EAAC,GAAG,EAAE,GAAG,GAAG,SAAS,CAAC,EAAE;wBAChE,iCAAS,SAAS,EAAC,UAAU;4BAC3B,iCAAS,SAAS,EAAE,6BAA6B,KAAK,EAAE,IAAG,WAAW,CAAW;4BAChF,WAAW,CACJ,CACP,CACN,CAAA;oBACD,CAAC,IAAI,CAAC,CAAA;oBACN,SAAQ;gBACV,CAAC;gBAED,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,CAAC,CAAA;gBAC1C,CAAC,EAAE,CAAA;YACL,CAAC;YAED,OAAO,CACL,4BAAI,SAAS,EAAE,qBAAqB,KAAK,EAAE,EAAE,GAAG,EAAE,GAAG,IAClD,QAAQ,CACN,CACN,CAAA;QACH,CAAC;QACD,WAAW,EAAE,MAAM,CACjB;YACE,kCAAkC;YAClC,OAAO,EAAE,WAAW;SACrB,EACD,KAAK,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,EAAE;YAClB,OAAO,WAAW,CAAC,CAAC,EAAE,QAAQ,EAAE,GAAG,EAAE,EAAE,EAAE,CAAC,CACxC,4BAAI,SAAS,EAAC,UAAU,EAAC,GAAG,EAAE,GAAG,IAC9B,QAAQ,CACN,CACN,CAAC,CAAA;QACJ,CAAC,CAAC,CACH;KACiC,CAAA;AACtC,CAAC,CAAA;AACD,SAAS,OAAO,CACd,QAAgB,EAChB,EACE,IAAI,EACJ,OAAO,GAAG,GAAG,EAAE,GAAE,CAAC,EAClB,WAAW,EACX,IAAI,EACJ,IAAI,GAAG,KAAK,EACZ,aAAa,EACb,cAAc,EACd,WAAW,EACX,QAAQ,EACR,YAAY,EACZ,UAAU,GAAG,YAAY,GAa1B,EACD,GAAG,IAAI;IAEP,MAAM,aAAa,GAAG,YAAY,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;IAC3D,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,EAAE;QACrB,IAAI,IAAI;YAAE,OAAO,IAAI,CAAC,SAAS,CAAA;QAC/B,MAAM,YAAY,GAAa,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAA;QAC9E,MAAM,eAAe,GAAG,aAAa,CAAC,KAAK,CAAC,QAAQ,IAAI,IAAI,EAAE,YAAY,CAAC,CAAA;QAC3E,OAAO,aAAa,CAAC,KAAK,CAAC,eAAe,CAAC,CAAA;IAC7C,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;IACR,MAAM,GAAG,GAAG,8BAA8B,CAAC,MAAM,CAAC,CAAA;IAElD,6CAA6C;IAC7C,IAAI,OAAO,GAAG,KAAK,CAAA;IACnB,MAAM,aAAa,GAAG,eAAe,CAAC,EAAE,WAAW,EAAE,CAAC,CAAA;IAEtD,MAAM,UAAU,GAAwC,UAAU,CAAC,OAAO,EAAE,aAAa,CAAC,UAAU,EAAE,CAAC,CAAA;IACvG,yBAAyB;IACzB,MAAM,eAAe,GAAG,MAAM,CAAC,WAAW,CACxC,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAC9E,CAAA;IAED,MAAM,KAAK,GAAU;QACnB,GAAG,UAAU,CAAC,aAAa,EAAE;YAC3B,aAAa;YACb,cAAc;YACd,WAAW;YACX,QAAQ;YACR,YAAY;YACZ,MAAM,EAAE,aAAa;SACtB,CAAC;QACF,GAAG,OAAO,CAAC,aAAa,CAAC;QACzB,GAAG,eAAe;KACnB,CAAA;IAID,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,CAAC,CAAC,EAAE,GAAE,CAAC,CAAwB,CAAA;IACzD,MAAM,GAAG,GAAG,KAAK,CAAC,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,CAAC;SACrF,GAAG,CAAC;QACH,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,EAAE;YACpC,oBAAoB;YACpB,IAAI,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC5B,OAAO,IAAI,CAAA;YACb,CAAC;YACD,IAAI,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC1B,OAAO,aAAa,CAClB,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE;oBACpB,OAAO,CACL,6BAAK,GAAG,EAAE,GAAG;wBACX,4BAAI,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,IAC/B,IAAI,CAAC,IAAI,CACP;wBACJ,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,CAChC,CACP,CAAA;gBACH,CAAC,EACD,IAAI,EACJ,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,GAAG,GAAG,EAAE,CAAC,CACpC,CAAA;YACH,CAAC;YACD,OAAO,CAAC,IAAI,CAAC,0BAA0B,GAAG,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAA;YACxE,OAAO,aAAa,CAAC,MAAM,EAAE,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,EAAE,sBAAsB,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAA;QACzG,CAAC;KACF,CAAC;SACD,GAAG,CAAC,KAAK,CAAC;SACV,GAAG,CAAC,GAAG,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,SAAS,EAAE,EAAE;QACnE,oEAAoE;QACpE,0CAA0C;QAC1C,MAAM,QAAQ,GAAG,GAAG,EAAE;YACpB,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO;gBAAE,OAAO,SAAS,EAAE,CAAA;YACtD,IAAI,GAAG,EAAE,QAAQ;gBAAE,OAAO,SAAS,EAAE,CAAA;YACrC,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,EAAE,GAAG,IAAI,EAAE,CAAC,CAAA;YACvC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;gBAAE,OAAO,SAAS,EAAE,CAAA;YAC/E,IAAI,GAAG,EAAE,UAAU,KAAK,OAAO;gBAAE,OAAO,SAAS,EAAE,CAAA;YACnD,OAAO,SAAS,CAAC,IAAI,EAAE,EAAE,GAAG,CAAC,GAAG,IAAI,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,SAAS,CAAC,CAAA;QACvE,CAAC,CAAA;QACD,MAAM,SAAS,GAAG,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,SAAS,CAAA;QACvF,IAAI,MAAM,CAAA;QACV,IAAI,CAAC;YACH,MAAM,GAAG,QAAQ,EAAE,CAAA;QACrB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,IAAI,CAAC,mBAAmB,SAAS,IAAI,EAAE,uBAAuB,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;YACvF,OAAO,aAAa,CAClB,MAAM,EACN,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,sBAAsB,EAAE,EACrD,UAAU,SAAS,IAAI,EAAE,oBAAoB,CAC9C,CAAA;QACH,CAAC;QACD,IAAI,IAAI,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,EAAE,CAAC;YAC9F,OAAO,aAAa,CAAC,aAAa,EAAE,EAAE,GAAG,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,EAAE,MAAM,CAAC,CAAA;QAC5E,CAAC;QACD,OAAO,MAAM,CAAA;IACf,CAAC,CAAC;SACD,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;IACnB,+DAA+D;IAC/D,OAAO,IAAI,KAAK,EAAE,CAAC,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,aAAa,CAAC,CAAA;AAChE,CAAC;AAED,mDAAmD;AACnD,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE;IACtD,IAAI,OAAO,GAAG,YAAY,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,CAAA;IAEnD,gCAAgC;IAChC,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAA;IAChE,OAAO,oBAAC,OAAO,IAAO,QAAQ,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAmB,GAAM,CAAA;AAC9F,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,eAAe,GAC1B,CAAC,OAAO,GAAG,YAAY,CAAC,EAAE,aAAa,EAAE,IAAI,EAAE,CAAC,EAAE,EAAE,CACpD,CAAC,EAAE,QAAQ,EAAE,GAAG,OAAO,EAAE,EAAE,EAAE;IAC3B,IAAI,eAAe,GAAG,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;IAE7C,gCAAgC;IAChC,MAAM,IAAI,GAAG,SAAS,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,eAAe,CAAC,CAAC,CAAA;IACxD,OAAO,oBAAC,OAAO,IAAO,QAAQ,EAAE,GAAG,OAAO,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,EAAmB,GAAM,CAAA;AAC9F,CAAC,CAAA;AAEH,eAAe,OAAO,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import type { ReactNode } from 'react';
2
+ export type LinkPreviewTarget = {
3
+ text: string;
4
+ kind: 'heading' | 'explicit-id';
5
+ };
6
+ export type LinkPreviewResolver = (target: string, resolved: LinkPreviewTarget | undefined) => ReactNode | null;
7
+ export declare const buildLinkPreviewIndex: (tree: unknown) => Map<string, LinkPreviewTarget>;
@@ -0,0 +1,55 @@
1
+ import { getExplicitNodeId, getTextContentFromNode, indexAnchors } from '@podlite/schema';
2
+ // Longer than a popup can show without becoming a page of its own. Chosen by
3
+ // measuring the first visible text under headings across the knowledge base.
4
+ const CUT_AT = 200;
5
+ const RENDERS_NOTHING = new Set(['blankline', 'comment']);
6
+ const rendersNothing = (node) => !node || typeof node !== 'object' || RENDERS_NOTHING.has(node.type) || RENDERS_NOTHING.has(node.name);
7
+ const headingLevel = (node) => node && node.name === 'head' ? Number(node.level) || 1 : undefined;
8
+ const cut = (text) => {
9
+ const flat = text.replace(/\s+/g, ' ').trim();
10
+ return flat.length <= CUT_AT ? flat : `${flat.slice(0, CUT_AT).trimEnd()}…`;
11
+ };
12
+ // The text a target stands for: its own, when the author named the node; the
13
+ // first thing that renders, when the target is a heading.
14
+ const textAfter = (siblings, at, stopAtOrAbove) => {
15
+ for (let i = at + 1; i < siblings.length; i++) {
16
+ const node = siblings[i];
17
+ const level = headingLevel(node);
18
+ if (level !== undefined && stopAtOrAbove !== undefined && level <= stopAtOrAbove)
19
+ return '';
20
+ if (rendersNothing(node))
21
+ continue;
22
+ const text = cut(getTextContentFromNode(node));
23
+ if (text)
24
+ return text;
25
+ }
26
+ return '';
27
+ };
28
+ // Walked once per document, before the first link is drawn.
29
+ export const buildLinkPreviewIndex = (tree) => {
30
+ const found = new Map();
31
+ const anchorOf = indexAnchors(tree).byNode;
32
+ const visit = (siblings) => {
33
+ siblings.forEach((node, at) => {
34
+ if (!node || typeof node !== 'object')
35
+ return;
36
+ const level = headingLevel(node);
37
+ // A heading stands for what follows it, even when the author also named it:
38
+ // a reader following such a link wants the section, not the title twice.
39
+ const entry = level === undefined
40
+ ? { text: cut(getTextContentFromNode(node)), kind: 'explicit-id' }
41
+ : { text: textAfter(siblings, at, level), kind: 'heading' };
42
+ const explicit = getExplicitNodeId(node, {});
43
+ if (explicit)
44
+ found.set(explicit, entry);
45
+ const anchor = anchorOf.get(node);
46
+ if (anchor && !found.has(anchor))
47
+ found.set(anchor, entry);
48
+ if (Array.isArray(node.content))
49
+ visit(node.content);
50
+ });
51
+ };
52
+ visit(Array.isArray(tree) ? tree : [tree]);
53
+ return found;
54
+ };
55
+ //# sourceMappingURL=link-preview.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"link-preview.js","sourceRoot":"","sources":["../src/link-preview.ts"],"names":[],"mappings":"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"}
package/lib/index.d.ts CHANGED
@@ -1,5 +1,7 @@
1
1
  import * as React from 'react';
2
2
  import { PodNode, PodliteExport } from '@podlite/schema';
3
+ import { LinkPreviewResolver } from './link-preview';
4
+ export type { LinkPreviewResolver, LinkPreviewTarget } from './link-preview';
3
5
  export type CreateElement = typeof React.createElement;
4
6
  export declare class BlockBoundary extends React.Component<{
5
7
  blockName?: string;
@@ -32,6 +34,7 @@ export declare const Podlite: React.FC<{
32
34
  expandPaths?: ExpandPaths;
33
35
  imageSrc?: ImageSrcResolver;
34
36
  imageBaseDir?: string;
37
+ linkPreview?: LinkPreviewResolver;
35
38
  renderMode?: 'production' | 'draft';
36
39
  }>;
37
40
  type IncludeReader = (path: string, baseDir?: string) => string | null;