@promptbook/components 0.112.0-30 → 0.112.0-31

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/esm/index.es.js CHANGED
@@ -39,7 +39,7 @@ const BOOK_LANGUAGE_VERSION = '2.0.0';
39
39
  * @generated
40
40
  * @see https://github.com/webgptorg/promptbook
41
41
  */
42
- const PROMPTBOOK_ENGINE_VERSION = '0.112.0-30';
42
+ const PROMPTBOOK_ENGINE_VERSION = '0.112.0-31';
43
43
  /**
44
44
  * TODO: string_promptbook_version should be constrained to the all versions of Promptbook engine
45
45
  * Note: [💞] Ignore a discrepancy between file name and entity name
@@ -18322,7 +18322,7 @@ function parseCitationMarkersFromContent(content) {
18322
18322
  return markers;
18323
18323
  }
18324
18324
 
18325
- var css_248z$b = ".MarkdownContent-module_MarkdownContent__2JuyX{--md-text-color:var(--chat-md-text-color,inherit);--md-muted-color:var(--chat-md-muted-color,currentColor);--md-link-color:var(--chat-md-link-color,#2563eb);--md-heading-color:var(--chat-heading-text-color,var(--md-text-color));--md-heading-font-family:var(\n --chat-md-heading-font-family,var(--font-poppins,\"Poppins\",system-ui,-apple-system,sans-serif)\n );--md-body-font-family:var(\n --chat-md-body-font-family,var(--font-poppins,\"Poppins\",system-ui,-apple-system,sans-serif)\n );--md-code-font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",monospace;--md-inline-code-bg:var(--chat-md-inline-code-bg,rgba(15,23,42,.08));--md-inline-code-border:var(--chat-md-inline-code-border,rgba(15,23,42,.12));--md-inline-code-color:var(--chat-md-inline-code-color,var(--md-text-color));--md-blockquote-bg:var(--chat-md-blockquote-bg,rgba(248,250,252,.92));--md-blockquote-border:var(--chat-md-blockquote-border,rgba(59,130,246,.35));--md-table-bg:var(--chat-md-table-bg,rgba(248,250,252,.92));--md-table-row-alt-bg:var(--chat-md-table-row-alt-bg,rgba(241,245,249,.9));--md-table-head-bg:var(--chat-md-table-head-bg,rgba(226,232,240,.95));--md-table-border:var(--chat-md-table-border,rgba(148,163,184,.36));--md-citation-bg:var(--chat-md-citation-bg,rgba(59,130,246,.14));--md-citation-color:var(--chat-md-citation-color,#1d4ed8);color:var(--md-text-color);font-family:var(--md-body-font-family);font-size:inherit;letter-spacing:.002em;line-height:1.65}.MarkdownContent-module_MarkdownContent__2JuyX>:first-child{margin-top:0!important}.MarkdownContent-module_MarkdownContent__2JuyX>:last-child{margin-bottom:0!important}.MarkdownContent-module_MarkdownContent__2JuyX :is(h1,h2,h3,h4,h5,h6){text-wrap:balance;color:var(--md-heading-color);font-family:var(--md-heading-font-family);font-weight:600;letter-spacing:.01em;line-height:1.24;margin:1.4em 0 .55em;position:relative}.MarkdownContent-module_MarkdownContent__2JuyX h1{font-size:1.52rem}.MarkdownContent-module_MarkdownContent__2JuyX h2{font-size:1.4rem}.MarkdownContent-module_MarkdownContent__2JuyX h3{font-size:1.26rem}.MarkdownContent-module_MarkdownContent__2JuyX h4{font-size:1.14rem}.MarkdownContent-module_MarkdownContent__2JuyX h5{font-size:1.04rem}.MarkdownContent-module_MarkdownContent__2JuyX h6{font-size:.98rem}.MarkdownContent-module_MarkdownContent__2JuyX p{text-wrap:pretty;margin:0 0 .9em}.MarkdownContent-module_MarkdownContent__2JuyX p:empty{display:none}.MarkdownContent-module_MarkdownContent__2JuyX :is(ul,ol){display:grid;gap:.35em;margin:.65em 0 1em;padding-inline-start:1.35rem}.MarkdownContent-module_MarkdownContent__2JuyX ul{list-style:disc}.MarkdownContent-module_MarkdownContent__2JuyX ol{list-style:decimal}.MarkdownContent-module_MarkdownContent__2JuyX li{line-height:1.58}.MarkdownContent-module_MarkdownContent__2JuyX li>:is(ul,ol){margin-bottom:0;margin-top:.45em}.MarkdownContent-module_MarkdownContent__2JuyX a{color:var(--md-link-color);text-decoration-color:currentColor;text-decoration-line:underline;text-decoration-thickness:1.4px;text-underline-offset:.16em;transition:opacity .2s ease,text-decoration-thickness .2s ease}.MarkdownContent-module_MarkdownContent__2JuyX a:focus-visible,.MarkdownContent-module_MarkdownContent__2JuyX a:hover{opacity:.92;text-decoration-thickness:2px}.MarkdownContent-module_MarkdownContent__2JuyX img{border-radius:14px;display:block;height:auto;margin:.95em 0;max-width:100%}.MarkdownContent-module_MarkdownContent__2JuyX blockquote,.MarkdownContent-module_MarkdownContent__2JuyX hr,.MarkdownContent-module_MarkdownContent__2JuyX pre,.MarkdownContent-module_MarkdownContent__2JuyX table{margin:.95em 0}.MarkdownContent-module_MarkdownContent__2JuyX pre{background:transparent;border:none;border-radius:12px;box-shadow:none;display:block;overflow:visible;padding:0}.MarkdownContent-module_MarkdownContent__2JuyX blockquote{background:var(--md-blockquote-bg);border:none;border-left:3px solid var(--md-blockquote-border);border-radius:12px;box-shadow:none;color:var(--md-muted-color);display:block;padding:.72em .96em}.MarkdownContent-module_MarkdownContent__2JuyX blockquote>:last-child{margin-bottom:0}.MarkdownContent-module_MarkdownContent__2JuyX code{background:var(--md-inline-code-bg);border:1px solid var(--md-inline-code-border);border-radius:8px;color:var(--md-inline-code-color);font-family:var(--md-code-font-family);font-size:.88em;line-height:1.45;margin:0;padding:.14em .42em;word-break:break-word}.MarkdownContent-module_MarkdownContent__2JuyX pre code{background:none!important;border:none!important;box-shadow:none!important;color:inherit!important;display:block;font-family:inherit!important;font-size:inherit!important;overflow-x:auto;padding:0!important;white-space:pre;word-break:normal}.MarkdownContent-module_MarkdownContent__2JuyX .MarkdownContent-module_chat-code-block__ZffFg{background:#181c23;border:1px solid rgba(148,163,184,.35);border-radius:12px;box-shadow:0 6px 18px rgba(2,6,23,.28);color:#f8fafc;font-family:var(--md-code-font-family);font-size:14px;line-height:1.6;overflow-x:auto}.MarkdownContent-module_MarkdownContent__2JuyX .MarkdownContent-module_chat-code-block__ZffFg code{background:none!important;border:none!important;box-shadow:none!important;color:inherit!important;display:block;font-family:inherit!important;font-size:inherit!important;overflow-x:auto;padding:0!important;white-space:pre;word-break:normal}.MarkdownContent-module_MarkdownContent__2JuyX table{background:var(--md-table-bg);border:1px solid var(--md-table-border);border-collapse:separate;border-radius:12px;border-spacing:0;box-shadow:0 2px 8px rgba(15,23,42,.1);color:inherit;font-size:.93em;overflow:hidden;width:100%}.MarkdownContent-module_MarkdownContent__2JuyX td,.MarkdownContent-module_MarkdownContent__2JuyX th{background:none;border-bottom:1px solid var(--md-table-border);color:inherit;padding:.58em .72em;text-align:left;vertical-align:top}.MarkdownContent-module_MarkdownContent__2JuyX th{background:var(--md-table-head-bg);font-weight:600}.MarkdownContent-module_MarkdownContent__2JuyX tr:last-child td{border-bottom:none}.MarkdownContent-module_MarkdownContent__2JuyX tr:nth-child(2n) td{background:var(--md-table-row-alt-bg)}.MarkdownContent-module_MarkdownContent__2JuyX hr{border:none;border-top:1px solid var(--md-table-border);opacity:.8}.MarkdownContent-module_MarkdownContent__2JuyX strong{font-weight:650}.MarkdownContent-module_MarkdownContent__2JuyX em{font-style:italic}.MarkdownContent-module_citationRef__fKqaT,.MarkdownContent-module_citation__11SMw{align-items:center;background:var(--md-citation-bg);border-radius:999px;color:var(--md-citation-color);display:inline-flex;font-size:.74em;font-weight:700;justify-content:center;line-height:1.45;margin:0 .1em;min-width:1.4em;padding:0 .35em;vertical-align:super}.MarkdownContent-module_MarkdownContent__2JuyX sup[data-citation-footnote]{color:currentColor;display:inline;font-size:.72em;font-weight:700;line-height:1;margin:0 0 0 .08em;vertical-align:super}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1hcmtkb3duQ29udGVudC5tb2R1bGUuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUNJLGlEQUFtRCxDQUNuRCx3REFBMEQsQ0FDMUQsaURBQW1ELENBQ25ELHNFQUF3RSxDQUN4RTs7S0FHQyxDQUNEOztLQUdDLENBQ0QsbUdBQTBHLENBQzFHLG9FQUEwRSxDQUMxRSw0RUFBa0YsQ0FDbEYsNEVBQThFLENBQzlFLHFFQUEyRSxDQUMzRSw0RUFBa0YsQ0FDbEYsMkRBQWlFLENBQ2pFLDBFQUFnRixDQUNoRixxRUFBMkUsQ0FDM0UsbUVBQXlFLENBQ3pFLGdFQUFzRSxDQUN0RSx5REFBMkQsQ0FFM0QsMEJBQTJCLENBQzNCLHNDQUF1QyxDQUN2QyxpQkFBa0IsQ0FFbEIscUJBQXVCLENBRHZCLGdCQUVKLENBRUEsNERBQ0ksc0JBQ0osQ0FFQSwyREFDSSx5QkFDSixDQUVBLHNFQVFJLGlCQUFrQixDQUxsQiw2QkFBOEIsQ0FDOUIseUNBQTBDLENBQzFDLGVBQWdCLENBRWhCLG9CQUFzQixDQUR0QixnQkFBaUIsQ0FKakIsb0JBQXNCLENBRHRCLGlCQVFKLENBRUEsa0RBQ0ksaUJBQ0osQ0FFQSxrREFDSSxnQkFDSixDQUVBLGtEQUNJLGlCQUNKLENBRUEsa0RBQ0ksaUJBQ0osQ0FFQSxrREFDSSxpQkFDSixDQUVBLGtEQUNJLGdCQUNKLENBRUEsaURBRUksZ0JBQWlCLENBRGpCLGVBRUosQ0FFQSx1REFDSSxZQUNKLENBRUEsMERBR0ksWUFBYSxDQUNiLFNBQVcsQ0FIWCxrQkFBb0IsQ0FDcEIsNEJBR0osQ0FFQSxrREFDSSxlQUNKLENBRUEsa0RBQ0ksa0JBQ0osQ0FFQSxrREFDSSxnQkFDSixDQUVBLDZEQUVJLGVBQWdCLENBRGhCLGdCQUVKLENBRUEsaURBQ0ksMEJBQTJCLENBSTNCLGtDQUFtQyxDQUhuQyw4QkFBK0IsQ0FDL0IsK0JBQWdDLENBQ2hDLDJCQUE2QixDQUU3Qiw4REFDSixDQUVBLHNIQUVJLFdBQWEsQ0FDYiw2QkFDSixDQUVBLG1EQUlJLGtCQUFtQixDQUhuQixhQUFjLENBRWQsV0FBWSxDQUVaLGNBQWdCLENBSGhCLGNBSUosQ0FFQSxvTkFJSSxjQUNKLENBRUEsbURBS0ksc0JBQXVCLENBSHZCLFdBQVksQ0FDWixrQkFBbUIsQ0FDbkIsZUFBZ0IsQ0FIaEIsYUFBYyxDQU1kLGdCQUFpQixDQURqQixTQUVKLENBRUEsMERBTUksa0NBQW1DLENBSm5DLFdBQVksQ0FDWixpREFBa0QsQ0FDbEQsa0JBQW1CLENBQ25CLGVBQWdCLENBRWhCLDJCQUE0QixDQU41QixhQUFjLENBT2QsbUJBQ0osQ0FFQSxzRUFDSSxlQUNKLENBRUEsb0RBS0ksbUNBQW9DLENBRnBDLDZDQUE4QyxDQUM5QyxpQkFBa0IsQ0FLbEIsaUNBQWtDLENBSGxDLHNDQUF1QyxDQUN2QyxlQUFpQixDQUNqQixnQkFBaUIsQ0FQakIsUUFBUyxDQUNULG1CQUFzQixDQVF0QixxQkFDSixDQUVBLHdEQUNJLHlCQUEyQixDQUszQixxQkFBdUIsQ0FDdkIseUJBQTJCLENBTDNCLHVCQUF5QixDQVN6QixhQUFjLENBUmQsNkJBQStCLENBQy9CLDJCQUE2QixDQU03QixlQUFnQixDQUxoQixtQkFBcUIsQ0FHckIsZUFBZ0IsQ0FDaEIsaUJBR0osQ0FFQSw4RkFDSSxrQkFBbUIsQ0FLbkIsc0NBQTJDLENBQzNDLGtCQUFtQixDQUNuQixzQ0FBMkMsQ0FOM0MsYUFBYyxDQU9kLHNDQUF1QyxDQU52QyxjQUFlLENBQ2YsZUFBZ0IsQ0FDaEIsZUFLSixDQUVBLG1HQUNJLHlCQUEyQixDQUszQixxQkFBdUIsQ0FDdkIseUJBQTJCLENBTDNCLHVCQUF5QixDQVN6QixhQUFjLENBUmQsNkJBQStCLENBQy9CLDJCQUE2QixDQU03QixlQUFnQixDQUxoQixtQkFBcUIsQ0FHckIsZUFBZ0IsQ0FDaEIsaUJBR0osQ0FFQSxxREFPSSw2QkFBOEIsQ0FIOUIsdUNBQXdDLENBRnhDLHdCQUF5QixDQUd6QixrQkFBbUIsQ0FGbkIsZ0JBQWlCLENBS2pCLHNDQUEyQyxDQUUzQyxhQUFjLENBRGQsZUFBaUIsQ0FIakIsZUFBZ0IsQ0FMaEIsVUFVSixDQUVBLG9HQU9JLGVBQWdCLENBSmhCLDhDQUErQyxDQUcvQyxhQUFjLENBSmQsbUJBQXNCLENBRXRCLGVBQWdCLENBQ2hCLGtCQUdKLENBRUEsa0RBQ0ksa0NBQW1DLENBQ25DLGVBQ0osQ0FFQSxnRUFDSSxrQkFDSixDQUVBLG1FQUNJLHFDQUNKLENBRUEsa0RBQ0ksV0FBWSxDQUNaLDJDQUE0QyxDQUM1QyxVQUNKLENBRUEsc0RBQ0ksZUFDSixDQUVBLGtEQUNJLGlCQUNKLENBa0JBLG1GQUVJLGtCQUFtQixDQVduQixnQ0FBaUMsQ0FOakMsbUJBQW9CLENBS3BCLDhCQUErQixDQVgvQixtQkFBb0IsQ0FPcEIsZUFBaUIsQ0FDakIsZUFBZ0IsQ0FOaEIsc0JBQXVCLENBT3ZCLGdCQUFpQixDQUxqQixhQUFlLENBRGYsZUFBZ0IsQ0FFaEIsZUFBaUIsQ0FLakIsb0JBR0osQ0FFQSwyRUFPSSxrQkFBbUIsQ0FObkIsY0FBZSxDQUVmLGVBQWlCLENBQ2pCLGVBQWdCLENBQ2hCLGFBQWMsQ0FIZCxrQkFBb0IsQ0FJcEIsb0JBRUoiLCJmaWxlIjoiTWFya2Rvd25Db250ZW50Lm1vZHVsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuTWFya2Rvd25Db250ZW50IHtcbiAgICAtLW1kLXRleHQtY29sb3I6IHZhcigtLWNoYXQtbWQtdGV4dC1jb2xvciwgaW5oZXJpdCk7XG4gICAgLS1tZC1tdXRlZC1jb2xvcjogdmFyKC0tY2hhdC1tZC1tdXRlZC1jb2xvciwgY3VycmVudENvbG9yKTtcbiAgICAtLW1kLWxpbmstY29sb3I6IHZhcigtLWNoYXQtbWQtbGluay1jb2xvciwgIzI1NjNlYik7XG4gICAgLS1tZC1oZWFkaW5nLWNvbG9yOiB2YXIoLS1jaGF0LWhlYWRpbmctdGV4dC1jb2xvciwgdmFyKC0tbWQtdGV4dC1jb2xvcikpO1xuICAgIC0tbWQtaGVhZGluZy1mb250LWZhbWlseTogdmFyKFxuICAgICAgICAtLWNoYXQtbWQtaGVhZGluZy1mb250LWZhbWlseSxcbiAgICAgICAgdmFyKC0tZm9udC1wb3BwaW5zLCAnUG9wcGlucycsIHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgc2Fucy1zZXJpZilcbiAgICApO1xuICAgIC0tbWQtYm9keS1mb250LWZhbWlseTogdmFyKFxuICAgICAgICAtLWNoYXQtbWQtYm9keS1mb250LWZhbWlseSxcbiAgICAgICAgdmFyKC0tZm9udC1wb3BwaW5zLCAnUG9wcGlucycsIHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgc2Fucy1zZXJpZilcbiAgICApO1xuICAgIC0tbWQtY29kZS1mb250LWZhbWlseTogdWktbW9ub3NwYWNlLCBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBtb25vc3BhY2U7XG4gICAgLS1tZC1pbmxpbmUtY29kZS1iZzogdmFyKC0tY2hhdC1tZC1pbmxpbmUtY29kZS1iZywgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KSk7XG4gICAgLS1tZC1pbmxpbmUtY29kZS1ib3JkZXI6IHZhcigtLWNoYXQtbWQtaW5saW5lLWNvZGUtYm9yZGVyLCByZ2JhKDE1LCAyMywgNDIsIDAuMTIpKTtcbiAgICAtLW1kLWlubGluZS1jb2RlLWNvbG9yOiB2YXIoLS1jaGF0LW1kLWlubGluZS1jb2RlLWNvbG9yLCB2YXIoLS1tZC10ZXh0LWNvbG9yKSk7XG4gICAgLS1tZC1ibG9ja3F1b3RlLWJnOiB2YXIoLS1jaGF0LW1kLWJsb2NrcXVvdGUtYmcsIHJnYmEoMjQ4LCAyNTAsIDI1MiwgMC45MikpO1xuICAgIC0tbWQtYmxvY2txdW90ZS1ib3JkZXI6IHZhcigtLWNoYXQtbWQtYmxvY2txdW90ZS1ib3JkZXIsIHJnYmEoNTksIDEzMCwgMjQ2LCAwLjM1KSk7XG4gICAgLS1tZC10YWJsZS1iZzogdmFyKC0tY2hhdC1tZC10YWJsZS1iZywgcmdiYSgyNDgsIDI1MCwgMjUyLCAwLjkyKSk7XG4gICAgLS1tZC10YWJsZS1yb3ctYWx0LWJnOiB2YXIoLS1jaGF0LW1kLXRhYmxlLXJvdy1hbHQtYmcsIHJnYmEoMjQxLCAyNDUsIDI0OSwgMC45KSk7XG4gICAgLS1tZC10YWJsZS1oZWFkLWJnOiB2YXIoLS1jaGF0LW1kLXRhYmxlLWhlYWQtYmcsIHJnYmEoMjI2LCAyMzIsIDI0MCwgMC45NSkpO1xuICAgIC0tbWQtdGFibGUtYm9yZGVyOiB2YXIoLS1jaGF0LW1kLXRhYmxlLWJvcmRlciwgcmdiYSgxNDgsIDE2MywgMTg0LCAwLjM2KSk7XG4gICAgLS1tZC1jaXRhdGlvbi1iZzogdmFyKC0tY2hhdC1tZC1jaXRhdGlvbi1iZywgcmdiYSg1OSwgMTMwLCAyNDYsIDAuMTQpKTtcbiAgICAtLW1kLWNpdGF0aW9uLWNvbG9yOiB2YXIoLS1jaGF0LW1kLWNpdGF0aW9uLWNvbG9yLCAjMWQ0ZWQ4KTtcblxuICAgIGNvbG9yOiB2YXIoLS1tZC10ZXh0LWNvbG9yKTtcbiAgICBmb250LWZhbWlseTogdmFyKC0tbWQtYm9keS1mb250LWZhbWlseSk7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY1O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAwMmVtO1xufVxuXG4uTWFya2Rvd25Db250ZW50ID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4uTWFya2Rvd25Db250ZW50IDppcyhoMSwgaDIsIGgzLCBoNCwgaDUsIGg2KSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMS40ZW0gMCAwLjU1ZW07XG4gICAgY29sb3I6IHZhcigtLW1kLWhlYWRpbmctY29sb3IpO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1tZC1oZWFkaW5nLWZvbnQtZmFtaWx5KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI0O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG4gICAgdGV4dC13cmFwOiBiYWxhbmNlO1xufVxuXG4uTWFya2Rvd25Db250ZW50IGgxIHtcbiAgICBmb250LXNpemU6IDEuNTJyZW07XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgaDIge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xufVxuXG4uTWFya2Rvd25Db250ZW50IGgzIHtcbiAgICBmb250LXNpemU6IDEuMjZyZW07XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgaDQge1xuICAgIGZvbnQtc2l6ZTogMS4xNHJlbTtcbn1cblxuLk1hcmtkb3duQ29udGVudCBoNSB7XG4gICAgZm9udC1zaXplOiAxLjA0cmVtO1xufVxuXG4uTWFya2Rvd25Db250ZW50IGg2IHtcbiAgICBmb250LXNpemU6IDAuOThyZW07XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgcCB7XG4gICAgbWFyZ2luOiAwIDAgMC45ZW07XG4gICAgdGV4dC13cmFwOiBwcmV0dHk7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgcDplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLk1hcmtkb3duQ29udGVudCA6aXModWwsIG9sKSB7XG4gICAgbWFyZ2luOiAwLjY1ZW0gMCAxZW07XG4gICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDEuMzVyZW07XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IDAuMzVlbTtcbn1cblxuLk1hcmtkb3duQ29udGVudCB1bCB7XG4gICAgbGlzdC1zdHlsZTogZGlzYztcbn1cblxuLk1hcmtkb3duQ29udGVudCBvbCB7XG4gICAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbn1cblxuLk1hcmtkb3duQ29udGVudCBsaSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTg7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgbGkgPiA6aXModWwsIG9sKSB7XG4gICAgbWFyZ2luLXRvcDogMC40NWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgYSB7XG4gICAgY29sb3I6IHZhcigtLW1kLWxpbmstY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbi1saW5lOiB1bmRlcmxpbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogMS40cHg7XG4gICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAwLjE2ZW07XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UsIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3MgMC4ycyBlYXNlO1xufVxuXG4uTWFya2Rvd25Db250ZW50IGE6aG92ZXIsXG4uTWFya2Rvd25Db250ZW50IGE6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3BhY2l0eTogMC45MjtcbiAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAycHg7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlci1yYWRpdXM6IDE0cHg7XG4gICAgbWFyZ2luOiAwLjk1ZW0gMDtcbn1cblxuLk1hcmtkb3duQ29udGVudCBwcmUsXG4uTWFya2Rvd25Db250ZW50IGJsb2NrcXVvdGUsXG4uTWFya2Rvd25Db250ZW50IHRhYmxlLFxuLk1hcmtkb3duQ29udGVudCBociB7XG4gICAgbWFyZ2luOiAwLjk1ZW0gMDtcbn1cblxuLk1hcmtkb3duQ29udGVudCBwcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLk1hcmtkb3duQ29udGVudCBibG9ja3F1b3RlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1tZC1ibG9ja3F1b3RlLWJvcmRlcik7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW1kLWJsb2NrcXVvdGUtYmcpO1xuICAgIGNvbG9yOiB2YXIoLS1tZC1tdXRlZC1jb2xvcik7XG4gICAgcGFkZGluZzogMC43MmVtIDAuOTZlbTtcbn1cblxuLk1hcmtkb3duQ29udGVudCBibG9ja3F1b3RlID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgY29kZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuMTRlbSAwLjQyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbWQtaW5saW5lLWNvZGUtYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tbWQtaW5saW5lLWNvZGUtYmcpO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1tZC1jb2RlLWZvbnQtZmFtaWx5KTtcbiAgICBmb250LXNpemU6IDAuODhlbTtcbiAgICBsaW5lLWhlaWdodDogMS40NTtcbiAgICBjb2xvcjogdmFyKC0tbWQtaW5saW5lLWNvZGUtY29sb3IpO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgcHJlIGNvZGUge1xuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB3aGl0ZS1zcGFjZTogcHJlO1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uTWFya2Rvd25Db250ZW50IC5jaGF0LWNvZGUtYmxvY2sge1xuICAgIGJhY2tncm91bmQ6ICMxODFjMjM7XG4gICAgY29sb3I6ICNmOGZhZmM7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMzUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgYm94LXNoYWRvdzogMCA2cHggMThweCByZ2JhKDIsIDYsIDIzLCAwLjI4KTtcbiAgICBmb250LWZhbWlseTogdmFyKC0tbWQtY29kZS1mb250LWZhbWlseSk7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgLmNoYXQtY29kZS1ibG9jayBjb2RlIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLk1hcmtkb3duQ29udGVudCB0YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1tZC10YWJsZS1ib3JkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1tZC10YWJsZS1iZyk7XG4gICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4xKTtcbiAgICBmb250LXNpemU6IDAuOTNlbTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLk1hcmtkb3duQ29udGVudCB0aCxcbi5NYXJrZG93bkNvbnRlbnQgdGQge1xuICAgIHBhZGRpbmc6IDAuNThlbSAwLjcyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLW1kLXRhYmxlLWJvcmRlcik7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgdGgge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW1kLXRhYmxlLWhlYWQtYmcpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgdHI6bGFzdC1jaGlsZCB0ZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLk1hcmtkb3duQ29udGVudCB0cjpudGgtY2hpbGQoZXZlbikgdGQge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW1kLXRhYmxlLXJvdy1hbHQtYmcpO1xufVxuXG4uTWFya2Rvd25Db250ZW50IGhyIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLW1kLXRhYmxlLWJvcmRlcik7XG4gICAgb3BhY2l0eTogMC44O1xufVxuXG4uTWFya2Rvd25Db250ZW50IHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IDY1MDtcbn1cblxuLk1hcmtkb3duQ29udGVudCBlbSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uY2l0YXRpb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWluLXdpZHRoOiAxLjRlbTtcbiAgICBtYXJnaW46IDAgMC4xZW07XG4gICAgcGFkZGluZzogMCAwLjM1ZW07XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgZm9udC1zaXplOiAwLjc0ZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMS40NTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG4gICAgY29sb3I6IHZhcigtLW1kLWNpdGF0aW9uLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1tZC1jaXRhdGlvbi1iZyk7XG59XG5cbi5jaXRhdGlvblJlZiB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtaW4td2lkdGg6IDEuNGVtO1xuICAgIG1hcmdpbjogMCAwLjFlbTtcbiAgICBwYWRkaW5nOiAwIDAuMzVlbTtcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICBmb250LXNpemU6IDAuNzRlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ1O1xuICAgIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbiAgICBjb2xvcjogdmFyKC0tbWQtY2l0YXRpb24tY29sb3IpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW1kLWNpdGF0aW9uLWJnKTtcbn1cblxuLk1hcmtkb3duQ29udGVudCBzdXBbZGF0YS1jaXRhdGlvbi1mb290bm90ZV0ge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBtYXJnaW46IDAgMCAwIDAuMDhlbTtcbiAgICBmb250LXNpemU6IDAuNzJlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxO1xuICAgIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbiAgICBjb2xvcjogY3VycmVudENvbG9yO1xufVxuIl19 */";
18325
+ var css_248z$b = ".MarkdownContent-module_MarkdownContent__2JuyX{--md-text-color:var(--chat-md-text-color,inherit);--md-muted-color:var(--chat-md-muted-color,currentColor);--md-link-color:var(--chat-md-link-color,#2563eb);--md-heading-color:var(--chat-heading-text-color,var(--md-text-color));--md-heading-font-family:var(\n --chat-md-heading-font-family,var(--font-poppins,\"Poppins\",system-ui,-apple-system,sans-serif)\n );--md-body-font-family:var(\n --chat-md-body-font-family,var(--font-poppins,\"Poppins\",system-ui,-apple-system,sans-serif)\n );--md-code-font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,\"Liberation Mono\",monospace;--md-inline-code-bg:var(--chat-md-inline-code-bg,rgba(15,23,42,.08));--md-inline-code-border:var(--chat-md-inline-code-border,rgba(15,23,42,.12));--md-inline-code-color:var(--chat-md-inline-code-color,var(--md-text-color));--md-blockquote-bg:var(--chat-md-blockquote-bg,rgba(248,250,252,.92));--md-blockquote-border:var(--chat-md-blockquote-border,rgba(59,130,246,.35));--md-table-bg:var(--chat-md-table-bg,rgba(248,250,252,.92));--md-table-row-alt-bg:var(--chat-md-table-row-alt-bg,rgba(241,245,249,.9));--md-table-head-bg:var(--chat-md-table-head-bg,rgba(226,232,240,.95));--md-table-border:var(--chat-md-table-border,rgba(148,163,184,.36));--md-citation-bg:var(--chat-md-citation-bg,rgba(59,130,246,.14));--md-citation-color:var(--chat-md-citation-color,#1d4ed8);color:var(--md-text-color);font-family:var(--md-body-font-family);font-size:inherit;letter-spacing:.002em;line-height:1.65}.MarkdownContent-module_MarkdownContent__2JuyX>:first-child{margin-top:0!important}.MarkdownContent-module_MarkdownContent__2JuyX>:last-child{margin-bottom:0!important}.MarkdownContent-module_MarkdownContent__2JuyX :is(h1,h2,h3,h4,h5,h6){text-wrap:balance;color:var(--md-heading-color);font-family:var(--md-heading-font-family);font-weight:600;letter-spacing:.01em;line-height:1.24;margin:1.4em 0 .55em;position:relative}.MarkdownContent-module_MarkdownContent__2JuyX h1{font-size:1.52rem}.MarkdownContent-module_MarkdownContent__2JuyX h2{font-size:1.4rem}.MarkdownContent-module_MarkdownContent__2JuyX h3{font-size:1.26rem}.MarkdownContent-module_MarkdownContent__2JuyX h4{font-size:1.14rem}.MarkdownContent-module_MarkdownContent__2JuyX h5{font-size:1.04rem}.MarkdownContent-module_MarkdownContent__2JuyX h6{font-size:.98rem}.MarkdownContent-module_MarkdownContent__2JuyX p{text-wrap:pretty;margin:0 0 .9em}.MarkdownContent-module_MarkdownContent__2JuyX p:empty{display:none}.MarkdownContent-module_MarkdownContent__2JuyX :is(ul,ol){display:grid;gap:.35em;margin:.65em 0 1em;padding-inline-start:1.35rem}.MarkdownContent-module_MarkdownContent__2JuyX ul{list-style:disc}.MarkdownContent-module_MarkdownContent__2JuyX ol{list-style:decimal}.MarkdownContent-module_MarkdownContent__2JuyX li{line-height:1.58}.MarkdownContent-module_MarkdownContent__2JuyX li>:is(ul,ol){margin-bottom:0;margin-top:.45em}.MarkdownContent-module_MarkdownContent__2JuyX a{color:var(--md-link-color);text-decoration-color:currentColor;text-decoration-line:underline;text-decoration-thickness:1.4px;text-underline-offset:.16em;transition:opacity .2s ease,text-decoration-thickness .2s ease}.MarkdownContent-module_MarkdownContent__2JuyX a:focus-visible,.MarkdownContent-module_MarkdownContent__2JuyX a:hover{opacity:.92;text-decoration-thickness:2px}.MarkdownContent-module_MarkdownContent__2JuyX img{border-radius:14px;display:block;height:auto;margin:.95em 0;max-width:100%}.MarkdownContent-module_MarkdownContent__2JuyX blockquote,.MarkdownContent-module_MarkdownContent__2JuyX hr,.MarkdownContent-module_MarkdownContent__2JuyX pre,.MarkdownContent-module_MarkdownContent__2JuyX table{margin:.95em 0}.MarkdownContent-module_MarkdownContent__2JuyX pre{background:transparent;border:none;border-radius:12px;box-shadow:none;display:block;overflow:visible;padding:0}.MarkdownContent-module_MarkdownContent__2JuyX blockquote{background:var(--md-blockquote-bg);border:none;border-left:3px solid var(--md-blockquote-border);border-radius:12px;box-shadow:none;color:var(--md-muted-color);display:block;padding:.72em .96em}.MarkdownContent-module_MarkdownContent__2JuyX blockquote>:last-child{margin-bottom:0}.MarkdownContent-module_MarkdownContent__2JuyX code{background:var(--md-inline-code-bg);border:1px solid var(--md-inline-code-border);border-radius:8px;color:var(--md-inline-code-color);font-family:var(--md-code-font-family);font-size:.88em;line-height:1.45;margin:0;padding:.14em .42em;word-break:break-word}.MarkdownContent-module_MarkdownContent__2JuyX pre code{background:none!important;border:none!important;box-shadow:none!important;color:inherit!important;display:block;font-family:inherit!important;font-size:inherit!important;overflow-x:auto;padding:0!important;white-space:pre;word-break:normal}.MarkdownContent-module_MarkdownContent__2JuyX .MarkdownContent-module_chat-code-block__ZffFg{background:#181c23;border:1px solid rgba(148,163,184,.35);border-radius:12px;box-shadow:0 6px 18px rgba(2,6,23,.28);color:#f8fafc;font-family:var(--md-code-font-family);font-size:14px;line-height:1.6;overflow-x:auto}.MarkdownContent-module_MarkdownContent__2JuyX .MarkdownContent-module_chat-code-block__ZffFg code{background:none!important;border:none!important;box-shadow:none!important;color:inherit!important;display:block;font-family:inherit!important;font-size:inherit!important;overflow-x:auto;padding:0!important;white-space:pre;word-break:normal}.MarkdownContent-module_MarkdownContent__2JuyX table{background:var(--md-table-bg);border:1px solid var(--md-table-border);border-collapse:separate;border-radius:12px;border-spacing:0;box-shadow:0 2px 8px rgba(15,23,42,.1);color:inherit;font-size:.93em;overflow:hidden;width:100%}.MarkdownContent-module_MarkdownContent__2JuyX td,.MarkdownContent-module_MarkdownContent__2JuyX th{background:none;border-bottom:1px solid var(--md-table-border);color:inherit;padding:.58em .72em;text-align:left;vertical-align:top}.MarkdownContent-module_MarkdownContent__2JuyX th{background:var(--md-table-head-bg);font-weight:600}.MarkdownContent-module_MarkdownContent__2JuyX tr:last-child td{border-bottom:none}.MarkdownContent-module_MarkdownContent__2JuyX tr:nth-child(2n) td{background:var(--md-table-row-alt-bg)}.MarkdownContent-module_MarkdownContent__2JuyX hr{border:none;border-top:1px solid var(--md-table-border);opacity:.8}.MarkdownContent-module_MarkdownContent__2JuyX strong{font-weight:650}.MarkdownContent-module_MarkdownContent__2JuyX em{font-style:italic}.MarkdownContent-module_citationRef__fKqaT,.MarkdownContent-module_citation__11SMw{align-items:center;background:var(--md-citation-bg);border-radius:999px;color:var(--md-citation-color);display:inline-flex;font-size:.74em;font-weight:700;justify-content:center;line-height:1.45;margin:0 .1em;min-width:1.4em;padding:0 .35em;vertical-align:super}.MarkdownContent-module_MarkdownContent__2JuyX sup[data-citation-footnote]{color:currentColor;display:inline;font-size:.72em;font-weight:700;line-height:1;margin:0 .7em 0 .08em;vertical-align:super}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIk1hcmtkb3duQ29udGVudC5tb2R1bGUuY3NzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLCtDQUNJLGlEQUFtRCxDQUNuRCx3REFBMEQsQ0FDMUQsaURBQW1ELENBQ25ELHNFQUF3RSxDQUN4RTs7S0FHQyxDQUNEOztLQUdDLENBQ0QsbUdBQTBHLENBQzFHLG9FQUEwRSxDQUMxRSw0RUFBa0YsQ0FDbEYsNEVBQThFLENBQzlFLHFFQUEyRSxDQUMzRSw0RUFBa0YsQ0FDbEYsMkRBQWlFLENBQ2pFLDBFQUFnRixDQUNoRixxRUFBMkUsQ0FDM0UsbUVBQXlFLENBQ3pFLGdFQUFzRSxDQUN0RSx5REFBMkQsQ0FFM0QsMEJBQTJCLENBQzNCLHNDQUF1QyxDQUN2QyxpQkFBa0IsQ0FFbEIscUJBQXVCLENBRHZCLGdCQUVKLENBRUEsNERBQ0ksc0JBQ0osQ0FFQSwyREFDSSx5QkFDSixDQUVBLHNFQVFJLGlCQUFrQixDQUxsQiw2QkFBOEIsQ0FDOUIseUNBQTBDLENBQzFDLGVBQWdCLENBRWhCLG9CQUFzQixDQUR0QixnQkFBaUIsQ0FKakIsb0JBQXNCLENBRHRCLGlCQVFKLENBRUEsa0RBQ0ksaUJBQ0osQ0FFQSxrREFDSSxnQkFDSixDQUVBLGtEQUNJLGlCQUNKLENBRUEsa0RBQ0ksaUJBQ0osQ0FFQSxrREFDSSxpQkFDSixDQUVBLGtEQUNJLGdCQUNKLENBRUEsaURBRUksZ0JBQWlCLENBRGpCLGVBRUosQ0FFQSx1REFDSSxZQUNKLENBRUEsMERBR0ksWUFBYSxDQUNiLFNBQVcsQ0FIWCxrQkFBb0IsQ0FDcEIsNEJBR0osQ0FFQSxrREFDSSxlQUNKLENBRUEsa0RBQ0ksa0JBQ0osQ0FFQSxrREFDSSxnQkFDSixDQUVBLDZEQUVJLGVBQWdCLENBRGhCLGdCQUVKLENBRUEsaURBQ0ksMEJBQTJCLENBSTNCLGtDQUFtQyxDQUhuQyw4QkFBK0IsQ0FDL0IsK0JBQWdDLENBQ2hDLDJCQUE2QixDQUU3Qiw4REFDSixDQUVBLHNIQUVJLFdBQWEsQ0FDYiw2QkFDSixDQUVBLG1EQUlJLGtCQUFtQixDQUhuQixhQUFjLENBRWQsV0FBWSxDQUVaLGNBQWdCLENBSGhCLGNBSUosQ0FFQSxvTkFJSSxjQUNKLENBRUEsbURBS0ksc0JBQXVCLENBSHZCLFdBQVksQ0FDWixrQkFBbUIsQ0FDbkIsZUFBZ0IsQ0FIaEIsYUFBYyxDQU1kLGdCQUFpQixDQURqQixTQUVKLENBRUEsMERBTUksa0NBQW1DLENBSm5DLFdBQVksQ0FDWixpREFBa0QsQ0FDbEQsa0JBQW1CLENBQ25CLGVBQWdCLENBRWhCLDJCQUE0QixDQU41QixhQUFjLENBT2QsbUJBQ0osQ0FFQSxzRUFDSSxlQUNKLENBRUEsb0RBS0ksbUNBQW9DLENBRnBDLDZDQUE4QyxDQUM5QyxpQkFBa0IsQ0FLbEIsaUNBQWtDLENBSGxDLHNDQUF1QyxDQUN2QyxlQUFpQixDQUNqQixnQkFBaUIsQ0FQakIsUUFBUyxDQUNULG1CQUFzQixDQVF0QixxQkFDSixDQUVBLHdEQUNJLHlCQUEyQixDQUszQixxQkFBdUIsQ0FDdkIseUJBQTJCLENBTDNCLHVCQUF5QixDQVN6QixhQUFjLENBUmQsNkJBQStCLENBQy9CLDJCQUE2QixDQU03QixlQUFnQixDQUxoQixtQkFBcUIsQ0FHckIsZUFBZ0IsQ0FDaEIsaUJBR0osQ0FFQSw4RkFDSSxrQkFBbUIsQ0FLbkIsc0NBQTJDLENBQzNDLGtCQUFtQixDQUNuQixzQ0FBMkMsQ0FOM0MsYUFBYyxDQU9kLHNDQUF1QyxDQU52QyxjQUFlLENBQ2YsZUFBZ0IsQ0FDaEIsZUFLSixDQUVBLG1HQUNJLHlCQUEyQixDQUszQixxQkFBdUIsQ0FDdkIseUJBQTJCLENBTDNCLHVCQUF5QixDQVN6QixhQUFjLENBUmQsNkJBQStCLENBQy9CLDJCQUE2QixDQU03QixlQUFnQixDQUxoQixtQkFBcUIsQ0FHckIsZUFBZ0IsQ0FDaEIsaUJBR0osQ0FFQSxxREFPSSw2QkFBOEIsQ0FIOUIsdUNBQXdDLENBRnhDLHdCQUF5QixDQUd6QixrQkFBbUIsQ0FGbkIsZ0JBQWlCLENBS2pCLHNDQUEyQyxDQUUzQyxhQUFjLENBRGQsZUFBaUIsQ0FIakIsZUFBZ0IsQ0FMaEIsVUFVSixDQUVBLG9HQU9JLGVBQWdCLENBSmhCLDhDQUErQyxDQUcvQyxhQUFjLENBSmQsbUJBQXNCLENBRXRCLGVBQWdCLENBQ2hCLGtCQUdKLENBRUEsa0RBQ0ksa0NBQW1DLENBQ25DLGVBQ0osQ0FFQSxnRUFDSSxrQkFDSixDQUVBLG1FQUNJLHFDQUNKLENBRUEsa0RBQ0ksV0FBWSxDQUNaLDJDQUE0QyxDQUM1QyxVQUNKLENBRUEsc0RBQ0ksZUFDSixDQUVBLGtEQUNJLGlCQUNKLENBa0JBLG1GQUVJLGtCQUFtQixDQVduQixnQ0FBaUMsQ0FOakMsbUJBQW9CLENBS3BCLDhCQUErQixDQVgvQixtQkFBb0IsQ0FPcEIsZUFBaUIsQ0FDakIsZUFBZ0IsQ0FOaEIsc0JBQXVCLENBT3ZCLGdCQUFpQixDQUxqQixhQUFlLENBRGYsZUFBZ0IsQ0FFaEIsZUFBaUIsQ0FLakIsb0JBR0osQ0FFQSwyRUFPSSxrQkFBbUIsQ0FObkIsY0FBZSxDQUVmLGVBQWlCLENBQ2pCLGVBQWdCLENBQ2hCLGFBQWMsQ0FIZCxxQkFBd0IsQ0FJeEIsb0JBRUoiLCJmaWxlIjoiTWFya2Rvd25Db250ZW50Lm1vZHVsZS5jc3MiLCJzb3VyY2VzQ29udGVudCI6WyIuTWFya2Rvd25Db250ZW50IHtcbiAgICAtLW1kLXRleHQtY29sb3I6IHZhcigtLWNoYXQtbWQtdGV4dC1jb2xvciwgaW5oZXJpdCk7XG4gICAgLS1tZC1tdXRlZC1jb2xvcjogdmFyKC0tY2hhdC1tZC1tdXRlZC1jb2xvciwgY3VycmVudENvbG9yKTtcbiAgICAtLW1kLWxpbmstY29sb3I6IHZhcigtLWNoYXQtbWQtbGluay1jb2xvciwgIzI1NjNlYik7XG4gICAgLS1tZC1oZWFkaW5nLWNvbG9yOiB2YXIoLS1jaGF0LWhlYWRpbmctdGV4dC1jb2xvciwgdmFyKC0tbWQtdGV4dC1jb2xvcikpO1xuICAgIC0tbWQtaGVhZGluZy1mb250LWZhbWlseTogdmFyKFxuICAgICAgICAtLWNoYXQtbWQtaGVhZGluZy1mb250LWZhbWlseSxcbiAgICAgICAgdmFyKC0tZm9udC1wb3BwaW5zLCAnUG9wcGlucycsIHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgc2Fucy1zZXJpZilcbiAgICApO1xuICAgIC0tbWQtYm9keS1mb250LWZhbWlseTogdmFyKFxuICAgICAgICAtLWNoYXQtbWQtYm9keS1mb250LWZhbWlseSxcbiAgICAgICAgdmFyKC0tZm9udC1wb3BwaW5zLCAnUG9wcGlucycsIHN5c3RlbS11aSwgLWFwcGxlLXN5c3RlbSwgc2Fucy1zZXJpZilcbiAgICApO1xuICAgIC0tbWQtY29kZS1mb250LWZhbWlseTogdWktbW9ub3NwYWNlLCBTRk1vbm8tUmVndWxhciwgTWVubG8sIE1vbmFjbywgQ29uc29sYXMsICdMaWJlcmF0aW9uIE1vbm8nLCBtb25vc3BhY2U7XG4gICAgLS1tZC1pbmxpbmUtY29kZS1iZzogdmFyKC0tY2hhdC1tZC1pbmxpbmUtY29kZS1iZywgcmdiYSgxNSwgMjMsIDQyLCAwLjA4KSk7XG4gICAgLS1tZC1pbmxpbmUtY29kZS1ib3JkZXI6IHZhcigtLWNoYXQtbWQtaW5saW5lLWNvZGUtYm9yZGVyLCByZ2JhKDE1LCAyMywgNDIsIDAuMTIpKTtcbiAgICAtLW1kLWlubGluZS1jb2RlLWNvbG9yOiB2YXIoLS1jaGF0LW1kLWlubGluZS1jb2RlLWNvbG9yLCB2YXIoLS1tZC10ZXh0LWNvbG9yKSk7XG4gICAgLS1tZC1ibG9ja3F1b3RlLWJnOiB2YXIoLS1jaGF0LW1kLWJsb2NrcXVvdGUtYmcsIHJnYmEoMjQ4LCAyNTAsIDI1MiwgMC45MikpO1xuICAgIC0tbWQtYmxvY2txdW90ZS1ib3JkZXI6IHZhcigtLWNoYXQtbWQtYmxvY2txdW90ZS1ib3JkZXIsIHJnYmEoNTksIDEzMCwgMjQ2LCAwLjM1KSk7XG4gICAgLS1tZC10YWJsZS1iZzogdmFyKC0tY2hhdC1tZC10YWJsZS1iZywgcmdiYSgyNDgsIDI1MCwgMjUyLCAwLjkyKSk7XG4gICAgLS1tZC10YWJsZS1yb3ctYWx0LWJnOiB2YXIoLS1jaGF0LW1kLXRhYmxlLXJvdy1hbHQtYmcsIHJnYmEoMjQxLCAyNDUsIDI0OSwgMC45KSk7XG4gICAgLS1tZC10YWJsZS1oZWFkLWJnOiB2YXIoLS1jaGF0LW1kLXRhYmxlLWhlYWQtYmcsIHJnYmEoMjI2LCAyMzIsIDI0MCwgMC45NSkpO1xuICAgIC0tbWQtdGFibGUtYm9yZGVyOiB2YXIoLS1jaGF0LW1kLXRhYmxlLWJvcmRlciwgcmdiYSgxNDgsIDE2MywgMTg0LCAwLjM2KSk7XG4gICAgLS1tZC1jaXRhdGlvbi1iZzogdmFyKC0tY2hhdC1tZC1jaXRhdGlvbi1iZywgcmdiYSg1OSwgMTMwLCAyNDYsIDAuMTQpKTtcbiAgICAtLW1kLWNpdGF0aW9uLWNvbG9yOiB2YXIoLS1jaGF0LW1kLWNpdGF0aW9uLWNvbG9yLCAjMWQ0ZWQ4KTtcblxuICAgIGNvbG9yOiB2YXIoLS1tZC10ZXh0LWNvbG9yKTtcbiAgICBmb250LWZhbWlseTogdmFyKC0tbWQtYm9keS1mb250LWZhbWlseSk7XG4gICAgZm9udC1zaXplOiBpbmhlcml0O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY1O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAwMmVtO1xufVxuXG4uTWFya2Rvd25Db250ZW50ID4gOmZpcnN0LWNoaWxkIHtcbiAgICBtYXJnaW4tdG9wOiAwICFpbXBvcnRhbnQ7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgPiA6bGFzdC1jaGlsZCB7XG4gICAgbWFyZ2luLWJvdHRvbTogMCAhaW1wb3J0YW50O1xufVxuXG4uTWFya2Rvd25Db250ZW50IDppcyhoMSwgaDIsIGgzLCBoNCwgaDUsIGg2KSB7XG4gICAgcG9zaXRpb246IHJlbGF0aXZlO1xuICAgIG1hcmdpbjogMS40ZW0gMCAwLjU1ZW07XG4gICAgY29sb3I6IHZhcigtLW1kLWhlYWRpbmctY29sb3IpO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1tZC1oZWFkaW5nLWZvbnQtZmFtaWx5KTtcbiAgICBmb250LXdlaWdodDogNjAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjI0O1xuICAgIGxldHRlci1zcGFjaW5nOiAwLjAxZW07XG4gICAgdGV4dC13cmFwOiBiYWxhbmNlO1xufVxuXG4uTWFya2Rvd25Db250ZW50IGgxIHtcbiAgICBmb250LXNpemU6IDEuNTJyZW07XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgaDIge1xuICAgIGZvbnQtc2l6ZTogMS40cmVtO1xufVxuXG4uTWFya2Rvd25Db250ZW50IGgzIHtcbiAgICBmb250LXNpemU6IDEuMjZyZW07XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgaDQge1xuICAgIGZvbnQtc2l6ZTogMS4xNHJlbTtcbn1cblxuLk1hcmtkb3duQ29udGVudCBoNSB7XG4gICAgZm9udC1zaXplOiAxLjA0cmVtO1xufVxuXG4uTWFya2Rvd25Db250ZW50IGg2IHtcbiAgICBmb250LXNpemU6IDAuOThyZW07XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgcCB7XG4gICAgbWFyZ2luOiAwIDAgMC45ZW07XG4gICAgdGV4dC13cmFwOiBwcmV0dHk7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgcDplbXB0eSB7XG4gICAgZGlzcGxheTogbm9uZTtcbn1cblxuLk1hcmtkb3duQ29udGVudCA6aXModWwsIG9sKSB7XG4gICAgbWFyZ2luOiAwLjY1ZW0gMCAxZW07XG4gICAgcGFkZGluZy1pbmxpbmUtc3RhcnQ6IDEuMzVyZW07XG4gICAgZGlzcGxheTogZ3JpZDtcbiAgICBnYXA6IDAuMzVlbTtcbn1cblxuLk1hcmtkb3duQ29udGVudCB1bCB7XG4gICAgbGlzdC1zdHlsZTogZGlzYztcbn1cblxuLk1hcmtkb3duQ29udGVudCBvbCB7XG4gICAgbGlzdC1zdHlsZTogZGVjaW1hbDtcbn1cblxuLk1hcmtkb3duQ29udGVudCBsaSB7XG4gICAgbGluZS1oZWlnaHQ6IDEuNTg7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgbGkgPiA6aXModWwsIG9sKSB7XG4gICAgbWFyZ2luLXRvcDogMC40NWVtO1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgYSB7XG4gICAgY29sb3I6IHZhcigtLW1kLWxpbmstY29sb3IpO1xuICAgIHRleHQtZGVjb3JhdGlvbi1saW5lOiB1bmRlcmxpbmU7XG4gICAgdGV4dC1kZWNvcmF0aW9uLXRoaWNrbmVzczogMS40cHg7XG4gICAgdGV4dC11bmRlcmxpbmUtb2Zmc2V0OiAwLjE2ZW07XG4gICAgdGV4dC1kZWNvcmF0aW9uLWNvbG9yOiBjdXJyZW50Q29sb3I7XG4gICAgdHJhbnNpdGlvbjogb3BhY2l0eSAwLjJzIGVhc2UsIHRleHQtZGVjb3JhdGlvbi10aGlja25lc3MgMC4ycyBlYXNlO1xufVxuXG4uTWFya2Rvd25Db250ZW50IGE6aG92ZXIsXG4uTWFya2Rvd25Db250ZW50IGE6Zm9jdXMtdmlzaWJsZSB7XG4gICAgb3BhY2l0eTogMC45MjtcbiAgICB0ZXh0LWRlY29yYXRpb24tdGhpY2tuZXNzOiAycHg7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgaW1nIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBtYXgtd2lkdGg6IDEwMCU7XG4gICAgaGVpZ2h0OiBhdXRvO1xuICAgIGJvcmRlci1yYWRpdXM6IDE0cHg7XG4gICAgbWFyZ2luOiAwLjk1ZW0gMDtcbn1cblxuLk1hcmtkb3duQ29udGVudCBwcmUsXG4uTWFya2Rvd25Db250ZW50IGJsb2NrcXVvdGUsXG4uTWFya2Rvd25Db250ZW50IHRhYmxlLFxuLk1hcmtkb3duQ29udGVudCBociB7XG4gICAgbWFyZ2luOiAwLjk1ZW0gMDtcbn1cblxuLk1hcmtkb3duQ29udGVudCBwcmUge1xuICAgIGRpc3BsYXk6IGJsb2NrO1xuICAgIGJvcmRlcjogbm9uZTtcbiAgICBib3JkZXItcmFkaXVzOiAxMnB4O1xuICAgIGJveC1zaGFkb3c6IG5vbmU7XG4gICAgYmFja2dyb3VuZDogdHJhbnNwYXJlbnQ7XG4gICAgcGFkZGluZzogMDtcbiAgICBvdmVyZmxvdzogdmlzaWJsZTtcbn1cblxuLk1hcmtkb3duQ29udGVudCBibG9ja3F1b3RlIHtcbiAgICBkaXNwbGF5OiBibG9jaztcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLWxlZnQ6IDNweCBzb2xpZCB2YXIoLS1tZC1ibG9ja3F1b3RlLWJvcmRlcik7XG4gICAgYm9yZGVyLXJhZGl1czogMTJweDtcbiAgICBib3gtc2hhZG93OiBub25lO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW1kLWJsb2NrcXVvdGUtYmcpO1xuICAgIGNvbG9yOiB2YXIoLS1tZC1tdXRlZC1jb2xvcik7XG4gICAgcGFkZGluZzogMC43MmVtIDAuOTZlbTtcbn1cblxuLk1hcmtkb3duQ29udGVudCBibG9ja3F1b3RlID4gOmxhc3QtY2hpbGQge1xuICAgIG1hcmdpbi1ib3R0b206IDA7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgY29kZSB7XG4gICAgbWFyZ2luOiAwO1xuICAgIHBhZGRpbmc6IDAuMTRlbSAwLjQyZW07XG4gICAgYm9yZGVyOiAxcHggc29saWQgdmFyKC0tbWQtaW5saW5lLWNvZGUtYm9yZGVyKTtcbiAgICBib3JkZXItcmFkaXVzOiA4cHg7XG4gICAgYmFja2dyb3VuZDogdmFyKC0tbWQtaW5saW5lLWNvZGUtYmcpO1xuICAgIGZvbnQtZmFtaWx5OiB2YXIoLS1tZC1jb2RlLWZvbnQtZmFtaWx5KTtcbiAgICBmb250LXNpemU6IDAuODhlbTtcbiAgICBsaW5lLWhlaWdodDogMS40NTtcbiAgICBjb2xvcjogdmFyKC0tbWQtaW5saW5lLWNvZGUtY29sb3IpO1xuICAgIHdvcmQtYnJlYWs6IGJyZWFrLXdvcmQ7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgcHJlIGNvZGUge1xuICAgIGJhY2tncm91bmQ6IG5vbmUgIWltcG9ydGFudDtcbiAgICBjb2xvcjogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIGZvbnQtZmFtaWx5OiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgZm9udC1zaXplOiBpbmhlcml0ICFpbXBvcnRhbnQ7XG4gICAgcGFkZGluZzogMCAhaW1wb3J0YW50O1xuICAgIGJvcmRlcjogbm9uZSAhaW1wb3J0YW50O1xuICAgIGJveC1zaGFkb3c6IG5vbmUgIWltcG9ydGFudDtcbiAgICB3aGl0ZS1zcGFjZTogcHJlO1xuICAgIHdvcmQtYnJlYWs6IG5vcm1hbDtcbiAgICBvdmVyZmxvdy14OiBhdXRvO1xuICAgIGRpc3BsYXk6IGJsb2NrO1xufVxuXG4uTWFya2Rvd25Db250ZW50IC5jaGF0LWNvZGUtYmxvY2sge1xuICAgIGJhY2tncm91bmQ6ICMxODFjMjM7XG4gICAgY29sb3I6ICNmOGZhZmM7XG4gICAgZm9udC1zaXplOiAxNHB4O1xuICAgIGxpbmUtaGVpZ2h0OiAxLjY7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBib3JkZXI6IDFweCBzb2xpZCByZ2JhKDE0OCwgMTYzLCAxODQsIDAuMzUpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgYm94LXNoYWRvdzogMCA2cHggMThweCByZ2JhKDIsIDYsIDIzLCAwLjI4KTtcbiAgICBmb250LWZhbWlseTogdmFyKC0tbWQtY29kZS1mb250LWZhbWlseSk7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgLmNoYXQtY29kZS1ibG9jayBjb2RlIHtcbiAgICBiYWNrZ3JvdW5kOiBub25lICFpbXBvcnRhbnQ7XG4gICAgY29sb3I6IGluaGVyaXQgIWltcG9ydGFudDtcbiAgICBmb250LWZhbWlseTogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIGZvbnQtc2l6ZTogaW5oZXJpdCAhaW1wb3J0YW50O1xuICAgIHBhZGRpbmc6IDAgIWltcG9ydGFudDtcbiAgICBib3JkZXI6IG5vbmUgIWltcG9ydGFudDtcbiAgICBib3gtc2hhZG93OiBub25lICFpbXBvcnRhbnQ7XG4gICAgd2hpdGUtc3BhY2U6IHByZTtcbiAgICB3b3JkLWJyZWFrOiBub3JtYWw7XG4gICAgb3ZlcmZsb3cteDogYXV0bztcbiAgICBkaXNwbGF5OiBibG9jaztcbn1cblxuLk1hcmtkb3duQ29udGVudCB0YWJsZSB7XG4gICAgd2lkdGg6IDEwMCU7XG4gICAgYm9yZGVyLWNvbGxhcHNlOiBzZXBhcmF0ZTtcbiAgICBib3JkZXItc3BhY2luZzogMDtcbiAgICBib3JkZXI6IDFweCBzb2xpZCB2YXIoLS1tZC10YWJsZS1ib3JkZXIpO1xuICAgIGJvcmRlci1yYWRpdXM6IDEycHg7XG4gICAgb3ZlcmZsb3c6IGhpZGRlbjtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1tZC10YWJsZS1iZyk7XG4gICAgYm94LXNoYWRvdzogMCAycHggOHB4IHJnYmEoMTUsIDIzLCA0MiwgMC4xKTtcbiAgICBmb250LXNpemU6IDAuOTNlbTtcbiAgICBjb2xvcjogaW5oZXJpdDtcbn1cblxuLk1hcmtkb3duQ29udGVudCB0aCxcbi5NYXJrZG93bkNvbnRlbnQgdGQge1xuICAgIHBhZGRpbmc6IDAuNThlbSAwLjcyZW07XG4gICAgYm9yZGVyLWJvdHRvbTogMXB4IHNvbGlkIHZhcigtLW1kLXRhYmxlLWJvcmRlcik7XG4gICAgdGV4dC1hbGlnbjogbGVmdDtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogdG9wO1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICAgIGJhY2tncm91bmQ6IG5vbmU7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgdGgge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW1kLXRhYmxlLWhlYWQtYmcpO1xuICAgIGZvbnQtd2VpZ2h0OiA2MDA7XG59XG5cbi5NYXJrZG93bkNvbnRlbnQgdHI6bGFzdC1jaGlsZCB0ZCB7XG4gICAgYm9yZGVyLWJvdHRvbTogbm9uZTtcbn1cblxuLk1hcmtkb3duQ29udGVudCB0cjpudGgtY2hpbGQoZXZlbikgdGQge1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW1kLXRhYmxlLXJvdy1hbHQtYmcpO1xufVxuXG4uTWFya2Rvd25Db250ZW50IGhyIHtcbiAgICBib3JkZXI6IG5vbmU7XG4gICAgYm9yZGVyLXRvcDogMXB4IHNvbGlkIHZhcigtLW1kLXRhYmxlLWJvcmRlcik7XG4gICAgb3BhY2l0eTogMC44O1xufVxuXG4uTWFya2Rvd25Db250ZW50IHN0cm9uZyB7XG4gICAgZm9udC13ZWlnaHQ6IDY1MDtcbn1cblxuLk1hcmtkb3duQ29udGVudCBlbSB7XG4gICAgZm9udC1zdHlsZTogaXRhbGljO1xufVxuXG4uY2l0YXRpb24ge1xuICAgIGRpc3BsYXk6IGlubGluZS1mbGV4O1xuICAgIGFsaWduLWl0ZW1zOiBjZW50ZXI7XG4gICAganVzdGlmeS1jb250ZW50OiBjZW50ZXI7XG4gICAgbWluLXdpZHRoOiAxLjRlbTtcbiAgICBtYXJnaW46IDAgMC4xZW07XG4gICAgcGFkZGluZzogMCAwLjM1ZW07XG4gICAgYm9yZGVyLXJhZGl1czogOTk5cHg7XG4gICAgZm9udC1zaXplOiAwLjc0ZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMS40NTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG4gICAgY29sb3I6IHZhcigtLW1kLWNpdGF0aW9uLWNvbG9yKTtcbiAgICBiYWNrZ3JvdW5kOiB2YXIoLS1tZC1jaXRhdGlvbi1iZyk7XG59XG5cbi5jaXRhdGlvblJlZiB7XG4gICAgZGlzcGxheTogaW5saW5lLWZsZXg7XG4gICAgYWxpZ24taXRlbXM6IGNlbnRlcjtcbiAgICBqdXN0aWZ5LWNvbnRlbnQ6IGNlbnRlcjtcbiAgICBtaW4td2lkdGg6IDEuNGVtO1xuICAgIG1hcmdpbjogMCAwLjFlbTtcbiAgICBwYWRkaW5nOiAwIDAuMzVlbTtcbiAgICBib3JkZXItcmFkaXVzOiA5OTlweDtcbiAgICBmb250LXNpemU6IDAuNzRlbTtcbiAgICBmb250LXdlaWdodDogNzAwO1xuICAgIGxpbmUtaGVpZ2h0OiAxLjQ1O1xuICAgIHZlcnRpY2FsLWFsaWduOiBzdXBlcjtcbiAgICBjb2xvcjogdmFyKC0tbWQtY2l0YXRpb24tY29sb3IpO1xuICAgIGJhY2tncm91bmQ6IHZhcigtLW1kLWNpdGF0aW9uLWJnKTtcbn1cblxuLk1hcmtkb3duQ29udGVudCBzdXBbZGF0YS1jaXRhdGlvbi1mb290bm90ZV0ge1xuICAgIGRpc3BsYXk6IGlubGluZTtcbiAgICBtYXJnaW46IDAgMC43ZW0gMCAwLjA4ZW07XG4gICAgZm9udC1zaXplOiAwLjcyZW07XG4gICAgZm9udC13ZWlnaHQ6IDcwMDtcbiAgICBsaW5lLWhlaWdodDogMTtcbiAgICB2ZXJ0aWNhbC1hbGlnbjogc3VwZXI7XG4gICAgY29sb3I6IGN1cnJlbnRDb2xvcjtcbn1cbiJdfQ== */";
18326
18326
  var styles$b = {"MarkdownContent":"MarkdownContent-module_MarkdownContent__2JuyX","chat-code-block":"MarkdownContent-module_chat-code-block__ZffFg","citation":"MarkdownContent-module_citation__11SMw","citationRef":"MarkdownContent-module_citationRef__fKqaT"};
18327
18327
  styleInject(css_248z$b);
18328
18328
 
@@ -35041,6 +35041,7 @@ class SelfLearningManager {
35041
35041
 
35042
35042
  - Decide what the agent should learn from this interaction.
35043
35043
  - Append new commitments at the end of the agent source.
35044
+ - Return only newly learned commitments, never repeat commitments that are already present.
35044
35045
  - Do not modify the current agent source, just return new commitments (KNOWLEDGE, RULE, etc.).
35045
35046
  - If there is nothing new to learn, return empty book code block
35046
35047
  - Wrap the commitments in a book code block.
@@ -35093,10 +35094,42 @@ class SelfLearningManager {
35093
35094
  */
35094
35095
  appendToAgentSource(section) {
35095
35096
  const currentSource = this.options.getAgentSource();
35096
- const newSource = padBook(validateBook(spaceTrim$1(currentSource) + section));
35097
+ const normalizedSection = normalizeBookSection(section);
35098
+ if (!normalizedSection) {
35099
+ return;
35100
+ }
35101
+ if (containsNormalizedBookSection(currentSource, normalizedSection)) {
35102
+ return;
35103
+ }
35104
+ const newSource = padBook(validateBook(`${normalizeBookSection(currentSource)}\n\n${normalizedSection}`));
35097
35105
  this.options.updateAgentSource(newSource);
35098
35106
  }
35099
35107
  }
35108
+ /**
35109
+ * Normalizes one book fragment for deduplication and append composition.
35110
+ *
35111
+ * @param section Raw fragment from self-learning workflow.
35112
+ * @returns Trimmed fragment, or empty string when nothing remains.
35113
+ * @private function of Agent
35114
+ */
35115
+ function normalizeBookSection(section) {
35116
+ return spaceTrim$1(section).replace(/\r\n/g, '\n');
35117
+ }
35118
+ /**
35119
+ * Checks whether one normalized fragment already exists inside the current source.
35120
+ *
35121
+ * @param agentSource Current source.
35122
+ * @param normalizedSection Candidate fragment expected to be normalized first.
35123
+ * @returns True when appending would duplicate an existing fragment.
35124
+ * @private function of Agent
35125
+ */
35126
+ function containsNormalizedBookSection(agentSource, normalizedSection) {
35127
+ if (!normalizedSection) {
35128
+ return true;
35129
+ }
35130
+ const normalizedSource = normalizeBookSection(agentSource);
35131
+ return normalizedSource.includes(normalizedSection);
35132
+ }
35100
35133
  /**
35101
35134
  * Determines whether the interaction runs in OpenAI-compatible JSON schema mode.
35102
35135
  *
@@ -40041,21 +40074,93 @@ function StreamingFeaturePlaceholder({ kind }) {
40041
40074
  return (jsxs("div", { className: styles$5.richFeaturePlaceholder, "aria-live": "polite", children: [jsx("span", { className: styles$5.richFeaturePlaceholderSpinner, "aria-hidden": "true" }), jsxs("div", { className: styles$5.richFeaturePlaceholderCopy, children: [jsx("span", { className: styles$5.richFeaturePlaceholderTitle, children: STREAMING_FEATURE_PLACEHOLDER_LABELS[kind] }), jsx("span", { className: styles$5.richFeaturePlaceholderStatus, children: "Waiting for the agent\u2026" })] })] }));
40042
40075
  }
40043
40076
  /**
40044
- * Renders a deep-research-like progress card with now/next sections and bullet statuses.
40077
+ * Human-facing label shown for "now" progress updates.
40045
40078
  *
40046
40079
  * @private internal helper of <ChatMessageItem/>
40047
40080
  */
40048
- function ProgressPanel({ progressCard }) {
40049
- var _a, _b, _c;
40050
- const shouldShowTitle = Boolean((_a = progressCard.title) === null || _a === void 0 ? void 0 : _a.trim());
40051
- const shouldShowNow = Boolean((_b = progressCard.now) === null || _b === void 0 ? void 0 : _b.trim());
40052
- const shouldShowNext = Boolean((_c = progressCard.next) === null || _c === void 0 ? void 0 : _c.trim());
40053
- const items = progressCard.items || [];
40054
- return (jsxs("section", { className: styles$5.progressPanel, "aria-live": "polite", children: [shouldShowTitle && (jsx("div", { className: styles$5.progressPanelTitle, children: jsx(MarkdownContent, { content: progressCard.title }) })), shouldShowNow && (jsxs("div", { className: styles$5.progressPanelSection, children: [jsx("div", { className: styles$5.progressPanelSectionLabel, children: "What I'm Doing Now" }), jsx("div", { className: styles$5.progressPanelSectionBody, children: jsx(MarkdownContent, { content: progressCard.now }) })] })), shouldShowNext && (jsxs("div", { className: styles$5.progressPanelSection, children: [jsx("div", { className: styles$5.progressPanelSectionLabel, children: "What I'll Do Next" }), jsx("div", { className: styles$5.progressPanelSectionBody, children: jsx(MarkdownContent, { content: progressCard.next }) })] })), items.length > 0 && (jsx("ul", { className: styles$5.progressPanelList, children: items.map((item, index) => {
40055
- const itemKey = item.id || `progress-item-${index}`;
40056
- const isPending = item.status === 'pending';
40057
- return (jsxs("li", { className: styles$5.progressPanelListItem, children: [jsx("span", { className: styles$5.progressPanelListBullet, "aria-hidden": "true", children: "\u2022" }), isPending ? (jsx("span", { className: styles$5.progressPanelItemSpinner, "aria-hidden": "true" })) : (jsx("span", { className: styles$5.progressPanelItemCompleted, "aria-hidden": "true", children: "\u2713" })), jsx("div", { className: styles$5.progressPanelItemText, children: jsx(MarkdownContent, { content: item.text }) })] }, itemKey));
40058
- }) }))] }));
40081
+ const PROGRESS_NOW_LABEL = "What I'm Doing Now";
40082
+ /**
40083
+ * Human-facing label shown for "next" progress updates.
40084
+ *
40085
+ * @private internal helper of <ChatMessageItem/>
40086
+ */
40087
+ const PROGRESS_NEXT_LABEL = "What I'll Do Next";
40088
+ /**
40089
+ * Converts one structured progress card payload into markdown checklist content.
40090
+ *
40091
+ * @param progressCard Structured progress card payload.
40092
+ * @returns Markdown checklist rendered through the normal message markdown pipeline.
40093
+ *
40094
+ * @private internal helper of <ChatMessageItem/>
40095
+ */
40096
+ function createProgressCardChecklistMarkdown(progressCard) {
40097
+ const checklistEntries = createProgressChecklistEntries(progressCard);
40098
+ if (checklistEntries.length === 0) {
40099
+ return '';
40100
+ }
40101
+ return checklistEntries.map((entry) => createChecklistMarkdownItem(entry)).join('\n');
40102
+ }
40103
+ /**
40104
+ * Maps one structured progress-card payload to a flat list of checklist entries.
40105
+ *
40106
+ * @param progressCard Structured progress card payload.
40107
+ * @returns Ordered checklist entries ready for markdown rendering.
40108
+ *
40109
+ * @private internal helper of <ChatMessageItem/>
40110
+ */
40111
+ function createProgressChecklistEntries(progressCard) {
40112
+ var _a, _b, _c, _d;
40113
+ const checklistEntries = [];
40114
+ const normalizedTitle = (_a = progressCard.title) === null || _a === void 0 ? void 0 : _a.trim();
40115
+ const normalizedNow = (_b = progressCard.now) === null || _b === void 0 ? void 0 : _b.trim();
40116
+ const normalizedNext = (_c = progressCard.next) === null || _c === void 0 ? void 0 : _c.trim();
40117
+ if (normalizedTitle) {
40118
+ checklistEntries.push({
40119
+ text: `**${normalizedTitle}**`,
40120
+ status: 'pending',
40121
+ });
40122
+ }
40123
+ if (normalizedNow) {
40124
+ checklistEntries.push({
40125
+ text: `**${PROGRESS_NOW_LABEL}:** ${normalizedNow}`,
40126
+ status: 'pending',
40127
+ });
40128
+ }
40129
+ for (const item of progressCard.items || []) {
40130
+ const normalizedItemText = (_d = item.text) === null || _d === void 0 ? void 0 : _d.trim();
40131
+ if (!normalizedItemText) {
40132
+ continue;
40133
+ }
40134
+ checklistEntries.push({
40135
+ text: normalizedItemText,
40136
+ status: item.status === 'completed' ? 'completed' : 'pending',
40137
+ });
40138
+ }
40139
+ if (normalizedNext) {
40140
+ checklistEntries.push({
40141
+ text: `**${PROGRESS_NEXT_LABEL}:** ${normalizedNext}`,
40142
+ status: 'pending',
40143
+ });
40144
+ }
40145
+ return checklistEntries;
40146
+ }
40147
+ /**
40148
+ * Converts one structured checklist entry to markdown task-list syntax.
40149
+ *
40150
+ * @param entry Structured checklist entry.
40151
+ * @returns Markdown checklist item including multiline continuations.
40152
+ *
40153
+ * @private internal helper of <ChatMessageItem/>
40154
+ */
40155
+ function createChecklistMarkdownItem(entry) {
40156
+ const marker = entry.status === 'completed' ? '- [x]' : '- [ ]';
40157
+ const lines = entry.text.split(/\r?\n/);
40158
+ const firstLine = lines[0] || '';
40159
+ const continuationLines = lines.slice(1).map((line) => ` ${line}`);
40160
+ if (continuationLines.length === 0) {
40161
+ return `${marker} ${firstLine}`;
40162
+ }
40163
+ return `${marker} ${firstLine}\n${continuationLines.join('\n')}`;
40059
40164
  }
40060
40165
  /**
40061
40166
  * Returns true when one progress card should currently be rendered.
@@ -40385,9 +40490,16 @@ const ChatMessageItem = memo(
40385
40490
  const shouldShowMessageMeta = Boolean(shouldShowTiming || lifecycleBadgeLabel);
40386
40491
  const shouldShowParticipantLabel = (participants || []).some((entry) => entry.name === 'TEAMMATE');
40387
40492
  const participantLabel = (participant === null || participant === void 0 ? void 0 : participant.fullname) || (participant === null || participant === void 0 ? void 0 : participant.name);
40493
+ const trimmedMessageContent = message.content.trim();
40494
+ const visibleProgressCard = isProgressCardVisible(message.progressCard) ? message.progressCard : null;
40495
+ const shouldRenderProgressChecklist = Boolean(visibleProgressCard && !isComplete && trimmedMessageContent.length === 0);
40496
+ const progressChecklistMarkdown = useMemo(() => shouldRenderProgressChecklist && visibleProgressCard
40497
+ ? createProgressCardChecklistMarkdown(visibleProgressCard)
40498
+ : '', [shouldRenderProgressChecklist, visibleProgressCard]);
40499
+ const renderedMessageContent = shouldRenderProgressChecklist ? progressChecklistMarkdown : message.content;
40388
40500
  const color = Color.fromSafe((participant && participant.color) || (isMe ? USER_CHAT_COLOR : PROMPTBOOK_CHAT_COLOR));
40389
40501
  const colorOfText = color.then(textColor);
40390
- const { contentWithoutButtons, buttons } = parseMessageButtons(message.content);
40502
+ const { contentWithoutButtons, buttons } = parseMessageButtons(renderedMessageContent);
40391
40503
  const sanitizedContentWithoutButtons = useMemo(() => sanitizeStreamingMessageContent(contentWithoutButtons, { isComplete }), [contentWithoutButtons, isComplete]);
40392
40504
  const streamingFeatureBoundary = useMemo(() => {
40393
40505
  if (isComplete) {
@@ -40442,9 +40554,6 @@ const ChatMessageItem = memo(
40442
40554
  return nextButtons;
40443
40555
  }, []), [buttons, consumedActionButtonIndexes, onActionButton, onMessage]);
40444
40556
  const shouldShowButtons = isLastMessage && renderableButtons.length > 0;
40445
- const trimmedMessageContent = message.content.trim();
40446
- const visibleProgressCard = isProgressCardVisible(message.progressCard) ? message.progressCard : null;
40447
- const shouldRenderProgressPanel = Boolean(visibleProgressCard && !isComplete && trimmedMessageContent.length === 0);
40448
40557
  const speechPlaybackEnabled = isSpeechPlaybackEnabled !== null && isSpeechPlaybackEnabled !== void 0 ? isSpeechPlaybackEnabled : true;
40449
40558
  const shouldShowPlayButton = speechPlaybackEnabled && trimmedMessageContent.length > 0;
40450
40559
  const playButtonTitle = audioError !== null && audioError !== void 0 ? audioError : (isAudioPlaying ? 'Pause message playback' : 'Read message aloud');
@@ -40692,7 +40801,7 @@ const ChatMessageItem = memo(
40692
40801
  ? ' ' + styles$5.copiedTooltipLeft
40693
40802
  : tooltipAlign === 'right'
40694
40803
  ? ' ' + styles$5.copiedTooltipRight
40695
- : ''), children: "Copied!" }))] })] }) })), message.isVoiceCall && (jsx("div", { className: styles$5.voiceCallIndicator, children: jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "currentColor", children: jsx("path", { d: "M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z" }) }) })), shouldRenderProgressPanel && visibleProgressCard && (jsx(ProgressPanel, { progressCard: visibleProgressCard })), message.content === LOADING_INTERACTIVE_IMAGE ? (jsx(Fragment, {})) : (jsxs(Fragment, { children: [jsx("div", { ref: contentWithoutButtonsRef, children: contentSegments.map((segment, segmentIndex) => {
40804
+ : ''), children: "Copied!" }))] })] }) })), message.isVoiceCall && (jsx("div", { className: styles$5.voiceCallIndicator, children: jsx("svg", { width: "16", height: "16", viewBox: "0 0 24 24", fill: "currentColor", children: jsx("path", { d: "M6.62 10.79c1.44 2.83 3.76 5.14 6.59 6.59l2.2-2.2c.27-.27.67-.36 1.02-.24 1.12.37 2.33.57 3.57.57.55 0 1 .45 1 1V20c0 .55-.45 1-1 1-9.39 0-17-7.61-17-17 0-.55.45-1 1-1h3.5c.55 0 1 .45 1 1 0 1.25.2 2.45.57 3.57.11.35.03.74-.25 1.02l-2.2 2.2z" }) }) })), message.content === LOADING_INTERACTIVE_IMAGE ? (jsx(Fragment, {})) : (jsxs(Fragment, { children: [jsx("div", { ref: contentWithoutButtonsRef, children: contentSegments.map((segment, segmentIndex) => {
40696
40805
  if (segment.type === 'text') {
40697
40806
  return (jsx(MarkdownContent, { content: segment.content, onCreateAgent: onCreateAgent }, `text-${segmentIndex}`));
40698
40807
  }