mathpix-markdown-it 2.0.28 → 2.0.29

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 (80) hide show
  1. package/README.md +14 -0
  2. package/doc/images/latex-lstlisting-env/latex-lstlisting-env-01.png +0 -0
  3. package/doc/images/latex-lstlisting-env/latex-lstlisting-env-02.png +0 -0
  4. package/doc/images/latex-lstlisting-env/latex-lstlisting-env-03.png +0 -0
  5. package/doc/images/latex-lstlisting-env/latex-lstlisting-env-04.png +0 -0
  6. package/doc/latex-lstlisting-env.md +75 -0
  7. package/es5/bundle.js +4 -4
  8. package/es5/index.js +4 -4
  9. package/lib/copy-to-clipboard/clipboard-copy-styles.js +1 -1
  10. package/lib/copy-to-clipboard/clipboard-copy-styles.js.map +1 -1
  11. package/lib/index.d.ts +2 -2
  12. package/lib/index.js +2 -1
  13. package/lib/index.js.map +1 -1
  14. package/lib/markdown/common/consts.d.ts +18 -0
  15. package/lib/markdown/common/consts.js +27 -2
  16. package/lib/markdown/common/consts.js.map +1 -1
  17. package/lib/markdown/common/csv.js +8 -3
  18. package/lib/markdown/common/csv.js.map +1 -1
  19. package/lib/markdown/common/mmdRules.js +10 -0
  20. package/lib/markdown/common/mmdRules.js.map +1 -1
  21. package/lib/markdown/common/parse-attribures.d.ts +12 -0
  22. package/lib/markdown/common/parse-attribures.js +45 -0
  23. package/lib/markdown/common/parse-attribures.js.map +1 -0
  24. package/lib/markdown/common/render-table-cell-content.js +18 -0
  25. package/lib/markdown/common/render-table-cell-content.js.map +1 -1
  26. package/lib/markdown/common/tsv.js +4 -1
  27. package/lib/markdown/common/tsv.js.map +1 -1
  28. package/lib/markdown/common.d.ts +1 -0
  29. package/lib/markdown/common.js +3 -1
  30. package/lib/markdown/common.js.map +1 -1
  31. package/lib/markdown/mathpix-markdown-plugins.js +1 -0
  32. package/lib/markdown/mathpix-markdown-plugins.js.map +1 -1
  33. package/lib/markdown/md-block-rule/begin-tabular/index.js +18 -4
  34. package/lib/markdown/md-block-rule/begin-tabular/index.js.map +1 -1
  35. package/lib/markdown/md-block-rule/begin-tabular/multi-column-row.js +3 -1
  36. package/lib/markdown/md-block-rule/begin-tabular/multi-column-row.js.map +1 -1
  37. package/lib/markdown/md-block-rule/begin-tabular/sub-code.d.ts +41 -1
  38. package/lib/markdown/md-block-rule/begin-tabular/sub-code.js +139 -40
  39. package/lib/markdown/md-block-rule/begin-tabular/sub-code.js.map +1 -1
  40. package/lib/markdown/md-block-rule/begin-tabular/sub-math.js +10 -2
  41. package/lib/markdown/md-block-rule/begin-tabular/sub-math.js.map +1 -1
  42. package/lib/markdown/md-block-rule/begin-tabular/sub-tabular.js +2 -0
  43. package/lib/markdown/md-block-rule/begin-tabular/sub-tabular.js.map +1 -1
  44. package/lib/markdown/md-block-rule/begin-tabular/tabular-td.js +2 -0
  45. package/lib/markdown/md-block-rule/begin-tabular/tabular-td.js.map +1 -1
  46. package/lib/markdown/md-block-rule/helper.js +8 -3
  47. package/lib/markdown/md-block-rule/helper.js.map +1 -1
  48. package/lib/markdown/md-block-rule/lists/index.js +123 -1
  49. package/lib/markdown/md-block-rule/lists/index.js.map +1 -1
  50. package/lib/markdown/md-inline-rule/diagbox-inline.js +4 -15
  51. package/lib/markdown/md-inline-rule/diagbox-inline.js.map +1 -1
  52. package/lib/markdown/md-latex-lstlisting-env/index.d.ts +9 -0
  53. package/lib/markdown/md-latex-lstlisting-env/index.js +23 -0
  54. package/lib/markdown/md-latex-lstlisting-env/index.js.map +1 -0
  55. package/lib/markdown/md-latex-lstlisting-env/latex-lstlisting-env-block.d.ts +6 -0
  56. package/lib/markdown/md-latex-lstlisting-env/latex-lstlisting-env-block.js +71 -0
  57. package/lib/markdown/md-latex-lstlisting-env/latex-lstlisting-env-block.js.map +1 -0
  58. package/lib/markdown/md-latex-lstlisting-env/latex-lstlisting-env-inline.d.ts +7 -0
  59. package/lib/markdown/md-latex-lstlisting-env/latex-lstlisting-env-inline.js +76 -0
  60. package/lib/markdown/md-latex-lstlisting-env/latex-lstlisting-env-inline.js.map +1 -0
  61. package/lib/markdown/md-latex-lstlisting-env/lstlisting-options.d.ts +21 -0
  62. package/lib/markdown/md-latex-lstlisting-env/lstlisting-options.js +96 -0
  63. package/lib/markdown/md-latex-lstlisting-env/lstlisting-options.js.map +1 -0
  64. package/lib/markdown/md-latex-lstlisting-env/parse-math-escape-inline.d.ts +21 -0
  65. package/lib/markdown/md-latex-lstlisting-env/parse-math-escape-inline.js +55 -0
  66. package/lib/markdown/md-latex-lstlisting-env/parse-math-escape-inline.js.map +1 -0
  67. package/lib/markdown/md-latex-lstlisting-env/render-latex-lstlisting-env.d.ts +16 -0
  68. package/lib/markdown/md-latex-lstlisting-env/render-latex-lstlisting-env.js +165 -0
  69. package/lib/markdown/md-latex-lstlisting-env/render-latex-lstlisting-env.js.map +1 -0
  70. package/lib/markdown/mdHighlightCodePlugin.js +85 -5
  71. package/lib/markdown/mdHighlightCodePlugin.js.map +1 -1
  72. package/lib/markdown/mdPluginConfigured.d.ts +2 -0
  73. package/lib/markdown/mdPluginConfigured.js +3 -1
  74. package/lib/markdown/mdPluginConfigured.js.map +1 -1
  75. package/lib/markdown/mdPluginRaw.d.ts +3 -0
  76. package/lib/markdown/mdPluginRaw.js +6 -4
  77. package/lib/markdown/mdPluginRaw.js.map +1 -1
  78. package/lib/markdown/mdPluginTableTabular.js +2 -0
  79. package/lib/markdown/mdPluginTableTabular.js.map +1 -1
  80. package/package.json +2 -2
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Lists = exports.ReRenderListsItem = exports.reNumber = exports.bItemTag = exports.TBegin = void 0;
4
4
  var re_level_1 = require("./re-level");
5
5
  var helper_1 = require("../helper");
6
+ var consts_1 = require("../../common/consts");
6
7
  var TBegin;
7
8
  (function (TBegin) {
8
9
  TBegin["itemize"] = "itemize";
@@ -47,7 +48,7 @@ var ListItemsBlock = function (state, items) {
47
48
  };
48
49
  var ListItems = function (state, items, iLevel, eLevel, li, iOpen, iLevelC) {
49
50
  var token;
50
- var blockStartTag = /\\begin{(center|left|right|table|figure|tabular)}/;
51
+ var blockStartTag = /\\begin{(center|left|right|table|figure|tabular|lstlisting)}/;
51
52
  var padding = 0;
52
53
  if (items && items.length > 0) {
53
54
  if (items && items.length > 0) {
@@ -341,6 +342,107 @@ var ReRenderListsItem = function (state, startLine, endLine, silent) {
341
342
  return true;
342
343
  };
343
344
  exports.ReRenderListsItem = ReRenderListsItem;
345
+ /**
346
+ * Try to handle an inline `\begin{lstlisting}` on the given line.
347
+ *
348
+ * Behavior:
349
+ * - If already inside a lstlisting environment (`envDepth > 0`), does nothing.
350
+ * - If a `\begin{lstlisting}` is found:
351
+ * - Text before the begin is appended either as a new list item (when it matches `itemTag`)
352
+ * or concatenated to the previous item.
353
+ * - Sets `envDepth` to 1 (entered lstlisting).
354
+ * - Appends the substring starting at `\begin{lstlisting}` to the end of the line
355
+ * as code content in the current item.
356
+ *
357
+ * The function does not mutate inputs; it returns the updated state.
358
+ *
359
+ * @param lineText The full text of the current line.
360
+ * @param envDepth Current lstlisting nesting depth.
361
+ * @param items Collected items so far (list builder state).
362
+ * @param nextLine The current (next) line index used for item position metadata.
363
+ * @param dStart Document start line offset to compute absolute positions.
364
+ * @param itemTag RegExp to detect list item prefixes (e.g., `^\s*\\item`).
365
+ * @returns Updated handling result with flags, depth, items, and original line text.
366
+ */
367
+ var handleLstBeginInline = function (lineText, envDepth, items, nextLine, dStart, itemTag) {
368
+ // If already inside lstlisting, do nothing.
369
+ if (envDepth > 0) {
370
+ return { handled: false, envDepth: envDepth, items: items, lineText: lineText };
371
+ }
372
+ var mb = consts_1.BEGIN_LST_INLINE_RE.exec(lineText);
373
+ if (!mb) {
374
+ return { handled: false, envDepth: envDepth, items: items, lineText: lineText };
375
+ }
376
+ var beginIndex = mb.index;
377
+ // Is there text BEFORE \begin{lstlisting} ?
378
+ var before = lineText.slice(0, beginIndex).trimEnd();
379
+ var afterBegin = lineText.slice(beginIndex); // start from \begin...
380
+ // If there was something before begin, it was regular text/part of \item:
381
+ if (before.length > 0) {
382
+ if (itemTag.test(before)) {
383
+ items = ItemsListPush(items, before, nextLine + dStart, nextLine + dStart);
384
+ }
385
+ else {
386
+ items = ItemsAddToPrev(items, before, nextLine);
387
+ }
388
+ }
389
+ envDepth = 1; //entered lstlisting
390
+ items = ItemsAddToPrev(items, afterBegin, nextLine); //The part from \begin{lstlisting} to the end of the line is considered a code string.
391
+ return { handled: true, envDepth: envDepth, items: items, lineText: lineText };
392
+ };
393
+ /**
394
+ * Try to handle an inline `\end{lstlisting}` on the current line.
395
+ *
396
+ * Behavior:
397
+ * - If not inside an lstlisting environment (`envDepth === 0`), does nothing.
398
+ * - If no end marker is found on this line, appends the full line (with original leading whitespace)
399
+ * to the current item and reports `handled: true` (still inside the env).
400
+ * - If an end marker is present:
401
+ * - Appends everything up to `\end{...}` (plus the end token itself) to the current item.
402
+ * - Resets `envDepth` to 0 (leaves lstlisting).
403
+ * - If there is trailing text after the end token, returns it in `lineText` so the caller
404
+ * can continue processing the remainder of the line; otherwise returns an empty `lineText`.
405
+ *
406
+ * The function does not mutate inputs; it returns the updated state.
407
+ *
408
+ * @param lineText Current line text (may contain `\end{lstlisting}`).
409
+ * @param envDepth Current lstlisting nesting depth (0 if outside).
410
+ * @param items Accumulated items list (list builder state).
411
+ * @param nextLine Line index used for item position metadata.
412
+ * @param state Markdown-It state (used to read the original line with indentation).
413
+ * @returns Updated result with flags, depth, items, and remaining line text (if any).
414
+ */
415
+ var handleLstEndInline = function (lineText, envDepth, items, nextLine, state) {
416
+ var _a;
417
+ // If we are not inside lstlisting, we exit
418
+ if (envDepth === 0) {
419
+ return { handled: false, envDepth: envDepth, items: items, lineText: lineText };
420
+ }
421
+ var me = consts_1.END_LST_INLINE_RE.exec(lineText);
422
+ if (!me) {
423
+ // There is no end of environment - just add the line as is
424
+ lineText = state.src.slice(state.bMarks[nextLine], state.eMarks[nextLine]); // It is important to take into account the leading whitespace characters.
425
+ items = ItemsAddToPrev(items, lineText, nextLine);
426
+ return { handled: true, envDepth: envDepth, items: items, lineText: lineText };
427
+ }
428
+ // There is an end of environment in this line
429
+ var endIndex = me.index;
430
+ var endToken = lineText.slice(endIndex, endIndex + me[0].length);
431
+ var beforeEnd = lineText.slice(0, endIndex);
432
+ var afterEnd = lineText.slice(endIndex + me[0].length);
433
+ // Everything up to \end{...} is a continuation of the code
434
+ if (beforeEnd.length > 0) {
435
+ items = ItemsAddToPrev(items, beforeEnd + '\n' + endToken, nextLine);
436
+ }
437
+ else {
438
+ items = ItemsAddToPrev(items, endToken, nextLine);
439
+ }
440
+ envDepth = 0; // Exit lstlisting
441
+ if (!((_a = afterEnd === null || afterEnd === void 0 ? void 0 : afterEnd.trim()) === null || _a === void 0 ? void 0 : _a.length)) {
442
+ return { handled: true, envDepth: envDepth, items: items, lineText: '' };
443
+ }
444
+ return { handled: false, envDepth: envDepth, items: items, lineText: afterEnd };
445
+ };
344
446
  var Lists = function (state, startLine, endLine, silent) {
345
447
  var _a;
346
448
  var openTag = /\\begin\s{0,}\{(itemize|enumerate)\}/;
@@ -383,10 +485,30 @@ var Lists = function (state, startLine, endLine, silent) {
383
485
  }
384
486
  var items = [];
385
487
  var haveClose = false;
488
+ var envDepth = 0; // >0 — we are in the code environment
386
489
  for (; nextLine < endLine; nextLine++) {
387
490
  pos = state.bMarks[nextLine] + state.tShift[nextLine];
388
491
  max = state.eMarks[nextLine];
389
492
  lineText = state.src.slice(pos, max);
493
+ // 1) If you are NOT currently inside lstlisting, first search for \begin{lstlisting}
494
+ if (envDepth === 0) {
495
+ var beginRes = handleLstBeginInline(lineText, envDepth, items, nextLine, dStart, itemTag);
496
+ envDepth = beginRes.envDepth;
497
+ if (beginRes.handled) {
498
+ continue; // this line is already fully processed
499
+ }
500
+ lineText = beginRes.lineText;
501
+ }
502
+ // 2) If we are inside lstlisting, we search for \end{lstlisting}
503
+ if (envDepth > 0) {
504
+ var endRes = handleLstEndInline(lineText, envDepth, items, nextLine, state);
505
+ envDepth = endRes.envDepth;
506
+ items = endRes.items;
507
+ if (endRes.handled) {
508
+ continue;
509
+ }
510
+ lineText = endRes.lineText;
511
+ }
390
512
  if (setcounterTag.test(lineText)) {
391
513
  match = lineText.match(setcounterTag);
392
514
  if (match && state.md.options && state.md.options.forLatex) {
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/markdown/md-block-rule/lists/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/markdown/md-block-rule/lists/index.ts"],"names":[],"mappings":";;;AACA,uCAAkG;AAClG,oCAA+C;AAC/C,8CAA6E;AAC7E,IAAY,MAAqD;AAAjE,WAAY,MAAM;IAAE,6BAAmB,CAAA;IAAE,iCAAuB,CAAA;AAAA,CAAC,EAArD,MAAM,GAAN,cAAM,KAAN,cAAM,QAA+C;AAAA,CAAC;AAClE,IAAM,OAAO,GAAW,sCAAsC,CAAC;AAClD,QAAA,QAAQ,GAAW,kCAAkC,CAAC;AACnE,IAAM,QAAQ,GAAW,oCAAoC,CAAC;AACjD,QAAA,QAAQ,GAAW,SAAS,CAAC;AAE1C,IAAM,yBAAyB,GAAG,UAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;IAC/F,IAAI,KAAK,CAAC;IACV,KAAK,GAAU,KAAK,CAAC,IAAI,CAAC,sBAAsB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IAC3D,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACpG,IAAI,MAAM,EAAE;QACV,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;QACtB,IAAI,QAAQ,GAAG,EAAE,CAAC;QAClB,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;QAC7D,KAAK,CAAC,YAAY,GAAG,QAAQ,CAAC;KAC/B;IACD,IAAI,EAAE,IAAI,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;QACpC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,KAAK,CAAC;QAC5B,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;QAC3C,EAAE,GAAG,IAAI,CAAC;KACX;IACD,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACpG,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC;IAEpC,KAAK,CAAC,GAAG,GAAG,CAAC,SAAS,EAAE,OAAO,CAAE,CAAC;IAClC,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IACpC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC;IAC5B,KAAK,CAAC,oBAAoB,GAAG,OAAO,CAAC;IACrC,KAAK,CAAC,cAAc,GAAG,MAAM,CAAC;AAChC,CAAC,CAAC;AAEF,IAAM,cAAc,GAAG,UAAC,KAAK,EAAE,KAAK;IAClC,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;QAC7B,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7B,KAAK,CAAC,OAAO,CAAC,UAAA,IAAI;gBAChB,IAAA,4BAAmB,EAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAA;YACnF,CAAC,CAAC,CAAA;SACH;KACF;AACH,CAAC,CAAC;AAEF,IAAM,SAAS,GAAG,UAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO;IACjE,IAAI,KAAK,CAAC;IACV,IAAM,aAAa,GAAW,8DAA8D,CAAC;IAC7F,IAAI,OAAO,GAAG,CAAC,CAAC;IAChB,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;QAC7B,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YAC7B,KAAK,CAAC,OAAO,CAAC,UAAA,IAAI;;gBAChB,IAAI,QAAQ,GAAG,EAAE,CAAC;gBAClB,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;gBACxC,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;gBACzB,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;gBACnC,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,gDAAgD;kBACvH;oBACA,IAAI,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAQ,CAAC,CAAC;oBAClD,IAAI,KAAK,EAAE;wBACT,yBAAyB,CAAC,KAAK,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;wBAC1G,IAAI,EAAE,IAAI,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;4BACpC,EAAE,GAAG,IAAI,CAAC;yBACX;wBAED,IAAA,4BAAmB,EAAC,KAAK,EAAE,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;wBAExF,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,uBAAuB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;wBACtD,OAAM;qBACP;iBACF;gBACD,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;gBAE1E,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;oBACxC,IAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;oBAC1B,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE;wBAC/B,EAAE,GAAG,EAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAC,CAAC;wBAC5B,SAAS;qBACV;oBACD,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;oBAC7C,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;oBAC1B,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa;2BAC3B,EAAE,IAAI,EAAE,CAAC,cAAc,CAAC,OAAO,CAAC,EAAE;wBACrC,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,KAAK,CAAC;wBAC5B,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;wBAC3C,EAAE,GAAG,IAAI,CAAC;qBACX;oBACD,IAAI,KAAK,CAAC,cAAc,CAAC,QAAQ,CAAC,EAAE;wBAClC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC;wBAC5B,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,YAAY,CAAC;wBACxC,IAAI,YAAY,GAAG,CAAC,CAAC;wBACrB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAG,MAAA,KAAK,CAAC,YAAY,0CAAE,MAAM,CAAA,EAAE,CAAC,EAAE,EAAE;4BACnD,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,EAAE;gCACzC,YAAY,IAAI,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC;6BACtD;yBACF;wBACD,IAAI,YAAY,GAAG,OAAO,EAAE;4BAC1B,OAAO,GAAG,YAAY,CAAC;yBACxB;qBAEF;oBACD,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACpG,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC;oBAEpC,KAAK,CAAC,GAAG,GAAG,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC;oBAC/C,IAAI,KAAK,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE;wBACrC,KAAK,CAAC,MAAM,GAAG,KAAK,CAAC,SAAS,CAAC,aAAa,CAAA;qBAC7C;oBACD,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;oBAC9B,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;oBAChC,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;oBACpC,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE;wBAChC,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;qBACzC;oBAED,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE;wBAC9E,KAAK,CAAC,UAAU,EAAE,CAAC;wBACnB,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE;4BACtC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;yBAC7B;6BAAM;4BACL,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;yBAC/B;wBACD,KAAK,EAAE,CAAC;qBACT;oBACD,IAAI,KAAK,CAAC,IAAI,KAAK,sBAAsB,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB,EAAE;wBAChF,KAAK,CAAC,UAAU,EAAE,CAAC;wBACnB,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;4BACzC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;yBACnB;wBACD,KAAK,EAAE,CAAC;qBACT;oBAGD,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC;oBAC5B,KAAK,CAAC,oBAAoB,GAAG,OAAO,CAAC;oBACtC,2CAA2C;oBAC1C,KAAK,CAAC,cAAc,GAAG,MAAM,CAAC;iBAC/B;gBACD,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;YAC5B,CAAC,CAAC,CAAA;SACH;KACF;IACD,OAAO;QACL,KAAK,EAAE,KAAK;QACZ,OAAO,EAAE,OAAO;KACjB,CAAC;AACJ,CAAC,CAAC;AAEF,IAAM,gBAAgB,GAAG,UAAC,KAAK,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;IAChF,IAAI,KAAY,CAAC;IACjB,IAAI,IAAI,KAAK,MAAM,CAAC,OAAO,EAAE;QAC3B,KAAK,GAAU,KAAK,CAAC,IAAI,CAAC,mBAAmB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QACxD,KAAK,CAAC,UAAU,GAAG,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;QACnH,KAAK,CAAC,UAAU,GAAG,SAAS,CAAC;QAC7B,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAC;YACxC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAC7B;aAAM;YACL,KAAK,CAAC,KAAK,GAAG,CAAC,SAAS,CAAC,CAAC;SAC3B;KACF;SAAM;QACL,KAAK,GAAU,KAAK,CAAC,IAAI,CAAC,qBAAqB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;QAC1D,KAAK,CAAC,UAAU,GAAG,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;QACnH,KAAK,CAAC,UAAU,GAAG,WAAW,CAAC;QAC/B,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAC;YACxC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;SAC/B;aAAM;YACL,KAAK,CAAC,KAAK,GAAG,CAAC,WAAW,CAAC,CAAC;SAC7B;KACF;IACD,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC;IAC5B,KAAK,CAAC,oBAAoB,GAAG,OAAO,CAAC;IACrC,KAAK,CAAC,cAAc,GAAG,MAAM,CAAC;IAC9B,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IACpC,IAAI,SAAS,GAAG,CAAC,CAAC,IAAI,OAAO,GAAG,CAAC,CAAC,EAAE;QAClC,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;QAC5B,KAAK,CAAC,GAAG,GAAM,CAAE,SAAS,EAAE,OAAO,CAAE,CAAC;KACvC;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,IAAM,iBAAiB,GAAG,UAAC,KAAK,EAAE,SAAS,EAAE,OAAO;IAClD,IAAI,KAAY,CAAC;IACjB,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,KAAK,MAAM,CAAC,OAAO,EAAE;QACnG,KAAK,GAAU,KAAK,CAAC,IAAI,CAAC,oBAAoB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC1D,KAAK,CAAC,GAAG,GAAM,CAAE,SAAS,EAAE,OAAO,CAAC,CAAC;KACtC;SAAM;QACL,KAAK,GAAU,KAAK,CAAC,IAAI,CAAC,sBAAsB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5D,KAAK,CAAC,GAAG,GAAM,CAAE,SAAS,EAAE,OAAO,CAAE,CAAC;KACvC;IACD,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;IACjB,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC;IACjB,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACnE,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;IACpC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAA;AACnB,CAAC,CAAC;AAEF,IAAM,QAAQ,GAAG,UAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO;IACnE,IAAI,KAAY,EAAE,UAAU,GAAe,IAAI,CAAC;IAChD,IAAI,KAAK,GAAW,CAAC,CAAC;IACtB,IAAI,EAAE,GAAG,IAAI,CAAC;IACd,IAAI,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE;QAC3C,OAAO,EAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAC,CAAC;KAC/C;IAED,IAAI,KAAK,GAAoB,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrD,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU,KAAK,SAAS,IAAI,KAAK,CAAC,UAAU,KAAK,WAAW,CAAC,EAAE;QAClF,OAAO,EAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAC,CAAC;KAC/C;IACD,IAAA,gCAAqB,EAAC,KAAK,CAAC,CAAA;IAE5B,IAAI,KAAK,EAAE;QACT,IAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAC/D,IAAM,IAAI,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAChE,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,EAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAC,CAAC;SAC/C;QACD,UAAU,GAAG,gBAAgB,CAAE,KAAK,EAAE,SAAS,EAAE,SAAS,GAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QAC7F,KAAK,EAAE,CAAC;QAER,IAAI,QAAQ,IAAI,QAAQ,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;YAC1C,IAAI,QAAQ,GAAG,EAAE,CAAC;YAClB,KAAK,CAAC,GAAG,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;YACxC,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,IAAI,CAAC;YACzB,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;YAE/D,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,QAAQ,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;gBACxC,IAAM,KAAK,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;gBAC1B,IAAI,KAAK,CAAC,IAAI,KAAK,YAAY,EAAE;oBAC/B,EAAE,GAAG,EAAC,KAAK,EAAE,KAAK,CAAC,OAAO,EAAC,CAAC;oBAC5B,SAAS;iBACV;gBACD,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC;gBAC7C,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACnG,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,SAAS,CAAC;gBAEpC,KAAK,CAAC,GAAG,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;gBACnC,KAAK,CAAC,OAAO,GAAG,KAAK,CAAC,OAAO,CAAC;gBAC9B,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;gBAChC,KAAK,CAAC,YAAY,GAAG,MAAM,CAAC;gBAC5B,KAAK,CAAC,oBAAoB,GAAG,OAAO,CAAC;gBACrC,KAAK,CAAC,cAAc,GAAG,MAAM,CAAC;gBAC9B,IAAI,KAAK,CAAC,IAAI,KAAK,qBAAqB,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE;oBAC9E,KAAK,CAAC,UAAU,EAAE,CAAC;oBACnB,IAAI,KAAK,CAAC,IAAI,KAAK,mBAAmB,EAAE;wBACtC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;qBAC7B;yBAAM;wBACL,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;qBAC/B;oBACD,KAAK,EAAE,CAAC;iBACT;gBACD,IAAI,KAAK,CAAC,IAAI,KAAK,sBAAsB,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB,EAAE;oBAChF,KAAK,CAAC,UAAU,EAAE,CAAC;oBACnB,IAAI,KAAK,CAAC,KAAK,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;wBACzC,KAAK,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;qBACnB;oBACD,KAAK,EAAE,CAAC;iBACT;gBACD,IAAI,KAAK,CAAC,IAAI,KAAK,aAAa,EAAE;oBAChC,IAAI,EAAE,IAAI,EAAE,CAAC,KAAK,EAAE;wBAClB,KAAK,CAAC,UAAU,GAAG,EAAE,CAAC,KAAK,CAAC;wBAC5B,KAAK,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAA;wBAC3C,EAAE,GAAG,IAAI,CAAC;qBACX;oBACD,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC;iBACzC;qBAAM;oBACL,KAAK,CAAC,UAAU,GAAG,KAAK,CAAC,UAAU,CAAC;iBACrC;aACF;YACD,KAAK,CAAC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;SAC3B;KACF;IACD,OAAO,EAAC,KAAK,EAAE,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,EAAE,IAAA,EAAC,CAAC;AACpD,CAAC,CAAC;AAEF,IAAM,aAAa,GAAG,UAAC,KAAK,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO;IACvD,mCAAmC;IACnC,IAAM,KAAK,GAAG,OAAO,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAA;IACvC,IAAI,KAAK,GAAG,CAAC,EAAG;QACd,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;YACvF,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;gBACpB,IAAM,IAAI,GAAG,KAAK,CAAC,MAAM,GAAC,CAAC,CAAC;gBAC5B,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,IAAI,GAAG,OAAO,CAAC;gBACtC,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC;aAC1B;iBAAM;gBACL,KAAK,CAAC,IAAI,CAAC,EAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAC,CAAC,CAAC;aACxE;YACD,OAAO,KAAK,CAAC;SACd;QACC,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACtB,IAAM,IAAI,GAAG,KAAK,CAAC,MAAM,GAAC,CAAC,CAAC;YAC5B,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,IAAI,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC;YACtD,KAAK,CAAC,IAAI,CAAC,CAAC,OAAO,IAAI,CAAC,CAAC;SAC1B;aAAM;YACL,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;SAC3E;QACD,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;KACxE;SAAM;QACL,KAAK,CAAC,IAAI,CAAC,EAAC,OAAO,EAAE,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAC,CAAC,CAAC;KACxE;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEF,IAAM,cAAc,GAAG,UAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ;IAC/C,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;QAC7B,KAAK,CAAC,KAAK,CAAC,MAAM,GAAC,CAAC,CAAC,CAAC,OAAO,IAAI,IAAI,GAAG,QAAQ,CAAC;QACjD,KAAK,CAAC,KAAK,CAAC,MAAM,GAAC,CAAC,CAAC,CAAC,OAAO,GAAG,QAAQ,CAAC;KAC1C;SAAM;QACL,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC5B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAA;YAC1D,YAAY;SACb;KACF;IACD,OAAO,KAAK,CAAC;AACf,CAAC,CAAC;AAEK,IAAM,iBAAiB,GAAa,UAAC,KAAK,EAAE,SAAiB,EAAE,OAAe,EAAE,MAAM;IAC3F,IAAI,GAAG,GAAW,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACpE,IAAI,GAAG,GAAW,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC1C,IAAI,QAAQ,GAAW,SAAS,GAAG,CAAC,CAAC;IACrC,IAAI,QAAQ,GAAW,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACjD,IAAI,OAAO,GAAG,QAAQ,CAAC;IACvB,IAAI,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE;QAC3C,OAAO,KAAK,CAAC;KACd;IACD,IAAI,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAQ,CAAC,CAAC;IAC9C,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,KAAK,CAAC;KACd;IACD,IAAM,MAAM,GAAG,IAAA,4BAAiB,GAAE,CAAC;IACnC,IAAM,WAAW,GAAG,IAAA,uCAA4B,EAAC,KAAK,CAAC,CAAC;IACxD,IAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC;IACnC,IAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC;IACrC,OAAO,QAAQ,GAAG,OAAO,EAAE,QAAQ,EAAE,EAAE;QACrC,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACtD,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC7B,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACrC,OAAO,IAAI,IAAI,GAAG,QAAQ,CAAC;KAC5B;IAED,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAQ,CAAC,CAAC;IACzC,IAAI,KAAK,EAAE;QACT,yBAAyB,CAAC,KAAK,EAAE,SAAS,EAAE,QAAQ,GAAG,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;QACpG,IAAA,4BAAmB,EAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAA;QACnF,KAAK,CAAC,IAAI,CAAC,uBAAuB,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;KAC/C;IACD,KAAK,CAAC,IAAI,GAAG,QAAQ,CAAC;IACtB,OAAO,IAAI,CAAA;AACb,CAAC,CAAC;AAhCW,QAAA,iBAAiB,qBAgC5B;AAiBF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,IAAM,oBAAoB,GAAG,UAC3B,QAAgB,EAChB,QAAgB,EAChB,KAAY,EACZ,QAAgB,EAChB,MAAc,EACd,OAAe;IAEf,4CAA4C;IAC5C,IAAI,QAAQ,GAAG,CAAC,EAAE;QAChB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,UAAA,EAAE,KAAK,OAAA,EAAE,QAAQ,UAAA,EAAE,CAAC;KACtD;IACD,IAAM,EAAE,GAAqB,4BAAmB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAChE,IAAI,CAAC,EAAE,EAAE;QACP,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,UAAA,EAAE,KAAK,OAAA,EAAE,QAAQ,UAAA,EAAE,CAAC;KACtD;IACD,IAAM,UAAU,GAAW,EAAE,CAAC,KAAK,CAAC;IACpC,4CAA4C;IAC5C,IAAM,MAAM,GAAW,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC;IAC/D,IAAM,UAAU,GAAW,QAAQ,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC,CAAC,uBAAuB;IAC9E,0EAA0E;IAC1E,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;QACrB,IAAI,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;YACxB,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,GAAG,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAC,CAAC;SAC5E;aAAM;YACL,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;SACjD;KACF;IACD,QAAQ,GAAG,CAAC,CAAC,CAAC,oBAAoB;IAClC,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,UAAU,EAAE,QAAQ,CAAC,CAAC,CAAA,sFAAsF;IAC1I,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,UAAA,EAAE,KAAK,OAAA,EAAE,QAAQ,UAAA,EAAE,CAAC;AACtD,CAAC,CAAA;AAED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,IAAM,kBAAkB,GAAG,UACzB,QAAgB,EAChB,QAAgB,EAChB,KAAY,EACZ,QAAgB,EAChB,KAAK;;IAEL,2CAA2C;IAC3C,IAAI,QAAQ,KAAK,CAAC,EAAE;QAClB,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,UAAA,EAAE,KAAK,OAAA,EAAE,QAAQ,UAAA,EAAE,CAAC;KACtD;IACD,IAAM,EAAE,GAAqB,0BAAiB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC9D,IAAI,CAAC,EAAE,EAAE;QACP,2DAA2D;QAC3D,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,0EAA0E;QACtJ,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAClD,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,UAAA,EAAE,KAAK,OAAA,EAAE,QAAQ,UAAA,EAAE,CAAC;KACrD;IACD,8CAA8C;IAC9C,IAAM,QAAQ,GAAW,EAAE,CAAC,KAAK,CAAC;IAClC,IAAM,QAAQ,GAAW,QAAQ,CAAC,KAAK,CAAC,QAAQ,EAAE,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAC3E,IAAM,SAAS,GAAW,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;IACtD,IAAM,QAAQ,GAAW,QAAQ,CAAC,KAAK,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACjE,2DAA2D;IAC3D,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE;QACxB,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,GAAG,QAAQ,EAAE,QAAQ,CAAC,CAAC;KACtE;SAAM;QACL,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;KACnD;IACD,QAAQ,GAAG,CAAC,CAAC,CAAC,kBAAkB;IAChC,IAAI,CAAC,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,EAAE,0CAAE,MAAM,CAAA,EAAE;QAC7B,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,UAAA,EAAE,KAAK,OAAA,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC;KACzD;IACD,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,UAAA,EAAE,KAAK,OAAA,EAAE,QAAQ,EAAE,QAAQ,EAAE,CAAC;AACjE,CAAC,CAAA;AAEM,IAAM,KAAK,GAAa,UAAC,KAAK,EAAE,SAAiB,EAAE,OAAe,EAAE,MAAM;;IAC/E,IAAM,OAAO,GAAW,sCAAsC,CAAC;IAC/D,IAAM,OAAO,GAAW,QAAQ,CAAC;IACjC,IAAM,aAAa,GAAW,qDAAqD,CAAC;IAEpF,IAAI,GAAG,GAAW,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IACpE,IAAI,GAAG,GAAW,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC;IAC1C,IAAI,QAAQ,GAAW,SAAS,CAAC,CAAA,OAAO;IACxC,IAAI,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,aAAa,IAAI,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS;QACrF,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,aAAa,CAAC,SAAS,CAAC;QAClD,CAAC,CAAC,CAAC,CAAC;IACN,IAAO,aAAa,CAAC;IACrB,IAAI,IAAY,CAAC;IAClB,iBAAiB;IAEhB,IAAI,QAAQ,GAAW,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;IACjD,IAAI,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,OAAO,EAAE;QAC3C,OAAO,KAAK,CAAC;KACd;IAED,IAAI,KAAK,GAAoB,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IACrD,IAAI,CAAC,KAAK,EAAE;QACV,OAAO,KAAK,CAAC;KACd;IAED,IAAM,MAAM,GAAG,IAAA,4BAAiB,GAAE,CAAC;IACnC,IAAM,WAAW,GAAG,IAAA,uCAA4B,EAAC,KAAK,CAAC,CAAC;IACxD,IAAM,OAAO,GAAG,WAAW,CAAC,MAAM,CAAC;IACnC,IAAM,OAAO,GAAG,WAAW,CAAC,QAAQ,CAAC;IAErC,aAAa,GAAG,KAAK,CAAC,UAAU,CAAC;IACjC,IAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;IAChF,IAAA,KAA2C,IAAI,MAAtC,EAAT,KAAK,mBAAG,CAAC,KAAA,EAAE,KAAgC,IAAI,WAAnB,EAAjB,UAAU,mBAAG,IAAI,KAAA,EAAE,KAAa,IAAI,GAAR,EAAT,EAAE,mBAAG,IAAI,KAAA,CAAS;IACrD,IAAI,KAAK,KAAK,CAAC,EAAE;QACf,QAAQ,IAAI,CAAC,CAAC;QACd,KAAK,CAAC,IAAI,GAAG,QAAQ,CAAC;QACtB,KAAK,CAAC,SAAS,GAAG,EAAE,CAAC;QACrB,KAAK,CAAC,UAAU,GAAG,aAAa,CAAC;QACjC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;QAC1D,OAAO,IAAI,CAAA;KACZ;SAAM;QACL,QAAQ,IAAI,CAAC,CAAC;KACf;IACD,IAAI,KAAK,GAAG,EAAE,CAAC;IAEf,IAAI,SAAS,GAAG,KAAK,CAAC;IACtB,IAAI,QAAQ,GAAW,CAAC,CAAC,CAAC,sCAAsC;IAChE,OAAO,QAAQ,GAAG,OAAO,EAAE,QAAQ,EAAE,EAAE;QACrC,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACtD,GAAG,GAAG,KAAK,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC7B,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;QACrC,qFAAqF;QACrF,IAAI,QAAQ,KAAK,CAAC,EAAE;YAClB,IAAM,QAAQ,GAAiB,oBAAoB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;YAC1G,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;YAC7B,IAAI,QAAQ,CAAC,OAAO,EAAE;gBACpB,SAAS,CAAC,uCAAuC;aAClD;YACD,QAAQ,GAAG,QAAQ,CAAC,QAAQ,CAAC;SAC9B;QACD,iEAAiE;QACjE,IAAI,QAAQ,GAAG,CAAC,EAAE;YAChB,IAAM,MAAM,GAAiB,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;YAC5F,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;YAC3B,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YACrB,IAAI,MAAM,CAAC,OAAO,EAAE;gBAClB,SAAS;aACV;YACD,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC;SAC5B;QAED,IAAI,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAChC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC;YACtC,IAAI,KAAK,IAAI,KAAK,CAAC,EAAE,CAAC,OAAO,IAAI,KAAK,CAAC,EAAE,CAAC,OAAO,CAAC,QAAQ,EAAE;gBAC1D,IAAI,KAAK,GAAG,KAAK,CAAC,IAAI,CAAC,YAAY,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC;gBAC5C,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aAC/B;YACD,IAAI,KAAK,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE;gBACrB,IAAI,EAAE,GAAG,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM;oBACtD,CAAC,CAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBAChD,CAAC,CAAC,EAAE,CAAC;gBACP,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;gBACf,IAAI,WAAW,GAAG,CAAA,MAAA,KAAK,CAAC,CAAC,CAAC,0CAAE,IAAI,EAAE,KAAI,gBAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;oBAClE,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;gBACpC,EAAE,GAAG,EAAC,KAAK,EAAE,WAAW,EAAC,CAAC;gBAC1B,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;oBACjB,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;iBAC7C;gBACD,SAAS;aACV;SACF;QACC,IAAI,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC3B,IAAI,OAAK,GAAoB,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;YACtD,IAAI,OAAK,EAAE;gBACT,IAAI,GAAG,OAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,OAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC1D,IAAI,CAAC,IAAI,EAAE;oBACT,OAAO,KAAK,CAAC;iBACd;gBACD,IAAI,EAAE,GAAG,OAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,OAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/D,IAAI,EAAE,GAAG,OAAK,CAAC,KAAK,GAAG,OAAK,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM;oBACtD,CAAC,CAAE,QAAQ,CAAC,KAAK,CAAC,OAAK,CAAC,KAAK,GAAG,OAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBAChD,CAAC,CAAC,EAAE,CAAC;gBACP,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;gBACf,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;gBACf,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;oBAChD,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;oBAC3D,SAAS;iBACV;gBACD,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;oBACjB,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;iBAC7C;gBACD,IAAI,SAAS,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC7E,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;gBACxB,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,EAAE;oBACjE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAC;oBACvC,IAAI,UAAU,CAAC,OAAO,GAAG,CAAC,EAAE;wBAC1B,UAAU,CAAC,OAAO,CAAC,2BAA2B,EAAE,CAAC,UAAU,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;qBACtF;iBACF;gBACD,KAAK,GAAG,EAAE,CAAC;gBACX,EAAE,GAAG,IAAI,CAAC;gBACV,iBAAiB,CAAC,KAAK,EAAE,SAAS,GAAG,MAAM,EAAE,QAAQ,GAAG,MAAM,CAAC,CAAA;gBAC/D,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;oBACjB,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;iBAC7C;gBACD,KAAK,EAAE,CAAC;gBACR,IAAI,KAAK,IAAI,CAAC,EAAE;oBACd,SAAS,GAAG,IAAI,CAAC;oBACjB,QAAQ,IAAI,CAAC,CAAC;oBACd,MAAM;iBACP;aACF;YACD,SAAQ;SACT;QAGH,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;YAC1B,IAAI,OAAK,GAAoB,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YACrD,IAAI,OAAK,EAAE;gBACT,IAAI,GAAG,OAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,MAAM,CAAC,CAAC,CAAC,OAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;gBAC1D,IAAI,CAAC,IAAI,EAAE;oBACT,OAAO,KAAK,CAAC;iBACd;gBACD,IAAI,EAAE,GAAG,OAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,OAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC/D,IAAI,EAAE,GAAG,OAAK,CAAC,KAAK,GAAG,OAAK,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,QAAQ,CAAC,MAAM;oBACtD,CAAC,CAAE,QAAQ,CAAC,KAAK,CAAC,OAAK,CAAC,KAAK,GAAG,OAAK,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC;oBAChD,CAAC,CAAC,EAAE,CAAC;gBACP,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;gBACf,EAAE,GAAG,EAAE,CAAC,IAAI,EAAE,CAAC;gBACf,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,EAAE;oBAChD,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;oBAC3D,SAAS;iBACV;gBACD,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;oBACjB,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;iBAC7C;gBACD,IAAI,SAAS,GAAG,SAAS,CAAC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,EAAE,KAAK,EAAE,OAAO,CAAC,CAAC;gBAC7E,KAAK,GAAG,SAAS,CAAC,KAAK,CAAC;gBACxB,IAAI,CAAC,UAAU,CAAC,OAAO,IAAI,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,EAAE;oBACjE,UAAU,CAAC,OAAO,GAAG,SAAS,CAAC,OAAO,CAAA;oBACtC,IAAI,UAAU,CAAC,OAAO,GAAG,CAAC,EAAE;wBAC1B,UAAU,CAAC,OAAO,CAAC,2BAA2B,EAAE,CAAC,UAAU,CAAC,OAAO,GAAG,EAAE,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAA;qBACtF;iBACF;gBACD,KAAK,GAAG,EAAE,CAAC;gBACX,EAAE,GAAG,IAAI,CAAC;gBACV,gBAAgB,CAAC,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;gBAChE,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE;oBACjB,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,EAAE,EAAE,QAAQ,CAAC,CAAC;iBAC7C;gBACD,KAAK,EAAE,CAAC;aACT;SAEF;aAAM;YACL,IAAI,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;gBAC1B,KAAK,GAAG,aAAa,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,GAAC,MAAM,EAAE,QAAQ,GAAC,MAAM,CAAC,CAAA;aACzE;iBAAM;gBACL,KAAK,GAAG,cAAc,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;aACnD;SACF;KACF;IAGD,IAAI,CAAC,SAAS,EAAE;QACd,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAA;QAC7B,cAAc,CAAC,KAAK,EAAE,KAAK,CAAC,CAAA;QAC5B,EAAE,GAAG,IAAI,CAAC;QACV,cAAc;KACf;IACD,KAAK,CAAC,IAAI,GAAG,QAAQ,CAAC;IACtB,KAAK,CAAC,SAAS,GAAG,EAAE,CAAC;IACrB,KAAK,CAAC,UAAU,GAAG,aAAa,CAAC;IACjC,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,UAAU,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,UAAU,CAAC;IAC1D,IAAI,UAAU,EAAE;QACd,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,QAAQ,GAAG,MAAM,CAAA;KACtC;IACD,OAAO,IAAI,CAAA;AACb,CAAC,CAAC;AArMW,QAAA,KAAK,SAqMhB"}
@@ -7,20 +7,8 @@ var sub_tabular_1 = require("../md-block-rule/begin-tabular/sub-tabular");
7
7
  var sub_math_1 = require("../md-block-rule/begin-tabular/sub-math");
8
8
  var common_1 = require("../md-block-rule/begin-tabular/common");
9
9
  var consts_1 = require("../common/consts");
10
- var parseAttributes = function (str) {
11
- var result = {};
12
- try {
13
- str.split(",").forEach(function (pair) {
14
- var _a = tslib_1.__read(pair.split("=").map(function (s) { return s.trim(); }), 2), key = _a[0], value = _a[1];
15
- result[key] = value || true;
16
- });
17
- return result;
18
- }
19
- catch (err) {
20
- console.error("[ERROR]=>[parseAttributes]=>", err);
21
- return result;
22
- }
23
- };
10
+ var parse_attribures_1 = require("../common/parse-attribures");
11
+ var sub_code_1 = require("../md-block-rule/begin-tabular/sub-code");
24
12
  var processContent = function (content) {
25
13
  try {
26
14
  var parseMath = (0, sub_math_1.getMathTableContent)(content, 0);
@@ -30,6 +18,7 @@ var processContent = function (content) {
30
18
  return data.map(function (item) { return item.content; }).join('');
31
19
  }
32
20
  else {
21
+ processedContent = (0, sub_code_1.getExtractedCodeBlockContent)(processedContent, 0);
33
22
  return processedContent;
34
23
  }
35
24
  }
@@ -65,7 +54,7 @@ var inlineDiagbox = function (state, silent) {
65
54
  if (match[1] === 'slashbox') {
66
55
  isSW = true;
67
56
  }
68
- var attributes = parseAttributes(options);
57
+ var attributes = (0, parse_attribures_1.parseAttributes)(options);
69
58
  if ((attributes === null || attributes === void 0 ? void 0 : attributes.dir) === 'SW' || (attributes === null || attributes === void 0 ? void 0 : attributes.dir) === 'NE') {
70
59
  isSW = true;
71
60
  }
@@ -1 +1 @@
1
- {"version":3,"file":"diagbox-inline.js","sourceRoot":"","sources":["../../../src/markdown/md-inline-rule/diagbox-inline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"diagbox-inline.js","sourceRoot":"","sources":["../../../src/markdown/md-inline-rule/diagbox-inline.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,9 @@
1
+ import MarkdownIt from 'markdown-it';
2
+ /**
3
+ * Markdown-It plugin that adds support for LaTeX `lstlisting`-like code environments.
4
+ *
5
+ * - Registers a block rule for `\begin{lstlisting}...\end{lstlisting}`.
6
+ * - Registers an inline rule for inline `lstlisting` environments.
7
+ * - Installs a custom renderer for `latex_lstlisting_env` tokens.
8
+ */
9
+ export default function pluginLatexCodeEnvs(md: MarkdownIt): void;
@@ -0,0 +1,23 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var latex_lstlisting_env_block_1 = require("./latex-lstlisting-env-block");
4
+ var latex_lstlisting_env_inline_1 = require("./latex-lstlisting-env-inline");
5
+ var render_latex_lstlisting_env_1 = require("./render-latex-lstlisting-env");
6
+ /**
7
+ * Markdown-It plugin that adds support for LaTeX `lstlisting`-like code environments.
8
+ *
9
+ * - Registers a block rule for `\begin{lstlisting}...\end{lstlisting}`.
10
+ * - Registers an inline rule for inline `lstlisting` environments.
11
+ * - Installs a custom renderer for `latex_lstlisting_env` tokens.
12
+ */
13
+ function pluginLatexCodeEnvs(md) {
14
+ var blockRuler = md.block.ruler;
15
+ blockRuler.before('fence', 'latex_lstlisting_env_block', latex_lstlisting_env_block_1.latexLstlistingEnvBlockRule, {
16
+ alt: ['paragraph', 'reference', 'blockquote', 'list']
17
+ });
18
+ var inlineRuler = md.inline.ruler;
19
+ inlineRuler.before('escape', 'latex_lstlisting_env_inline', latex_lstlisting_env_inline_1.latexLstlistingEnvInlineRule);
20
+ md.renderer.rules.latex_lstlisting_env = (0, render_latex_lstlisting_env_1.makeLatexLstlistingEnvRendererWithMd)(md);
21
+ }
22
+ exports.default = pluginLatexCodeEnvs;
23
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/markdown/md-latex-lstlisting-env/index.ts"],"names":[],"mappings":";;AAEA,2EAA2E;AAC3E,6EAA6E;AAC7E,6EAAqF;AAErF;;;;;;GAMG;AACH,SAAwB,mBAAmB,CAAC,EAAc;IACxD,IAAM,UAAU,GAAU,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC;IACzC,UAAU,CAAC,MAAM,CAAC,OAAO,EAAE,4BAA4B,EAAE,wDAA2B,EAAE;QACpF,GAAG,EAAE,CAAC,WAAW,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,CAAC;KACtD,CAAC,CAAC;IACH,IAAM,WAAW,GAAU,EAAE,CAAC,MAAM,CAAC,KAAK,CAAC;IAC3C,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE,6BAA6B,EAAE,0DAA4B,CAAC,CAAC;IAC1F,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,oBAAoB,GAAG,IAAA,kEAAoC,EAAC,EAAE,CAAC,CAAC;AACpF,CAAC;AARD,sCAQC"}
@@ -0,0 +1,6 @@
1
+ import type { RuleBlock } from 'markdown-it/lib/parser_block';
2
+ /**
3
+ * Block rule: parse LaTeX \begin{lstlisting}[...]\end{lstlisting} as a code block token.
4
+ * - Supports optional [mathescape] in options: math is parsed into children (text + math tokens).
5
+ */
6
+ export declare const latexLstlistingEnvBlockRule: RuleBlock;
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.latexLstlistingEnvBlockRule = void 0;
4
+ var lstlisting_options_1 = require("./lstlisting-options");
5
+ var consts_1 = require("../common/consts");
6
+ /**
7
+ * Try to read a whole lstlisting block starting at `startLine`.
8
+ * Returns { opts, content, endLine } or null if not matched/closed.
9
+ */
10
+ var readLstlistingBlock = function (state, startLine) {
11
+ var start = state.bMarks[startLine] + state.tShift[startLine];
12
+ var max = state.eMarks[startLine];
13
+ var firstLine = state.src.slice(start, max);
14
+ if (!consts_1.BEGIN_LST_FAST_RE.test(firstLine))
15
+ return null;
16
+ var match = firstLine.match(consts_1.BEGIN_LST_RE);
17
+ if (!match)
18
+ return null;
19
+ var optsRaw = (match[1] || '').trim();
20
+ // Collect lines until \end{lstlisting}
21
+ var lines = [];
22
+ var nextLine = startLine + 1;
23
+ for (; nextLine < state.lineMax; nextLine++) {
24
+ var s = state.bMarks[nextLine] + state.tShift[nextLine];
25
+ var e = state.eMarks[nextLine];
26
+ var line = state.src.slice(s, e);
27
+ if (consts_1.END_LST_RE.test(line)) {
28
+ // stop BEFORE end-line; `nextLine` now points to end
29
+ break;
30
+ }
31
+ // keep original slice (without trimming), preserve exact content
32
+ lines.push(state.src.slice(state.bMarks[nextLine], state.eMarks[nextLine]));
33
+ }
34
+ if (nextLine >= state.lineMax) {
35
+ // no closing \end{lstlisting}
36
+ return null;
37
+ }
38
+ return {
39
+ opts: optsRaw,
40
+ content: lines.join('\n'),
41
+ endLine: nextLine + 1, // move parser AFTER the end line
42
+ };
43
+ };
44
+ /**
45
+ * Block rule: parse LaTeX \begin{lstlisting}[...]\end{lstlisting} as a code block token.
46
+ * - Supports optional [mathescape] in options: math is parsed into children (text + math tokens).
47
+ */
48
+ var latexLstlistingEnvBlockRule = function (state, startLine, _endLine, silent) {
49
+ // don't start mid-paragraph
50
+ if (state.tShift[startLine] < 0)
51
+ return false;
52
+ var res = readLstlistingBlock(state, startLine);
53
+ if (!res)
54
+ return false;
55
+ if (silent)
56
+ return true;
57
+ var opts = res.opts, content = res.content, endLine = res.endLine;
58
+ var token = state.push('latex_lstlisting_env', 'pre', 0);
59
+ token.block = true;
60
+ token.map = [startLine, endLine];
61
+ token.markup = 'lstlisting';
62
+ token.content = content; // raw text
63
+ token.info = opts; // raw options
64
+ if (opts) {
65
+ (0, lstlisting_options_1.applyLstListingOptionsToToken)(token, content, opts, state);
66
+ }
67
+ state.line = endLine;
68
+ return true;
69
+ };
70
+ exports.latexLstlistingEnvBlockRule = latexLstlistingEnvBlockRule;
71
+ //# sourceMappingURL=latex-lstlisting-env-block.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"latex-lstlisting-env-block.js","sourceRoot":"","sources":["../../../src/markdown/md-latex-lstlisting-env/latex-lstlisting-env-block.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * Inline rule: parse \begin{lstlisting}[...]\end{lstlisting} in inline stream.
3
+ * - Emits 'latex_lstlisting_env' token (block=false), so renderer can output <pre><code>...</code></pre>.
4
+ * - If [mathescape] present, children are math-only tokens (text + inline/display math),
5
+ * everything else stays plain text.
6
+ */
7
+ export declare const latexLstlistingEnvInlineRule: (state: StateInline, silent: boolean) => boolean;
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.latexLstlistingEnvInlineRule = void 0;
4
+ var lstlisting_options_1 = require("./lstlisting-options");
5
+ var consts_1 = require("../common/consts");
6
+ /** Does the \end{...} start at the very beginning of its line (only spaces/tabs before)? */
7
+ var endStartsAtLineStart = function (src, endPos) {
8
+ var prevNL = src.lastIndexOf('\n', endPos - 1);
9
+ var lineStart = prevNL === -1 ? 0 : prevNL + 1;
10
+ for (var i = lineStart; i < endPos; i++) {
11
+ var ch = src.charCodeAt(i);
12
+ if (ch !== 0x20 /* space */ && ch !== 0x09 /* tab */)
13
+ return false;
14
+ }
15
+ return true;
16
+ };
17
+ /** Normalize tail: remove exactly one trailing \n iff \end{...} is on a fresh line with no text to the left */
18
+ var normalizeContentByEndPosition = function (raw, src, endPos) {
19
+ var s = raw.replace(/\r\n?/g, '\n');
20
+ return endStartsAtLineStart(src, endPos) && s.endsWith('\n') ? s.slice(0, -1) : s;
21
+ };
22
+ /** Find matching \end{lstlisting} (no cross-env nesting needed here) */
23
+ var findEndOfLstlisting = function (src, from) {
24
+ return src.indexOf('\\end{lstlisting}', from);
25
+ };
26
+ /** Parse \begin{lstlisting}[opts] at given pos; return { opts, after } or null */
27
+ var parseBeginLstlistingAt = function (src, pos) {
28
+ var tail = src.slice(pos);
29
+ if (!consts_1.BEGIN_LST_FAST_RE.test(tail))
30
+ return null;
31
+ var match = tail.match(consts_1.BEGIN_LST_WITH_TRAIL_WS_NL_RE);
32
+ if (!match)
33
+ return null;
34
+ var opts = (match[1] || '').trim();
35
+ return { opts: opts, after: pos + match[0].length };
36
+ };
37
+ /**
38
+ * Inline rule: parse \begin{lstlisting}[...]\end{lstlisting} in inline stream.
39
+ * - Emits 'latex_lstlisting_env' token (block=false), so renderer can output <pre><code>...</code></pre>.
40
+ * - If [mathescape] present, children are math-only tokens (text + inline/display math),
41
+ * everything else stays plain text.
42
+ */
43
+ var latexLstlistingEnvInlineRule = function (state, silent) {
44
+ var src = state.src;
45
+ var pos = state.pos;
46
+ // must start with '\' and literally '\begin{...}' here
47
+ if (src.charCodeAt(pos) !== 0x5c /* \ */)
48
+ return false;
49
+ if (!src.startsWith('\\begin{', pos))
50
+ return false;
51
+ var begin = parseBeginLstlistingAt(src, pos);
52
+ if (!begin)
53
+ return false;
54
+ // find \end{lstlisting}
55
+ var endBegin = begin.after;
56
+ var endPos = findEndOfLstlisting(src, endBegin);
57
+ if (endPos === -1)
58
+ return false;
59
+ var endTagLen = '\\end{lstlisting}'.length;
60
+ var endTagEnd = endPos + endTagLen;
61
+ if (!silent) {
62
+ var raw = src.slice(endBegin, endPos);
63
+ var content = normalizeContentByEndPosition(raw, src, endPos);
64
+ var token = state.push('latex_lstlisting_env', 'pre', 0);
65
+ token.block = false; // remain in the inline flow
66
+ token.content = content;
67
+ token.info = begin.opts; // raw options
68
+ if (begin.opts) {
69
+ (0, lstlisting_options_1.applyLstListingOptionsToToken)(token, content, begin.opts, state);
70
+ }
71
+ }
72
+ state.pos = endTagEnd; // advance cursor past the end tag
73
+ return true;
74
+ };
75
+ exports.latexLstlistingEnvInlineRule = latexLstlistingEnvInlineRule;
76
+ //# sourceMappingURL=latex-lstlisting-env-inline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"latex-lstlisting-env-inline.js","sourceRoot":"","sources":["../../../src/markdown/md-latex-lstlisting-env/latex-lstlisting-env-inline.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,21 @@
1
+ import type StateBlock from 'markdown-it/lib/rules_block/state_block';
2
+ import type StateInline from 'markdown-it/lib/rules_inline/state_inline';
3
+ export type ParsedLstLanguage = {
4
+ /** Base language name, e.g. "Ada" or "Assembler". */
5
+ name: string;
6
+ /** Optional dialect name, e.g. "2005" or "riscv". */
7
+ dialect: string | null;
8
+ hlName: string;
9
+ };
10
+ /**
11
+ * Apply LaTeX lstlisting-like options to a Markdown-It token.
12
+ *
13
+ * - Parses raw lst options into a structured attributes object.
14
+ * - Parses `language` into `{ name, dialect }` via `parseLstLanguage`.
15
+ * - Stores all attributes under `token.meta.attributes`.
16
+ * - If `mathescape` is enabled, replaces `token.children` with a math-aware
17
+ * inline parse of the code content (no links/emphasis).
18
+ *
19
+ * This function mutates the given token in-place.
20
+ */
21
+ export declare const applyLstListingOptionsToToken: (token: Token, content: string, opts: string | null | undefined, state: StateInline | StateBlock) => void;