@crowdin/app-project-module 2.10.0 → 2.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -2691,10 +2691,13 @@
2691
2691
  const isUnreserved = RegExp.prototype.test.bind(/^[\da-z\-._~]$/iu);
2692
2692
 
2693
2693
  /** @type {(value: string) => boolean} */
2694
- const isPathCharacter = RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/]$/iu);
2694
+ const isPathCharacter = RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:@/]$/u);
2695
+
2696
+ /** @type {(value: string) => boolean} */
2697
+ const isQueryFragmentCharacter = RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:@/?]$/u);
2695
2698
 
2696
2699
  /** @type {(value: string) => boolean} */
2697
- const isQueryFragmentCharacter = RegExp.prototype.test.bind(/^[\da-z\-._~!$&'()*+,;=:@/?]$/iu);
2700
+ const isUserinfoCharacter = RegExp.prototype.test.bind(/^[A-Za-z0-9\-._~!$&'()*+,;=:]$/u);
2698
2701
 
2699
2702
  /**
2700
2703
  * @param {Array<string>} input
@@ -2727,12 +2730,14 @@
2727
2730
  return acc
2728
2731
  }
2729
2732
 
2730
- /**
2731
- * @typedef {Object} GetIPV6Result
2732
- * @property {boolean} error - Indicates if there was an error parsing the IPv6 address.
2733
- * @property {string} address - The parsed IPv6 address.
2734
- * @property {string} [zone] - The zone identifier, if present.
2735
- */
2733
+ /** @type {(value: string) => boolean} */
2734
+ const isHextet = RegExp.prototype.test.bind(/^[\dA-Fa-f]{1,4}$/);
2735
+
2736
+ /** @type {(value: string) => boolean} */
2737
+ const isIPvFuture = RegExp.prototype.test.bind(/^[vV][\dA-Fa-f]+\.[A-Za-z\d\-._~!$&'()*+,;=:]+$/);
2738
+
2739
+ /** @type {(value: string) => boolean} */
2740
+ const isZoneCharacter = RegExp.prototype.test.bind(/^[A-Za-z\d\-._~]$/);
2736
2741
 
2737
2742
  /**
2738
2743
  * @param {string} value
@@ -2740,89 +2745,129 @@
2740
2745
  */
2741
2746
  const nonSimpleDomain = RegExp.prototype.test.bind(/[^!"$&'()*+,\-.;=_`a-z{}~]/u);
2742
2747
 
2748
+ /** @type {(value: string) => boolean} */
2749
+ const nonSimpleDomainChars = RegExp.prototype.test.bind(/[^\d!"$&'()*+,\-.;=_`a-z{}~]/u);
2750
+
2751
+ /** @type {(value: string) => boolean} */
2752
+ const numericLastLabel = RegExp.prototype.test.bind(/(?:^|\.)\d+$/u);
2753
+
2743
2754
  /**
2744
- * @param {Array<string>} buffer
2755
+ * True when `new URL('http://' + domain).hostname` may differ from `domain`,
2756
+ * i.e. when the caller must fall back to the WHATWG parser.
2757
+ *
2758
+ * Same purpose as `nonSimpleDomain`, but digits are allowed: for this character
2759
+ * set `hostname` is the identity, *except* that an all-numeric final label is
2760
+ * read as IPv4 shorthand ("1.2.3" -> "1.2.0.3", "127.1" -> "127.0.0.1",
2761
+ * "a.b.1" throws), which is why `nonSimpleDomain` excludes digits outright.
2762
+ * Rejecting that one shape lets the common `mail2.example.org` case stay on the
2763
+ * fast path.
2764
+ *
2765
+ * @param {string} domain - must already be lowercased
2745
2766
  * @returns {boolean}
2746
2767
  */
2747
- function consumeIsZone (buffer) {
2748
- buffer.length = 0;
2749
- return true
2768
+ function nonSimpleMailtoDomain (domain) {
2769
+ return nonSimpleDomainChars(domain) || numericLastLabel(domain)
2750
2770
  }
2751
2771
 
2752
2772
  /**
2753
- * @param {Array<string>} buffer
2754
- * @param {Array<string>} address
2755
- * @param {GetIPV6Result} output
2773
+ * @param {string} zone
2756
2774
  * @returns {boolean}
2757
2775
  */
2758
- function consumeHextets (buffer, address, output) {
2759
- if (buffer.length) {
2760
- const hex = stringArrayToHexStripped(buffer);
2761
- if (hex !== '') {
2762
- address.push(hex);
2763
- } else {
2764
- output.error = true;
2765
- return false
2776
+ function isZoneIdentifier (zone) {
2777
+ if (zone.length === 0) return false
2778
+
2779
+ for (let i = 0; i < zone.length; i++) {
2780
+ if (isZoneCharacter(zone[i])) continue
2781
+ if (zone[i] === '%' && i + 2 < zone.length && isHexPair(zone.slice(i + 1, i + 3))) {
2782
+ i += 2;
2783
+ continue
2766
2784
  }
2767
- buffer.length = 0;
2785
+ return false
2768
2786
  }
2787
+
2769
2788
  return true
2770
2789
  }
2771
2790
 
2772
2791
  /**
2773
- * @param {string} input
2774
- * @returns {GetIPV6Result}
2792
+ * Compresses the longest run of zero hextets to "::" per RFC 5952. A run of a
2793
+ * single zero hextet is left uncompressed. On ties the leftmost run wins.
2794
+ *
2795
+ * @param {string[]} hextets
2796
+ * @returns {string}
2775
2797
  */
2776
- function getIPV6 (input) {
2777
- let tokenCount = 0;
2778
- const output = { error: false, address: '', zone: '' };
2779
- /** @type {Array<string>} */
2780
- const address = [];
2781
- /** @type {Array<string>} */
2782
- const buffer = [];
2783
- let endipv6Encountered = false;
2784
- let endIpv6 = false;
2785
-
2786
- let consume = consumeHextets;
2787
-
2788
- for (let i = 0; i < input.length; i++) {
2789
- const cursor = input[i];
2790
- if (cursor === '[' || cursor === ']') { continue }
2791
- if (cursor === ':') {
2792
- if (endipv6Encountered === true) {
2793
- endIpv6 = true;
2798
+ function compressIPv6ZeroRun (hextets) {
2799
+ let bestStart = -1;
2800
+ let bestLength = 0;
2801
+ let runStart = -1;
2802
+ let runLength = 0;
2803
+ for (let i = 0; i < hextets.length; i++) {
2804
+ if (hextets[i] === '0') {
2805
+ if (runStart === -1) runStart = i;
2806
+ runLength++;
2807
+ if (runLength > bestLength) {
2808
+ bestLength = runLength;
2809
+ bestStart = runStart;
2794
2810
  }
2795
- if (!consume(buffer, address, output)) { break }
2796
- if (++tokenCount > 7) {
2797
- // not valid
2798
- output.error = true;
2799
- break
2800
- }
2801
- if (i > 0 && input[i - 1] === ':') {
2802
- endipv6Encountered = true;
2803
- }
2804
- address.push(':');
2805
- continue
2806
- } else if (cursor === '%') {
2807
- if (!consume(buffer, address, output)) { break }
2808
- // switch to zone detection
2809
- consume = consumeIsZone;
2810
2811
  } else {
2811
- buffer.push(cursor);
2812
- continue
2812
+ runStart = -1;
2813
+ runLength = 0;
2813
2814
  }
2814
2815
  }
2815
- if (buffer.length) {
2816
- if (consume === consumeIsZone) {
2817
- output.zone = buffer.join('');
2818
- } else if (endIpv6) {
2819
- address.push(buffer.join(''));
2820
- } else {
2821
- address.push(stringArrayToHexStripped(buffer));
2816
+
2817
+ if (bestLength < 2) return hextets.join(':')
2818
+
2819
+ const head = hextets.slice(0, bestStart).join(':');
2820
+ const tail = hextets.slice(bestStart + bestLength).join(':');
2821
+ return head + '::' + tail
2822
+ }
2823
+
2824
+ /**
2825
+ * Validates an IPv6 address against the alternatives in RFC 3986 section
2826
+ * 3.2.2 and returns the same address with leading hextet zeroes removed.
2827
+ * An embedded IPv4 address counts as two hextets and is only valid at the end.
2828
+ *
2829
+ * @param {string} input
2830
+ * @returns {string|undefined}
2831
+ */
2832
+ function normalizeIPv6Address (input) {
2833
+ const compression = input.indexOf('::');
2834
+ if (compression !== -1 && input.indexOf('::', compression + 1) !== -1) return undefined
2835
+
2836
+ const left = compression === -1 ? input.split(':') : input.slice(0, compression).split(':');
2837
+ const right = compression === -1 ? [] : input.slice(compression + 2).split(':');
2838
+ if (compression !== -1) {
2839
+ if (left.length === 1 && left[0] === '') left.length = 0;
2840
+ if (right.length === 1 && right[0] === '') right.length = 0;
2841
+ }
2842
+
2843
+ const parts = left.concat(right);
2844
+ let hextetCount = 0;
2845
+ for (let i = 0; i < parts.length; i++) {
2846
+ const part = parts[i];
2847
+ if (part === '') return undefined
2848
+
2849
+ if (part.indexOf('.') !== -1) {
2850
+ if (i !== parts.length - 1 || (compression !== -1 && right.length === 0) || !isIPv4(part)) return undefined
2851
+ hextetCount += 2;
2852
+ continue
2822
2853
  }
2854
+
2855
+ if (!isHextet(part)) return undefined
2856
+ parts[i] = parseInt(part, 16).toString(16);
2857
+ hextetCount++;
2823
2858
  }
2824
- output.address = address.join('');
2825
- return output
2859
+
2860
+ if (compression === -1) {
2861
+ if (hextetCount !== 8) return undefined
2862
+ return compressIPv6ZeroRun(parts)
2863
+ }
2864
+ if (hextetCount >= 8) return undefined
2865
+
2866
+ // expand "::" then re-compress the longest run for a canonical result
2867
+ const expanded = parts.slice(0, left.length);
2868
+ for (let i = hextetCount; i < 8; i++) expanded.push('0');
2869
+ for (let i = left.length; i < parts.length; i++) expanded.push(parts[i]);
2870
+ return compressIPv6ZeroRun(expanded)
2826
2871
  }
2827
2872
 
2828
2873
  /**
@@ -2830,26 +2875,49 @@
2830
2875
  * @property {string} host - The normalized host.
2831
2876
  * @property {string} [escapedHost] - The escaped host.
2832
2877
  * @property {boolean} isIPV6 - Indicates if the host is an IPv6 address.
2878
+ * @property {boolean} [isIPVFuture] - Indicates if the host is an IPvFuture literal.
2879
+ * @property {boolean} [error] - Indicates if a bracketed IP literal is malformed.
2833
2880
  */
2834
2881
 
2835
2882
  /**
2883
+ * Validates and normalizes a bracketed IP literal. Raw zone separators remain
2884
+ * accepted for backwards compatibility, while encoded separators and zone
2885
+ * contents follow RFC 6874.
2886
+ *
2836
2887
  * @param {string} host
2837
2888
  * @returns {NormalizeIPv6Result}
2838
2889
  */
2839
2890
  function normalizeIPv6 (host) {
2840
- if (findToken(host, ':') < 2) { return { host, isIPV6: false } }
2841
- const ipv6 = getIPV6(host);
2891
+ const bracketed = host[0] === '[' && host[host.length - 1] === ']';
2892
+ const hasBracket = host[0] === '[' || host[host.length - 1] === ']';
2893
+ if (hasBracket && !bracketed) return { host, isIPV6: false, error: true }
2842
2894
 
2843
- if (!ipv6.error) {
2844
- let newHost = ipv6.address;
2845
- let escapedHost = ipv6.address;
2846
- if (ipv6.zone) {
2847
- newHost += '%' + ipv6.zone;
2848
- escapedHost += '%25' + ipv6.zone;
2849
- }
2850
- return { host: newHost, isIPV6: true, escapedHost }
2851
- } else {
2852
- return { host, isIPV6: false }
2895
+ let input = bracketed ? host.slice(1, -1) : host;
2896
+ if (bracketed && isIPvFuture(input)) {
2897
+ input = input.toLowerCase();
2898
+ return { host: `[${input}]`, escapedHost: input, isIPV6: false, isIPVFuture: true }
2899
+ }
2900
+
2901
+ if (findToken(input, ':') < 2) {
2902
+ return { host, isIPV6: false, error: bracketed }
2903
+ }
2904
+
2905
+ let zoneIdentifier = '';
2906
+ const zoneSeparator = input.indexOf('%');
2907
+ if (zoneSeparator !== -1) {
2908
+ const separatorLength = input.slice(zoneSeparator, zoneSeparator + 3).toLowerCase() === '%25' ? 3 : 1;
2909
+ zoneIdentifier = input.slice(zoneSeparator + separatorLength);
2910
+ if (!isZoneIdentifier(zoneIdentifier)) return { host, isIPV6: false, error: true }
2911
+ input = input.slice(0, zoneSeparator);
2912
+ }
2913
+
2914
+ const address = normalizeIPv6Address(input);
2915
+ if (address === undefined) return { host, isIPV6: false, error: true }
2916
+
2917
+ return {
2918
+ host: address + (zoneIdentifier ? '%' + zoneIdentifier : ''),
2919
+ escapedHost: address + (zoneIdentifier ? '%25' + zoneIdentifier : ''),
2920
+ isIPV6: true
2853
2921
  }
2854
2922
  }
2855
2923
 
@@ -2975,7 +3043,7 @@
2975
3043
 
2976
3044
  /**
2977
3045
  * Normalizes percent escapes and optionally decodes only unreserved ASCII bytes.
2978
- * Reserved delimiters such as `%2F` and `%2E` stay escaped.
3046
+ * Reserved delimiters such as `%2F` stay escaped; `%2E` is unreserved.
2979
3047
  *
2980
3048
  * @param {string} input
2981
3049
  * @param {boolean} [decodeUnreserved=false]
@@ -3116,6 +3184,60 @@
3116
3184
  return output
3117
3185
  }
3118
3186
 
3187
+ /**
3188
+ * Serializes a path without rewriting reserved data. Raw RFC 3986 path
3189
+ * characters remain literal, valid escapes are preserved and uppercased, and
3190
+ * everything else is UTF-8 percent-encoded. In a path-noscheme, a colon in the
3191
+ * first segment must be escaped so the result cannot be parsed as a scheme.
3192
+ *
3193
+ * @param {string} input
3194
+ * @param {boolean} [pathNoScheme=false]
3195
+ * @returns {string}
3196
+ */
3197
+ function serializePathEncoding (input, pathNoScheme = false) {
3198
+ let output = '';
3199
+ let firstSegment = pathNoScheme && input[0] !== '/';
3200
+
3201
+ for (let i = 0; i < input.length; i++) {
3202
+ const ch = input[i];
3203
+ if (ch === '%' && i + 2 < input.length) {
3204
+ const hex = input.slice(i + 1, i + 3);
3205
+ if (isHexPair(hex)) {
3206
+ output += '%' + hex.toUpperCase();
3207
+ i += 2;
3208
+ continue
3209
+ }
3210
+ }
3211
+
3212
+ if (ch === '/') {
3213
+ firstSegment = false;
3214
+ }
3215
+
3216
+ if (isPathCharacter(ch) && (ch !== ':' || !firstSegment)) {
3217
+ output += ch;
3218
+ } else {
3219
+ const code = input.charCodeAt(i);
3220
+ if (code < 0x80) {
3221
+ output += BYTE_HEX[code];
3222
+ } else if (code < 0xD800 || code > 0xDFFF) {
3223
+ output += percentEncodeNonAscii(code);
3224
+ } else if (code <= 0xDBFF && i + 1 < input.length) {
3225
+ const low = input.charCodeAt(i + 1);
3226
+ if (low >= 0xDC00 && low <= 0xDFFF) {
3227
+ output += percentEncodeNonAscii(0x10000 + ((code - 0xD800) << 10) + (low - 0xDC00));
3228
+ i++;
3229
+ } else {
3230
+ output += percentEncodeNonAscii(0xFFFD);
3231
+ }
3232
+ } else {
3233
+ output += percentEncodeNonAscii(0xFFFD);
3234
+ }
3235
+ }
3236
+ }
3237
+
3238
+ return output
3239
+ }
3240
+
3119
3241
  /**
3120
3242
  * Normalizes the percent-encoding of a query or fragment component.
3121
3243
  *
@@ -3173,6 +3295,85 @@
3173
3295
  return output
3174
3296
  }
3175
3297
 
3298
+ /**
3299
+ * Percent-encodes a URI component using its RFC 3986 literal character set.
3300
+ * Existing valid escapes are preserved and normalized to uppercase hex.
3301
+ *
3302
+ * @param {string} input
3303
+ * @param {(value: string) => boolean} isAllowed
3304
+ * @returns {string}
3305
+ */
3306
+ function encodeComponent (input, isAllowed) {
3307
+ let output = '';
3308
+
3309
+ for (let i = 0; i < input.length; i++) {
3310
+ const ch = input[i];
3311
+ if (ch === '%' && i + 2 < input.length) {
3312
+ const hex = input.slice(i + 1, i + 3);
3313
+ if (isHexPair(hex)) {
3314
+ output += '%' + hex.toUpperCase();
3315
+ i += 2;
3316
+ continue
3317
+ }
3318
+ }
3319
+
3320
+ if (isAllowed(ch)) {
3321
+ output += ch;
3322
+ } else {
3323
+ const code = input.charCodeAt(i);
3324
+ if (code < 0x80) {
3325
+ output += BYTE_HEX[code];
3326
+ } else if (code < 0xD800 || code > 0xDFFF) {
3327
+ output += percentEncodeNonAscii(code);
3328
+ } else if (code <= 0xDBFF && i + 1 < input.length) {
3329
+ const low = input.charCodeAt(i + 1);
3330
+ if (low >= 0xDC00 && low <= 0xDFFF) {
3331
+ output += percentEncodeNonAscii(0x10000 + ((code - 0xD800) << 10) + (low - 0xDC00));
3332
+ i++;
3333
+ } else {
3334
+ output += percentEncodeNonAscii(0xFFFD);
3335
+ }
3336
+ } else {
3337
+ output += percentEncodeNonAscii(0xFFFD);
3338
+ }
3339
+ }
3340
+ }
3341
+
3342
+ return output
3343
+ }
3344
+
3345
+ /**
3346
+ * Encodes userinfo while preserving its RFC 3986 §3.2.1 literal characters.
3347
+ * In particular, authority delimiters such as `@`, `/`, `?`, and `#` are data.
3348
+ *
3349
+ * @param {string} input
3350
+ * @returns {string}
3351
+ */
3352
+ function encodeUserinfo (input) {
3353
+ return encodeComponent(input, isUserinfoCharacter)
3354
+ }
3355
+
3356
+ /**
3357
+ * Encodes query data using the RFC 3986 §3.4 grammar. A literal `#` must be
3358
+ * escaped because it would otherwise begin the fragment component.
3359
+ *
3360
+ * @param {string} input
3361
+ * @returns {string}
3362
+ */
3363
+ function encodeQuery (input) {
3364
+ return encodeComponent(input, isQueryFragmentCharacter)
3365
+ }
3366
+
3367
+ /**
3368
+ * Encodes fragment data using the RFC 3986 §3.5 grammar.
3369
+ *
3370
+ * @param {string} input
3371
+ * @returns {string}
3372
+ */
3373
+ function encodeFragment (input) {
3374
+ return encodeComponent(input, isQueryFragmentCharacter)
3375
+ }
3376
+
3176
3377
  /**
3177
3378
  * Escapes a component while preserving existing valid percent escapes.
3178
3379
  *
@@ -3222,15 +3423,21 @@
3222
3423
  const uriTokens = [];
3223
3424
 
3224
3425
  if (component.userinfo !== undefined) {
3225
- uriTokens.push(component.userinfo);
3426
+ uriTokens.push(encodeUserinfo(component.userinfo));
3226
3427
  uriTokens.push('@');
3227
3428
  }
3228
3429
 
3229
3430
  if (component.host !== undefined) {
3230
- let host = unescape(component.host);
3431
+ let host = component.host;
3231
3432
  if (!isIPv4(host)) {
3232
- const ipV6res = normalizeIPv6(host);
3233
- if (ipV6res.isIPV6 === true) {
3433
+ let ipV6res = normalizeIPv6(host);
3434
+ if (ipV6res.isIPV6 !== true && ipV6res.isIPVFuture !== true) {
3435
+ // Decode only unreserved bytes, once. In particular, keep %25 encoded
3436
+ // so it cannot introduce a second escape during recomposition.
3437
+ host = normalizePercentEncoding(host, true);
3438
+ ipV6res = normalizeIPv6(host);
3439
+ }
3440
+ if (ipV6res.isIPV6 === true || ipV6res.isIPVFuture === true) {
3234
3441
  host = `[${ipV6res.escapedHost}]`;
3235
3442
  } else {
3236
3443
  host = reescapeHostDelimiters(host, false);
@@ -3247,12 +3454,19 @@
3247
3454
  return uriTokens.length ? uriTokens.join('') : undefined
3248
3455
  }
3249
3456
  utils$1 = {
3457
+ BYTE_HEX,
3458
+ percentEncodeNonAscii,
3250
3459
  nonSimpleDomain,
3460
+ nonSimpleMailtoDomain,
3251
3461
  recomposeAuthority,
3252
3462
  reescapeHostDelimiters,
3253
3463
  normalizePercentEncoding,
3254
3464
  normalizePathEncoding,
3465
+ serializePathEncoding,
3255
3466
  normalizeQueryFragmentEncoding,
3467
+ encodeUserinfo,
3468
+ encodeQuery,
3469
+ encodeFragment,
3256
3470
  escapePreservingEscapes,
3257
3471
  removeDotSegments,
3258
3472
  isIPv4,
@@ -3270,11 +3484,11 @@
3270
3484
  if (hasRequiredSchemes$1) return schemes$1;
3271
3485
  hasRequiredSchemes$1 = 1;
3272
3486
 
3273
- const { isUUID } = requireUtils$1();
3274
- const URN_REG = /([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-.:;=@]|%[\da-f]{2})+)/iu;
3487
+ const { isUUID, BYTE_HEX, percentEncodeNonAscii, nonSimpleMailtoDomain } = requireUtils$1();
3488
+ const URN_REG = /^([\da-z][\d\-a-z]{0,31}):((?:[\w!$'()*+,\-./:;=@]|%[\da-f]{2})+)$/iu;
3275
3489
 
3276
3490
  const supportedSchemeNames = /** @type {const} */ (['http', 'https', 'ws',
3277
- 'wss', 'urn', 'urn:uuid']);
3491
+ 'wss', 'urn', 'urn:uuid', 'mailto']);
3278
3492
 
3279
3493
  /** @typedef {supportedSchemeNames[number]} SchemeName */
3280
3494
 
@@ -3383,9 +3597,14 @@
3383
3597
 
3384
3598
  // reconstruct path from resource name
3385
3599
  if (wsComponent.resourceName) {
3386
- const [path, query] = wsComponent.resourceName.split('?');
3600
+ const queryIndex = wsComponent.resourceName.indexOf('?');
3601
+ const path = queryIndex === -1
3602
+ ? wsComponent.resourceName
3603
+ : wsComponent.resourceName.slice(0, queryIndex);
3387
3604
  wsComponent.path = (path && path !== '/' ? path : undefined);
3388
- wsComponent.query = query;
3605
+ wsComponent.query = queryIndex === -1
3606
+ ? undefined
3607
+ : wsComponent.resourceName.slice(queryIndex + 1);
3389
3608
  wsComponent.resourceName = undefined;
3390
3609
  }
3391
3610
 
@@ -3402,7 +3621,7 @@
3402
3621
  return urnComponent
3403
3622
  }
3404
3623
  const matches = urnComponent.path.match(URN_REG);
3405
- if (matches) {
3624
+ if (matches && matches[0] === urnComponent.path) {
3406
3625
  const scheme = options.scheme || urnComponent.scheme || 'urn';
3407
3626
  urnComponent.nid = matches[1].toLowerCase();
3408
3627
  urnComponent.nss = matches[2];
@@ -3505,13 +3724,385 @@
3505
3724
  skipNormalize: true
3506
3725
  });
3507
3726
 
3727
+ /**
3728
+ * Allow-sets for `encodeWithAllow`, each a `{ all, table, allowNonAscii }`
3729
+ * descriptor built by `allowSet`:
3730
+ *
3731
+ * - `LOCAL_PART` is the intersection of upstream uri-js's VCHAR and
3732
+ * NOT_PATH_NOSCHEME, minus ",": the serializer joins recipients with "," and
3733
+ * `mailtoParse` splits the path on it, so a comma left literal inside a local
3734
+ * part would silently become a recipient delimiter.
3735
+ * - `HFNAME` is the qchar allow-set used for header names/values.
3736
+ * - `DTEXT` is RFC 6068 dtext-no-obs restricted to characters that are also
3737
+ * safe in a URI path; `DTEXT_IRI` additionally permits non-ASCII for
3738
+ * `unicodeSupport`.
3739
+ */
3740
+ const LOCAL_PART_ALLOWED = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~!$'()*+=";
3741
+ const HFNAME_ALLOWED = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~!$'()*+,;:@";
3742
+ const DTEXT_ALLOWED = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789-._~!$'()*+;:";
3743
+
3744
+ /**
3745
+ * @typedef {Object} AllowSet
3746
+ * @property {RegExp} all - matches a whole string needing no encoding at all.
3747
+ * @property {Uint8Array} table - per-ASCII-code allow lookup for the slow path.
3748
+ * @property {boolean} allowNonAscii - pass non-ASCII code points through (IRI).
3749
+ */
3750
+
3751
+ /**
3752
+ * `all` deliberately excludes "%" and (for the IRI variant) surrogates, so any
3753
+ * input needing escape normalization or surrogate repair falls to the slow path.
3754
+ *
3755
+ * @param {string} chars
3756
+ * @param {boolean} [allowNonAscii=false]
3757
+ * @returns {AllowSet}
3758
+ */
3759
+ function allowSet (chars, allowNonAscii = false) {
3760
+ const table = new Uint8Array(128);
3761
+ for (let i = 0; i < chars.length; i++) {
3762
+ table[chars.charCodeAt(i)] = 1;
3763
+ }
3764
+ const escaped = chars.replace(/[\\\]^-]/gu, '\\$&');
3765
+ const cls = allowNonAscii ? `[${escaped}]|[^\\0-\\x7F\\uD800-\\uDFFF]` : `[${escaped}]`;
3766
+ return { all: new RegExp(`^(?:${cls})*$`, 'u'), table, allowNonAscii }
3767
+ }
3768
+
3769
+ const LOCAL_PART = allowSet(LOCAL_PART_ALLOWED);
3770
+ const HFNAME = allowSet(HFNAME_ALLOWED);
3771
+ const DTEXT = allowSet(DTEXT_ALLOWED);
3772
+ const DTEXT_IRI = allowSet(DTEXT_ALLOWED, true);
3773
+
3774
+ const HEX_PAIR = /^[\da-f]{2}$/iu;
3775
+ const MAILTO_DOMAIN_LITERAL = /^\[[\x21-\x5A\x5E-\x7E]*\]$/u;
3776
+ const MAILTO_DOMAIN_ERROR = 'URI mailto has an invalid recipient domain.';
3777
+ const HAS_SURROGATE = /[\uD800-\uDFFF]/u;
3778
+
3779
+ /**
3780
+ * @param {string} str
3781
+ * @returns {string}
3782
+ */
3783
+ function decodeHex (str) {
3784
+ if (typeof str !== 'string' || str.indexOf('%') === -1) {
3785
+ return str
3786
+ }
3787
+ try {
3788
+ return decodeURIComponent(str)
3789
+ } catch {
3790
+ return str
3791
+ }
3792
+ }
3793
+
3794
+ /**
3795
+ * Replaces lone surrogates with U+FFFD, leaving valid pairs intact. Only called
3796
+ * when `HAS_SURROGATE` matched, so the scan cost is not on the common path.
3797
+ * (`String.prototype.toWellFormed` would do this natively but is Node 20+.)
3798
+ *
3799
+ * @param {string} input
3800
+ * @returns {string}
3801
+ */
3802
+ function replaceLoneSurrogates (input) {
3803
+ let result = '';
3804
+ for (let i = 0; i < input.length; i++) {
3805
+ const code = input.charCodeAt(i);
3806
+ if (code >= 0xD800 && code <= 0xDBFF && i + 1 < input.length) {
3807
+ const low = input.charCodeAt(i + 1);
3808
+ if (low >= 0xDC00 && low <= 0xDFFF) {
3809
+ result += input[i] + input[i + 1];
3810
+ i++;
3811
+ continue
3812
+ }
3813
+ }
3814
+ result += (code >= 0xD800 && code <= 0xDFFF) ? '\uFFFD' : input[i];
3815
+ }
3816
+ return result
3817
+ }
3818
+
3819
+ /**
3820
+ * Percent-encodes everything outside `set`, preserving existing valid escapes
3821
+ * (uppercased) and repairing lone surrogates.
3822
+ *
3823
+ * ASCII uses `BYTE_HEX` rather than `encodeURIComponent`. That is equivalent
3824
+ * only because every character `encodeURIComponent` leaves unescaped
3825
+ * (`A-Za-z0-9-_.!~*'()`) is present in all of the allow-sets above, so no such
3826
+ * character ever reaches the encode branch. Re-check if a set is narrowed.
3827
+ *
3828
+ * @param {string} input
3829
+ * @param {AllowSet} set
3830
+ * @returns {string}
3831
+ */
3832
+ function encodeWithAllow (input, set) {
3833
+ if (set.all.test(input)) {
3834
+ return input
3835
+ }
3836
+
3837
+ const table = set.table;
3838
+ let result = '';
3839
+ for (let i = 0; i < input.length; i++) {
3840
+ const code = input.charCodeAt(i);
3841
+
3842
+ if (code < 0x80) {
3843
+ if (table[code] === 1) {
3844
+ result += input[i];
3845
+ } else if (code === 0x25 && i + 2 < input.length && HEX_PAIR.test(input.slice(i + 1, i + 3))) {
3846
+ result += '%' + input.slice(i + 1, i + 3).toUpperCase();
3847
+ i += 2;
3848
+ } else {
3849
+ result += BYTE_HEX[code];
3850
+ }
3851
+ continue
3852
+ }
3853
+
3854
+ if (code < 0xD800 || code > 0xDFFF) {
3855
+ result += set.allowNonAscii ? input[i] : percentEncodeNonAscii(code);
3856
+ continue
3857
+ }
3858
+
3859
+ if (code <= 0xDBFF && i + 1 < input.length) {
3860
+ const low = input.charCodeAt(i + 1);
3861
+ if (low >= 0xDC00 && low <= 0xDFFF) {
3862
+ result += set.allowNonAscii
3863
+ ? input[i] + input[i + 1]
3864
+ : percentEncodeNonAscii(0x10000 + ((code - 0xD800) << 10) + (low - 0xDC00));
3865
+ i++;
3866
+ continue
3867
+ }
3868
+ }
3869
+
3870
+ result += set.allowNonAscii ? '\uFFFD' : percentEncodeNonAscii(0xFFFD);
3871
+ }
3872
+ return result
3873
+ }
3874
+
3875
+ /**
3876
+ * @param {string} domain
3877
+ * @param {import('../types/index').Options} [options]
3878
+ * @param {{error?:string}} [component]
3879
+ * @returns {string}
3880
+ */
3881
+ function mailtoNormalizeDomain (domain, options, component) {
3882
+ const normalizedDomain = String(domain).toLowerCase();
3883
+
3884
+ if (MAILTO_DOMAIN_LITERAL.test(normalizedDomain)) {
3885
+ return normalizedDomain
3886
+ }
3887
+
3888
+ // `hostname` is the identity for these, so skip constructing a WHATWG URL.
3889
+ if (normalizedDomain !== '' && !nonSimpleMailtoDomain(normalizedDomain)) {
3890
+ return normalizedDomain
3891
+ }
3892
+
3893
+ try {
3894
+ const parsedDomain = new URL('http://' + normalizedDomain);
3895
+ if (
3896
+ parsedDomain.username ||
3897
+ parsedDomain.password ||
3898
+ parsedDomain.port ||
3899
+ parsedDomain.pathname !== '/' ||
3900
+ parsedDomain.search ||
3901
+ parsedDomain.hash ||
3902
+ !parsedDomain.hostname
3903
+ ) {
3904
+ throw new Error(MAILTO_DOMAIN_ERROR)
3905
+ }
3906
+
3907
+ return options && options.unicodeSupport
3908
+ ? normalizedDomain
3909
+ : parsedDomain.hostname
3910
+ } catch {
3911
+ if (component) {
3912
+ component.error = component.error || MAILTO_DOMAIN_ERROR;
3913
+ }
3914
+ return normalizedDomain
3915
+ }
3916
+ }
3917
+
3918
+ /**
3919
+ * Percent-encodes everything in a recipient domain that is not `dtext-no-obs`
3920
+ * (RFC 6068). Serialize-only: `mailtoNormalizeDomain` returns the domain
3921
+ * verbatim when validation fails, and `MAILTO_DOMAIN_LITERAL` accepts the full
3922
+ * RFC 5321 dcontent range (which includes "?", "#", "&" and "/"), so without
3923
+ * this an attacker-supplied recipient could inject header fields or a fragment
3924
+ * into the serialized URI. `mailtoParse` deliberately reports the raw domain
3925
+ * instead, so it must not use this.
3926
+ * @param {string} domain
3927
+ * @param {import('../types/index').Options} [options]
3928
+ * @returns {string}
3929
+ */
3930
+ function mailtoEncodeDomain (domain, options) {
3931
+ const set = options && options.unicodeSupport ? DTEXT_IRI : DTEXT;
3932
+
3933
+ // Keep the delimiters of a domain literal, encode its contents.
3934
+ if (domain.length > 1 && domain[0] === '[' && domain[domain.length - 1] === ']') {
3935
+ return '[' + encodeWithAllow(domain.slice(1, -1), set) + ']'
3936
+ }
3937
+
3938
+ return encodeWithAllow(domain, set)
3939
+ }
3940
+
3941
+ /**
3942
+ * @param {import('../types/index').URIComponent} component
3943
+ * @param {import('../types/index').Options} options
3944
+ * @returns {import('../types/index').URIComponent}
3945
+ */
3946
+ function mailtoParse (component, options) {
3947
+ const mailtoComponent = component;
3948
+
3949
+ // The handler sets `skipNormalize`, so path and query arrive raw. Everything
3950
+ // here goes through `decodeHex`, which subsumes the generic normalizers --
3951
+ // except that they also fold lone surrogates to U+FFFD, so do that here.
3952
+ let rawPath = mailtoComponent.path;
3953
+ let rawQuery = mailtoComponent.query;
3954
+ if (rawPath && HAS_SURROGATE.test(rawPath)) rawPath = replaceLoneSurrogates(rawPath);
3955
+ if (rawQuery && HAS_SURROGATE.test(rawQuery)) rawQuery = replaceLoneSurrogates(rawQuery);
3956
+
3957
+ const to = rawPath
3958
+ ? (rawPath.indexOf(',') === -1 ? [rawPath] : rawPath.split(','))
3959
+ : [];
3960
+ mailtoComponent.path = undefined;
3961
+
3962
+ if (rawQuery) {
3963
+ // Null prototype: header names come from untrusted input, so `headers[name]`
3964
+ // must not resolve to inherited members ("constructor", "toString", ...),
3965
+ // and "__proto__" has to land as a plain own property instead of hitting
3966
+ // Object.prototype's setter and being silently dropped. Allocated lazily so
3967
+ // the common subject/body-only URI does not pay for it.
3968
+ /** @type {Record<string,string>|null} */
3969
+ let headers = null;
3970
+ let start = 0;
3971
+ while (start <= rawQuery.length) {
3972
+ let end = rawQuery.indexOf('&', start);
3973
+ if (end === -1) end = rawQuery.length;
3974
+ const token = rawQuery.slice(start, end);
3975
+ start = end + 1;
3976
+
3977
+ const eqIdx = token.indexOf('=');
3978
+ if (eqIdx !== token.lastIndexOf('=')) {
3979
+ mailtoComponent.error = mailtoComponent.error || 'URI mailto has malformed header fields.';
3980
+ continue
3981
+ }
3982
+ const name = eqIdx === -1 ? token : token.slice(0, eqIdx);
3983
+ const value = eqIdx === -1 ? '' : token.slice(eqIdx + 1);
3984
+ if (name === 'to') {
3985
+ const addrs = value.split(',');
3986
+ for (let j = 0; j < addrs.length; j++) to.push(addrs[j]);
3987
+ continue
3988
+ }
3989
+ if (name === 'subject') {
3990
+ mailtoComponent.subject = decodeHex(value);
3991
+ continue
3992
+ }
3993
+ if (name === 'body') {
3994
+ mailtoComponent.body = decodeHex(value);
3995
+ continue
3996
+ }
3997
+ if (headers === null) headers = /** @type {Record<string,string>} */ (Object.create(null));
3998
+ headers[decodeHex(name)] = decodeHex(value);
3999
+ }
4000
+ if (headers !== null) mailtoComponent.headers = headers;
4001
+ }
4002
+
4003
+ mailtoComponent.query = undefined;
4004
+
4005
+ for (let i = 0; i < to.length; i++) {
4006
+ const rawAddr = to[i];
4007
+ const atIdx = rawAddr.lastIndexOf('@');
4008
+ if (atIdx < 0) {
4009
+ mailtoComponent.error = mailtoComponent.error || MAILTO_DOMAIN_ERROR;
4010
+ to[i] = decodeHex(rawAddr);
4011
+ continue
4012
+ }
4013
+ const local = decodeHex(rawAddr.slice(0, atIdx));
4014
+ const domain = mailtoNormalizeDomain(decodeHex(rawAddr.slice(atIdx + 1)), options, mailtoComponent);
4015
+ to[i] = local + '@' + domain;
4016
+ }
4017
+
4018
+ if (to.length) mailtoComponent.to = to;
4019
+
4020
+ return mailtoComponent
4021
+ }
4022
+
4023
+ /**
4024
+ * @param {import('../types/index').URIComponent} component
4025
+ * @param {import('../types/index').Options} options
4026
+ * @returns {import('../types/index').URIComponent}
4027
+ */
4028
+ function mailtoSerialize (component, options) {
4029
+ const mailtoComponent = component;
4030
+ const to = Array.isArray(mailtoComponent.to) ? mailtoComponent.to.slice() : [];
4031
+ if (to.length) {
4032
+ for (let i = 0; i < to.length; i++) {
4033
+ const addr = String(to[i]);
4034
+ const atIdx = addr.lastIndexOf('@');
4035
+ const rawLocal = atIdx >= 0 ? addr.slice(0, atIdx) : addr;
4036
+ const rawDomain = atIdx >= 0 ? addr.slice(atIdx + 1) : '';
4037
+ const local = encodeWithAllow(rawLocal, LOCAL_PART);
4038
+ const decodedDomain = decodeHex(rawDomain);
4039
+ // `component` is intentionally not passed: index.js's `serialize` writes
4040
+ // the error onto a private copy and returns only a string, so an error
4041
+ // recorded here would be unreachable. Safety comes from encoding instead.
4042
+ const normalizedDomain = mailtoNormalizeDomain(decodedDomain, options);
4043
+ to[i] = local + '@' + mailtoEncodeDomain(normalizedDomain, options);
4044
+ }
4045
+ // Every recipient is now fully encoded and only the joining commas are
4046
+ // literal, so bypass index.js's generic encoder, whose allow-set is
4047
+ // narrower than upstream's and would over-encode.
4048
+ mailtoComponent.path = to.join(',');
4049
+ options.skipEscape = true;
4050
+ } else {
4051
+ // No recipients: drop any caller-supplied path, matching upstream uri-js.
4052
+ // `to` is the only recipient source, and `mailtoParse` always moves the
4053
+ // path into it, so a mailto component never legitimately carries one.
4054
+ mailtoComponent.path = undefined;
4055
+ }
4056
+
4057
+ const headers = mailtoComponent.headers && typeof mailtoComponent.headers === 'object'
4058
+ ? Object.assign(Object.create(null), mailtoComponent.headers)
4059
+ : Object.create(null);
4060
+
4061
+ if (mailtoComponent.subject) headers.subject = mailtoComponent.subject;
4062
+ if (mailtoComponent.body) headers.body = mailtoComponent.body;
4063
+ mailtoComponent.headers = headers;
4064
+
4065
+ // `headers` has a null prototype and was filled via Object.assign, so every
4066
+ // enumerable key is an own property and no hasOwnProperty guard is needed.
4067
+ let query = '';
4068
+ let count = 0;
4069
+ for (const name in headers) {
4070
+ if (count++ !== 0) query += '&';
4071
+ query += encodeWithAllow(name, HFNAME) + '=' + encodeWithAllow(String(headers[name]), HFNAME);
4072
+ }
4073
+
4074
+ if (count !== 0) {
4075
+ mailtoComponent.query = query;
4076
+ } else {
4077
+ mailtoComponent.headers = undefined;
4078
+ }
4079
+
4080
+ return mailtoComponent
4081
+ }
4082
+
4083
+ const mailto = /** @type {SchemeHandler} */ ({
4084
+ scheme: 'mailto',
4085
+ parse: mailtoParse,
4086
+ serialize: mailtoSerialize,
4087
+ domainHost: false,
4088
+ unicodeSupport: true,
4089
+ // `mailtoParse` re-derives every component from the raw path/query via
4090
+ // `decodeHex`, which subsumes the generic normalizers, so running them first
4091
+ // is wasted work (~28% of parsing a URI with header fields).
4092
+ skipNormalize: true,
4093
+ // A recipient list has no dot segments to remove, and `removeDotSegments`
4094
+ // would rewrite a "./"-prefixed local part.
4095
+ absolutePath: true
4096
+ });
4097
+
3508
4098
  const SCHEMES = /** @type {Record<SchemeName, SchemeHandler>} */ ({
3509
4099
  http,
3510
4100
  https,
3511
4101
  ws,
3512
4102
  wss,
3513
4103
  urn,
3514
- 'urn:uuid': urnuuid
4104
+ 'urn:uuid': urnuuid,
4105
+ mailto
3515
4106
  });
3516
4107
 
3517
4108
  Object.setPrototypeOf(SCHEMES, null);
@@ -3544,9 +4135,24 @@
3544
4135
  if (hasRequiredFastUri$1) return fastUri$1.exports;
3545
4136
  hasRequiredFastUri$1 = 1;
3546
4137
 
3547
- const { normalizeIPv6, removeDotSegments, recomposeAuthority, normalizePercentEncoding, normalizePathEncoding, normalizeQueryFragmentEncoding, escapePreservingEscapes, reescapeHostDelimiters, isIPv4, nonSimpleDomain } = requireUtils$1();
4138
+ const { normalizeIPv6, removeDotSegments, recomposeAuthority, normalizePercentEncoding, normalizePathEncoding, serializePathEncoding, normalizeQueryFragmentEncoding, encodeQuery, encodeFragment, reescapeHostDelimiters, isIPv4, nonSimpleDomain } = requireUtils$1();
3548
4139
  const { SCHEMES, getSchemeHandler } = requireSchemes$1();
3549
4140
 
4141
+ const VALID_SCHEME = /^[A-Za-z][A-Za-z0-9+.-]*$/u;
4142
+ const MALFORMED_SCHEME_ERROR = 'URI scheme is malformed.';
4143
+
4144
+ /**
4145
+ * @param {string} scheme
4146
+ * @returns {string}
4147
+ */
4148
+ function decodeValidScheme (scheme) {
4149
+ const decodedScheme = unescape(String(scheme));
4150
+ if (!VALID_SCHEME.test(decodedScheme)) {
4151
+ throw new TypeError(MALFORMED_SCHEME_ERROR)
4152
+ }
4153
+ return decodedScheme
4154
+ }
4155
+
3550
4156
  /**
3551
4157
  * @template {import('./types/index').URIComponent|string} T
3552
4158
  * @param {T} uri
@@ -3570,7 +4176,50 @@
3570
4176
  */
3571
4177
  function resolve (baseURI, relativeURI, options) {
3572
4178
  const schemelessOptions = options ? Object.assign({ scheme: 'null' }, options) : { scheme: 'null' };
3573
- const resolved = resolveComponent(parse(baseURI, schemelessOptions), parse(relativeURI, schemelessOptions), schemelessOptions, true);
4179
+ const {
4180
+ parsed: baseParsed,
4181
+ malformedAuthorityOrPort: baseMalformed,
4182
+ malformedPercentEncoding: baseMalformedPercentEncoding,
4183
+ malformedSchemeSpecific: baseMalformedSchemeSpecific,
4184
+ malformedHost: baseMalformedHost,
4185
+ malformedScheme: baseMalformedScheme
4186
+ } = parseWithStatus(baseURI, schemelessOptions);
4187
+ const {
4188
+ parsed: relativeParsed,
4189
+ malformedAuthorityOrPort: relativeMalformed,
4190
+ malformedPercentEncoding: relativeMalformedPercentEncoding,
4191
+ malformedSchemeSpecific: relativeMalformedSchemeSpecific,
4192
+ malformedHost: relativeMalformedHost,
4193
+ malformedScheme: relativeMalformedScheme
4194
+ } = parseWithStatus(relativeURI, schemelessOptions);
4195
+ if (
4196
+ baseMalformed ||
4197
+ relativeMalformed ||
4198
+ baseMalformedPercentEncoding ||
4199
+ relativeMalformedPercentEncoding ||
4200
+ baseMalformedSchemeSpecific ||
4201
+ relativeMalformedSchemeSpecific ||
4202
+ baseMalformedHost ||
4203
+ relativeMalformedHost ||
4204
+ baseMalformedScheme ||
4205
+ relativeMalformedScheme
4206
+ ) {
4207
+ throw new Error(baseParsed.error || relativeParsed.error || 'URI is malformed.')
4208
+ }
4209
+ const resolved = resolveComponent(baseParsed, relativeParsed, schemelessOptions, true);
4210
+ const resolvedSchemeHandler = getSchemeHandler((options && options.scheme) || resolved.scheme);
4211
+ const resolvedHost = resolved.host;
4212
+ const resolvedHostIsIP = resolvedHost !== undefined && resolvedHost !== '' &&
4213
+ (isIPv4(resolvedHost) || normalizeIPv6(resolvedHost).isIPV6);
4214
+ canonicalizeHost(resolved, options || {}, resolvedSchemeHandler, resolvedHostIsIP);
4215
+ // Percent escapes in an ASCII reg-name are encoded data. The WHATWG hostname
4216
+ // parser can reject them even though fast-uri preserves them safely as RFC
4217
+ // 3986 data. A raw non-ASCII host must still fail closed if conversion fails.
4218
+ const encodedASCIIHost = resolvedHost && resolvedHost.indexOf('%') !== -1 &&
4219
+ !/\P{ASCII}/u.test(resolvedHost);
4220
+ if (resolved.error && !encodedASCIIHost) {
4221
+ throw new Error(resolved.error)
4222
+ }
3574
4223
  schemelessOptions.skipEscape = true;
3575
4224
  return serialize(resolved, schemelessOptions)
3576
4225
  }
@@ -3653,7 +4302,7 @@
3653
4302
  const normalizedA = normalizeComparableURI(uriA, options);
3654
4303
  const normalizedB = normalizeComparableURI(uriB, options);
3655
4304
 
3656
- return normalizedA !== undefined && normalizedB !== undefined && normalizedA.toLowerCase() === normalizedB.toLowerCase()
4305
+ return normalizedA !== undefined && normalizedB !== undefined && normalizedA === normalizedB
3657
4306
  }
3658
4307
 
3659
4308
  /**
@@ -3676,30 +4325,39 @@
3676
4325
  reference: cmpts.reference,
3677
4326
  resourceName: cmpts.resourceName,
3678
4327
  secure: cmpts.secure,
4328
+ to: cmpts.to,
4329
+ subject: cmpts.subject,
4330
+ body: cmpts.body,
4331
+ headers: cmpts.headers,
3679
4332
  error: ''
3680
4333
  };
3681
4334
  const options = Object.assign({}, opts);
3682
4335
  const uriTokens = [];
3683
4336
 
4337
+ if (component.scheme) {
4338
+ component.scheme = decodeValidScheme(component.scheme);
4339
+ }
4340
+
3684
4341
  // find scheme handler
3685
4342
  const schemeHandler = getSchemeHandler(options.scheme || component.scheme);
3686
4343
 
3687
4344
  // perform scheme specific serialization
3688
4345
  if (schemeHandler && schemeHandler.serialize) schemeHandler.serialize(component, options);
3689
4346
 
4347
+ const hasAuthority = component.userinfo !== undefined || component.host !== undefined || component.port !== undefined;
4348
+ const pathNoScheme = !options.skipEscape && component.scheme === undefined && !hasAuthority;
4349
+
3690
4350
  if (component.path !== undefined) {
3691
4351
  if (!options.skipEscape) {
3692
- component.path = escapePreservingEscapes(component.path);
3693
-
3694
- if (component.scheme !== undefined) {
3695
- component.path = component.path.split('%3A').join(':');
3696
- }
4352
+ component.path = serializePathEncoding(component.path, pathNoScheme);
3697
4353
  } else {
3698
4354
  component.path = normalizePercentEncoding(component.path);
3699
4355
  }
3700
4356
  }
3701
4357
 
3702
4358
  if (options.reference !== 'suffix' && component.scheme) {
4359
+ // Scheme handlers may replace the scheme during serialization.
4360
+ component.scheme = decodeValidScheme(component.scheme);
3703
4361
  uriTokens.push(component.scheme, ':');
3704
4362
  }
3705
4363
 
@@ -3722,6 +4380,13 @@
3722
4380
  s = removeDotSegments(s);
3723
4381
  }
3724
4382
 
4383
+ // Dot-segment removal can expose a colon that was not originally in the
4384
+ // first segment (for example, "./a:b"). Reapply path-noscheme encoding so
4385
+ // the serialized relative reference cannot be reparsed as a URI scheme.
4386
+ if (pathNoScheme) {
4387
+ s = serializePathEncoding(s, true);
4388
+ }
4389
+
3725
4390
  if (
3726
4391
  authority === undefined &&
3727
4392
  s[0] === '/' &&
@@ -3735,11 +4400,11 @@
3735
4400
  }
3736
4401
 
3737
4402
  if (component.query !== undefined) {
3738
- uriTokens.push('?', component.query);
4403
+ uriTokens.push('?', encodeQuery(component.query));
3739
4404
  }
3740
4405
 
3741
4406
  if (component.fragment !== undefined) {
3742
- uriTokens.push('#', component.fragment);
4407
+ uriTokens.push('#', encodeFragment(component.fragment));
3743
4408
  }
3744
4409
  return uriTokens.join('')
3745
4410
  }
@@ -3750,6 +4415,15 @@
3750
4415
  // with or without a scheme prefix, for the literal-backslash rejection below.
3751
4416
  const AUTHORITY_PREFIX = /^(?:[^#/:?]+:)?\/\/([^/?#]*)/;
3752
4417
 
4418
+ // Captures the leading authority-introducer region after an optional scheme: a
4419
+ // run of forward slashes, backslashes, and the characters the WHATWG URL parser
4420
+ // removes before parsing (TAB U+0009, LF U+000A, CR U+000D). A valid introducer
4421
+ // is exactly "//". Node treats "\" as "/" on special schemes and strips those
4422
+ // characters first, so forms like "\\", "/\", "\/", "/<TAB>/", or a leading
4423
+ // "<TAB>//" reach an authority in Node while fast-uri's URI_PARSE folds them into
4424
+ // the path group (host confusion / SSRF / redirect bypass).
4425
+ const AUTHORITY_INTRODUCER_REGION = /^(?:[^#/:?]+:)?([/\\\t\n\r]*)/;
4426
+
3753
4427
  /**
3754
4428
  * @param {import('./types/index').URIComponent} parsed
3755
4429
  * @param {RegExpMatchArray} matches
@@ -3767,10 +4441,74 @@
3767
4441
  return undefined
3768
4442
  }
3769
4443
 
4444
+ /**
4445
+ * Checks percent syntax without decoding the represented octets. RFC 3986
4446
+ * percent-encoding is byte-oriented, so sequences such as `%FF` are valid even
4447
+ * though they are not independently valid UTF-8.
4448
+ *
4449
+ * @param {string|undefined} component
4450
+ * @returns {boolean}
4451
+ */
4452
+ function hasMalformedPercentEncoding (component) {
4453
+ if (component === undefined) return false
4454
+
4455
+ let percent = component.indexOf('%');
4456
+ while (percent !== -1) {
4457
+ if (percent + 2 >= component.length || !/^[\da-f]{2}$/iu.test(component.slice(percent + 1, percent + 3))) {
4458
+ return true
4459
+ }
4460
+ percent = component.indexOf('%', percent + 3);
4461
+ }
4462
+
4463
+ return false
4464
+ }
4465
+
4466
+ /**
4467
+ * @param {RegExpMatchArray} matches
4468
+ * @returns {boolean}
4469
+ */
4470
+ function hasMalformedComponentPercentEncoding (matches) {
4471
+ // Bracketed IP literals use a raw "%" as the zone separator for historical
4472
+ // compatibility. Their parsing is intentionally left to normalizeIPv6.
4473
+ const host = matches[4];
4474
+ return hasMalformedPercentEncoding(matches[3]) ||
4475
+ (host !== undefined && !(host[0] === '[' && host[host.length - 1] === ']') && hasMalformedPercentEncoding(host)) ||
4476
+ hasMalformedPercentEncoding(matches[6]) ||
4477
+ hasMalformedPercentEncoding(matches[7]) ||
4478
+ hasMalformedPercentEncoding(matches[8])
4479
+ }
4480
+
4481
+ /**
4482
+ * @param {import('./types/index').URIComponent} parsed
4483
+ * @param {import('./types/index').Options} options
4484
+ * @param {{ domainHost?: boolean, unicodeSupport?: boolean }|undefined} schemeHandler
4485
+ * @param {boolean} isIP
4486
+ * @returns {boolean} whether host conversion failed
4487
+ */
4488
+ function canonicalizeHost (parsed, options, schemeHandler, isIP) {
4489
+ if (
4490
+ !options.unicodeSupport &&
4491
+ (!schemeHandler || !schemeHandler.unicodeSupport) &&
4492
+ parsed.host &&
4493
+ parsed.host[0] !== '[' &&
4494
+ (options.domainHost || (schemeHandler && schemeHandler.domainHost)) &&
4495
+ isIP === false &&
4496
+ nonSimpleDomain(parsed.host)
4497
+ ) {
4498
+ try {
4499
+ parsed.host = new URL('http://' + parsed.host).hostname;
4500
+ } catch (e) {
4501
+ parsed.error = parsed.error || "Host's domain name can not be converted to ASCII: " + e;
4502
+ return true
4503
+ }
4504
+ }
4505
+ return false
4506
+ }
4507
+
3770
4508
  /**
3771
4509
  * @param {string} uri
3772
4510
  * @param {import('./types/index').Options} [opts]
3773
- * @returns {{ parsed: import('./types/index').URIComponent, malformedAuthorityOrPort: boolean }}
4511
+ * @returns {{ parsed: import('./types/index').URIComponent, malformedAuthorityOrPort: boolean, malformedPercentEncoding: boolean, malformedSchemeSpecific: boolean, malformedHost: boolean, malformedScheme: boolean }}
3774
4512
  */
3775
4513
  function parseWithStatus (uri, opts) {
3776
4514
  const options = Object.assign({}, opts);
@@ -3786,6 +4524,11 @@
3786
4524
  };
3787
4525
 
3788
4526
  let malformedAuthorityOrPort = false;
4527
+ let malformedPercentEncoding = false;
4528
+ let malformedSchemeSpecific = false;
4529
+ let malformedHost = false;
4530
+ let malformedIPLiteral = false;
4531
+ let malformedScheme = false;
3789
4532
 
3790
4533
  let isIP = false;
3791
4534
  if (options.reference === 'suffix') {
@@ -3809,11 +4552,33 @@
3809
4552
  malformedAuthorityOrPort = true;
3810
4553
  }
3811
4554
 
4555
+ // Reject a malformed or whitespace-smuggled authority introducer. fast-uri
4556
+ // only recognizes a literal "//"; anything else in the leading separator run
4557
+ // (a backslash, or a "//" that appears only after removing the TAB/LF/CR that
4558
+ // Node strips) means the authority fast-uri parses differs from the one Node's
4559
+ // URL resolves. Reject rather than rewrite, mirroring the literal-backslash
4560
+ // guard above. Percent-encoded forms (%5C, %09) are untouched, valid data.
4561
+ const introducerMatch = uri.match(AUTHORITY_INTRODUCER_REGION);
4562
+ if (introducerMatch !== null) {
4563
+ const region = introducerMatch[1];
4564
+ const normalizedRegion = region.replace(/[\t\n\r]/g, '');
4565
+ // Two or more leading separators introduce an authority.
4566
+ if (normalizedRegion.length >= 2) {
4567
+ if (normalizedRegion.slice(0, 2) !== '//') {
4568
+ parsed.error = parsed.error || 'URI authority must not contain a literal backslash.';
4569
+ malformedAuthorityOrPort = true;
4570
+ } else if (region.length !== normalizedRegion.length) {
4571
+ parsed.error = parsed.error || 'URI authority introducer must not contain whitespace.';
4572
+ malformedAuthorityOrPort = true;
4573
+ }
4574
+ }
4575
+ }
4576
+
3812
4577
  const matches = uri.match(URI_PARSE);
3813
4578
 
3814
4579
  if (matches) {
3815
4580
  // store each component
3816
- parsed.scheme = matches[1] === undefined ? undefined : matches[1].toLowerCase();
4581
+ parsed.scheme = matches[1];
3817
4582
  parsed.userinfo = matches[3];
3818
4583
  parsed.host = matches[4];
3819
4584
  parsed.port = parseInt(matches[5], 10);
@@ -3821,6 +4586,21 @@
3821
4586
  parsed.query = matches[7];
3822
4587
  parsed.fragment = matches[8];
3823
4588
 
4589
+ if (parsed.scheme !== undefined) {
4590
+ const decodedScheme = unescape(parsed.scheme);
4591
+ if (VALID_SCHEME.test(decodedScheme)) {
4592
+ parsed.scheme = decodedScheme.toLowerCase();
4593
+ } else {
4594
+ parsed.error = parsed.error || MALFORMED_SCHEME_ERROR;
4595
+ malformedScheme = true;
4596
+ }
4597
+ }
4598
+
4599
+ malformedPercentEncoding = hasMalformedComponentPercentEncoding(matches);
4600
+ if (malformedPercentEncoding) {
4601
+ parsed.error = parsed.error || 'URI contains malformed percent-encoding.';
4602
+ }
4603
+
3824
4604
  // fix port number
3825
4605
  if (isNaN(parsed.port)) {
3826
4606
  parsed.port = matches[5];
@@ -3835,9 +4615,16 @@
3835
4615
  if (parsed.host) {
3836
4616
  const ipv4result = isIPv4(parsed.host);
3837
4617
  if (ipv4result === false) {
4618
+ const bracketedIPLiteral = parsed.host[0] === '[' && parsed.host[parsed.host.length - 1] === ']';
3838
4619
  const ipv6result = normalizeIPv6(parsed.host);
3839
- parsed.host = ipv6result.host.toLowerCase();
3840
- isIP = ipv6result.isIPV6;
4620
+ isIP = ipv6result.isIPV6 || ipv6result.isIPVFuture === true;
4621
+ malformedIPLiteral = bracketedIPLiteral && ipv6result.error === true;
4622
+ parsed.host = isIP ? ipv6result.host : ipv6result.host.toLowerCase();
4623
+
4624
+ if (malformedIPLiteral) {
4625
+ parsed.error = parsed.error || 'URI host is malformed.';
4626
+ malformedAuthorityOrPort = true;
4627
+ }
3841
4628
  } else {
3842
4629
  isIP = true;
3843
4630
  }
@@ -3860,27 +4647,14 @@
3860
4647
  // find scheme handler
3861
4648
  const schemeHandler = getSchemeHandler(options.scheme || parsed.scheme);
3862
4649
 
3863
- // check if scheme can't handle IRIs
3864
- if (!options.unicodeSupport && (!schemeHandler || !schemeHandler.unicodeSupport)) {
3865
- // if host component is a domain name
3866
- if (parsed.host && (options.domainHost || (schemeHandler && schemeHandler.domainHost)) && isIP === false && nonSimpleDomain(parsed.host)) {
3867
- // convert Unicode IDN -> ASCII IDN
3868
- try {
3869
- parsed.host = new URL('http://' + parsed.host).hostname;
3870
- } catch (e) {
3871
- parsed.error = parsed.error || "Host's domain name can not be converted to ASCII: " + e;
3872
- }
3873
- }
3874
- // convert IRI -> URI
3875
- }
4650
+ // convert Unicode IDN -> ASCII IDN when the effective scheme uses domain hosts
4651
+ malformedHost = canonicalizeHost(parsed, options, schemeHandler, isIP);
3876
4652
 
3877
4653
  if (!schemeHandler || (schemeHandler && !schemeHandler.skipNormalize)) {
3878
4654
  if (uri.indexOf('%') !== -1) {
3879
- if (parsed.scheme !== undefined) {
3880
- parsed.scheme = unescape(parsed.scheme);
3881
- }
3882
- if (parsed.host !== undefined) {
3883
- parsed.host = reescapeHostDelimiters(unescape(parsed.host), isIP);
4655
+ if (parsed.host !== undefined && !malformedIPLiteral) {
4656
+ const host = isIP ? parsed.host : normalizePercentEncoding(parsed.host, true);
4657
+ parsed.host = reescapeHostDelimiters(host, isIP);
3884
4658
  }
3885
4659
  }
3886
4660
  if (parsed.path) {
@@ -3897,11 +4671,14 @@
3897
4671
  // perform scheme specific parsing
3898
4672
  if (schemeHandler && schemeHandler.parse) {
3899
4673
  schemeHandler.parse(parsed, options);
4674
+ if (schemeHandler === SCHEMES.urn && parsed.nid === undefined) {
4675
+ malformedSchemeSpecific = true;
4676
+ }
3900
4677
  }
3901
4678
  } else {
3902
4679
  parsed.error = parsed.error || 'URI can not be parsed.';
3903
4680
  }
3904
- return { parsed, malformedAuthorityOrPort }
4681
+ return { parsed, malformedAuthorityOrPort, malformedPercentEncoding, malformedSchemeSpecific, malformedHost, malformedScheme }
3905
4682
  }
3906
4683
 
3907
4684
  /**
@@ -3925,13 +4702,17 @@
3925
4702
  /**
3926
4703
  * @param {string} uri
3927
4704
  * @param {import('./types/index').Options} [opts]
3928
- * @returns {{ normalized: string, malformedAuthorityOrPort: boolean }}
4705
+ * @returns {{ normalized: string, malformedAuthorityOrPort: boolean, malformedPercentEncoding: boolean, malformedSchemeSpecific: boolean, malformedHost: boolean, malformedScheme: boolean }}
3929
4706
  */
3930
4707
  function normalizeStringWithStatus (uri, opts) {
3931
- const { parsed, malformedAuthorityOrPort } = parseWithStatus(uri, opts);
4708
+ const { parsed, malformedAuthorityOrPort, malformedPercentEncoding, malformedSchemeSpecific, malformedHost, malformedScheme } = parseWithStatus(uri, opts);
3932
4709
  return {
3933
- normalized: malformedAuthorityOrPort ? uri : serialize(parsed, opts),
3934
- malformedAuthorityOrPort
4710
+ normalized: malformedAuthorityOrPort || malformedPercentEncoding || malformedSchemeSpecific || malformedHost || malformedScheme ? uri : serialize(parsed, opts),
4711
+ malformedAuthorityOrPort,
4712
+ malformedPercentEncoding,
4713
+ malformedSchemeSpecific,
4714
+ malformedHost,
4715
+ malformedScheme
3935
4716
  }
3936
4717
  }
3937
4718
 
@@ -3941,14 +4722,18 @@
3941
4722
  * @returns {string|undefined}
3942
4723
  */
3943
4724
  function normalizeComparableURI (uri, opts) {
3944
- if (typeof uri === 'string') {
3945
- const { normalized, malformedAuthorityOrPort } = normalizeStringWithStatus(uri, opts);
3946
- return malformedAuthorityOrPort ? undefined : normalized
4725
+ if (typeof uri !== 'string' && typeof uri !== 'object') {
4726
+ return undefined
3947
4727
  }
3948
4728
 
3949
- if (typeof uri === 'object') {
3950
- return serialize(uri, opts)
4729
+ let value;
4730
+ try {
4731
+ value = typeof uri === 'string' ? uri : serialize(uri, opts);
4732
+ } catch {
4733
+ return undefined
3951
4734
  }
4735
+ const { normalized, malformedAuthorityOrPort, malformedPercentEncoding, malformedSchemeSpecific, malformedHost, malformedScheme } = normalizeStringWithStatus(value, opts);
4736
+ return malformedAuthorityOrPort || malformedPercentEncoding || malformedSchemeSpecific || malformedHost || malformedScheme ? undefined : normalized
3952
4737
  }
3953
4738
 
3954
4739
  const fastUri = {
@@ -13296,19 +14081,28 @@
13296
14081
  }
13297
14082
  return hash.toString(16);
13298
14083
  }
13299
- /** Stringifies an `object`, sorts object fields in consistent order before stringifying it.
14084
+ /** Recursively serializes a value to JSON with object keys sorted alphabetically to produce
14085
+ * a stable string representation.
13300
14086
  *
13301
14087
  * @param object - The object for which the sorted stringify is desired
13302
14088
  * @returns - The stringified object with keys sorted in a consistent order
13303
14089
  */
13304
14090
  function sortedJSONStringify(object) {
13305
- const allKeys = new Set();
13306
- // solution source: https://stackoverflow.com/questions/16167581/sort-object-properties-and-json-stringify/53593328#53593328
13307
- JSON.stringify(object, (key, value) => {
13308
- allKeys.add(key);
13309
- return value;
13310
- });
13311
- return JSON.stringify(object, Array.from(allKeys).sort());
14091
+ function shouldIncludeValue(value) {
14092
+ return value !== undefined && typeof value !== 'function' && typeof value !== 'symbol';
14093
+ }
14094
+ if (Array.isArray(object)) {
14095
+ return `[${object.map((x) => (x === undefined ? 'undefined' : sortedJSONStringify(x))).join(',')}]`;
14096
+ }
14097
+ if (object === null || typeof object !== 'object') {
14098
+ return JSON.stringify(typeof object === 'function' ? null : object); // Normalise functions
14099
+ }
14100
+ const record = object;
14101
+ const sortedValues = Object.keys(record)
14102
+ .sort()
14103
+ .filter((key) => shouldIncludeValue(record[key]))
14104
+ .map((key) => `${JSON.stringify(key)}:${sortedJSONStringify(record[key])}`);
14105
+ return `{${sortedValues.join(',')}}`;
13312
14106
  }
13313
14107
  /** Stringifies an `object` and returns the hash of the resulting string. Sorts object fields
13314
14108
  * in consistent order before stringify to prevent different hash ids for the same object.
@@ -16547,57 +17341,57 @@
16547
17341
  return jsxRuntimeExports.jsx(StringField, { ...props, formData: displayValue, onChange: handleChange });
16548
17342
  }
16549
17343
 
16550
- var j;function B$2(z){if(!j)if(typeof document<"u")j=document.createElement("textarea");else return;var q="&"+z+";";j.innerHTML=q;var v=j.value;return v!==q?v:void 0}
16551
-
16552
- var N$1=32,b=9,v5=13,f=10,e=96,N0=126,z0=91,U5=94,o=62,G5=35,J9=37,d=45,V5=61,b0=92,A0=42,q0=95,Q0=60,w9=64,K5=93,p0=33,U9=38,g0=58,F9=70,N5=102,q9=104,S5=119,p5=116,b9=112,d9=115,v$=160,N$=12,P$=44,W9=59,s5=63,s0=46,H0=47,E5=39,P5=34,w5=43,S0=124,b5=123,y9=125,F5=40,q5=41,w$=78,b$=110,y$=79,R$=111,c9=120,l9=88,R9=30,r$1=48,i=57,p$1=65,c=90,G0=97,F0=122,t5=128,X5=32,o4={blockQuote:0,breakLine:1,breakThematic:2,codeBlock:3,codeInline:4,footnote:5,footnoteReference:6,frontmatter:7,gfmTask:8,heading:9,htmlBlock:10,htmlComment:11,htmlSelfClosing:12,image:13,link:14,orderedList:15,paragraph:16,ref:17,refCollection:18,table:19,text:20,textFormatted:21,unorderedList:22},_$1=o4;function x$($){if(!k$($,"---"))return null;let Q=3;for(;Q<$.length&&($[Q]===" "||$[Q]===" ");)Q++;if(Q<$.length&&$[Q]==="\r"&&Q++,Q>=$.length||$[Q]!==`
16553
- `)return null;Q++;let Z=false;for(;Q<$.length;){let Y=Q;for(;Q<$.length&&$[Q]!==`
16554
- `&&$[Q]!=="\r";)Q++;if(Q>=$.length)break;let G=Q;if($[Q]==="\r"&&Q++,Q<$.length&&$[Q]===`
16555
- `&&Q++,k$($,"---",Y))return {endPos:Q,hasValidYaml:Z};if(!Z){let V=t4($,Y,G);if(V<G){let K=$.charCodeAt(V);if(K>=G0&&K<=F0||K>=p$1&&K<=c||K>=r$1&&K<=i||K===q0){for(V++;V<G&&(K=$.charCodeAt(V),K>=G0&&K<=F0||K>=p$1&&K<=c||K>=r$1&&K<=i||K===q0||K===d||K===s0);)V++;V<G&&$.charCodeAt(V)===g0&&(V++,V>=G?Z=true:(K=$.charCodeAt(V),(K===N$1||K===b)&&(Z=true)));}}}}return null}var i4=/&([a-zA-Z0-9]+|#[0-9]{1,7}|#x[0-9a-fA-F]{1,6});/gi,a4={class:"className",for:"htmlFor",allowfullscreen:"allowFullScreen",allowtransparency:"allowTransparency",autocomplete:"autoComplete",autofocus:"autoFocus",autoplay:"autoPlay",cellpadding:"cellPadding",cellspacing:"cellSpacing",charset:"charSet",classid:"classId",colspan:"colSpan",contenteditable:"contentEditable",contextmenu:"contextMenu",crossorigin:"crossOrigin",enctype:"encType",formaction:"formAction",formenctype:"formEncType",formmethod:"formMethod",formnovalidate:"formNoValidate",formtarget:"formTarget",frameborder:"frameBorder",hreflang:"hrefLang",inputmode:"inputMode",keyparams:"keyParams",keytype:"keyType",marginheight:"marginHeight",marginwidth:"marginWidth",maxlength:"maxLength",mediagroup:"mediaGroup",minlength:"minLength",novalidate:"noValidate",radiogroup:"radioGroup",readonly:"readOnly",rowspan:"rowSpan",spellcheck:"spellCheck",srcdoc:"srcDoc",srclang:"srcLang",srcset:"srcSet",tabindex:"tabIndex",usemap:"useMap",viewbox:"viewBox"},n4={};function r9($){if(!$)return n4;var Q={};for(var Z in $){var Y=Z.toLowerCase(),G=a4[Y];if(G)Q[G]=$[Z];else {var V=Z.indexOf(":");V!==-1?Q[Z.slice(0,V)+Z[V+1].toUpperCase()+Z.slice(V+2)]=$[Z]:Q[Z]=$[Z];}}return Q}var g$=/(\n|^[-*]\s|^#|^ {2,}|^-{2,}|^>\s|^<(div|p|h[1-6]|ul|ol|li|blockquote|pre|table|thead|tbody|tr|td|th|dl|dt|dd|hr|address|article|aside|details|dialog|figure|figcaption|footer|form|header|main|menu|nav|section|summary|textarea|fieldset|legend|center|dir|hgroup|marquee|search|output|template)\b)/i;function o5($){return $.indexOf("&")===-1?$:$.replace(i4,(Q,Z)=>{var Y=B$2(Z);if(Y)return Y;if(Z[0]==="#"){var G=Z[1]==="x"||Z[1]==="X"?parseInt(Z.slice(2),16):parseInt(Z.slice(1),10);return G===0||G>=55296&&G<=57343||G>1114111?"\uFFFD":G<=65535?String.fromCharCode(G):String.fromCharCode(55296+(G-65536>>10),56320+(G-65536&1023))}return Q})}var L$=/(javascript|vbscript|data(?!:image)):/i;function y5($){if(L$.test($))return null;if($.indexOf("%")===-1)return $;try{let Q=decodeURIComponent($).replace(/[^A-Za-z0-9/:]/g,"");if(L$.test(Q))return null}catch{return null}return $}var d0={},i0,E0;for(i0=[192,193,194,195,196,197,224,225,226,227,228,229,230,198],E0=0;E0<i0.length;E0++)d0[i0[E0]]="a";for(d0[231]=d0[199]="c",d0[240]=d0[208]="d",i0=[200,201,202,203,233,232,234,235],E0=0;E0<i0.length;E0++)d0[i0[E0]]="e";for(i0=[207,239,206,238,205,237,204,236],E0=0;E0<i0.length;E0++)d0[i0[E0]]="i";for(d0[209]=d0[241]="n",i0=[248,216,339,338,213,245,212,244,211,243,210,242],E0=0;E0<i0.length;E0++)d0[i0[E0]]="o";for(i0=[220,252,219,251,218,250,217,249],E0=0;E0<i0.length;E0++)d0[i0[E0]]="u";d0[376]=d0[255]=d0[221]=d0[253]="y";function C0($){for(var Q="",Z=-1,Y=$.length,G=0;G<Y;G++){var V=$.charCodeAt(G);if(V>=G0&&V<=F0||V>=r$1&&V<=i){Z<0&&(Z=G);continue}if(V>=p$1&&V<=c){Z>=0&&(Q+=$.slice(Z,G),Z=-1),Q+=String.fromCharCode(V+X5);continue}if(V===N$1||V===d){Z>=0&&(Q+=$.slice(Z,G),Z=-1),Q+="-";continue}Z>=0&&(Q+=$.slice(Z,G),Z=-1);var K=d0[V];K&&(Q+=K);}return Z>=0&&(Q+=$.slice(Z)),Q}function k$($,Q,Z){return $.startsWith(Q,Z)}var S$=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr","circle","ellipse","line","path","polygon","polyline","rect","use","stop","animate","set"]);function r5($){let Q=$.toLowerCase();if(S$.has(Q))return true;let Z=Q.indexOf(":");return Z!==-1?(Q=Q.slice(Z+1),S$.has(Q)):false}var T5=1,E$=2,c5=4,T$=8,s4=16,W5=32,R5=64,f$=(function(){var $=new Uint8Array(128),Q;for($[b]=T5,$[f]=T5|E$,$[N$]=T5,$[v5]=T5|E$,$[N$1]=T5,Q=p0;Q<=H0;Q++)$[Q]=c5;for(Q=g0;Q<=w9;Q++)$[Q]=c5;for(Q=z0;Q<=e;Q++)$[Q]=c5;for(Q=b5;Q<=N0;Q++)$[Q]=c5;for(Q=r$1;Q<=i;Q++)$[Q]=s4;for(Q=p$1;Q<=c;Q++)$[Q]=T$;for(Q=G0;Q<=F0;Q++)$[Q]=T$;return $})(),C$=/[\p{P}\p{S}]/u,m$=/\p{Zs}/u,d5=[];function h$($){var Q=$.indexOf("\r"),Z=$.indexOf("\0");if(Q===-1&&Z===-1)return $;var Y=$.length;d5.length=0;var G=0,V=0;for(Q===-1?V=Z:Z===-1?V=Q:V=Q<Z?Q:Z;V<Y;V++){var K=$.charCodeAt(V);K===v5?(G<V&&d5.push($.slice(G,V)),V+1<Y&&$.charCodeAt(V+1)===f&&V++,d5.push(`
16556
- `),G=V+1):K===0&&(G<V&&d5.push($.slice(G,V)),d5.push("\uFFFD"),G=V+1);}return G<Y&&d5.push($.slice(G)),d5.join("")}function t4($,Q,Z){let Y=Z??$.length;for(;Q<Y&&($[Q]===" "||$[Q]===" ");)Q++;return Q}function k9($){if(!$)return false;for(var Q in $)return true;return false}function u$($){return {attrs:{},children:[{type:_$1.text,text:$}],d:true,type:_$1.htmlBlock,tag:"header"}}var e4=/^\n+/;function p$($){for(var Q=$.length;Q>0&&($[Q-1]===`
16557
- `||$[Q-1]==="\r");)Q--;return $.slice(0,Q).replace(e4,"")+`
16558
-
16559
- `}function l5($){if(($.type===_$1.htmlSelfClosing||$.type===_$1.htmlBlock)&&$.b)return [];if($.type===_$1.paragraph){var Q=$.children;return Q?Q.flatMap(l5):[]}return $.type===_$1.text?$.text?.trim()?[$]:[]:$.type===_$1.htmlBlock&&$.children?[{...$,children:$.children?.flatMap(l5)}]:[$]}function i9($){for(var Q=0;Q<$.length;Q++){if($[Q].type===_$1.htmlBlock){var Z=$[Q],Y=false;if(Z.d&&Z.a&&Q===$.length-1){var G="</"+String(Z.tag).toLowerCase()+">",V=Z.a.toLowerCase().indexOf(G);if(V!==-1){var K=Z.a.slice(V+G.length).replace(/<\/[a-z][a-z0-9-]*\s*>/gi,"");K.trim()&&(Y=true);}}Y||(Z.d=false);}"children"in $[Q]&&$[Q].children&&i9($[Q].children);}}function d$($,Q){for(var Z=0;Z<$.length;Z++){var Y=$[Z];if(Y.type===_$1.paragraph&&Y.children)for(var G=Y.children,V=0;V<G.length;V++){var K=G[V];if(K.type===_$1.htmlSelfClosing&&K.b&&K.tag.toLowerCase()===Q){var X=$.slice(0,Z);V>0&&X.push({type:_$1.paragraph,children:G.slice(0,V)});var J=[];if(V+1<G.length){var U=G.slice(V+1).filter(function(F){return !(F.type===_$1.htmlSelfClosing&&F.b)});U.length>0&&(J=U);}return J=J.concat($.slice(Z+1)),{found:true,beforeClose:X,afterClose:J}}}if((Y.type===_$1.htmlSelfClosing||Y.type===_$1.htmlBlock)&&Y.b&&Y.tag.toLowerCase()===Q)return {found:true,beforeClose:$.slice(0,Z),afterClose:$.slice(Z+1)}}return {found:false,beforeClose:$,afterClose:[]}}function c$($,Q,Z){var Y=$.replace(new RegExp("\\s*</"+Q+">\\s*$","i"),"");return Z?s9(Y):Y}function a9($){var Q="";for(var Z in $){var Y=$[Z];Y===true?Q+=" "+Z:Y!=null&&Y!==false&&(Q+=" "+Z+'="'+String(Y)+'"');}return Q}function l$($){var Q=[];if(!$)return Q;for(var Z in $)Z.charCodeAt(0)===94&&Q.push({identifier:Z,footnote:$[Z].target});return Q}function e5($,Q,Z){if(Q.indexOf(".")===-1)return $?.[Q]||Z;for(var Y=$,G=Q.split("."),V=0;V<G.length&&(Y=Y?.[G[V]],Y!==void 0);)V++;return Y||Z}function o$($){for(var Q=false,Z=0;Z<$.length;Z++){var Y=$.charCodeAt(Z);if(Y<=N$1||Y===P5||Y===J9||Y===Q0||Y===o||Y===z0||Y===b0||Y===K5||Y===U5||Y===e||Y>=123){Q=true;break}}if(!Q)return $;for(var G="",Z=0;Z<$.length;Z++){var Y=$.charCodeAt(Z);if(Y===J9&&Z+2<$.length){var V=$.charCodeAt(Z+1),K=$.charCodeAt(Z+2);if((V>=r$1&&V<=i||V>=p$1&&V<=F9||V>=G0&&V<=N5)&&(K>=r$1&&K<=i||K>=p$1&&K<=F9||K>=G0&&K<=N5)){G+=$[Z]+$[Z+1]+$[Z+2],Z+=2;continue}}if(Y>=55296&&Y<=57343){if(Y<=56319&&Z+1<$.length){var X=$.charCodeAt(Z+1);if(X>=56320&&X<=57343){G+=encodeURI($[Z]+$[Z+1]),Z++;continue}}G+=$[Z];continue}G+=encodeURI($[Z]);}return G}function r$(...$){return $.filter(Boolean).join(" ")}var $6=new Set(["title","textarea","style","xmp","iframe","noembed","noframes","script","plaintext"]),L9=/<(\/?)(title|textarea|style|xmp|iframe|noembed|noframes|script|plaintext)(\s|>|\/)/gi;function n9($){return $6.has($.toLowerCase())}function i$($){return L9.lastIndex=0,L9.test($)}function s9($){return L9.lastIndex=0,$.replace(L9,function(Q,Z,Y,G){return "&lt;"+Z+Y+G})}var z4=/^<([a-zA-Z][a-zA-Z0-9-]*)\s[^>]*>/,O4=/^<[A-Z]/,e9=["script","pre","style","textarea"],B9=new Set(e9),Z6=/<(?:pre|script|style|textarea)\b/i,n$=/<(?:pre|script|style|textarea)\b/iy,t9=/^(\s{0,3}#[#\s]|\s{0,3}[-*+]\s|\s{0,3}\d+\.\s|\s{0,3}>\s|\s{0,3}```)/m,s$=/^<([a-z][^ >/\n\r]*) ?([^>]*?)>/im,H4=new Uint8Array(128);(function(){for(var $=[e,A0,q0,N0,V5,z0,p0,Q0,b0,U9,f,q9,S5,N5],Q=0;Q<$.length;Q++)H4[$[Q]]=1;})();var t$=/([a-zA-Z_][a-zA-Z0-9_-]*)=(?:"([^"]*)"|'([^']*)')/g;function B4($){return B9.has($)}function D4($){return Z6.test($)}function A4($,Q,Z){for(var Y=Q,G=Z;Y<G&&($.charCodeAt(Y)===N$1||$.charCodeAt(Y)===b);)Y++;if(Y>=G)return false;$.charCodeAt(Y)===S0&&Y++;for(var V=0;Y<G;){for(;Y<G&&($.charCodeAt(Y)===N$1||$.charCodeAt(Y)===b);)Y++;if(Y>=G)break;if($.charCodeAt(Y)===S0&&V>0){for(var K=Y+1;K<G&&($.charCodeAt(K)===N$1||$.charCodeAt(K)===b);)K++;if(K>=G)return true}if($.charCodeAt(Y)===g0&&Y++,Y>=G||$.charCodeAt(Y)!==d)return false;for(;Y<G&&$.charCodeAt(Y)===d;)Y++;for(Y<G&&$.charCodeAt(Y)===g0&&Y++,V++;Y<G&&($.charCodeAt(Y)===N$1||$.charCodeAt(Y)===b);)Y++;if(Y<G)if($.charCodeAt(Y)===S0)Y++;else return false}return V>0}var Q6=/[\u0000-\u001F\u007F]/g,Y6={action:1,background:1,cite:1,data:1,formaction:1,href:1,longdesc:1,poster:1,src:1,"xlink:href":1},G6=/&#(x[0-9a-f]+|[0-9]+);?/gi;function V6($){return $.indexOf("&#")===-1?$:$.replace(G6,function(Q,Z){var Y=Z.charCodeAt(0)===c9||Z.charCodeAt(0)===l9?parseInt(Z.slice(1),16):parseInt(Z,10);return Y>0&&Y<=1114111?String.fromCodePoint(Y):Q})}function K6($,Q,Z){if(Z&&Q.charCodeAt(0)===b5)return false;var Y=$.charCodeAt(0),G=$.charCodeAt(1);if((Y===R$||Y===y$)&&(G===b$||G===w$))return !(Z&&Q==="");var V=$.toLowerCase();if(V==="srcdoc")return true;if(Y6[V]===1){var K=V6(o5(Q));if(y5(K)===null)return true;var X=K.replace(Q6,"");return X!==K&&y5(X)===null}return false}function $$($){return "<"+($.isClosing?"/":"")+$.tag+$.whitespaceBeforeAttrs+$.rawAttrs+($.selfClosing?$.hasSpaceBeforeSlash?" />":"/>":">")}function e$($,Q,Z,Y){for(var G=[],V=Q,K=0;K<Y.length;K+=2){var X=Y[K];if(X>V){var J=$.slice(V,X).trim();J&&G.push(J);}V=Y[K+1];}if(V<Z){var U=$.slice(V,Z).trim();U&&G.push(U);}return G.join(" ")}function j5($,Q){if($.charCodeAt(Q)!==Q0)return null;let Z=Q+1,Y=$.length,G=false;$.charCodeAt(Z)===H0&&(Z++,G=true);let V=Z,K=$.charCodeAt(Z);if(!(K>=G0&&K<=F0||K>=p$1&&K<=c))return null;for(;Z<Y&&($.charCodeAt(Z)>=G0&&$.charCodeAt(Z)<=F0||$.charCodeAt(Z)>=p$1&&$.charCodeAt(Z)<=c||$.charCodeAt(Z)>=r$1&&$.charCodeAt(Z)<=i||$.charCodeAt(Z)===d);)Z++;let X=$.slice(V,Z);if(!X)return null;let J=X.charCodeAt(0),U=J>=p$1&&J<=c||X.indexOf("-")!==-1,F=Z;for(;Z<Y&&($.charCodeAt(Z)===N$1||$.charCodeAt(Z)===b||$.charCodeAt(Z)===f);)Z++;let W=$.slice(F,Z);if(Z===F&&Z<Y){var O=$.charCodeAt(Z);if(O!==o&&O!==H0)return null}let z=Z,B={},A=false;for(var q=null;Z<Y;){let u=$.charCodeAt(Z);if(u===o){let E=q?e$($,z,Z,q):$.slice(z,Z);return {tag:X,attrs:B,selfClosing:false,end:Z+1,rawAttrs:E,whitespaceBeforeAttrs:W,isClosing:G,hasSpaceBeforeSlash:A,sanitized:q!==null}}if(u===N$1||u===b||u===f){Z++;continue}if(u===H0&&Z+1<Y&&$.charCodeAt(Z+1)===o){A=Z>z&&$.charCodeAt(Z-1)===N$1;let E=q?e$($,z,Z,q):$.slice(z,Z);return {tag:X,attrs:B,selfClosing:true,end:Z+2,rawAttrs:E,whitespaceBeforeAttrs:W,isClosing:G,hasSpaceBeforeSlash:A,sanitized:q!==null}}var H=Z,j=$.charCodeAt(Z);if(!(j>=G0&&j<=F0||j>=p$1&&j<=c||j===q0||j===g0))return null;for(Z++;Z<Y;){var M=$.charCodeAt(Z);if(M>=G0&&M<=F0||M>=p$1&&M<=c||M>=r$1&&M<=i||M===q0||M===s0||M===g0||M===d)Z++;else break}for(var y=$.slice(H,Z),v=Z;Z<Y&&($.charCodeAt(Z)===N$1||$.charCodeAt(Z)===b);)Z++;var D,w;if($.charCodeAt(Z)!==V5)D="",w=v;else {for(Z++;Z<Y&&($.charCodeAt(Z)===N$1||$.charCodeAt(Z)===b);)Z++;var L=$.charCodeAt(Z);if(L===P5||L===E5){Z++;for(var R=Z;Z<Y&&$.charCodeAt(Z)!==L;)Z++;if(Z>=Y)return null;if(D=$.slice(R,Z),Z++,Z<Y){var I=$.charCodeAt(Z);if(I!==N$1&&I!==b&&I!==f&&I!==o&&I!==H0)return null}w=Z;}else if(L===b5){var x=1,R=Z;for(Z++;Z<Y&&x>0;){var M=$.charCodeAt(Z);M===b5?x++:M===y9&&x--,Z++;}D=$.slice(R,Z),w=Z;}else {for(var R=Z;Z<Y;){var k=$.charCodeAt(Z);if(k===N$1||k===b||k===o||k===f||k===P5||k===E5||k===V5||k===Q0||k===e)break;Z++;}if(Z===R)return null;D=$.slice(R,Z),w=Z;}}K6(y,D,U)?(q===null&&(q=[]),q.push(H,w)):B[y]=D;}return null}function g5($){var Q=$.indexOf("<");if(Q===-1)return $;for(var Z="",Y=0,G=false;Q!==-1;){var V=j5($,Q);V?(V.sanitized&&(Z+=$.slice(Y,Q)+$$(V),Y=V.end,G=true),Q=$.indexOf("<",V.end)):Q=$.indexOf("<",Q+1);}return G?Z+$.slice(Y):$}function X6($,Q,Z){if(!Z.optimizeForStreaming&&$.indexOf("[")===-1)return false;for(var Y=0,G=$.length,V=false,K=false;Y<G;){for(var X=$.indexOf(`
16560
- `,Y),J=X<0?G:X,U=Y,F=0;U<J&&F<4;)if($.charCodeAt(U)===N$1)F++,U++;else if($.charCodeAt(U)===b)F+=4,U++;else break;if(U>=J){V=false,Y=X<0?G:X+1;continue}if(F<4){var W=$.charCodeAt(U);if(W===e||W===N0){for(var O=W,z=0,B=U;B<J&&$.charCodeAt(B)===O;)z++,B++;if(z>=3){var A=true;if(O===e){for(var q=B;q<J;q++)if($.charCodeAt(q)===e){A=false;break}}if(A){V=false;for(var H=X<0?G:X+1;H<G;){for(var j=H,M=0;j<G&&M<4;){var y=$.charCodeAt(j);if(y===N$1)M++,j++;else if(y===b)M+=4,j++;else break}if(M<4&&j<G&&$.charCodeAt(j)===O){for(var v=0;j<G&&$.charCodeAt(j)===O;)v++,j++;if(v>=z){for(;j<G&&($.charCodeAt(j)===N$1||$.charCodeAt(j)===b);)j++;if(j>=G||$.charCodeAt(j)===f){Y=j>=G?G:j+1;break}}}for(;H<G&&$.charCodeAt(H)!==f;)H++;H<G&&H++;}H>=G&&(Y=G,K=true);continue}}}}for(var D=U;D<J&&$.charCodeAt(D)===o;){D++,D<J&&$.charCodeAt(D)===N$1&&D++;for(var w=0;D<J&&w<4;)if($.charCodeAt(D)===N$1)w++,D++;else if($.charCodeAt(D)===b)w+=4,D++;else break;if(w>=4)break;V=false;}if(!V&&F<4&&D<J&&$.charCodeAt(D)===z0&&!(D+1<G&&$.charCodeAt(D+1)===U5)){var L=j4($,D,Q);if(L){Y=L,V=false;continue}}var R=$.charCodeAt(U);if(R===G5&&F<4)V=false;else if(F<4&&(R===d||R===A0||R===q0)){for(var I=U,x=0;I<J;){var k=$.charCodeAt(I);if(k===R)x++;else if(k!==N$1&&k!==b)break;I++;}V=!(x>=3&&I>=J);}else V=true;Y=X<0?G:X+1;}return K}function j4($,Q,Z){let Y=$.length;if($.charCodeAt(Q)!==z0)return null;let G=Q+1<Y&&$.charCodeAt(Q+1)===U5,V=Q+1;for(;V<Y;){var K=$.charCodeAt(V);if(K===K5){V++;break}if(K===z0)return null;K===b0&&V+1<Y&&V++,V++;}if(V>Y||$.charCodeAt(V-1)!==K5)return null;let X=$.slice(Q+1,V-1);if(X.length>999)return null;let J=S9(X);if(!J||V>=Y||$.charCodeAt(V)!==g0)return null;V++;let U=false;for(;V<Y;){let u=$.charCodeAt(V);if(u===N$1||u===b)V++;else if(u===f&&!U)U=true,V++;else break}if(G){let u=$.indexOf(`
16561
- `,V),E=u<0?Y:u,m=$.slice(V,E).trim();return Z[J]={target:m,title:void 0},u<0?Y:u+1}var F;if(V<Y&&$.charCodeAt(V)===Q0){V++;for(var W=V;V<Y&&$.charCodeAt(V)!==o&&$.charCodeAt(V)!==f;)$.charCodeAt(V)===b0&&V+1<Y&&V++,V++;if(V>=Y||$.charCodeAt(V)!==o)return null;F=$.slice(W,V),V++;for(var O=$.indexOf(`
16562
- `,V),z=O<0?Y:O,B=V;B<z&&($.charCodeAt(B)===N$1||$.charCodeAt(B)===b);)B++;if(B<z){if(B===V)return null;var A=$.charCodeAt(B);if(A!==P5&&A!==E5&&A!==F5)return null}}else {for(var W=V,q=0;V<Y;){var K=$.charCodeAt(V);if(K===F5)q++;else if(K===q5){if(q===0)break;q--;}else {if(K===N$1||K===b||K===f)break;K===b0&&V+1<Y&&V++;}V++;}if(F=$.slice(W,V),!F)return null}for(;V<Y&&($.charCodeAt(V)===N$1||$.charCodeAt(V)===b);)V++;var H=$.indexOf(`
16563
- `,V),j=H<0?Y:H,M,y=false,v=V,D=V;if(V===j&&V<Y)for(D=V+1;D<Y&&($.charCodeAt(D)===N$1||$.charCodeAt(D)===b);)D++;if(D<Y){var w=$.charCodeAt(D);if(w===P5||w===E5||w===F5){for(var L=w===F5?41:w,R=D+1,I=R;R<Y;){var x=$.charCodeAt(R);if(x===L){for(var k=R+1;k<Y&&($.charCodeAt(k)===N$1||$.charCodeAt(k)===b);)k++;(k>=Y||$.charCodeAt(k)===f)&&(M=$.slice(I,R),y=true,v=k<Y?k+1:Y);break}if(x===b0&&R+1<Y){R+=2;continue}if(x===f&&R+1<Y&&$.charCodeAt(R+1)===f)break;R++;}if(!y&&D===V)return null}}if(y)return Z[J]||(Z[J]={target:Z9(F),title:M!==void 0?o5(Z9(M)):M}),v;for(;V<j&&($.charCodeAt(V)===N$1||$.charCodeAt(V)===b);)V++;return V<j?null:(Z[J]||(Z[J]={target:Z9(F),title:M}),H<0?Y:H+1)}var t0=new Uint8Array(f$);for(t0[G5]|=W5,t0[o]|=W5,t0[d]|=W5|R5,t0[w5]|=W5,t0[A0]|=W5|R5,t0[q0]|=W5|R5,t0[e]|=W5|R5,t0[N0]|=W5|R5,t0[Q0]|=W5|R5,t0[z0]|=R5,t0[p0]|=R5,t0[S0]|=W5,z9=r$1;z9<=i;z9++)t0[z9]|=W5;var z9;function $4($){if($.indexOf("[")<0&&$.indexOf("]")<0)return false;for(var Q=0;Q<$.length;Q++){if($.charCodeAt(Q)===b0){Q++;continue}if($.charCodeAt(Q)===z0||$.charCodeAt(Q)===K5)return true}return false}function S9($){for(var Q=$.length,Z=true,Y=Q>0,G=0;G<Q;G++){var V=$.charCodeAt(G);if(V===N$1){if(Z){Y=false;break}Z=true;}else if(V<33||V>126||V>=p$1&&V<=c){Y=false;break}else Z=false;}if(Y&&!Z)return $;var K=$.replace(/\s+/g," ").trim();return K.indexOf("\u1E9E")!==-1?K.replace(/\u1E9E/g,"ss").toLowerCase():K.toLowerCase()}function K$($){return $<t5?t0[$]:$===v$?T5:0}function Z9($){return $.indexOf("\\")===-1?$:$.replace(/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g,"$1")}var Z$=null,Q$=-1,E9=-1;function K0($,Q){if(Q>=Q$&&Q<=E9&&$===Z$)return E9;var Z=$.indexOf(`
16564
- `,Q),Y=Z<0?$.length:Z;return Z$=$,Q$=Q,E9=Y,Y}function s($,Q){let Z=K0($,Q);return Z<$.length?Z+1:Z}function H9($,Q,Z){for(;Q<Z;){let Y=$.charCodeAt(Q);if(Y!==N$1&&Y!==b)break;Q++;}return Q}function Z4($,Q){let Z=s($,Q);for(;Z<$.length;){let Y=K0($,Z);if(a0($,Z,Y))return Z;Z=s($,Z);}return $.length}function h5($,Q,Z,Y){let G=0;for(;Q+G<Z&&$.charCodeAt(Q+G)===Y;)G++;return G}var V0=0,$0=0;function P0($,Q,Z){for(V0=0,$0=0;Q+$0<Z;){let Y=$.charCodeAt(Q+$0);if(Y===b)V0+=4-V0%4;else if(Y===N$1)V0++;else break;$0++;}}function a0($,Q,Z){return H9($,Q,Z)>=Z}function J6($,Q,Z,Y){let G=K0($,Q);if(P0($,Q,G),V0>3)return null;let V=Q+$0;if($.charCodeAt(V)!==G5)return null;let K=h5($,V,G,35);if(K<1||K>6||(V+=K,V<G&&$.charCodeAt(V)!==N$1&&$.charCodeAt(V)!==b))return null;V=H9($,V,G);for(var X=G;X>V&&$.charCodeAt(X-1)===N$1;)X--;for(var J=X;X>V&&$.charCodeAt(X-1)===G5;)X--;if(X<J)if(X===V||$.charCodeAt(X-1)===N$1)for(;X>V&&$.charCodeAt(X-1)===N$1;)X--;else X=J;let U=$.slice(V,X),F=Q9(U,false,Z,Y),O=(Y?.slugify||C0)(U);return {node:{type:_$1.heading,level:K,children:F,id:O},end:s($,G)}}function U6($,Q,Z){var Y=$.charCodeAt(Q);if(Y!==V5&&Y!==d)return false;for(var G=Q;G<Z&&$.charCodeAt(G)===Y;)G++;for(;G<Z&&($.charCodeAt(G)===N$1||$.charCodeAt(G)===b);)G++;return G>=Z}function C5($,Q){let Z=K0($,Q);if(P0($,Q,Z),V0>3)return null;let Y=Q+$0,G=$.charCodeAt(Y);if(G!==d&&G!==A0&&G!==q0)return null;let V=0;for(;Y<Z;){let K=$.charCodeAt(Y);if(K===G)V++;else if(K!==N$1&&K!==b)return null;Y++;}return V<3?null:{node:{type:_$1.breakThematic},end:s($,Z)}}var Q4=0,Y4=0,G4="";function F6($,Q,Z){let Y=K0($,Q);if(P0($,Q,Y),V0>3)return null;let G=V0,K=Q+$0,X=$.charCodeAt(K);if(X!==e&&X!==N0)return null;let J=h5($,K,Y,X);if(J<3)return null;K+=J;let U=H9($,K,Y),F=Y;if(X===e){for(let m=U;m<Y;m++)if($.charCodeAt(m)===e)return null}for(;F>U&&($.charCodeAt(F-1)===N$1||$.charCodeAt(F-1)===b);)F--;let W=$.slice(U,F),O="",z="",B=W.indexOf(" ");B===-1?O=W:(O=W.slice(0,B),z=W.slice(B+1).trim()),O=Z9(O);var A=void 0;if(z){t$.lastIndex=0;for(var q;(q=t$.exec(z))!==null;)A||(A={}),A[q[1]]=q[2]!==void 0?q[2]:q[3];}let H=s($,Y),j=$.length,M=$.length;var y;X===Q4&&J===Y4?y=G4:(y=String.fromCharCode(X).repeat(J),Q4=X,Y4=J,G4=y);for(var v=H;v<$.length;){var D=$.indexOf(y,v);if(D===-1)break;for(var w=D,L=0;w>0&&L<4&&$.charCodeAt(w-1)===N$1;)w--,L++;if(L<=3&&(w===0||$.charCodeAt(w-1)===f)){for(var R=D+J;R<$.length&&$.charCodeAt(R)===X;)R++;var I=K0($,R);if(a0($,R,I)){j=w,M=s($,I);break}}v=D+1;}var x;if(G===0)x=j>H&&$.charCodeAt(j-1)===f?$.slice(H,j-1):$.slice(H,j);else {x="";for(var k=H;k<j;){var u=K0($,k);P0($,k,u);var E=Math.min($0,G);x+=$.slice(k+E,u)+`
16565
- `,k=s($,u);}x.length>0&&x.charCodeAt(x.length-1)===f&&(x=x.slice(0,-1));}return {node:{type:_$1.codeBlock,lang:O||void 0,text:x,infoString:z||void 0,attrs:A},end:M}}function V4($,Q,Z){for(var Y=0,G=Q;G<Z&&Y<4;)$.charCodeAt(G)===b?Y+=4-Y%4:Y++,G++;if(Y<4)return "";for(var V="",K=4;K<Y;K++)V+=" ";return V+$.slice(G,Z)}function q6($,Q){let Z=K0($,Q);if(P0($,Q,Z),V0<4)return null;let Y="",G=Q;for(;G<$.length;){let O=K0($,G);if(P0($,G,O),a0($,G,O)){for(var V=V4($,G,O)+`
16566
- `,K=s($,O);K<$.length;){var X=K0($,K);if(a0($,K,X)){V+=V4($,K,X)+`
16567
- `,K=s($,X);continue}P0($,K,X),V0>=4&&(Y+=V,G=K);break}if(G!==K)break;continue}if(V0<4)break;let z=0,B=0;var J=0;for(let A=G;A<O&&B<4;A++){if($.charCodeAt(A)===b){var U=4-B%4;B+U>4&&(J=B+U-4),B+=U;}else B++;z++;}var F="";if(J>0)for(var W=0;W<J;W++)F+=" ";F+=$.slice(G+z,O),Y+=F+`
16568
- `,G=s($,O);}for(;Y.length>0&&Y.charCodeAt(Y.length-1)===f;)Y=Y.slice(0,-1);return Y?{node:{type:_$1.codeBlock,lang:void 0,text:Y,infoString:void 0,attrs:void 0},end:G}:null}function W6($,Q,Z,Y){let G=K0($,Q);if(P0($,Q,G),V0>3)return null;let V=Q+$0;if($.charCodeAt(V)!==o)return null;let K="",X=Q,J,U=false,F=false,W=false;for(;X<$.length;){let S=K0($,X);P0($,X,S);let a=X+$0;if($.charCodeAt(a)===o){let g=a+1;var O=V0+1,z=false;if(g<S){var B=$.charCodeAt(g);B===N$1?(g++,O++,z=true):B===b&&(z=true);}for(var A="",q=false,H=g;H<S;H++)if($.charCodeAt(H)===b){q=true;break}if(q){var j=O;if(z&&g<S&&$.charCodeAt(g)===b){for(var M=4-j%4,y=0;y<M-1;y++)A+=" ";j+=M,g++;}for(var v=g;v<S;v++)if($.charCodeAt(v)===b){for(var D=4-j%4,w=0;w<D;w++)A+=" ";j+=D;}else A+=$[v],j++;}else A=$.slice(g,S);if(!K&&!J){let X0=A.match(/^\[!([A-Za-z]+)\]\s*$/);if(X0){J=X0[1].toUpperCase(),X=s($,S);continue}}K+=A+`
16569
- `;var L=A.trimStart();L.startsWith("```")||L.startsWith("~~~")?W=!W:(A.startsWith(" ")||A.startsWith(" "))&&(W=true),F=L.length>0,X=s($,S);}else if(K&&!a0($,X,S)&&F){if(V0<4){var R=X+$0,I=R<S?$.charCodeAt(R):0;if(I===G5||I===o||I===e||I===N0||I===Q0||(I===d||I===A0||I===q0)&&C5($,X)||(I===d||I===A0||I===w5)&&R+1<S&&($.charCodeAt(R+1)===N$1||$.charCodeAt(R+1)===b))break;if(I>=r$1&&I<=i){for(var x=R;x<S&&$.charCodeAt(x)>=r$1&&$.charCodeAt(x)<=i;)x++;if(x<S&&($.charCodeAt(x)===s0||$.charCodeAt(x)===q5))break}}if(W)break;K+=$.slice(X,S)+`
16570
- `,U=true,X=s($,S);}else break}if(!K&&!J)return null;var{inBlockQuote:k,g:u}=Z;Z.inBlockQuote=true,U&&(Z.g=true);var E=Z.e;Z.e=E||!a0($,X,$.length);let m=m5(K||"",Z,Y);return Z.e=E,Z.inBlockQuote=k,Z.g=u,{node:{type:_$1.blockQuote,children:m,alert:J||void 0},end:X}}function M4($,Q,Z){for(var Y=0,G=Q;G<Z;G++)$.charCodeAt(G)===b?Y+=4-Y%4:Y++;return Y}function x5($,Q,Z){if(P0($,Q,Z),V0>3)return null;var Y=Q+$0;if(Y>=Z)return null;var G=$.charCodeAt(Y),V=V0,K=Y,X=Y;if(G===d||G===A0||G===w5){if(K=Y+1,K<Z&&$.charCodeAt(K)!==N$1&&$.charCodeAt(K)!==b&&$.charCodeAt(K)!==f)return null}else if(G>=r$1&&G<=i){for(;X<Z&&X-Y<9;){var J=$.charCodeAt(X);if(J<r$1||J>i)break;X++;}if(X>Y&&X<Z){var U=$.charCodeAt(X);if(U===s0||U===q5){if(K=X+1,K<Z&&$.charCodeAt(K)!==N$1&&$.charCodeAt(K)!==b&&$.charCodeAt(K)!==f)return null}else return null}else return null}else return null;var F=K,W=M4($,Q,K),O=0,z=F,B=W;if(F>=Z)return {ordered:G>=r$1&&G<=i,marker:G>=r$1&&G<=i?$[X]:$[Y],start:G>=r$1&&G<=i?parseInt($.slice(Y,X),10):void 0,contentStart:F,contentCol:W+1,markerCol:V,isEmpty:true};for(;z<Z&&($.charCodeAt(z)===N$1||$.charCodeAt(z)===b);){if($.charCodeAt(z)===b){var A=4-B%4;B+=A;}else B++;z++,O++;}var q=z>=Z,H=B-W;return q||H>4?(B=W+1,z=F+1,O=1):O===0&&(B=W+1,z=F,O=1),{ordered:G>=r$1&&G<=i,marker:G>=r$1&&G<=i?$[X]:$[Y],start:G>=r$1&&G<=i?parseInt($.slice(Y,X),10):void 0,contentStart:z,contentCol:B,markerCol:V,isEmpty:q}}var $9=0;function K4($,Q,Z,Y){var G=0,V=Q;for($9=0;V<Z&&G<Y;){var K=$.charCodeAt(V);if(K===b){var X=4-G%4;if(G+X>Y){$9=G+X-Y,V++,G=Y;break}G+=X;}else if(K===N$1)G++;else break;V++;}return V}function X4($,Q,Z,Y){var G=K0($,Q),V=x5($,Q,G);if(!V)return null;var K=[],X=Q,J=V.contentCol,U="",F=V.isEmpty,W=false,O=false;if(!V.isEmpty){for(var z=false,B=V.contentStart;B<G;B++)if($.charCodeAt(B)===b){z=true;break}if(z){var A="",q=M4($,Q,V.contentStart),H=q-V.contentCol;if(H>0)for(var j=0;j<H;j++)A+=" ";for(var M=V.contentStart;M<G;M++)if($.charCodeAt(M)===b){for(var y=4-q%4,v=0;v<y;v++)A+=" ";q+=y;}else A+=$[M],q++;U=A+`
16571
- `;}else U=$.slice(V.contentStart,G)+`
16572
- `;}for(X=s($,G);X<$.length;){var D=K0($,X);P0($,X,D);var w=$.charCodeAt(X+$0);if(V0<J&&(w===d||w===A0||w===q0)&&V0<=3&&C5($,X))break;var L=x5($,X,D);if(L&&L.ordered===V.ordered&&L.marker===V.marker&&L.markerCol<J){K.push({contentCol:J,raw:U,hasBlankAfter:W,isEmpty:F}),W&&(O=true),J=L.contentCol,F=L.isEmpty,W=false,U=L.isEmpty?"":$.slice(L.contentStart,D)+`
16573
- `,X=s($,D);continue}if(a0($,X,D)){var R=K4($,X,D,J);if($9>0||R<D){for(var I="",x=0;x<$9;x++)I+=" ";U+=I+$.slice(R,D)+`
17344
+ var j;function B$3(z){if(!j){if(typeof document>"u")return;j=document.createElement("textarea");}var q=`&${z};`;j.innerHTML=q;var v=j.value;return v===q?void 0:v}
17345
+
17346
+ var I=32,w=9,v5=13,g=10,Z0=96,b0=126,A0=91,W5=94,l$1=62,V5=35,M9=37,p$1=45,K5=61,T0=92,P0=42,O0=95,Y0=60,k9=64,J5=93,c0=33,O9=38,m0=58,D9=70,L5=102,A9=104,C5=119,s5=116,x9=112,Y$=115,c$=160,l$=12,r$=44,j9=59,t5=63,Q5=46,j0=47,f5=39,T5=34,y5=43,E0=124,S5=123,E9=125,z5=40,F5=41,o$=78,i$=110,a$=79,n$=111,V$=120,K$=88,g9=30,r$1=48,o=57,h$1=65,u$1=90,V0=97,q0=122,U9=128,U5=32,I6={blockQuote:0,breakLine:1,breakThematic:2,codeBlock:3,codeInline:4,footnote:5,footnoteReference:6,frontmatter:7,gfmTask:8,heading:9,htmlBlock:10,htmlComment:11,htmlSelfClosing:12,image:13,link:14,orderedList:15,paragraph:16,ref:17,refCollection:18,table:19,text:20,textFormatted:21,unorderedList:22},B$2=I6;function X4($){if(!t$($,"---"))return null;let Q=3;for(;Q<$.length&&($[Q]===" "||$[Q]===" ");)Q++;if(Q<$.length&&$[Q]==="\r"&&Q++,Q>=$.length||$[Q]!==`
17347
+ `)return null;Q++;let Z=false;for(;Q<$.length;){let X=Q;for(;Q<$.length&&$[Q]!==`
17348
+ `&&$[Q]!=="\r";)Q++;if(Q>=$.length)break;let Y=Q;if($[Q]==="\r"&&Q++,Q<$.length&&$[Q]===`
17349
+ `&&Q++,t$($,"---",X))return {endPos:Q,hasValidYaml:Z};if(!Z){let V=L6($,X,Y);if(V<Y){let K=$.charCodeAt(V);if(K>=V0&&K<=q0||K>=h$1&&K<=u$1||K>=r$1&&K<=o||K===O0){for(V++;V<Y&&(K=$.charCodeAt(V),K>=V0&&K<=q0||K>=h$1&&K<=u$1||K>=r$1&&K<=o||K===O0||K===p$1||K===Q5);)V++;V<Y&&$.charCodeAt(V)===m0&&(V++,V>=Y?Z=true:(K=$.charCodeAt(V),(K===I||K===w)&&(Z=true)));}}}}return null}var P6=/&([a-zA-Z0-9]+|#[0-9]{1,7}|#x[0-9a-fA-F]{1,6});/gi,w6={class:"className",for:"htmlFor",allowfullscreen:"allowFullScreen",allowtransparency:"allowTransparency",autocomplete:"autoComplete",autofocus:"autoFocus",autoplay:"autoPlay",cellpadding:"cellPadding",cellspacing:"cellSpacing",charset:"charSet",classid:"classId",colspan:"colSpan",contenteditable:"contentEditable",contextmenu:"contextMenu",crossorigin:"crossOrigin",enctype:"encType",formaction:"formAction",formenctype:"formEncType",formmethod:"formMethod",formnovalidate:"formNoValidate",formtarget:"formTarget",frameborder:"frameBorder",hreflang:"hrefLang",inputmode:"inputMode",keyparams:"keyParams",keytype:"keyType",marginheight:"marginHeight",marginwidth:"marginWidth",maxlength:"maxLength",mediagroup:"mediaGroup",minlength:"minLength",novalidate:"noValidate",radiogroup:"radioGroup",readonly:"readOnly",rowspan:"rowSpan",spellcheck:"spellCheck",srcdoc:"srcDoc",srclang:"srcLang",srcset:"srcSet",tabindex:"tabIndex",usemap:"useMap",viewbox:"viewBox"},R6={};function U$($){if(!$)return R6;var Q={};for(var Z in $){var X=Z.toLowerCase(),Y=w6[X];if(Y)Q[Y]=$[Z];else {var V=Z.indexOf(":");V===-1?Q[Z]=$[Z]:Q[Z.slice(0,V)+Z[V+1].toUpperCase()+Z.slice(V+2)]=$[Z];}}return Q}var Y4=/(\n|^[-*]\s|^#|^ {2,}|^-{2,}|^>\s|^<(div|p|h[1-6]|ul|ol|li|blockquote|pre|table|thead|tbody|tr|td|th|dl|dt|dd|hr|address|article|aside|details|dialog|figure|figcaption|footer|form|header|main|menu|nav|section|summary|textarea|fieldset|legend|center|dir|hgroup|marquee|search|output|template)\b)/i;function I5($){return $.indexOf("&")===-1?$:$.replace(P6,(Q,Z)=>{var X=B$3(Z);if(X)return X;if(Z[0]==="#"){var Y=Z[1]==="x"||Z[1]==="X"?Number.parseInt(Z.slice(2),16):Number.parseInt(Z.slice(1),10);return Y===0||Y>=55296&&Y<=57343||Y>1114111?"\uFFFD":Y<=65535?String.fromCharCode(Y):String.fromCharCode(55296+(Y-65536>>10),56320+(Y-65536&1023))}return Q})}var s$=/(javascript|vbscript|data(?!:image)):/i;function H5($){if(s$.test($))return null;if($.indexOf("%")===-1)return $;try{let Q=decodeURIComponent($).replace(/[^A-Za-z0-9/:]/g,"");if(s$.test(Q))return null}catch{return null}return $}var o0={},t0,g0;for(t0=[192,193,194,195,196,197,224,225,226,227,228,229,230,198],g0=0;g0<t0.length;g0++)o0[t0[g0]]="a";for(o0[231]=o0[199]="c",o0[240]=o0[208]="d",t0=[200,201,202,203,233,232,234,235],g0=0;g0<t0.length;g0++)o0[t0[g0]]="e";for(t0=[207,239,206,238,205,237,204,236],g0=0;g0<t0.length;g0++)o0[t0[g0]]="i";for(o0[209]=o0[241]="n",t0=[248,216,339,338,213,245,212,244,211,243,210,242],g0=0;g0<t0.length;g0++)o0[t0[g0]]="o";for(t0=[220,252,219,251,218,250,217,249],g0=0;g0<t0.length;g0++)o0[t0[g0]]="u";o0[376]=o0[255]=o0[221]=o0[253]="y";function N5($){for(var Q="",Z=-1,X=$.length,Y=0;Y<X;Y++){var V=$.charCodeAt(Y);if(V>=V0&&V<=q0||V>=r$1&&V<=o){Z<0&&(Z=Y);continue}if(V>=h$1&&V<=u$1){Z>=0&&(Q+=$.slice(Z,Y),Z=-1),Q+=String.fromCharCode(V+U5);continue}if(V===I||V===p$1){Z>=0&&(Q+=$.slice(Z,Y),Z=-1),Q+="-";continue}Z>=0&&(Q+=$.slice(Z,Y),Z=-1);var K=o0[V];K&&(Q+=K);}return Z>=0&&(Q+=$.slice(Z)),Q}function t$($,Q,Z){return $.startsWith(Q,Z)}var e$=new Set(["area","base","br","col","embed","hr","img","input","link","meta","param","source","track","wbr","circle","ellipse","line","path","polygon","polyline","rect","use","stop","animate","set"]);function Q9($){let Q=$.toLowerCase();if(e$.has(Q))return true;let Z=Q.indexOf(":");return Z!==-1?(Q=Q.slice(Z+1),e$.has(Q)):false}var h5=1,$4=2,$9=4,Z4=8,b6=16,M5=32,k5=64,V4=(()=>{var $=new Uint8Array(128),Q;for($[w]=h5,$[g]=h5|$4,$[l$]=h5,$[v5]=h5|$4,$[I]=h5,Q=c0;Q<=j0;Q++)$[Q]=$9;for(Q=m0;Q<=k9;Q++)$[Q]=$9;for(Q=A0;Q<=Z0;Q++)$[Q]=$9;for(Q=S5;Q<=b0;Q++)$[Q]=$9;for(Q=r$1;Q<=o;Q++)$[Q]=b6;for(Q=h$1;Q<=u$1;Q++)$[Q]=Z4;for(Q=V0;Q<=q0;Q++)$[Q]=Z4;return $})(),K4=/[\p{P}\p{S}]/u,J4=/\p{Zs}/u,e5=[];function U4($){var Q=$.indexOf("\r"),Z=$.indexOf("\0");if(Q===-1&&Z===-1)return $;var X=$.length;e5.length=0;var Y=0,V=0;for(Q===-1?V=Z:Z===-1?V=Q:V=Q<Z?Q:Z;V<X;V++){var K=$.charCodeAt(V);K===v5?(Y<V&&e5.push($.slice(Y,V)),V+1<X&&$.charCodeAt(V+1)===g&&V++,e5.push(`
17350
+ `),Y=V+1):K===0&&(Y<V&&e5.push($.slice(Y,V)),e5.push("\uFFFD"),Y=V+1);}return Y<X&&e5.push($.slice(Y)),e5.join("")}function G4($){return $.replace(/>\s+</g,"><").replace(/\n+/g," ").trim()}function L6($,Q,Z){let X=Z??$.length;for(;Q<X&&($[Q]===" "||$[Q]===" ");)Q++;return Q}function f9($){if(!$)return false;for(var Q in $)return true;return false}function q4($){return {attrs:{},children:[{type:B$2.text,text:$}],c:true,type:B$2.htmlBlock,tag:"header"}}var T6=/^\n+/;function W4($){for(var Q=$.length;Q>0&&($[Q-1]===`
17351
+ `||$[Q-1]==="\r");)Q--;return `${$.slice(0,Q).replace(T6,"")}
17352
+
17353
+ `}function Z9($){if(($.type===B$2.htmlSelfClosing||$.type===B$2.htmlBlock)&&$.a)return [];if($.type===B$2.paragraph){var Q=$.children;return Q?Q.flatMap(Z9):[]}return $.type===B$2.text?$.text?.trim()?[$]:[]:$.type===B$2.htmlBlock&&$.children?[{...$,children:$.children?.flatMap(Z9)}]:[$]}function G$($){for(var Q=0;Q<$.length;Q++){if($[Q].type===B$2.htmlBlock){var Z=$[Q],X=false;if(Z.c&&Q===$.length-1){var Y=Z.j===void 0?Z.a?Z.e||"":(Z.e||"")+(Z.h||""):Z.j,V=`</${String(Z.tag).toLowerCase()}>`,K=Y.toLowerCase().indexOf(V);if(K!==-1){var J=Y.slice(K+V.length).replace(/<\/[a-z][a-z0-9-]*\s*>/gi,"");J.trim()&&(X=true);}}X||(Z.c=false);}"children"in $[Q]&&$[Q].children&&G$($[Q].children);}}function z4($,Q){for(var Z=0;Z<$.length;Z++){var X=$[Z];if(X.type===B$2.paragraph&&X.children)for(var Y=X.children,V=0;V<Y.length;V++){var K=Y[V];if(K.type===B$2.htmlSelfClosing&&K.a&&K.tag.toLowerCase()===Q){var J=$.slice(0,Z);V>0&&J.push({type:B$2.paragraph,children:Y.slice(0,V)});var G=[];if(V+1<Y.length){var U=Y.slice(V+1).filter(W=>!(W.type===B$2.htmlSelfClosing&&W.a));U.length>0&&(G=U);}return G=G.concat($.slice(Z+1)),{found:true,beforeClose:J,afterClose:G}}}if((X.type===B$2.htmlSelfClosing||X.type===B$2.htmlBlock)&&X.a&&X.tag.toLowerCase()===Q)return {found:true,beforeClose:$.slice(0,Z),afterClose:$.slice(Z+1)}}return {found:false,beforeClose:$,afterClose:[]}}function y6($){var Q="";for(var Z in $){var X=$[Z];X===true?Q+=` ${Z}`:X!==void 0&&X!=null&&X!==false&&(Q+=` ${Z}="${String(X)}"`);}return Q}function Q4($,Q,Z,X){var Y;return Q===void 0?Y=y6(Z):Y=Q.length>0&&Q.charCodeAt(0)>I?` ${Q}`:Q,`<${$}${Y}${X}`}function q$($){var Q=$.tag,Z=$.type===B$2.htmlSelfClosing,X=$,Y=X.b,V=`</${Q}>`;if(!Z&&X.a)return {kind:"literal",literal:(X.h||V)+(X.e||"")};if(Z){var K=$;return K.a?{kind:"literal",literal:K.h||V}:K.m?{kind:"literal",literal:K.m}:{kind:"literal",literal:Q4(Q,Y,$.attrs," />")}}var J=Q4(Q,Y,$.attrs,">"),G=X.children,U=G!=null&&G.length>0;if(X.c&&X.j!==void 0)return U?{kind:"sandwich",open:J,close:V}:{kind:"literal",literal:X.j};if(X.c&&!U)return {kind:"literal",literal:J+(X.e||"")+(X.h||V)};if(G!=null&&G.length>0){for(var W="",z=0;z<G.length;z++){var H=G[z];if(H.type!==B$2.text)return {kind:"sandwich",open:J,close:V};W+=H.text;}return {kind:"literal",literal:J+W+V}}var F=X.e||"";return F&&F.indexOf(V)!==-1?{kind:"literal",literal:J+F}:{kind:"literal",literal:J+F+V}}function F4($,Q,Z){var X=[],Y=$,V=Z;if(Y&&X.push(Y),Array.isArray(Q))for(var K=0;K<Q.length;K++)X.push(Q[K]);else Q!=null&&X.push(Q);V&&X.push(V);for(var J=[],G=0;G<X.length;G++){var U=X[G];typeof U=="string"&&J.length>0&&typeof J.at(-1)=="string"?J[J.length-1]=J.at(-1)+U:J.push(U);}return J}function m5($){return $==null||$.tagfilter!==false}function H4($,Q,Z,X){var Y=Q($,Z,X);return Y===null?null:S6(Y)}function M4($){var Q=[];if(!$)return Q;for(var Z in $)Z.charCodeAt(0)===94&&Q.push({identifier:Z,footnote:$[Z].target});return Q}function h9($,Q,Z){if(Q.indexOf(".")===-1)return $?.[Q]||Z;for(var X=$,Y=Q.split("."),V=0;V<Y.length&&(X=X?.[Y[V]],X!==void 0);)V++;return X||Z}function S6($){for(var Q=false,Z=0;Z<$.length;Z++){var X=$.charCodeAt(Z);if(X<=I||X===T5||X===M9||X===Y0||X===l$1||X===A0||X===T0||X===J5||X===W5||X===Z0||X>=123){Q=true;break}}if(!Q)return $;for(var Y="",Z=0;Z<$.length;Z++){var X=$.charCodeAt(Z);if(X===M9&&Z+2<$.length){var V=$.charCodeAt(Z+1),K=$.charCodeAt(Z+2);if((V>=r$1&&V<=o||V>=h$1&&V<=D9||V>=V0&&V<=L5)&&(K>=r$1&&K<=o||K>=h$1&&K<=D9||K>=V0&&K<=L5)){Y+=$[Z]+$[Z+1]+$[Z+2],Z+=2;continue}}if(X>=55296&&X<=57343){if(X<=56319&&Z+1<$.length){var J=$.charCodeAt(Z+1);if(J>=56320&&J<=57343){Y+=encodeURI($[Z]+$[Z+1]),Z++;continue}}Y+=$[Z];continue}Y+=encodeURI($[Z]);}return Y}function O4(...$){return $.filter(Boolean).join(" ")}var k6=new Set(["title","textarea","style","xmp","iframe","noembed","noframes","script","plaintext"]),C9=/<(\/?)(title|textarea|style|xmp|iframe|noembed|noframes|script|plaintext)(\s|>|\/)/gi;function W$($){return k6.has($.toLowerCase())}function D4($){return C9.lastIndex=0,C9.test($)}function z$($){return C9.lastIndex=0,$.replace(C9,(Q,Z,X,Y)=>`&lt;${Z}${X}${Y}`)}function I9($,Q){var Z=$||{},X=Z.slugify,Y;if(X){var V=X;Y=K=>V(K,N5);}else Y=N5;return {disableAutoLink:Z.disableAutoLink,disableFrontmatter:Z.disableFrontmatter,disableParsingRawHTML:Z.disableParsingRawHTML,enforceAtxHeadings:Z.enforceAtxHeadings,evalUnserializableExpressions:Z.evalUnserializableExpressions,forceBlock:Z.forceBlock,forceInline:Q===void 0?Z.forceInline:Q,ignoreHTMLBlocks:Z.ignoreHTMLBlocks,optimizeForStreaming:Z.optimizeForStreaming,preserveFrontmatter:Z.preserveFrontmatter,sanitizer:Z.sanitizer||H5,slugify:Y,tagfilter:m5(Z)}}var h4=/^<([a-zA-Z][a-zA-Z0-9-]*)\s[^>]*>/,m4=/^<[A-Z]/,D$=["script","pre","style","textarea"],N9=new Set(D$),x6=/<(?:pre|script|style|textarea)\b/i,j4=/<(?:pre|script|style|textarea)\b/iy,F$=/^(\s{0,3}#[#\s]|\s{0,3}[-*+]\s|\s{0,3}\d+\.\s|\s{0,3}>\s|\s{0,3}```)/m,B4=/^<([a-z][^ >/\n\r]*) ?([^>]*?)>/im,u4=new Uint8Array(128);(()=>{for(var $=[Z0,P0,O0,b0,K5,A0,c0,Y0,T0,O9,g,A9,C5,L5],Q=0;Q<$.length;Q++)u4[$[Q]]=1;})();var _4=/([a-zA-Z_][a-zA-Z0-9_-]*)=(?:"([^"]*)"|'([^']*)')/g;function p4($){return N9.has($)}function d4($){return x6.test($)}function c4($,Q,Z){for(var X=Q,Y=Z;X<Y&&($.charCodeAt(X)===I||$.charCodeAt(X)===w);)X++;if(X>=Y)return false;$.charCodeAt(X)===E0&&X++;for(var V=0;X<Y;){for(;X<Y&&($.charCodeAt(X)===I||$.charCodeAt(X)===w);)X++;if(X>=Y)break;if($.charCodeAt(X)===E0&&V>0){for(var K=X+1;K<Y&&($.charCodeAt(K)===I||$.charCodeAt(K)===w);)K++;if(K>=Y)return true}if($.charCodeAt(X)===m0&&X++,X>=Y||$.charCodeAt(X)!==p$1)return false;for(;X<Y&&$.charCodeAt(X)===p$1;)X++;for(X<Y&&$.charCodeAt(X)===m0&&X++,V++;X<Y&&($.charCodeAt(X)===I||$.charCodeAt(X)===w);)X++;if(X<Y)if($.charCodeAt(X)===E0)X++;else return false}return V>0}var E6=/[\u0000-\u001F\u007F]/g,g6={action:1,background:1,cite:1,data:1,formaction:1,href:1,longdesc:1,poster:1,src:1,"xlink:href":1},C6=/&#(x[0-9a-f]+|[0-9]+);?/gi;function f6($){return $.indexOf("&#")===-1?$:$.replace(C6,(Q,Z)=>{var X=Z.charCodeAt(0)===V$||Z.charCodeAt(0)===K$?Number.parseInt(Z.slice(1),16):Number.parseInt(Z,10);return X>0&&X<=1114111?String.fromCodePoint(X):Q})}function h6($,Q,Z){if(Z&&Q.charCodeAt(0)===S5)return false;var X=$.charCodeAt(0),Y=$.charCodeAt(1);if((X===n$||X===a$)&&(Y===i$||Y===o$))return !(Z&&Q==="");var V=$.toLowerCase();if(V==="srcdoc")return true;if(V==="style")return /url\s*\(\s*(javascript|vbscript|data:(?!image\/))/i.test(Q);if(g6[V]===1){var K=f6(I5(Q));if(H5(K)===null)return true;var J=K.replace(E6,"");return J!==K&&H5(J)===null}return false}function A$($){return "<"+($.f?"/":"")+$.tag+$.g+$.b+($.n?$.r?" />":"/>":">")}function v4($,Q,Z,X){for(var Y=[],V=Q,K=0;K<X.length;K+=2){var J=X[K];if(J>V){var G=$.slice(V,J).trim();G&&Y.push(G);}V=X[K+1];}if(V<Z){var U=$.slice(V,Z).trim();U&&Y.push(U);}return Y.join(" ")}function w5($,Q){if($.charCodeAt(Q)!==Y0)return null;let Z=Q+1,X=$.length,Y=false;$.charCodeAt(Z)===j0&&(Z++,Y=true);let V=Z,K=$.charCodeAt(Z);if(!(K>=V0&&K<=q0||K>=h$1&&K<=u$1))return null;for(;Z<X&&($.charCodeAt(Z)>=V0&&$.charCodeAt(Z)<=q0||$.charCodeAt(Z)>=h$1&&$.charCodeAt(Z)<=u$1||$.charCodeAt(Z)>=r$1&&$.charCodeAt(Z)<=o||$.charCodeAt(Z)===p$1);)Z++;let J=$.slice(V,Z);if(!J)return null;let G=J.charCodeAt(0),U=G>=h$1&&G<=u$1||J.indexOf("-")!==-1,W=Z;for(;Z<X&&($.charCodeAt(Z)===I||$.charCodeAt(Z)===w||$.charCodeAt(Z)===g);)Z++;let z=$.slice(W,Z);if(Z===W&&Z<X){var H=$.charCodeAt(Z);if(H!==l$1&&H!==j0)return null}let F=Z,M={},j=false;for(var _=null;Z<X;){let f=$.charCodeAt(Z);if(f===l$1){let y=_?v4($,F,Z,_):$.slice(F,Z);return {r:j,u:U,f:Y,b:y,q:_!=null,n:false,g:z,attrs:M,end:Z+1,tag:J}}if(f===I||f===w||f===g){Z++;continue}if(f===j0&&Z+1<X&&$.charCodeAt(Z+1)===l$1){j=Z>F&&$.charCodeAt(Z-1)===I;let y=_?v4($,F,Z,_):$.slice(F,Z);return {r:j,u:U,f:Y,b:y,q:_!=null,n:true,g:z,attrs:M,end:Z+2,tag:J}}var q=Z,D=$.charCodeAt(Z);if(!(D>=V0&&D<=q0||D>=h$1&&D<=u$1||D===O0||D===m0))return null;for(Z++;Z<X;){var A=$.charCodeAt(Z);if(A>=V0&&A<=q0||A>=h$1&&A<=u$1||A>=r$1&&A<=o||A===O0||A===Q5||A===m0||A===p$1)Z++;else break}for(var N=$.slice(q,Z),L=Z;Z<X&&($.charCodeAt(Z)===I||$.charCodeAt(Z)===w);)Z++;var O,P;if($.charCodeAt(Z)===K5){for(Z++;Z<X&&($.charCodeAt(Z)===I||$.charCodeAt(Z)===w);)Z++;var v=$.charCodeAt(Z);if(v===T5||v===f5){Z++;for(var b=Z;Z<X&&$.charCodeAt(Z)!==v;)Z++;if(Z>=X)return null;if(O=$.slice(b,Z),Z++,Z<X){var k=$.charCodeAt(Z);if(k!==I&&k!==w&&k!==g&&k!==l$1&&k!==j0)return null}P=Z;}else if(v===S5){var x=1,b=Z;for(Z++;Z<X&&x>0;){var A=$.charCodeAt(Z);A===S5?x++:A===E9&&x--,Z++;}O=$.slice(b,Z),P=Z;}else {for(var b=Z;Z<X;){var T=$.charCodeAt(Z);if(T===I||T===w||T===l$1||T===g||T===T5||T===f5||T===K5||T===Y0||T===Z0)break;Z++;}if(Z===b)return null;O=$.slice(b,Z),P=Z;}}else O="",P=L;h6(N,O,U)?(_===null&&(_=[]),_.push(q,P)):M[N]=O;}return null}function G5($){var Q=$.indexOf("<");if(Q===-1)return $;for(var Z="",X=0,Y=false;Q!==-1;){var V=w5($,Q);V?(V.q&&(Z+=$.slice(X,Q)+A$(V),X=V.end,Y=true),Q=$.indexOf("<",V.end)):Q=$.indexOf("<",Q+1);}return Y?Z+$.slice(X):$}function m6($,Q,Z){if(!Z.optimizeForStreaming&&$.indexOf("[")===-1)return false;for(var X=0,Y=$.length,V=false,K=false;X<Y;){for(var J=$.indexOf(`
17354
+ `,X),G=J<0?Y:J,U=X,W=0;U<G&&W<4;)if($.charCodeAt(U)===I)W++,U++;else if($.charCodeAt(U)===w)W+=4,U++;else break;if(U>=G){V=false,X=J<0?Y:J+1;continue}if(W<4){var z=$.charCodeAt(U);if(z===Z0||z===b0){for(var H=z,F=0,M=U;M<G&&$.charCodeAt(M)===H;)F++,M++;if(F>=3){var j=true;if(H===Z0){for(var _=M;_<G;_++)if($.charCodeAt(_)===Z0){j=false;break}}if(j){V=false;for(var q=J<0?Y:J+1;q<Y;){for(var D=q,A=0;D<Y&&A<4;){var N=$.charCodeAt(D);if(N===I)A++,D++;else if(N===w)A+=4,D++;else break}if(A<4&&D<Y&&$.charCodeAt(D)===H){for(var L=0;D<Y&&$.charCodeAt(D)===H;)L++,D++;if(L>=F){for(;D<Y&&($.charCodeAt(D)===I||$.charCodeAt(D)===w);)D++;if(D>=Y||$.charCodeAt(D)===g){X=D>=Y?Y:D+1;break}}}for(;q<Y&&$.charCodeAt(q)!==g;)q++;q<Y&&q++;}q>=Y&&(X=Y,K=true);continue}}}}for(var O=U;O<G&&$.charCodeAt(O)===l$1;){O++,O<G&&$.charCodeAt(O)===I&&O++;for(var P=0;O<G&&P<4;)if($.charCodeAt(O)===I)P++,O++;else if($.charCodeAt(O)===w)P+=4,O++;else break;if(P>=4)break;V=false;}if(!V&&W<4&&O<G&&$.charCodeAt(O)===A0&&!(O+1<Y&&$.charCodeAt(O+1)===W5)){var v=l4($,O,Q);if(v){X=v,V=false;continue}}var b=$.charCodeAt(U);if(b===V5&&W<4)V=false;else if(W<4&&(b===p$1||b===P0||b===O0)){for(var k=U,x=0;k<G;){var T=$.charCodeAt(k);if(T===b)x++;else if(T!==I&&T!==w)break;k++;}V=!(x>=3&&k>=G);}else V=true;X=J<0?Y:J+1;}return K}function l4($,Q,Z){let X=$.length;if($.charCodeAt(Q)!==A0)return null;let Y=Q+1<X&&$.charCodeAt(Q+1)===W5,V=Q+1;for(;V<X;){var K=$.charCodeAt(V);if(K===J5){V++;break}if(K===A0)return null;K===T0&&V+1<X&&V++,V++;}if(V>X||$.charCodeAt(V-1)!==J5)return null;let J=$.slice(Q+1,V-1);if(J.length>999)return null;let G=p9(J);if(!G||V>=X||$.charCodeAt(V)!==m0)return null;V++;let U=false;for(;V<X;){let f=$.charCodeAt(V);if(f===I||f===w)V++;else if(f===g&&!U)U=true,V++;else break}if(Y){let f=$.indexOf(`
17355
+ `,V),y=f<0?X:f,C=$.slice(V,y).trim();return Z[G]={target:C,title:void 0},f<0?X:f+1}var W;if(V<X&&$.charCodeAt(V)===Y0){V++;for(var z=V;V<X&&$.charCodeAt(V)!==l$1&&$.charCodeAt(V)!==g;)$.charCodeAt(V)===T0&&V+1<X&&V++,V++;if(V>=X||$.charCodeAt(V)!==l$1)return null;W=$.slice(z,V),V++;for(var H=$.indexOf(`
17356
+ `,V),F=H<0?X:H,M=V;M<F&&($.charCodeAt(M)===I||$.charCodeAt(M)===w);)M++;if(M<F){if(M===V)return null;var j=$.charCodeAt(M);if(j!==T5&&j!==f5&&j!==z5)return null}}else {for(var z=V,_=0;V<X;){var K=$.charCodeAt(V);if(K===z5)_++;else if(K===F5){if(_===0)break;_--;}else {if(K===I||K===w||K===g)break;K===T0&&V+1<X&&V++;}V++;}if(W=$.slice(z,V),!W)return null}for(;V<X&&($.charCodeAt(V)===I||$.charCodeAt(V)===w);)V++;var q=$.indexOf(`
17357
+ `,V),D=q<0?X:q,A,N=false,L=V,O=V;if(V===D&&V<X)for(O=V+1;O<X&&($.charCodeAt(O)===I||$.charCodeAt(O)===w);)O++;if(O<X){var P=$.charCodeAt(O);if(P===T5||P===f5||P===z5){for(var v=P===z5?41:P,b=O+1,k=b;b<X;){var x=$.charCodeAt(b);if(x===v){for(var T=b+1;T<X&&($.charCodeAt(T)===I||$.charCodeAt(T)===w);)T++;(T>=X||$.charCodeAt(T)===g)&&(A=$.slice(k,b),N=true,L=T<X?T+1:X);break}if(x===T0&&b+1<X){b+=2;continue}if(x===g&&b+1<X&&$.charCodeAt(b+1)===g)break;b++;}if(!N&&O===V)return null}}if(N)return Z[G]||(Z[G]={target:I5(q9(W)),title:A===void 0?A:I5(q9(A))}),L;for(;V<D&&($.charCodeAt(V)===I||$.charCodeAt(V)===w);)V++;return V<D?null:(Z[G]||(Z[G]={target:I5(q9(W)),title:A}),q<0?X:q+1)}var X5=new Uint8Array(V4);for(X5[V5]|=M5,X5[l$1]|=M5,X5[p$1]|=M5|k5,X5[y5]|=M5,X5[P0]|=M5|k5,X5[O0]|=M5|k5,X5[Z0]|=M5|k5,X5[b0]|=M5|k5,X5[Y0]|=M5|k5,X5[A0]|=k5,X5[c0]|=k5,X5[E0]|=M5,B9=r$1;B9<=o;B9++)X5[B9]|=M5;var B9;function I4($){if($.indexOf("[")<0&&$.indexOf("]")<0)return false;for(var Q=0;Q<$.length;Q++){if($.charCodeAt(Q)===T0){Q++;continue}if($.charCodeAt(Q)===A0||$.charCodeAt(Q)===J5)return true}return false}function p9($){for(var Q=$.length,Z=true,X=Q>0,Y=0;Y<Q;Y++){var V=$.charCodeAt(Y);if(V===I){if(Z){X=false;break}Z=true;}else if(V<33||V>126||V>=h$1&&V<=u$1){X=false;break}else Z=false;}if(X&&!Z)return $;var K=$.replace(/\s+/g," ").trim();return K.indexOf("\u1E9E")!==-1?K.replace(/\u1E9E/g,"ss").toLowerCase():K.toLowerCase()}function R$($){return $<U9?X5[$]:$===c$?h5:0}function q9($){return $.indexOf("\\")===-1?$:$.replace(/\\([!"#$%&'()*+,\-./:;<=>?@[\\\]^_`{|}~])/g,"$1")}var j$=null,B$=-1,d9=-1;function G0($,Q){if(Q>=B$&&Q<=d9&&$===j$)return d9;var Z=$.indexOf(`
17358
+ `,Q),X=Z<0?$.length:Z;return j$=$,B$=Q,d9=X,X}function e($,Q){let Z=G0($,Q);return Z<$.length?Z+1:Z}function v9($,Q,Z){for(;Q<Z;){let X=$.charCodeAt(Q);if(X!==I&&X!==w)break;Q++;}return Q}function N4($,Q){let Z=e($,Q);for(;Z<$.length;){let X=G0($,Z);if(e0($,Z,X))return Z;Z=e($,Z);}return $.length}function l5($,Q,Z,X){let Y=0;for(;Q+Y<Z&&$.charCodeAt(Q+Y)===X;)Y++;return Y}var U0=0,Q0=0;function L0($,Q,Z){for(U0=0,Q0=0;Q+Q0<Z;){let X=$.charCodeAt(Q+Q0);if(X===w)U0+=4-U0%4;else if(X===I)U0++;else break;Q0++;}}function e0($,Q,Z){return v9($,Q,Z)>=Z}function u6($,Q){if(!$)return $;var Z=Q.v||(Q.v=Object.create(null)),X=Z[$];if(X===void 0)return Z[$]=0,$;for(var Y=X+1,V=`${$}-${Y}`;Z[V]!==void 0;)Y++,V=`${$}-${Y}`;return Z[$]=Y,Z[V]=0,V}function p6($,Q,Z,X){let Y=G0($,Q);if(L0($,Q,Y),U0>3)return null;let V=Q+Q0;if($.charCodeAt(V)!==V5)return null;let K=l5($,V,Y,35);if(K<1||K>6||(V+=K,V<Y&&$.charCodeAt(V)!==I&&$.charCodeAt(V)!==w))return null;V=v9($,V,Y);for(var J=Y;J>V&&$.charCodeAt(J-1)===I;)J--;for(var G=J;J>V&&$.charCodeAt(J-1)===V5;)J--;if(J<G)if(J===V||$.charCodeAt(J-1)===I)for(;J>V&&$.charCodeAt(J-1)===I;)J--;else J=G;let U=$.slice(V,J),W=W9(U,false,Z,X);return {node:{type:B$2.heading,level:K,children:W,id:""},end:e($,Y)}}function d6($,Q,Z){var X=$.charCodeAt(Q);if(X!==K5&&X!==p$1)return false;for(var Y=Q;Y<Z&&$.charCodeAt(Y)===X;)Y++;for(;Y<Z&&($.charCodeAt(Y)===I||$.charCodeAt(Y)===w);)Y++;return Y>=Z}function d5($,Q){let Z=G0($,Q);if(L0($,Q,Z),U0>3)return null;let X=Q+Q0,Y=$.charCodeAt(X);if(Y!==p$1&&Y!==P0&&Y!==O0)return null;let V=0;for(;X<Z;){let K=$.charCodeAt(X);if(K===Y)V++;else if(K!==I&&K!==w)return null;X++;}return V<3?null:{node:{type:B$2.breakThematic},end:e($,Z)}}var P4=0,w4=0,R4="";function c6($,Q,Z){let X=G0($,Q);if(L0($,Q,X),U0>3)return null;let Y=U0,K=Q+Q0,J=$.charCodeAt(K);if(J!==Z0&&J!==b0)return null;let G=l5($,K,X,J);if(G<3)return null;K+=G;let U=v9($,K,X),W=X;if(J===Z0){for(let C=U;C<X;C++)if($.charCodeAt(C)===Z0)return null}for(;W>U&&($.charCodeAt(W-1)===I||$.charCodeAt(W-1)===w);)W--;let z=$.slice(U,W),H="",F="",M=z.indexOf(" ");M===-1?H=z:(H=z.slice(0,M),F=z.slice(M+1).trim()),H=q9(H);var j;if(F){_4.lastIndex=0;for(var _;(_=_4.exec(F))!=null;)j||(j={}),j[_[1]]=_[2]===void 0?_[3]:_[2];}let q=e($,X),D=$.length,A=$.length;var N;J===P4&&G===w4?N=R4:(N=String.fromCharCode(J).repeat(G),P4=J,w4=G,R4=N);for(var L=q;L<$.length;){var O=$.indexOf(N,L);if(O===-1)break;for(var P=O,v=0;P>0&&v<4&&$.charCodeAt(P-1)===I;)P--,v++;if(v<=3&&(P===0||$.charCodeAt(P-1)===g)){for(var b=O+G;b<$.length&&$.charCodeAt(b)===J;)b++;var k=G0($,b);if(e0($,b,k)){D=P,A=e($,k);break}}L=O+1;}var x;if(Y===0)x=D>q&&$.charCodeAt(D-1)===g?$.slice(q,D-1):$.slice(q,D);else {x="";for(var T=q;T<D;){var f=G0($,T);L0($,T,f);var y=Math.min(Q0,Y);x+=`${$.slice(T+y,f)}
17359
+ `,T=e($,f);}x.length>0&&x.charCodeAt(x.length-1)===g&&(x=x.slice(0,-1));}return {node:{type:B$2.codeBlock,lang:H||void 0,text:x,infoString:F||void 0,attrs:j},end:A}}function b4($,Q,Z){for(var X=0,Y=Q;Y<Z&&X<4;)$.charCodeAt(Y)===w?X+=4-X%4:X++,Y++;if(X<4)return "";for(var V="",K=4;K<X;K++)V+=" ";return V+$.slice(Y,Z)}function l6($,Q){let Z=G0($,Q);if(L0($,Q,Z),U0<4)return null;let X="",Y=Q;for(;Y<$.length;){let H=G0($,Y);if(L0($,Y,H),e0($,Y,H)){for(var V=`${b4($,Y,H)}
17360
+ `,K=e($,H);K<$.length;){var J=G0($,K);if(e0($,K,J)){V+=`${b4($,K,J)}
17361
+ `,K=e($,J);continue}L0($,K,J),U0>=4&&(X+=V,Y=K);break}if(Y!==K)break;continue}if(U0<4)break;let F=0,M=0;var G=0;for(let j=Y;j<H&&M<4;j++){if($.charCodeAt(j)===w){var U=4-M%4;M+U>4&&(G=M+U-4),M+=U;}else M++;F++;}var W="";if(G>0)for(var z=0;z<G;z++)W+=" ";W+=$.slice(Y+F,H),X+=`${W}
17362
+ `,Y=e($,H);}for(;X.length>0&&X.charCodeAt(X.length-1)===g;)X=X.slice(0,-1);return X?{node:{type:B$2.codeBlock,lang:void 0,text:X,infoString:void 0,attrs:void 0},end:Y}:null}function r6($,Q,Z,X){let Y=G0($,Q);if(L0($,Q,Y),U0>3)return null;let V=Q+Q0;if($.charCodeAt(V)!==l$1)return null;let K="",J=Q,G,U=false,W=false,z=false;for(;J<$.length;){let S=G0($,J);L0($,J,S);let s=J+Q0;if($.charCodeAt(s)===l$1){let X0=s+1;var H=U0+1,F=false;if(X0<S){var M=$.charCodeAt(X0);M===I?(X0++,H++,F=true):M===w&&(F=true);}for(var j="",_=false,q=X0;q<S;q++)if($.charCodeAt(q)===w){_=true;break}if(_){var D=H;if(F&&X0<S&&$.charCodeAt(X0)===w){for(var A=4-D%4,N=0;N<A-1;N++)j+=" ";D+=A,X0++;}for(var L=X0;L<S;L++)if($.charCodeAt(L)===w){for(var O=4-D%4,P=0;P<O;P++)j+=" ";D+=O;}else j+=$[L],D++;}else j=$.slice(X0,S);if(!(K||G)){let I0=j.match(/^\[!([A-Za-z]+)\]\s*$/);if(I0){G=I0[1].toUpperCase(),J=e($,S);continue}}K+=`${j}
17363
+ `;var v=j.trimStart();v.startsWith("```")||v.startsWith("~~~")?z=!z:(j.startsWith(" ")||j.startsWith(" "))&&(z=true),W=v.length>0,J=e($,S);}else if(K&&!e0($,J,S)&&W){if(U0<4){var b=J+Q0,k=b<S?$.charCodeAt(b):0;if(k===V5||k===l$1||k===Z0||k===b0||k===Y0||(k===p$1||k===P0||k===O0)&&d5($,J)||(k===p$1||k===P0||k===y5)&&b+1<S&&($.charCodeAt(b+1)===I||$.charCodeAt(b+1)===w))break;if(k>=r$1&&k<=o){for(var x=b;x<S&&$.charCodeAt(x)>=r$1&&$.charCodeAt(x)<=o;)x++;if(x<S&&($.charCodeAt(x)===Q5||$.charCodeAt(x)===F5))break}}if(z)break;K+=`${$.slice(J,S)}
17364
+ `,U=true,J=e($,S);}else break}if(!(K||G))return null;var{inBlockQuote:T,l:f}=Z;Z.inBlockQuote=true,U&&(Z.l=true);var y=Z.i;Z.i=y||!e0($,J,$.length);let C=c5(K||"",Z,X);return Z.i=y,Z.inBlockQuote=T,Z.l=f,{node:{type:B$2.blockQuote,children:C,alert:G||void 0},end:J}}function r4($,Q,Z){for(var X=0,Y=Q;Y<Z;Y++)$.charCodeAt(Y)===w?X+=4-X%4:X++;return X}function u5($,Q,Z){if(L0($,Q,Z),U0>3)return null;var X=Q+Q0;if(X>=Z)return null;var Y=$.charCodeAt(X),V=U0,K=X,J=X;if(Y===p$1||Y===P0||Y===y5){if(K=X+1,K<Z&&$.charCodeAt(K)!==I&&$.charCodeAt(K)!==w&&$.charCodeAt(K)!==g)return null}else if(Y>=r$1&&Y<=o){for(;J<Z&&J-X<9;){var G=$.charCodeAt(J);if(G<r$1||G>o)break;J++;}if(J>X&&J<Z){var U=$.charCodeAt(J);if(U===Q5||U===F5){if(K=J+1,K<Z&&$.charCodeAt(K)!==I&&$.charCodeAt(K)!==w&&$.charCodeAt(K)!==g)return null}else return null}else return null}else return null;var W=K,z=r4($,Q,K),H=0,F=W,M=z;if(W>=Z)return {ordered:Y>=r$1&&Y<=o,marker:Y>=r$1&&Y<=o?$[J]:$[X],start:Y>=r$1&&Y<=o?Number.parseInt($.slice(X,J),10):void 0,contentStart:W,contentCol:z+1,markerCol:V,isEmpty:true};for(;F<Z&&($.charCodeAt(F)===I||$.charCodeAt(F)===w);){if($.charCodeAt(F)===w){var j=4-M%4;M+=j;}else M++;F++,H++;}var _=F>=Z,q=M-z;return _||q>4?(M=z+1,F=W+1,H=1):H===0&&(M=z+1,F=W,H=1),{ordered:Y>=r$1&&Y<=o,marker:Y>=r$1&&Y<=o?$[J]:$[X],start:Y>=r$1&&Y<=o?Number.parseInt($.slice(X,J),10):void 0,contentStart:F,contentCol:M,markerCol:V,isEmpty:_}}var G9=0;function L4($,Q,Z,X){var Y=0,V=Q;for(G9=0;V<Z&&Y<X;){var K=$.charCodeAt(V);if(K===w){var J=4-Y%4;if(Y+J>X){G9=Y+J-X,V++,Y=X;break}Y+=J;}else if(K===I)Y++;else break;V++;}return V}function T4($,Q,Z,X){var Y=G0($,Q),V=u5($,Q,Y);if(!V)return null;var K=[],J=Q,G=V.contentCol,U="",W=V.isEmpty,z=false,H=false;if(!V.isEmpty){for(var F=false,M=V.contentStart;M<Y;M++)if($.charCodeAt(M)===w){F=true;break}if(F){var j="",_=r4($,Q,V.contentStart),q=_-V.contentCol;if(q>0)for(var D=0;D<q;D++)j+=" ";for(var A=V.contentStart;A<Y;A++)if($.charCodeAt(A)===w){for(var N=4-_%4,L=0;L<N;L++)j+=" ";_+=N;}else j+=$[A],_++;U=`${j}
17365
+ `;}else U=`${$.slice(V.contentStart,Y)}
17366
+ `;}for(J=e($,Y);J<$.length;){var O=G0($,J);L0($,J,O);var P=$.charCodeAt(J+Q0);if(U0<G&&(P===p$1||P===P0||P===O0)&&U0<=3&&d5($,J))break;var v=u5($,J,O);if(v&&v.ordered===V.ordered&&v.marker===V.marker&&v.markerCol<G){K.push({contentCol:G,raw:U,hasBlankAfter:z,isEmpty:W}),z&&(H=true),G=v.contentCol,W=v.isEmpty,z=false,U=v.isEmpty?"":`${$.slice(v.contentStart,O)}
17367
+ `,J=e($,O);continue}if(e0($,J,O)){var b=L4($,J,O,G);if(G9>0||b<O){for(var k="",x=0;x<G9;x++)k+=" ";U+=`${k+$.slice(b,O)}
16574
17368
  `;}else U+=`
16575
- `;X=s($,D);for(var k=false,u=0;u<U.length;u++){var E=U.charCodeAt(u);if(E!==f&&E!==v5&&E!==N$1&&E!==b){k=true;break}}if(F&&!k)if(X<$.length){var m=K0($,X),T=x5($,X,m);if(!T||T.ordered!==V.ordered||T.marker!==V.marker)break;W=true;}else break;if(X<$.length){var S=K0($,X);P0($,X,S);var a=$.charCodeAt(X+$0);if((a===d||a===A0||a===q0)&&V0<=3&&C5($,X))break;var g=x5($,X,S);if(g&&g.ordered===V.ordered&&g.marker===V.marker&&g.markerCol<J){W=true;continue}if(!a0($,X,S)&&V0<J)break}continue}if(V0>=J){var X0=K4($,X,D,J);if($9>0){for(var n="",y0=J,f0=0;f0<$9;f0++)n+=" ",y0++;for(var m0=X0;m0<D;m0++)if($.charCodeAt(m0)===b){for(var t=4-y0%4,l=0;l<t;l++)n+=" ";y0+=t;}else n+=$[m0],y0++;U+=n+`
16576
- `;}else U+=$.slice(X0,D)+`
16577
- `;X=s($,D);continue}for(var j0=false,Z0=0;Z0<U.length;Z0++){var Y0=U.charCodeAt(Z0);if(Y0!==f&&Y0!==v5&&Y0!==N$1&&Y0!==b){j0=true;break}}if(!W&&j0&&!F){var w0=X+$0,O0=$.charCodeAt(w0),M0=O0===G5||O0===o||O0===Q0||O0===e||O0===N0||(O0===d||O0===A0||O0===q0||O0===w5)&&(C5($,X)!==null||x5($,X,D)!==null)||O0>=r$1&&O0<=i&&x5($,X,D)!==null;if(!M0){U+=""+$.slice(w0,D)+`
16578
- `,X=s($,D);continue}}break}if(K.push({contentCol:J,raw:U,hasBlankAfter:W,isEmpty:F}),K.length===0)return null;var _0=O;if(!_0)for(var R0=0;R0<K.length;R0++){if(K[R0].hasBlankAfter&&R0<K.length-1){_0=true;break}if(!K[R0].isEmpty){for(var I0=K[R0].raw,J0=I0.length,h=0,B0=false,L0=false,v0=false,e0=false,O5=0,H5=0,l0=-1;h<J0;){var C=I0.indexOf(`
16579
- `,h);if(C<0&&(C=J0),e0){P0(I0,h,C);for(var $5=I0.slice(h+$0,C),P=0;P<$5.length&&$5.charCodeAt(P)===O5;)P++;P>=H5&&$5.slice(P).trim()===""&&(e0=false),h=C<J0?C+1:J0;continue}if(a0(I0,h,C)){l0>=0?v0=true:B0&&(L0=true),h=C<J0?C+1:J0;continue}if(P0(I0,h,C),l0>=0){if(V0>=l0){h=C<J0?C+1:J0;continue}var U0=x5(I0,h,C);if(U0&&U0.markerCol<l0&&U0.contentCol<=l0){h=C<J0?C+1:J0;continue}if(U0){h=C<J0?C+1:J0;continue}l0=-1,v0&&(L0=true,v0=false);}var h0=I0.slice(h+$0,C),Z5=h0.charCodeAt(0);if((Z5===e||Z5===N0)&&V0<=3){for(var B5=0;B5<h0.length&&h0.charCodeAt(B5)===Z5;)B5++;if(B5>=3){if(L0&&B0){_0=true;break}e0=true,O5=Z5,H5=B5,B0=true,h=C<J0?C+1:J0;continue}}var o0=V0<=3?x5(I0,h,C):null;if(o0&&B0){if(L0){_0=true;break}l0=o0.contentCol,v0=false,h=C<J0?C+1:J0,B0=true;continue}if(L0){_0=true;break}B0=true,h=C<J0?C+1:J0;}if(_0)break}}for(var D0=[],k0=0;k0<K.length;k0++){for(var Q5=K[k0],x0=Q5.raw,Y5=x0.length;Y5>0&&x0.charCodeAt(Y5-1)===f;)Y5--;var r0=Y5<x0.length?x0.slice(0,Y5):x0,D5=null;if(r0.length>=3&&r0.charCodeAt(0)===z0){var n0=r0[1];(n0===" "||n0==="x"||n0==="X")&&r0.charCodeAt(2)===K5&&(D5={type:_$1.gfmTask,completed:n0==="x"||n0==="X"},r0=r0.slice(3));}var W0;if(Q5.isEmpty&&r0.trim()==="")W0=[];else if(_0){var A9=Z.inList;Z.inList=true;var n5=Z.e;Z.e=n5||k0!==K.length-1,W0=m5(r0,Z,Y),Z.e=n5,Z.inList=A9;}else {var _5=Z.inList;Z.inList=true;var j9=Z.e;if(Z.e=j9||k0!==K.length-1,W0=m5(r0,Z,Y),Z.e=j9,Z.inList=_5,W0.length===1&&W0[0].type===_$1.paragraph)W0=W0[0].children;else if(Z.k){var M9=[];Z.k.push({src:W0,dest:M9,unwrap:true}),W0=M9;}else {for(var A5=[],T0=0;T0<W0.length;T0++)if(W0[T0].type===_$1.paragraph)for(var I5=W0[T0].children,Y9=0;Y9<I5.length;Y9++)A5.push(I5[Y9]);else A5.push(W0[T0]);W0=A5;}}if(D5){var G9=[D5,{type:_$1.text,text:" "}];if(Z.k)Z.k.push({src:W0,dest:G9,unwrap:false});else for(var V9=0;V9<W0.length;V9++)G9.push(W0[V9]);D0.push(G9);}else D0.push(W0);}return {node:{type:V.ordered?_$1.orderedList:_$1.unorderedList,start:V.ordered?V.start:void 0,items:D0},end:X}}var T9=new Set(["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"]);function L5($,Q,Z){let Y={};for(let[K,X]of Object.entries($)){let J=K.toLowerCase();if(J==="style"&&typeof X=="string"){let U={},F=[],W=0,O=0;for(let B=0;B<X.length;B++){let A=X.charCodeAt(B);A===F5?W++:A===q5?W--:A===W9&&W===0&&(F.push(X.slice(O,B)),O=B+1);}O<X.length&&F.push(X.slice(O));let z=false;F.forEach(B=>{let A=B.indexOf(":");if(A===-1)return;let q=B.slice(0,A).trim(),H=B.slice(A+1).trim();if(q&&H){if(/url\s*\(\s*(javascript|vbscript|data:(?!image\/))/i.test(H)){z=true;return}let j=q.indexOf("-")!==-1?q.replace(/-([a-z])/g,(M,y)=>y.toUpperCase()):q;U[j]=H;}}),!z&&Object.keys(U).length>0&&(Y[K]=U);}else if((J==="href"||J==="src")&&Z?.sanitizer){let U=Z.sanitizer(X,Q,J);U!==null&&(Y[K]=U);}else if(X==="")Y[K]=true;else if(X.length>=2&&X.charCodeAt(0)===b5&&X.charCodeAt(X.length-1)===y9){var G=X.slice(1,-1);if(G.length>0){var V=G.charCodeAt(0);if(V===z0||V===b5)try{Y[K]=JSON.parse(G);continue}catch{}}if(G==="true"){Y[K]=true;continue}if(G==="false"){Y[K]=false;continue}if(Z?.evalUnserializableExpressions)try{Y[K]=(0,eval)("("+G+")");continue}catch{}Y[K]=G;}else Y[K]=X;}return Y}function f5($,Q,Z){let Y=Q.length;if(Y===0)return Z;var G=Q.charCodeAt(0),V=G>=p$1&&G<=c||G>=G0&&G<=F0;if(!V){for(var K=String.fromCharCode(G),X=$.length-Y,J=Z;J<=X;){var U=$.indexOf(K,J);if(U===-1||U>X)return -1;for(var F=true,W=1;W<Y;W++){var O=$.charCodeAt(U+W),z=Q.charCodeAt(W);if(O>=p$1&&O<=c&&(O+=X5),z>=p$1&&z<=c&&(z+=X5),O!==z){F=false;break}}if(F)return U;J=U+1;}return -1}G>=p$1&&G<=c&&(G+=X5);for(let A=Z;A<=$.length-Y;A++){var B=$.charCodeAt(A);if(B>=p$1&&B<=c&&(B+=X5),B!==G)continue;let q=true;for(let H=1;H<Y;H++){let j=$.charCodeAt(A+H),M=Q.charCodeAt(H);if(j>=p$1&&j<=c&&(j+=X5),M>=p$1&&M<=c&&(M+=X5),j!==M){q=false;break}}if(q)return A}return -1}function z6($,Q,Z){let Y=Q.length;var G=Q.charCodeAt(0);G>=p$1&&G<=c&&(G+=X5);for(let K=Math.min(Z,$.length-Y);K>=0;K--){var V=$.charCodeAt(K);if(V>=p$1&&V<=c&&(V+=X5),V!==G)continue;let X=true;for(let J=1;J<Y;J++){let U=$.charCodeAt(K+J),F=Q.charCodeAt(J);if(U>=p$1&&U<=c&&(U+=X5),F>=p$1&&F<=c&&(F+=X5),U!==F){X=false;break}}if(X)return K}return -1}var x9=-1;function Y$($,Q,Z){let Y=Z.toLowerCase(),G="<"+Y,V="</"+Y,K=1,X=Q,J=$.length;for(x9=-1;X<J&&K>0;){let W=f5($,G,X),O=f5($,V,X);if(O===-1)return -1;if(W!==-1&&W<O){let z=j5($,W);z?(z.tag.toLowerCase()===Y&&!z.isClosing&&!z.selfClosing&&!r5(z.tag)&&K++,X=z.end):X=W+1;}else {var U=O+V.length,F=U<J?$.charCodeAt(U):62;if((F===o||F===N$1||F===b||F===f)&&(K--,K===0)){x9=O;let z=O+V.length;for(;z<J&&$.charCodeAt(z)!==o;)z++;return z+1}X=O+1;}}return -1}function _4($,Q,Z,Y){if(Y.ignoreHTMLBlocks||Y.disableParsingRawHTML)return null;var G=K0($,Q);if(P0($,Q,G),V0>3&&!Z.inHTML)return null;var V=Q+$0;if($.charCodeAt(V)!==Q0)return null;var K=$.indexOf(">",V+1);if(K!==-1&&K<G){var X=$.slice(V+1,K);if(/^[a-zA-Z][a-zA-Z0-9+.-]*:/.test(X)||/^[^\s@]+@[^\s@]+$/.test(X))return null}var J=O6($,V);if(J>=1&&J<=5){var U=$.length;if(J===1){for(var F=$.length,W=0;W<e9.length;W++){var O=f5($,"</"+e9[W]+">",V);O>=0&&O<F&&(F=O);}if(F<$.length){var z=$.indexOf(">",F);U=z>=0?s($,z+1):$.length;}}else {var B=J===2?"-->":J===3?"?>":J===4?">":"]]>",A=$.indexOf(B,V);A>=0&&(U=s($,A+B.length));}var q=$.slice(V,U);if(J>=2)return {node:{type:_$1.htmlComment,text:q,l:false,raw:true},end:U};var H="div",j=q.match(/^<\/?([a-zA-Z][a-zA-Z0-9-]*)/);j&&(H=j[1]);var M=j5($,V),y={},v;M&&!M.isClosing&&(y=L5(M.attrs,H,Y),v=M.whitespaceBeforeAttrs+M.rawAttrs);var D=[],w=H.toLowerCase(),L="</"+w,R=f5(q,L,0),I=q,x="";if(M&&M.isClosing)for(I=q.slice(M.end-V);I.length>0&&I.charCodeAt(I.length-1)===f;)I=I.slice(0,-1);else if(M&&!M.isClosing){var k=M.end-V;if(R!==-1)for(I=q.slice(k),I.charCodeAt(0)===f&&(I=I.slice(1));I.length>0&&I.charCodeAt(I.length-1)===f;)I=I.slice(0,-1);else for(I=q;I.length>0&&I.charCodeAt(I.length-1)===f;)I=I.slice(0,-1);if(R!==-1){var u=q.slice(k,R);x=u.trim();}}var E=M?M.isClosing:false;return {node:{type:_$1.htmlBlock,tag:H,attrs:y,i:v,children:D,a:g5(I),text:x,d:true,b:E},end:U}}if(J===6||J===7){var m=Z4($,Q),T=m<$.length?m:$.length,S=$.slice(V,T),a=m<$.length?s($,m):$.length,g=j5($,V);if(g){var X0=g.tag,n=X0.toLowerCase(),y0=g.isClosing;if(y0){var f0=$.slice(g.end,T);return {node:{type:_$1.htmlBlock,tag:X0,attrs:{},children:[],a:g5(f0),text:f0,d:true,b:true},end:a}}if(g.selfClosing||r5(X0))return {node:{type:_$1.htmlBlock,tag:X0,attrs:L5(g.attrs,X0,Y),i:g.whitespaceBeforeAttrs+g.rawAttrs,children:[],a:"",text:"",d:false,b:false},end:g.end<$.length&&$.charCodeAt(g.end)===f?g.end+1:g.end};var m0=Z.c||0,t=$.slice(V,T),l=-1,j0=-1,Z0=false;if(m0<10){for(var Y0="</"+n,w0=g.end-V,O0=1,M0=w0;M0<t.length&&O0>0;){var _0=f5(t,"<"+n,M0),R0=f5(t,Y0,M0);if(R0===-1)break;if(_0!==-1&&_0<R0){var I0=_0+n.length+1;if(I0<t.length){var J0=t.charCodeAt(I0);(J0===N$1||J0===b||J0===f||J0===o||J0===H0)&&O0++;}M0=_0+1;}else {var h=R0+Y0.length;if(h<t.length){var B0=t.charCodeAt(h);if((B0===o||B0===N$1||B0===b||B0===f)&&(O0--,O0===0)){l=R0;for(var L0=h;L0<t.length&&t.charCodeAt(L0)!==o;)L0++;j0=L0+1;break}}else if(O0--,O0===0){l=R0,j0=t.length;break}M0=R0+1;}}if(l===-1&&J===6&&!g.isClosing){var v0=Y$($,g.end,n);if(v0!==-1){for(var e0=x9,O5=g.end,H5=false,l0=false,C=false,$5=0,P=false,U0=false,h0=O5;h0<e0;){var Z5=$.charCodeAt(h0);if(Z5===f)U0&&(H5=true),P||$5++,U0=true,h0++;else if(Z5===N$1||Z5===b)h0++;else {if(!P&&(P=true,$5>=2&&Z5===Q0)){C=true;break}if(U0=false,Z5===Q0){var B5=$.charCodeAt(h0+1)|32;if((B5===b9||B5===d9||B5===p5)&&(n$.lastIndex=h0,n$.test($))){l0=true;break}}h0++;}}if(H5&&!C&&!l0){var o0=K0($,v0);T=o0,a=s($,o0),t=$.slice(V,T),S=$.slice(V,T),l=e0-V,j0=v0-V,Z0=true;}}}}var D0=g.rawAttrs.indexOf(`
16580
- `)!==-1||g.whitespaceBeforeAttrs.indexOf(`
16581
- `)!==-1,k0=false;if(l!==-1){var Q5=t.slice(j0).trim();k0=Q5.length===0;}var x0=false,Y5=T,r0=a;if(l!==-1){var D5=V+j0,n0=K0($,D5-1);if(D5<n0){for(var W0=D5;W0<n0&&($.charCodeAt(W0)===N$1||$.charCodeAt(W0)===b);)W0++;if(W0<n0&&$.charCodeAt(W0)===Q0){var A9=j5($,W0);A9&&!A9.isClosing&&(x0=true,Y5=D5,r0=D5,k0=true);}}if(!x0){var n5=s($,n0);if(n5<T){for(var _5=n5;_5<T&&($.charCodeAt(_5)===N$1||$.charCodeAt(_5)===b);)_5++;if(_5<T&&$.charCodeAt(_5)===Q0){var j9=j5($,_5);j9&&(x0=true,Y5=n0,r0=n5,k0=true);}}}if(!x0&&Z.inHTML){x0=true,Y5=n0,r0=s($,n0);var M9=$.slice(D5,n0).trim();k0=M9.length===0;}}var A5=[],T0="";if(l!==-1){T0=t.slice(g.end-V,l);var I5=T0.trim();if(I5){var{inline:Y9,inHTML:G9,c:V9}=Z;Z.inHTML=true,Z.c=m0+1;var P4=n==="p";if(P4)Z.inline=true,A5=Q9(I5,false,Z,Y);else {var q$=T0.indexOf(`
16582
-
16583
- `)!==-1,W$=t9.test(I5),f9=s$.test(I5),w4=q$||W$||Z.inHTML&&f9,b4=T0.length>=2&&T0.charCodeAt(0)===f&&T0.charCodeAt(T0.length-1)===f&&!q$;b4&&!W$&&!f9?A5=[{type:_$1.text,text:I5}]:w4||f9?(Z.inline=false,A5=m5(T0,Z,Y)):(Z.inline=true,A5=Q9(I5,false,Z,Y));}Z.inline=Y9,Z.inHTML=G9,Z.c=V9;}}var z$=false;if(J===6&&l!==-1&&!Z.inHTML&&!D0){var y4=/<[a-zA-Z][^>]*>/.test(T0),R4=T0.indexOf(`
16584
-
16585
- `)!==-1||t9.test(T0);y4&&!R4&&(z$=true);}var L4=!Z0&&(Z.inHTML||J===7||D0||!k0||z$);if(L4){var J5,O$=false;if(l!==-1&&x0){var H$=false;if(Z.inHTML&&j0<t.length){for(var _9=j0;_9<t.length&&t.charCodeAt(_9)!==f;)_9++;var C9=t.slice(j0,_9).trim();H$=C9.length>1&&C9.charCodeAt(0)===Q0&&C9.charCodeAt(1)!==H0;}J5=H$?t.slice(g.end-V):T0,O$=true;}else (J===7||Z.inHTML)&&l!==-1?(J5=t.slice(g.end-V),J5.charCodeAt(0)===f&&(J5=J5.slice(1))):x0?J5=$.slice(V,Y5):D0?J5=S:(J5=t.slice(g.end-V),J5.charCodeAt(0)===f&&(J5=J5.slice(1)));var B$=g5(J5),D$={type:_$1.htmlBlock,tag:X0,attrs:L5(g.attrs,X0,Y),i:g.whitespaceBeforeAttrs+g.rawAttrs,children:A5,a:B$,text:B$,d:true,b:false};return O$&&(D$.o=true),{node:D$,end:r0}}var A$=g5(T0);return {node:{type:_$1.htmlBlock,tag:X0,attrs:L5(g.attrs,X0,Y),i:g.whitespaceBeforeAttrs+g.rawAttrs,children:A5,a:Z0?"":A$,text:A$,d:false,b:false},end:r0}}var I9=S.match(/^<(\/?)([a-zA-Z][a-zA-Z0-9-]*)/),k4=I9?I9[2]:"div",j$=I9?I9[1]==="/":false,m9=S;if(j$){var M$=S.indexOf(">");M$!==-1&&(m9=S.slice(M$+1));}return {node:{type:_$1.htmlBlock,tag:k4,attrs:{},children:[],a:g5(m9),text:m9,d:true,b:j$},end:a}}var u0=j5($,V);if(!u0)return null;var k5=u0.tag,h9=k5.toLowerCase(),_$=k5.charCodeAt(0),v9=_$>=p$1&&_$<=c;if(!v9&&!T9.has(h9)&&!B9.has(h9)&&!h9.includes("-"))return null;if(u0.isClosing)return {node:{type:_$1.htmlSelfClosing,tag:k5,attrs:{},a:$.slice(V,u0.end),b:true},end:u0.end};var u5=Y$($,u0.end,k5),K9=[];if(u5!==-1){var S4=x9,N9=$.slice(u0.end,S4),P9=N9.trim();if(P9){var E4=N9.indexOf(`
16586
-
16587
- `)!==-1,T4=t9.test(P9),x4=s$.test(P9),g4=Z.inline,f4=Z.inHTML,C4=Z.c;Z.inHTML=true,Z.c=(Z.c||0)+1,E4||T4||x4?(Z.inline=false,K9=m5(N9,Z,Y)):(Z.inline=true,K9=Q9(P9,false,Z,Y)),Z.inline=g4,Z.inHTML=f4,Z.c=C4;}var m4=K0($,u5),h4=$.slice(u5,m4).trim(),u9=h4?u5:s($,u5),I$=v9?$.slice(V,u5):$.slice(V,u9);return {node:{type:_$1.htmlBlock,tag:k5,attrs:L5(u0.attrs,k5,Y),i:u0.whitespaceBeforeAttrs+u0.rawAttrs,children:K9,a:g5(I$),text:v9?N9:I$,d:true,b:false},end:u9}}var X9=Z4($,u0.end),u4=X9<$.length?s($,X9):X9,p9=$.slice(u0.end,X9);if(p9.trim()){var{inline:p4,inHTML:d4,c:c4}=Z;Z.inline=false,Z.inHTML=true,Z.c=(Z.c||0)+1,K9=m5(p9,Z,Y),Z.inline=p4,Z.inHTML=d4,Z.c=c4;}var l4=$.slice(u0.end,X9);return {node:{type:_$1.htmlBlock,tag:k5,attrs:L5(u0.attrs,k5,Y),i:u0.whitespaceBeforeAttrs+u0.rawAttrs,children:K9,a:g5(l4),text:p9,d:true,b:false},end:u4}}function O6($,Q){if($.charCodeAt(Q)!==Q0)return 0;var Z=Q+1,Y=$.length;if($.charCodeAt(Z)===p0&&$.charCodeAt(Z+1)===d&&$.charCodeAt(Z+2)===d)return 2;if($.charCodeAt(Z)===s5)return 3;if($.charCodeAt(Z)===p0){var G=$.charCodeAt(Z+1);if(G>=p$1&&G<=c)return 4;if($.slice(Z+1,Z+8)==="[CDATA[")return 5}for(var V=$.charCodeAt(Z)===H0,K=V?Z+1:Z,X=K;X<Y;){var J=$.charCodeAt(X);if(J>=p$1&&J<=c||J>=G0&&J<=F0||J>=r$1&&J<=i||J===d)X++;else break}if(X===K)return 0;var U=$.slice(K,X);if(B9.has(U.toLowerCase())){if(V)return 0;var F=$.charCodeAt(X);return F===N$1||F===b||F===o||F===f||X>=Y?1:0}if(T9.has(U.toLowerCase())){if(V){for(var W=X;W<Y&&($.charCodeAt(W)===N$1||$.charCodeAt(W)===b);)W++;return W<Y&&$.charCodeAt(W)===o?6:0}var O=X<Y?$.charCodeAt(X):-1;return O===N$1||O===b||O===o||O===f||O===H0||O===-1?6:0}if(V){for(var q=X;q<Y&&($.charCodeAt(q)===N$1||$.charCodeAt(q)===b);)q++;if(q<Y&&$.charCodeAt(q)===o){var H=K0($,Q),j=$.slice(q+1,H).trim();if(j==="")return 7}}else {var z=K0($,Q),B=j5($,Q);if(B&&B.end<=z){var A=$.slice(B.end,z).trim();if(A==="")return 7}}return 0}function J4($,Q,Z){for(var Y=0,G=$.length;Y<G&&($.charCodeAt(Y)===N$1||$.charCodeAt(Y)===b);)Y++;for(;G>Y&&($.charCodeAt(G-1)===N$1||$.charCodeAt(G-1)===b);)G--;Y<G&&$.charCodeAt(Y)===S0&&Y++,G>Y&&$.charCodeAt(G-1)===S0&&(G-2<Y||$.charCodeAt(G-2)!==b0)&&G--;for(var V=[],K=Y,X=false,J=[],U=Y;U<G;){var F=$.charCodeAt(U);if(F===b0&&U+1<G){$.charCodeAt(U+1)===S0?(X||(X=true,J=[]),J.push($.slice(K,U)),J.push("|"),U+=2,K=U):U+=2;continue}if(F===e){for(var W=0;U<G&&$.charCodeAt(U)===e;)W++,U++;for(var O=false;U<G&&!O;){for(var z=0;U<G&&$.charCodeAt(U)===e;)z++,U++;z===W?O=true:z===0&&U++;}continue}if(F===S0){var B=X?(J.push($.slice(K,U)),J.join("")):$.slice(K,U);V.push(B.trim()),U++,K=U,X=false,J=[];continue}U++;}var A=X?(J.push($.slice(K,G)),J.join("")):$.slice(K,G);return V.push(A.trim()),V.map(function(q){var H=q.indexOf("\\|")!==-1?q.replace(/\\\|/g,"|"):q;return H?Q9(H,false,Q,Z):[]})}function U4($,Q,Z,Y){let G=K0($,Q);var V=$.indexOf("|",Q);if(V<0||V>=G)return null;let K=s($,G);if(K>=$.length)return null;let X=K0($,K);if(!A4($,K,X))return null;let J=$.slice(Q,G),U=$.slice(K,X);for(var F=[],W=0,O=U.length;W<O&&(U.charCodeAt(W)===N$1||U.charCodeAt(W)===b);)W++;for(W<O&&U.charCodeAt(W)===S0&&W++;W<O;){for(;W<O&&(U.charCodeAt(W)===N$1||U.charCodeAt(W)===b);)W++;if(W>=O||U.charCodeAt(W)===S0)break;var z=U.charCodeAt(W)===g0;for(z&&W++;W<O&&U.charCodeAt(W)===d;)W++;var B=W<O&&U.charCodeAt(W)===g0;for(B&&W++,F.push(z&&B?"center":B?"right":z?"left":null);W<O&&(U.charCodeAt(W)===N$1||U.charCodeAt(W)===b);)W++;W<O&&U.charCodeAt(W)===S0&&W++;}let A=J4(J,Z,Y);if(F.length!==A.length)return null;let q=[],H=s($,X);for(;H<$.length;){let w=K0($,H),L=$.slice(H,w);if(a0($,H,w))break;if(P0($,H,w),V0<4){var j=$.charCodeAt(H+$0);if(j===o||j===G5||(j===d||j===A0||j===q0)&&C5($,H))break;if(j===e||j===N0){for(var M=H+$0,y=0;M<w&&$.charCodeAt(M)===j;)y++,M++;if(y>=3)break}}q.push(J4(L,Z,Y)),H=s($,w);}if(Y.optimizeForStreaming&&q.length===0)return null;for(var v=A.length,D=0;D<q.length;D++)if(q[D].length<v)for(;q[D].length<v;)q[D].push([]);else q[D].length>v&&(q[D].length=v);return {node:{type:_$1.table,header:A,cells:q,align:F},end:H}}function H6($,Q,Z){var Y=K0($,Q);if(P0($,Q,Y),V0>3)return null;var G=Q+$0;if($.charCodeAt(G)!==z0)return null;if(G+1<$.length&&$.charCodeAt(G+1)===U5){var V=B6($,G,Z);return V||null}Z.refs||(Z.refs={});var K=j4($,G,Z.refs);return K===null?null:{node:{type:_$1.refCollection},end:K}}function B6($,Q,Z){var Y=$.length;if($.charCodeAt(Q)!==z0||Q+1>=Y||$.charCodeAt(Q+1)!==U5)return null;for(var G=Q+2,V=G;G<Y&&$.charCodeAt(G)!==K5;){if($.charCodeAt(G)===f)return null;G++;}if(G>=Y)return null;var K=("^"+$.slice(V,G)).toLowerCase();if(G++,G>=Y||$.charCodeAt(G)!==g0)return null;for(G++;G<Y&&($.charCodeAt(G)===N$1||$.charCodeAt(G)===b);)G++;if(G<Y&&$.charCodeAt(G)===f)for(G++;G<Y&&($.charCodeAt(G)===N$1||$.charCodeAt(G)===b);)G++;var X=$.indexOf(`
16588
- `,G);X<0&&(X=Y);for(var J=$.slice(G,X).trim(),U=X<Y?X+1:Y;U<Y;){var F=K0($,U);if(P0($,U,F),V0>=2&&!a0($,U,F))J+=`
16589
- `+$.slice(U,F),U=s($,F);else if(a0($,U,F)){var W=s($,F);if(W<Y){var O=K0($,W);if(P0($,W,O),V0>=2){J+=`
16590
- `,U=s($,F);continue}}break}else break}var z=Z.refs;return z&&!z[K]&&(z[K]={target:J,title:void 0}),{node:{type:_$1.footnote},end:U}}function D6($,Q,Z,Y){let G=Q,V=0,K=0,X=-1;for(;G<$.length;){let u=X>=0?X:K0($,G);if(X=-1,a0($,G,u))break;if(P0($,G,u),V0<4&&K>0&&!Z.g){let m=$.charCodeAt(G+$0);if(m===V5||m===d){let T=G+$0;for(;T<u&&$.charCodeAt(T)===m;)T++;for(;T<u&&($.charCodeAt(T)===N$1||$.charCodeAt(T)===b);)T++;if(T>=u){V=m===V5?1:2,G=s($,u);break}}}K=u;let E=s($,u);if(E<$.length){if($.charCodeAt(E)===R9){var J=K0($,E);G=s($,J),K=J;continue}let m=K0($,E);if(X=m,P0($,E,m),V0<4){let T=$.charCodeAt(E+$0);if(T===o){G=E;break}if(T===G5){for(var U=E+$0,F=0;U<m&&$.charCodeAt(U)===G5&&F<=6;)F++,U++;if(F>=1&&F<=6&&(U>=m||$.charCodeAt(U)===N$1||$.charCodeAt(U)===b)){G=E;break}}if(T===e||T===N0){for(var W=E+$0,O=0;W<m&&$.charCodeAt(W)===T;)O++,W++;if(O>=3){G=E;break}}if(T===Q0){var z=E+$0+1,B=z<m?$.charCodeAt(z):0,A=B===p0||B===s5;if(!A&&B===H0){for(var q=z+1,H=q;H<m&&($.charCodeAt(H)>=p$1&&$.charCodeAt(H)<=c||$.charCodeAt(H)>=G0&&$.charCodeAt(H)<=F0||$.charCodeAt(H)>=r$1&&$.charCodeAt(H)<=i||$.charCodeAt(H)===d);)H++;H>q&&(A=T9.has($.slice(q,H).toLowerCase()));}else if(!A){for(var j=z;j<m&&($.charCodeAt(j)>=p$1&&$.charCodeAt(j)<=c||$.charCodeAt(j)>=G0&&$.charCodeAt(j)<=F0||$.charCodeAt(j)>=r$1&&$.charCodeAt(j)<=i||$.charCodeAt(j)===d);)j++;if(j>z){var M=$.slice(z,j).toLowerCase();A=T9.has(M)||B9.has(M);}}if(A&&_4($,E,Z,Y)){G=E;break}}if(T===d||T===A0||T===w5){let S=E+$0+1;if(S<m&&($.charCodeAt(S)===N$1||$.charCodeAt(S)===b)){var y=H9($,S,m);if(y<m&&!C5($,E)){G=E;break}}}if(T>=r$1&&T<=i){let S=E+$0;for(;S<m&&$.charCodeAt(S)>=r$1&&$.charCodeAt(S)<=i;)S++;if(S<m&&($.charCodeAt(S)===s0||$.charCodeAt(S)===q5)&&S-(E+$0)===1&&$.charCodeAt(E+$0)===49){var v=S+1;if(v<m&&($.charCodeAt(v)===N$1||$.charCodeAt(v)===b)){var D=H9($,v,m);if(D<m){G=E;break}}}}if(T===S0){let S=s($,m);if(S<$.length){let a=K0($,S);if(A4($,S,a)){G=E;break}}}if((T===d||T===A0||T===q0)&&C5($,E)){if(T!==d){G=E;break}let a=E+$0;for(;a<m&&$.charCodeAt(a)===d;)a++;for(;a<m&&($.charCodeAt(a)===N$1||$.charCodeAt(a)===b);)a++;if(a<m){G=E;break}}}}G=s($,u);}for(var w=V?K:G;w>Q&&($.charCodeAt(w-1)===f||$.charCodeAt(w-1)===v5||$.charCodeAt(w-1)===N$1||$.charCodeAt(w-1)===b);)w--;for(var L=Q;L<w&&($.charCodeAt(L)===N$1||$.charCodeAt(L)===b);)L++;if(L>=w)return null;for(var R=false,I=L;I<w;I++)if($.charCodeAt(I)===R9){R=true;break}var x=R?$.slice(L,w).replace(/\u001E/g,""):$.slice(L,w);if(!x)return null;let k=Q9(x,true,Z,Y);if(V){let E=(Y?.slugify||C0)(x);return {node:{type:_$1.heading,level:V,children:k,id:E},end:G}}return {node:{type:_$1.paragraph,children:k},end:G}}function Q9($,Q,Z,Y){var G=Z.m;if(!G){var V=Z.f;Z.f=Q;var K=M5($,0,$.length,Z,Y);return Z.f=V,K}var X=[];return G.push({dest:X,text:$,breaks:Q,inline:Z.inline,inAnchor:Z.inAnchor,inHTML:Z.inHTML,htmlDepth:Z.c,inList:Z.inList,inBlockQuote:Z.inBlockQuote,noSetext:Z.g,depth:Z.j}),X}function A6($,Q,Z){if($.charCodeAt(Q)!==e)return null;let Y=h5($,Q,Z,96),G=Q+Y;for(;G<Z;){let V=$.indexOf("`",G);if(V<0||V>=Z)return null;let K=h5($,V,Z,96);if(K===Y){let X=$.slice(Q+Y,V);return X.indexOf(`
16591
- `)!==-1&&(X=X.replace(/\n/g," ")),X.length>0&&X[0]===" "&&X[X.length-1]===" "&&X.trim().length>0&&(X=X.slice(1,-1)),{node:{type:_$1.codeInline,text:X},end:V+K}}G=V+K;}return null}function X$($,Q,Z){if($.charCodeAt(Q)!==e)return Q;let Y=h5($,Q,Z,96),G=Q+Y;for(;G<Z;){let V=$.indexOf("`",G);if(V<0||V>=Z)return Q;let K=h5($,V,Z,96);if(K===Y)return V+K;G=V+K;}return Q}function j6($,Q,Z){if($.charCodeAt(Q)!==Q0)return Q;if(Q+1<Z&&$.charCodeAt(Q+1)===H0){let U=Q+2;for(;U<Z&&$.charCodeAt(U)!==o;)U++;return U<Z?U+1:Q}if(Q+3<Z&&$.charCodeAt(Q+1)===p0&&$.charCodeAt(Q+2)===d&&$.charCodeAt(Q+3)===d){let U=$.indexOf("-->",Q+4);return U>=0?U+3:Q}let Y=Q+1,G=Y;for(;Y<Z;){let U=$.charCodeAt(Y);if(U>=p$1&&U<=c||U>=G0&&U<=F0||U>=r$1&&U<=i||U===d)Y++;else break}if(Y===G)return Q;let V=$.slice(G,Y).toLowerCase(),K=false;for(;Y<Z;){let U=$.charCodeAt(Y);if(U===o){Y++;break}if(U===H0&&Y+1<Z&&$.charCodeAt(Y+1)===o){Y+=2,K=true;break}if(U===P5||U===E5){var X=U;for(Y++;Y<Z&&$.charCodeAt(Y)!==X;)Y++;Y<Z&&Y++;continue}if(U===f)return Q;Y++;}if(K||r5(V))return Y;let J=1;for(;Y<Z&&J>0;)if($.charCodeAt(Y)===Q0)if(Y+1<Z&&$.charCodeAt(Y+1)===H0){let U=Y+2,F=U;for(;F<Z&&($.charCodeAt(F)>=p$1&&$.charCodeAt(F)<=c||$.charCodeAt(F)>=G0&&$.charCodeAt(F)<=F0);)F++;if($.slice(U,F).toLowerCase()===V){for(;F<Z&&$.charCodeAt(F)!==o;)F++;if(F<Z&&F++,J--,J===0)return F}Y=F;}else {let U=Y+1,F=U;for(;F<Z&&($.charCodeAt(F)>=p$1&&$.charCodeAt(F)<=c||$.charCodeAt(F)>=G0&&$.charCodeAt(F)<=F0);)F++;$.slice(U,F).toLowerCase()===V&&J++,Y++;}else Y++;return Y}function M6($,Q,Z,Y,G){if($.charCodeAt(Q)!==N0||Q+1>=Z||$.charCodeAt(Q+1)!==N0)return null;let V=Q+2;for(;V+1<Z;){let K=$.charCodeAt(V);if(K===e){let X=X$($,V,Z);if(X>V){V=X;continue}}if(K===N0&&$.charCodeAt(V+1)===N0){let X=$.slice(Q+2,V),J=M5(X,0,X.length,Y,G);return {node:{type:_$1.textFormatted,tag:"del",children:J},end:V+2}}K===b0&&V+1<Z&&V++,V++;}return null}function _6($,Q,Z,Y,G){if($.charCodeAt(Q)!==V5||Q+1>=Z||$.charCodeAt(Q+1)!==V5)return null;let V=Q+2;for(;V+1<Z;){let K=$.charCodeAt(V);if(K===e){let X=X$($,V,Z);if(X>V){V=X;continue}}if(K===V5&&$.charCodeAt(V+1)===V5&&V>Q+2){let X=$.slice(Q+2,V),J=M5(X,0,X.length,Y,G);return {node:{type:_$1.textFormatted,tag:"mark",children:J},end:V+2}}K===b0&&V+1<Z&&V++,V++;}return null}function F4($,Q,Z){return $<t5?!!(K$($)&c5):C$.test(Q[Z])}function q4($,Q,Z){return $<t5?!!(K$($)&T5):m$.test(Q[Z])}function I6($,Q,Z){var Y=$.charCodeAt(Q);if(Y!==A0&&Y!==q0)return null;var G=h5($,Q,Z,Y);if(G===0)return null;var V=Q>0?$.charCodeAt(Q-1):32,K=Q+G<Z?$.charCodeAt(Q+G):32,X=q4(V,$,Q-1),J=q4(K,$,Q+G),U=Q>0?F4(V,$,Q-1):false,F=Q+G<Z?F4(K,$,Q+G):false,W=!J&&(!F||X||U),O=!X&&(!U||J||F),z,B;return Y===A0?(z=W,B=O):(z=W&&(!O||U),B=O&&(!W||F)),{len:G,canOpen:z,canClose:B}}function v6($,Q,Z,Y){if(Q.length!==0){for(var G=$.length,V=Array(G),K=null,X=null,J=0;J<G;J++){var U={node:$[J],prev:X,next:null};X?X.next=U:K=U,V[J]=U,X=U;}for(var F=Array(Q.length),W=0;W<Q.length;W++)F[W]=V[Q[W].idx];for(var O=[],z=0;z<12;z++)O[z]=-1;for(var B=0;B<Q.length;){var A=Q[B];if(!A.active||!A.canClose){B++;continue}for(var q=A.ch===A0?0:1,H=q*6+A.len%3*2+(A.canOpen?1:0),j=O[H]!==void 0?O[H]:-1,M=-1,y=B-1;y>j;y--){var v=Q[y];if(!(!v.active||v.ch!==A.ch||!v.canOpen)&&!((A.canOpen||v.canClose)&&(v.len+A.len)%3===0&&v.len%3!==0)){M=y;break}}if(M<0){O[H]=B-1,!A.canOpen&&(A.active=false),B++;continue}var D=Q[M],w=D.len>=2&&A.len>=2,L=w?2:1;D.len-=L,A.len-=L;var R=F[M],I=F[B],x=R.node,k=I.node;x.text=x.text.slice(0,x.text.length-L),k.text=k.text.slice(L);for(var u=[],E=R.next;E&&E!==I;)u.push(E.node),E=E.next;var m={type:_$1.textFormatted,tag:w?"strong":"em",children:u},T={node:m,prev:R,next:I};R.next=T,I.prev=T;for(var S=M+1;S<B;S++)Q[S].active=false;if(D.len===0&&(D.active=false,x.text==="")){var a=R.prev;T.prev=a,a?a.next=T:K=T;}if(A.len===0){if(A.active=false,k.text===""){var g=I.next;T.next=g,g&&(g.prev=T);}}else continue;B++;}for(var X0=0,n=K;n;){var y0=n.node;if(y0.type===_$1.text){var f0=y0;if(f0.text===""){n=n.next;continue}if(X0>0&&$[X0-1].type===_$1.text){$[X0-1].text+=f0.text,n=n.next;continue}}$[X0++]=y0,n=n.next;}$.length=X0;}}function W4($,Q,Z,Y,G){let V=$.charCodeAt(Q)===p0,K=V?Q+1:Q;if($.charCodeAt(K)!==z0)return null;var X=$.indexOf("]",K+1);if(X<0||X>=Z)return null;for(var J=K+1,U=-1,F=1;J<Z&&F>0;){var W=$.charCodeAt(J);if(W===b0&&J+1<Z){J+=2;continue}if(W===e){var O=X$($,J,Z);if(O>J){J=O;continue}}if(W===Q0){var z=I4($,J,Z);if(z){J=z.end;continue}var B=j6($,J,Z);if(B>J){J=B;continue}}W===z0?F++:W===K5&&F--,J++;}if(F!==0)return null;var A=J-1,q=$.slice(K+1,A),H=J<Z?$.charCodeAt(J):0,j=false;if(H===F5){var M=true;for(J++;J<Z&&($.charCodeAt(J)===N$1||$.charCodeAt(J)===f);)J++;var y="",v=J;if(J<Z&&$.charCodeAt(J)===Q0){for(J++,v=J;v<Z&&$.charCodeAt(v)!==o;){if($.charCodeAt(v)===b0&&v+1<Z){v+=2;continue}if($.charCodeAt(v)===f){M=false;break}v++;}M&&(v>=Z||$.charCodeAt(v)!==o)&&(M=false),M&&(y=$.slice(J,v),v++);}else if(M)if(Y.h!==void 0&&J>=Y.h)M=false;else {for(var D=0,w=false;v<Z;){var L=$.charCodeAt(v);if(L===b0&&v+1<Z){v+=2;continue}if(L===F5)D++;else if(L===q5){if(w=true,D===0)break;D--;}else if(L===N$1||L===f)break;v++;}v>=Z&&!w&&(Y.h===void 0||J<Y.h)&&(Y.h=J),y=$.slice(J,v);}if(M){for(J=v;J<Z&&($.charCodeAt(J)===N$1||$.charCodeAt(J)===f);)J++;var R;if(J<Z){var I=$.charCodeAt(J);if(I===P5||I===E5||I===F5){var x=I===F5?41:I;J++;for(var k=J;J<Z&&$.charCodeAt(J)!==x;)$.charCodeAt(J)===b0&&J+1<Z&&J++,J++;J>=Z?M=false:(R=$.slice(k,J),J++);}}if(M){for(;J<Z&&($.charCodeAt(J)===N$1||$.charCodeAt(J)===f);)J++;(J>=Z||$.charCodeAt(J)!==q5)&&(M=false);}}if(M){J++,y=Z9(y),R!==void 0&&(R=o5(Z9(R)));var u=G?.sanitizer||y5,E=u(y,V?"img":"a",V?"src":"href"),m=E===null?null:y;if(V){var T=M5(q,0,q.length,Y,G),S=V$(T);return {node:{type:_$1.image,target:m,alt:S,title:R},end:J}}else {var a=Y.inAnchor;Y.inAnchor=true;var g=a?[{type:_$1.text,text:q}]:M5(q,0,q.length,Y,G);return Y.inAnchor=a,!Y.inAnchor&&G$(g)?null:{node:{type:_$1.link,target:m,title:R,children:g},end:J}}}else J=A+1,j=true;}var X0="",n=J;if(!j&&H===z0){var y0=J+1;n=y0;for(var f0=false;n<Z&&$.charCodeAt(n)!==K5;){if($.charCodeAt(n)===b0&&n+1<Z){n+=2;continue}if($.charCodeAt(n)===z0){f0=true;break}n++;}if(f0||n>=Z)return null;var m0=$.slice(y0,n);if(m0.trim())X0=S9(m0);else {if($4(q))return null;X0=S9(q);}n=n+1;}else {if($4(q))return null;X0=S9(q);}var t=Y.refs&&Y.refs[X0];if(!t)return null;if(V)return {node:{type:_$1.image,target:t.target,alt:V$(M5(q,0,q.length,Y,G)),title:t.title},end:n};var l=Y.inAnchor;Y.inAnchor=true;var g=l?[{type:_$1.text,text:q}]:M5(q,0,q.length,Y,G);return Y.inAnchor=l,!Y.inAnchor&&G$(g)?null:{node:{type:_$1.link,target:t.target,title:t.title,children:g},end:n}}function I4($,Q,Z){if($.charCodeAt(Q)!==Q0)return null;for(var Y=Q+1;Y<Z;){var G=$.charCodeAt(Y);if(G===o)break;if(G===N$1||G===f||G===v5||G===Q0)return null;Y++;}if(Y>=Z||$.charCodeAt(Y)!==o)return null;var V=$.slice(Q+1,Y),K=V.match(/^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^\x00-\x20]*)$/);return K?{node:{type:_$1.link,target:V,title:void 0,children:[{type:_$1.text,text:V}]},end:Y+1}:V.indexOf("@")!==-1&&/^[a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(V)?{node:{type:_$1.link,target:"mailto:"+V,title:void 0,children:[{type:_$1.text,text:V}]},end:Y+1}:null}function N6($,Q,Z,Y){if($.charCodeAt(Q)!==z0||Q+1>=Z||$.charCodeAt(Q+1)!==U5)return null;let G=Q+2;for(;G<Z&&$.charCodeAt(G)!==K5&&$.charCodeAt(G)!==f;)G++;if(G>=Z||$.charCodeAt(G)!==K5)return null;let V=$.slice(Q+2,G);return V?{node:{type:_$1.footnoteReference,target:"#"+C0(V),text:V},end:G+1}:null}function P6($,Q,Z,Y){if(Y.disableBareUrls)return null;var G="",V=false,K=$.charCodeAt(Q);if(K===q9||K===72?Q+8<=Z&&$.charCodeAt(Q+1)===p5&&$.charCodeAt(Q+2)===p5&&$.charCodeAt(Q+3)===b9&&($.charCodeAt(Q+4)===d9&&$.charCodeAt(Q+5)===g0&&$.charCodeAt(Q+6)===H0&&$.charCodeAt(Q+7)===H0?G="https://":$.charCodeAt(Q+4)===g0&&$.charCodeAt(Q+5)===H0&&$.charCodeAt(Q+6)===H0&&(G="http://")):K===N5||K===70?Q+6<=Z&&$.charCodeAt(Q+1)===p5&&$.charCodeAt(Q+2)===b9&&$.charCodeAt(Q+3)===g0&&$.charCodeAt(Q+4)===H0&&$.charCodeAt(Q+5)===H0&&(G="ftp://"):(K===S5||K===87)&&Q+4<=Z&&$.charCodeAt(Q+1)===S5&&$.charCodeAt(Q+2)===S5&&$.charCodeAt(Q+3)===s0&&(G="www.",V=true),!G)return null;let X=Q+G.length;for(;X<Z;){let D=$.charCodeAt(X);if(D===N$1||D===f||D===b||D===v5||D===Q0||D===o)break;X++;}for(var J=0,U=0,F=Q;F<X;F++){var W=$.charCodeAt(F);W===F5?J++:W===q5&&U++;}let O=X;for(;O>Q+G.length;){let D=$.charCodeAt(O-1);if(D===s0||D===P$||D===g0||D===p0||D===s5||D===q5||D===A0||D===q0||D===N0){if(D===q5){if(J>=U)break;U--;}O--;}else if(D===W9){for(var z=O-2;z>Q&&($.charCodeAt(z)>=p$1&&$.charCodeAt(z)<=c||$.charCodeAt(z)>=G0&&$.charCodeAt(z)<=F0||$.charCodeAt(z)>=r$1&&$.charCodeAt(z)<=i);)z--;z>=Q&&$.charCodeAt(z)===U9?O=z:O--;}else break}if(O<=Q+G.length)return null;var B=Q+(V?4:G.length),A=$.indexOf("/",B);if((A<0||A>O)&&(A=O),V&&$.indexOf(".",B)===-1)return null;for(var q=-1,H=-1,j=A-1;j>=B;j--)if($.charCodeAt(j)===s0)if(q<0)q=j;else {H=j;break}for(var M=H>=0?H+1:B,j=M;j<A;j++)if($.charCodeAt(j)===q0)return null;var y=$.slice(Q,O),v=V?"http://"+y:y;return {node:{type:_$1.link,target:v,title:void 0,children:[{type:_$1.text,text:y}]},end:O}}function w6($,Q,Z,Y){if(Y.disableBareUrls)return null;for(var G=Q,V=G;G<Z;){var K=$.charCodeAt(G);if(K>=p$1&&K<=c||K>=G0&&K<=F0||K>=r$1&&K<=i||K===s0||K===p0||K===G5||K===36||K===J9||K===U9||K===E5||K===A0||K===w5||K===H0||K===V5||K===s5||K===U5||K===q0||K===e||K===b5||K===S0||K===y9||K===N0||K===d)G++;else break}if(G===V||G>=Z||$.charCodeAt(G)!==w9)return null;G++;for(var X=G,J=-1,U=G;G<Z;){var K=$.charCodeAt(G);if(K>=p$1&&K<=c||K>=G0&&K<=F0||K>=r$1&&K<=i)G++;else if((K===d||K===q0)&&G>X)G++;else if(K===s0){if(G===X)break;var F=$.charCodeAt(G-1);if(F===d||F===q0||G-U>63)break;if(G+1<Z){var W=$.charCodeAt(G+1);if(W>=p$1&&W<=c||W>=G0&&W<=F0||W>=r$1&&W<=i)J=G,U=G+1,G++;else break}else break}else break}if(G-U>63||J<0)return null;var O=$.charCodeAt(G-1);if(!(O>=p$1&&O<=c||O>=G0&&O<=F0||O>=r$1&&O<=i)||G<=J+1)return null;for(var z=-1,B=J-1;B>=X;B--)if($.charCodeAt(B)===s0){z=B;break}for(var A=z>=0?z+1:X,B=A;B<G;B++)if($.charCodeAt(B)===q0)return null;var q=$.slice(Q,G);return {node:{type:_$1.link,target:"mailto:"+q,title:void 0,children:[{type:_$1.text,text:q}]},end:G}}function G$($){for(var Q=0;Q<$.length;Q++)if($[Q].type===_$1.link||"children"in $[Q]&&Array.isArray($[Q].children)&&G$($[Q].children))return true;return false}function V$($){for(var Q="",Z=0;Z<$.length;Z++){var Y=$[Z];Y.type===_$1.text?Q+=Y.text:Y.type===_$1.breakLine?Q+=" ":Y.type===_$1.codeInline?Q+=Y.text:"children"in Y&&Array.isArray(Y.children)?Q+=V$(Y.children):Y.type===_$1.image&&(Q+=Y.alt||"");}return Q}function i5($){return {type:_$1.text,text:$}}function b6($,Q,Z){var Y=Q+1;if(Y>=Z)return -1;if($.charCodeAt(Y)===G5){Y++;var G=Y<Z&&($.charCodeAt(Y)===c9||$.charCodeAt(Y)===l9);G&&Y++;for(var V=Y,K=G?6:7;Y<Z&&Y-V<=K;){var X=$.charCodeAt(Y),J=X>=r$1&&X<=i||G&&(X>=p$1&&X<=F9||X>=G0&&X<=N5);if(!J)break;Y++;}return Y===V||Y-V>K?-1:Y<Z&&$.charCodeAt(Y)===W9?Y+1:-1}for(var U=Y;Y<Z&&Y-U<48;){var F=$.charCodeAt(Y);if(F>=p$1&&F<=c||F>=G0&&F<=F0||F>=r$1&&F<=i){Y++;continue}break}return Y===U?-1:Y<Z&&$.charCodeAt(Y)===W9?Y+1:-1}function y6($,Q,Z,Y,G){if($.charCodeAt(Q)!==Q0)return null;var V=Q+1;if(V>=Z)return null;var K=$.charCodeAt(V);if(K===p0&&V+1<Z&&$.charCodeAt(V+1)===d&&V+2<Z&&$.charCodeAt(V+2)===d){var X=V+3;if(X<Z&&$.charCodeAt(X)===o)return {node:{type:_$1.htmlComment,text:"",l:true},end:X+1};if(X+1<Z&&$.charCodeAt(X)===d&&$.charCodeAt(X+1)===o)return {node:{type:_$1.htmlComment,text:"-",l:true},end:X+2};var J=$.indexOf("-->",X);return J!==-1&&J<=Z-3?{node:{type:_$1.htmlComment,text:$.slice(Q+4,J),l:false},end:J+3}:null}if(K===s5){var U=$.indexOf("?>",V+1);return U!==-1&&U<Z?{node:{type:_$1.htmlSelfClosing,tag:"?",attrs:{},a:$.slice(Q,U+2),b:false},end:U+2}:null}if(K===p0&&V+1<Z){var F=$.charCodeAt(V+1);if(F===z0&&$.slice(V+1,V+8)==="[CDATA["){var W=$.indexOf("]]>",V+8);return W!==-1&&W<Z?{node:{type:_$1.htmlSelfClosing,tag:"![CDATA[",attrs:{},a:$.slice(Q,W+3),b:false},end:W+3}:null}if(F>=p$1&&F<=c){var O=$.indexOf(">",V+2);return O!==-1&&O<Z?{node:{type:_$1.htmlSelfClosing,tag:"!"+$.slice(V+1,O),attrs:{},a:$.slice(Q,O+1),b:false},end:O+1}:null}}if(K===H0){var z=V+1;if(z>=Z)return null;var B=$.charCodeAt(z);if(!(B>=p$1&&B<=c||B>=G0&&B<=F0))return null;for(z++;z<Z;){var A=$.charCodeAt(z);if(A>=p$1&&A<=c||A>=G0&&A<=F0||A>=r$1&&A<=i||A===d)z++;else break}for(;z<Z&&($.charCodeAt(z)===N$1||$.charCodeAt(z)===b||$.charCodeAt(z)===f);)z++;if(z<Z&&$.charCodeAt(z)===o){var q=$.slice(V+1,z).trim();return {node:{type:_$1.htmlSelfClosing,tag:q,attrs:{},a:$.slice(Q,z+1),b:true},end:z+1}}return null}if(!(K>=p$1&&K<=c||K>=G0&&K<=F0))return null;var H=j5($,Q);if(!H)return null;var j=H.tag,M=j.toLowerCase(),y=H.selfClosing;if(y||r5(j))return {node:{type:_$1.htmlSelfClosing,tag:j,attrs:L5(H.attrs,j,G),a:H.sanitized?$$(H):$.slice(Q,H.end),b:false},end:H.end};var v=B9.has(M),D=Y$($.slice(0,Z),H.end,j);if(D===-1)return {node:{type:_$1.htmlSelfClosing,tag:j,attrs:L5(H.attrs,j,G),a:H.sanitized?$$(H):$.slice(Q,H.end),b:false},end:H.end};var w=z6($,"</"+M,D),L=$.slice(H.end,w),R=[];if(v)L.trim()&&(R=[{type:_$1.text,text:L}]);else {var I=L.trim();if(I){var{inAnchor:x,inline:k,f:u}=Y;M==="a"&&(Y.inAnchor=true),Y.f=false;var E=I.indexOf(`
16592
-
16593
- `)!==-1||/^#{1,6}\s/.test(I);E?(Y.inline=false,R=m5(I,Y,G)):R=M5(I,0,I.length,Y,G),Y.inAnchor=x,Y.inline=k,Y.f=u;}}return {node:{type:_$1.htmlBlock,tag:j,attrs:L5(H.attrs,j,G),i:H.rawAttrs,children:R,a:void 0,text:g5(L),d:false,b:false},end:D}}var R6=200,O9=0;function M5($,Q,Z,Y,G){if(O9++,O9>R6)return O9--,[{type:_$1.text,text:$.slice(Q,Z)}];var V=Y.h;Y.h=void 0;let K=Y;if(G.optimizeForStreaming){let B5=function(D0,k0){for(var Q5=1,x0=k0+1;x0<D0.length;x0++){var Y5=D0.charCodeAt(x0);if(Y5===z0)Q5++;else if(Y5===K5&&(Q5--,Q5===0))return x0}return -1},P=$.slice(Q,Z),U0=P;for(var X=0,J=0,U=0,F=0,W=0,O=-1,z=-1,B=-1,A=-1,q=-1,H=0;H<P.length;H++){var j=P.charCodeAt(H);j===A0?H+1<P.length&&P.charCodeAt(H+1)===A0?(X++,O=H,H++):(J++,z=H):j===q0?H+1<P.length&&P.charCodeAt(H+1)===q0?(U++,B=H,H++):(F++,A=H):j===N0&&H+1<P.length&&P.charCodeAt(H+1)===N0&&(W++,q=H,H++);}var M=[];W%2===1&&q>=0&&M.push([q,2]),U%2===1&&B>=0&&M.push([B,2]),F%2===1&&A>=0&&M.push([A,1]),X%2===1&&O>=0&&M.push([O,2]),J%2===1&&z>=0&&M.push([z,1]),M.sort(function(D0,k0){return k0[0]-D0[0]});for(var y=0;y<M.length;y++){var v=M[y][0],D=M[y][1];P=P.slice(0,v)+P.slice(v+D);}let h0=0,Z5=-1;for(let D0=0;D0<P.length;D0++)P.charCodeAt(D0)===e&&(h0++,Z5=D0);if(h0%2===1&&Z5!==-1){let D0=false,k0=-1,Q5=0;for(;Q5<P.length;)P.charCodeAt(Q5)===e&&(D0?(D0=false,k0=-1):(k0=Q5,D0=true)),Q5++;D0&&k0!==-1&&(P=P.slice(0,k0));}for(var w=true;w;){w=false;for(var L=-1,R=-1,I=-1,x=false,k=0;k<P.length;k++){var u=P.charCodeAt(k);if(u===z0&&(k===0||P.charCodeAt(k-1)!==b0)){var E=k>0&&P.charCodeAt(k-1)===p0,m=E?k-1:k,T=B5(P,k);if(T===-1)L=m,x=E,R=k+1,I=P.length;else {var S=T+1;if(S>=P.length)L=m,x=E,R=k+1,I=T;else if(P.charCodeAt(S)===F5){var a=P.indexOf(")",S+1);a===-1?(L=m,x=E,R=k+1,I=T,k=P.length):k=a;}else if(P.charCodeAt(S)===z0){var g=P.indexOf("]",S+1);g===-1?(L=m,x=E,R=k+1,I=T,k=P.length):k=g;}else k=T;}}}if(L>=0){var X0=x?"":P.slice(R,I);P=P.slice(0,L)+X0,w=true;}}let o0=P.match(/<([A-Z][A-Za-z0-9]*)(?:\s[^>]*)?>([^<]*)$/);if(o0&&o0.index!==void 0){var n=o0[0].length-o0[2].length,y0=n>=2&&o0[0].charCodeAt(n-2)===H0;if(!y0){for(var f0=false,m0=0,t=0;t<o0.index;t++)P.charCodeAt(t)===e&&m0++;if(f0=m0%2===1,!f0){let D0=o0[1];f5(P,"</"+D0,0)===-1&&(P=P.slice(0,o0.index)+o0[2]);}}}P!==U0&&($=$.slice(0,Q)+P,Z=Q+P.length);}let l=[];var j0=[];let Z0=Q;var Y0="",w0=G.disableAutoLink||G.disableBareUrls||K.inAnchor?-1:$.indexOf("@",Q);for(w0>=Z&&(w0=-1);Q<Z;){let P=$.charCodeAt(Q),U0=null;if(P===e){if(U0=A6($,Q,Z),!U0){var O0=h5($,Q,Z,e);Q+=O0-1;}}else if(P===A0||P===q0){var M0=I6($,Q,Z);if(M0){if(M0.canOpen||M0.canClose){(Y0||Q>Z0)&&(l.push(i5(Y0+$.slice(Z0,Q))),Y0="");var _0=$.slice(Q,Q+M0.len),R0=i5(_0);j0.push({idx:l.length,ch:P,len:M0.len,canOpen:M0.canOpen,canClose:M0.canClose,active:true}),l.push(R0),Q+=M0.len,Z0=Q;continue}Q+=M0.len-1;}}else if(P===N0)U0=M6($,Q,Z,K,G);else if(P===V5)U0=_6($,Q,Z,K,G);else if(P===z0)Q+1<Z&&$.charCodeAt(Q+1)===U5&&(U0=N6($,Q,Z)),U0||(U0=W4($,Q,Z,K,G));else if(P===p0&&Q+1<Z&&$.charCodeAt(Q+1)===z0)U0=W4($,Q,Z,K,G);else if(P===Q0)U0=I4($,Q,Z),!U0&&!G.disableParsingRawHTML&&!G.ignoreHTMLBlocks&&(U0=y6($,Q,Z,K,G));else if(P===U9){var I0=b6($,Q,Z);if(I0!==-1){var J0=$.slice(Q,I0),h=o5(J0);if(h!==J0){Y0=Y0+$.slice(Z0,Q)+h,Q=I0,Z0=I0;continue}}}else if((P===q9||P===S5||P===N5)&&!K.inAnchor&&!G.disableAutoLink&&(Q===0||$.charCodeAt(Q-1)!==Q0)){var B0=Q+1<Z?$.charCodeAt(Q+1):0;(P===q9&&B0===p5||P===N5&&B0===p5||P===S5&&B0===S5)&&(U0=P6($,Q,Z,G));}if(!U0&&w0>=0&&w0-Q<=64&&!K.inAnchor&&!G.disableAutoLink&&!G.disableBareUrls&&(P>=p$1&&P<=c||P>=G0&&P<=F0||P>=r$1&&P<=i)&&(U0=w6($,Q,Z,G),!U0&&Q>=w0&&(w0=$.indexOf("@",Q+1),w0>=Z&&(w0=-1))),P===f&&K.f){var L0=false,v0=0;if(Q>Z0&&$.charCodeAt(Q-1)===b0)L0=true,v0=1;else {for(var e0=0,O5=Q-1;O5>=Z0&&$.charCodeAt(O5)===N$1;)e0++,O5--;e0>=2&&(L0=true,v0=e0);}if(L0){for((Y0||Q-v0>Z0)&&(l.push(i5(Y0+$.slice(Z0,Q-v0))),Y0=""),l.push({type:_$1.breakLine}),Q++;Q<Z&&$.charCodeAt(Q)===N$1;)Q++;Z0=Q;continue}var H5=Q>Z0&&$.charCodeAt(Q-1)===N$1,l0=Q+1<Z&&$.charCodeAt(Q+1)===N$1;if(H5||l0){for(var C=Q;C>Z0&&$.charCodeAt(C-1)===N$1;)C--;for(Y0+=$.slice(Z0,C)+`
16594
- `,Q++;Q<Z&&$.charCodeAt(Q)===N$1;)Q++;Z0=Q;continue}}if(U0)(Y0||Q>Z0)&&(l.push(i5(Y0+$.slice(Z0,Q))),Y0=""),l.push(U0.node),Q=U0.end,Z0=Q;else {if(P===b0&&Q+1<Z){let h0=$.charCodeAt(Q+1);if(K$(h0)&c5){(Y0||Q>Z0)&&(l.push(i5(Y0+$.slice(Z0,Q))),Y0=""),l.push(i5($[Q+1])),Q+=2,Z0=Q;continue}}if(Q++,w0<0||w0-Q>64)for(;Q<Z&&!(w0>=0&&w0-Q<=64);){var $5=$.charCodeAt(Q);if($5<t5&&!H4[$5])Q++;else break}}}return (Y0||Z>Z0)&&(l.push(i5(Y0+$.slice(Z0,Z))),Y0=""),j0.length>0&&v6(l,j0),Y.h=V,O9--,l}var L6=500;function m5($,Q,Z){var Y=Q.j||0;if(Y>L6)return [{type:_$1.text,text:$}];Q.j=Y+1;if(Z.optimizeForStreaming&&!Q.e&&!Q.n){for(var V=$.length;V>0&&$.charCodeAt(V-1)===f;)V--;for(var K=V;K>0&&$.charCodeAt(K-1)!==f;)K--;if(V>K&&$.charCodeAt(K)===S0){for(var X=false,J=K+1;J<V;J++){var U=$.charCodeAt(J);if(U!==N$1&&U!==b&&U!==S0&&U!==g0&&U!==d){X=true;break}}for(var F=false,W=false,O=0,z=K,B=K-1;B>0;){for(var A=B;A>0&&$.charCodeAt(A-1)!==f;)A--;if($.charCodeAt(A)!==S0)break;z=A;for(var q=true,H=false,j=A;j<B;j++){var M=$.charCodeAt(j);if(M===d)H=true;else if(M!==N$1&&M!==b&&M!==g0&&M!==S0){q=false;break}}q&&H?(F=true,W=true):W||O++,B=A-1;}X?F||($=$.slice(0,K).trimEnd()):$=F&&O>0?$.slice(0,K).trimEnd():$.slice(0,z).trimEnd();}for(var y=-1,v=-1,D=-1,w=$.length-1;w>=0;w--)if($.charCodeAt(w)===Q0){var L=w+1<$.length?$.charCodeAt(w+1):0;if(L>=p$1&&L<=c||L>=G0&&L<=F0){for(var R=w+2;R<$.length;){var I=$.charCodeAt(R);if(I>=p$1&&I<=c||I>=G0&&I<=F0||I>=r$1&&I<=i)R++;else break}for(var x=R;x<$.length&&$.charCodeAt(x)!==o;)x++;if(x<$.length&&$.charCodeAt(x-1)!==H0){for(var k=false,u=x+1;u<$.length;u++)if($.charCodeAt(u)===Q0){k=true;break}k||(y=w,v=R,D=x+1);}}break}if(y>=0){for(var E=0,m=0;m<y;m++)$.charCodeAt(m)===e&&E++;if(E%2===0){var T=$.slice(y+1,v);f5($,"</"+T,0)===-1&&($=$.slice(0,y)+$.slice(D));}}for(var S=$.length;S>0&&$.charCodeAt(S-1)===f;)S--;if(S>0){for(var a=S;a>0&&$.charCodeAt(a-1)!==f;)a--;for(var g=a,X0=0;g<S&&$.charCodeAt(g)===N$1&&X0<3;)g++,X0++;if(a>0&&g<S&&U6($,g,S)){for(var n=a-1,y0=n;y0>0&&$.charCodeAt(y0-1)!==f;)y0--;a0($,y0,n)||($=$.slice(0,a).trimEnd());}}var f0=$.length;if(f0>0){for(var m0=$.lastIndexOf(`
16595
- `),t=m0===-1?0:m0+1,l=f0,j0=t,Z0=0;j0<l&&$.charCodeAt(j0)===N$1&&Z0<3;)j0++,Z0++;if(j0<l){var Y0=$.charCodeAt(j0),w0=false;if(Y0===A0||Y0===d||Y0===w5){var O0=j0+1;if(O0>=l||$.charCodeAt(O0)===N$1||$.charCodeAt(O0)===b){for(var M0=O0;M0<l&&($.charCodeAt(M0)===N$1||$.charCodeAt(M0)===b);)M0++;M0>=l&&(w0=true);}}else if(Y0>=r$1&&Y0<=i){for(var _0=j0;_0<l&&$.charCodeAt(_0)>=r$1&&$.charCodeAt(_0)<=i;)_0++;if(_0<l&&($.charCodeAt(_0)===s0||$.charCodeAt(_0)===q5)){var R0=_0+1;if(R0>=l||$.charCodeAt(R0)===N$1||$.charCodeAt(R0)===b){for(var I0=R0;I0<l&&($.charCodeAt(I0)===N$1||$.charCodeAt(I0)===b);)I0++;I0>=l&&(w0=true);}}}w0&&($=$.slice(0,t).trimEnd());}}}if(Q.inline)return M5($,0,$.length,Q,Z);let J0=[],h=0,B0=$.length;if(h===0&&!Z.disableFrontmatter&&$.startsWith("---")){let C=x$($);if(C&&C.hasValidYaml){if(Z.preserveFrontmatter!==false){let $5=$.slice(0,C.endPos).trimEnd();J0.push({type:_$1.frontmatter,text:$5});}h=C.endPos;}}for(;h<B0;){for(var L0=$.indexOf(`
16596
- `,h),v0=L0<0?B0:L0;h<B0&&a0($,h,v0);)h=v0<B0?v0+1:v0,h<B0&&(L0=$.indexOf(`
16597
- `,h),v0=L0<0?B0:L0);if(h>=B0)break;var e0=$.charCodeAt(h)===R9;P0($,h,v0);let C=null;if(Z$=$,Q$=h,E9=v0,!e0&&V0>=4&&!Q.inHTML)C=q6($,h);else if(!e0){let $5=h+$0,P=$.charCodeAt($5);P===G5?C=J6($,h,Q,Z):P===o?C=W6($,h,Q,Z):P===e||P===N0?C=F6($,h):P===d||P===A0||P===q0?(C=C5($,h),!C&&(C=X4($,h,Q,Z))):P===w5||P>=r$1&&P<=i?C=X4($,h,Q,Z):P===Q0?C=_4($,h,Q,Z):P===S0?C=U4($,h,Q,Z):P===z0&&(C=H6($,h,Q));}if(!C){for(var O5=false,H5=h;H5<v0;H5++)if($.charCodeAt(H5)===S0){O5=true;break}O5&&(C=U4($,h,Q,Z));}if(C||(C=D6($,h,Q,Z)),C)C.node.type!==_$1.refCollection&&J0.push(C.node),h=C.end;else {var l0=$.indexOf(`
16598
- `,h);h=l0<0?B0:l0+1;}}return Q.j=Y,J0}function v4($,Q,Z,Y){var G=j5($,Q);return G?{tagName:G.tag,tagLower:G.tag.toLowerCase(),attrs:G.rawAttrs,whitespaceBeforeAttrs:G.whitespaceBeforeAttrs,isSelfClosing:G.selfClosing,hasSpaceBeforeSlash:G.hasSpaceBeforeSlash,isClosing:G.isClosing,hasNewline:G.whitespaceBeforeAttrs.includes(`
16599
- `)||G.rawAttrs.includes(`
16600
- `),endPos:G.end}:null}function D9($,Q,Z){O9=0,$=h$($),!Q.refs&&(Q.refs={}),(Z.optimizeForStreaming||Q.inline)&&(Q.n=X6($,Q.refs,Z));var Y,G;Q.m||(Q.m=Y=[],Q.k=G=[]);let V=m5($,Q,Z);if(Y&&G){for(var K=Y,X={inline:Q.inline,inAnchor:Q.inAnchor,inHTML:Q.inHTML,htmlDepth:Q.c,inList:Q.inList,inBlockQuote:Q.inBlockQuote,noSetext:Q.g,depth:Q.j},J=0;J<K.length;J++){var U=K[J];Q.inline=U.inline,Q.inAnchor=U.inAnchor,Q.inHTML=U.inHTML,Q.c=U.htmlDepth,Q.inList=U.inList,Q.inBlockQuote=U.inBlockQuote,Q.g=U.noSetext,Q.j=U.depth,Q.f=U.breaks;var F=M5(U.text,0,U.text.length,Q,Z);Q.f=false;for(var W=0;W<F.length;W++)U.dest.push(F[W]);}Q.inline=X.inline,Q.inAnchor=X.inAnchor,Q.inHTML=X.inHTML,Q.c=X.htmlDepth,Q.inList=X.inList,Q.inBlockQuote=X.inBlockQuote,Q.g=X.noSetext,Q.j=X.depth;for(var O=G,z=0;z<O.length;z++)for(var B=O[z],A=0;A<B.src.length;A++){var q=B.src[A];if(B.unwrap&&q.type===_$1.paragraph)for(var H=q.children,j=0;j<H.length;j++)B.dest.push(H[j]);else B.dest.push(q);}Q.m=void 0,Q.k=void 0;}return k9(Q.refs)?[{type:_$1.refCollection,refs:Q.refs},...V]:V}var J$;try{a5=reactExports.createElement("div"),J$=a5!==null&&typeof a5=="object"&&"$$typeof"in a5&&typeof a5.$$typeof=="symbol"?a5.$$typeof:Symbol.for("react.transitional.element");}catch{J$=Symbol.for("react.transitional.element");}var a5;function U$($,Q,Z){return {$$typeof:J$,type:$,key:Z!=null?""+Z:null,ref:null,props:Q,_owner:null,_store:{},_debugStack:null,_debugTask:null}}function z5($,Q){var Z={key:$};if(Q){var Y=r9(Q);for(var G in Y)Z[G]=Y[G];}return Z}var g9=typeof reactExports.createContext<"u"?reactExports.createContext(void 0):void 0;function N4($,Q,Z,Y,G,V,K,X,J){switch($.type){case _$1.blockQuote:{let q={key:Z.key};return $.alert&&(q.className="markdown-alert-"+V($.alert.toLowerCase(),C0),$.children.unshift(u$($.alert))),Y("blockquote",q,Q($.children,Z))}case _$1.breakLine:return Y("br",{key:Z.key});case _$1.breakThematic:return Y("hr",{key:Z.key});case _$1.frontmatter:return X.preserveFrontmatter?Y("pre",{key:Z.key},$.text):null;case _$1.codeBlock:let A=$.lang?o5($.lang):"";var U=$.attrs?r9($.attrs):{};return U.className=A?"language-"+A+" lang-"+A:"",Y("pre",{key:Z.key},Y("code",U,$.text));case _$1.codeInline:return Y("code",{key:Z.key},$.text);case _$1.footnoteReference:return Y("a",{key:Z.key,href:G($.target,"a","href")||void 0},Y("sup",null,$.text));case _$1.gfmTask:return Y("input",{checked:$.completed,key:Z.key,readOnly:true,type:"checkbox"});case _$1.heading:return Y(`h${$.level}`,{id:$.id,key:Z.key},Q($.children,Z));case _$1.htmlBlock:{let q=$;if(X.tagfilter&&n9(q.tag))return Y("span",{key:Z.key},"<"+q.tag+a9(q.attrs)+">");if(q.a&&q.d){let H=q.tag.toLowerCase(),j=B4(H),M=q.children,y=M!=null&&M.length>0;if(j){let T=c$(q.a,H,X.tagfilter);if(/<[a-z][^>]{0,100}>/i.test(q.a)){var F=z5(Z.key,$.attrs);return F.dangerouslySetInnerHTML={__html:T},J($.tag,F)}return J($.tag,z5(Z.key,$.attrs),T)}let v=new RegExp(`^<${q.tag}(\\s|>)`,"i");if(y&&!v.test(q.a)&&X.tagfilter&&i$(q.a))return J($.tag,z5(Z.key,$.attrs),Q(M,Z));if(D4(q.a)){let T=X.tagfilter?s9(q.a):q.a;var W=z5(Z.key,$.attrs);return W.dangerouslySetInnerHTML={__html:T},J($.tag,W)}let w={slugify:T=>V(T,C0),sanitizer:G,tagfilter:true},L=q.a.replace(/>\s+</g,"><").replace(/\n+/g," ").trim();if(new RegExp(`^<${q.tag}(\\s[^>]*)?>(\\s*</${q.tag}>)?$`,"i").test(L))return q.children&&q.children.length>0?J($.tag,z5(Z.key,$.attrs),Q(q.children,Z)):J($.tag,z5(Z.key,$.attrs));let I=D9(L,{inline:false,refs:K,inHTML:false},w);i9(I);let x=q.tag.toLowerCase(),k="</"+x+">",u=v.test(L),E=L.toLowerCase().trimEnd().endsWith(k),m=u&&E;if(m&&y)return J($.tag,z5(Z.key,$.attrs),Q(M,Z));if(m)return Q(I.flatMap(l5),Z);var O=d$(I,x);if(O.found&&O.afterClose.length>0){var z=O.beforeClose.flatMap(l5),B=O.afterClose.flatMap(l5);return U$(reactExports.Fragment,{children:[J($.tag,z5(Z.key,$.attrs),Q(z,Z)),Q(B,Z)]},Z.key)}return J($.tag,z5(Z.key,$.attrs),Q(I.flatMap(l5),Z))}return r5($.tag)?J($.tag,z5(Z.key,$.attrs)):J($.tag,z5(Z.key,$.attrs),$.children?Q($.children,Z):"")}case _$1.htmlSelfClosing:{let q=$;return X.tagfilter&&n9(q.tag)?Y("span",{key:Z.key},"<"+q.tag+a9(q.attrs)+" />"):J($.tag,z5(Z.key,$.attrs))}case _$1.image:{let q=$.target!=null?G($.target,"img","src"):null;return Y("img",{key:Z.key,alt:$.alt&&$.alt.length>0?$.alt:void 0,title:$.title||void 0,src:q||void 0})}case _$1.link:{let q={key:Z.key};return $.target!=null&&(q.href=o$($.target)),$.title&&(q.title=$.title),Y("a",q,Q($.children,Z))}case _$1.table:{let q=$;return Y("table",{key:Z.key},Y("thead",{key:"thead"},Y("tr",null,q.header.map(function(j,M){return Y("th",{key:M,style:q.align[M]==null?{}:{textAlign:q.align[M]}},Q(j,Z))}))),q.cells.length>0&&Y("tbody",{key:"tbody"},q.cells.map(function(j,M){return Y("tr",{key:M},j.map(function(v,D){return Y("td",{key:D,style:q.align[D]==null?{}:{textAlign:q.align[D]}},Q(v,Z))}))})))}case _$1.text:return $.text;case _$1.textFormatted:return Y($.tag,{key:Z.key},Q($.children,Z));case _$1.orderedList:case _$1.unorderedList:{let q=$.type===_$1.orderedList?"ol":"ul";return Y(q,{key:Z.key,start:$.type===_$1.orderedList?$.start:void 0},$.items.map(function(j,M){return Y("li",{key:M},Q(j,Z))}))}case _$1.paragraph:return Y("p",{key:Z.key},Q($.children,Z));case _$1.ref:return null;default:return null}}var E6=($,Q,Z,Y,G,V,K)=>{var X=U=>U.map(function(F){return "text"in F?F.text:""}),J=(U,F={})=>{var W=Array.isArray(U)?U:[U],O=(F.renderDepth||0)+1;if(O>2500)return X(W);F.renderDepth=O;for(var z=F.key,B=[],A=false,q=0;q<W.length;q++){F.key=q;var H;if($){var j=N4.bind(null,W[q],J,F,Q,Z,Y,G,V,K);H=$(j,W[q],J,F);}else H=N4(W[q],J,F,Q,Z,Y,G,V,K);var M=typeof H=="string";if(A&&typeof H=="string"){var y=B[B.length-1];B[B.length-1]=(typeof y=="string"?y:"")+H;}else if(H!==null)if(Array.isArray(H))for(var v=0;v<H.length;v++)B.push(H[v]);else B.push(H);A=M;}return F.key=z,F.renderDepth=O-1,B};return J},T6=($,Q)=>{let Z=e5(Q,$,void 0);return Z?typeof Z=="function"||typeof Z=="object"&&"render"in Z?Z:e5(Q,`${$}.component`,$):$};function x6($,Q){let Z={...Q||{}};Z.overrides=Z.overrides||{};let Y=Z.slugify||C0,G=Z.sanitizer||y5,V=Z.createElement,K=k9(Z.overrides),X=y=>F$(y,{...Z,wrapper:null});function J(y){for(var v in y){var D=y[v];if(typeof D=="string"&&D.length>0&&D.charCodeAt(0)===Q0&&(z4.test(D)||O4.test(D)||v4(D,0))){var w=X(D.trim());y[v]=v==="innerHTML"&&Array.isArray(w)?w[0]:w;}}}function U(y,v,...D){var w=v||{},L=y;if(K){var R=e5(Z.overrides,y+".props",{});L=T6(y,Z.overrides),w={...w,...R,className:r$(w.className,R.className)||void 0};}if(!V){var I=w.key;return I!=null&&delete w.key,D.length===1?w.children=D[0]:D.length>1&&(w.children=D),U$(L,w,I)}return V(L,w,...D)}function F(y,v,...D){return v&&J(v),U(y,v,...D)}let W=Z.slugify,O={...Z,slugify:W?y=>W(y,C0):C0,sanitizer:G,tagfilter:Z.tagfilter!==false},z=$[0]&&$[0].type===_$1.refCollection?$[0].refs:{},B=E6(Z.renderRule,U,G,Y,z,Z,F),A=B($,{inline:Z.forceInline,refs:z}),q=l$(z);if(q.length&&A.push(U("footer",{key:"footer"},q.map(function(v){let D=v.identifier.charCodeAt(0)===U5?v.identifier.slice(1):v.identifier,w=D9(v.footnote,{inline:true,refs:z},O);return U("div",{id:Y(D,C0),key:v.identifier},D+": ",B(w,{inline:true,refs:z}))}))),Z.wrapper===null)return A;let H=Z.wrapper||(Z.forceInline?"span":"div"),j;if(A.length>1||Z.forceWrapper)j=A;else return A.length===1?A[0]:null;var M=Z.wrapperProps?{...Z.wrapperProps}:{};return M.children=j,U$(H,M,"outer")}function F$($="",Q={}){let Z={...Q||{}};Z.overrides=Z.overrides||{};let G=Z.sanitizer||y5;function V(X){let J=Z.forceInline||!Z.forceBlock&&!g$.test(X),U=Z.slugify,F={...Z,slugify:U?B=>U(B,C0):C0,sanitizer:G,tagfilter:Z.tagfilter!==false},W=J?X:p$(X);if(Z.optimizeForStreaming){var O=W.lastIndexOf("<");O!==-1&&W.indexOf(">",O)===-1&&(W=W.slice(0,O));}let z=D9(W,{inline:J,refs:K},F);return x6(z,{...F,forceInline:J})}let K={};return V($)}function g6($){let Q=reactExports.useRef($),Z=Q.current;if(Z!==$){var Y=true,G=0;for(var V in $)if(G++,!Object.is(Z[V],$[V])){Y=false;break}if(Y){var K=0;for(var X in Z)K++;Y=K===G;}Y||(Q.current=$);}return Q.current}var f6=({children:$,options:Q,...Z})=>{if(!(typeof reactExports.useContext<"u")){let U={...Q,overrides:{...Q?.overrides},wrapperProps:{...Q?.wrapperProps,...Z}};return F$($??"",U)}let G=g9?reactExports.useContext(g9):void 0,V=g6(Z),K=reactExports.useMemo(()=>({...G,...Q,overrides:{...G?.overrides,...Q?.overrides},wrapperProps:{...G?.wrapperProps,...Q?.wrapperProps,...V}}),[G,Q,V]),X=$??"";return reactExports.useMemo(()=>F$(X,K),[X,K])};
17369
+ `;J=e($,O);for(var T=false,f=0;f<U.length;f++){var y=U.charCodeAt(f);if(y!==g&&y!==v5&&y!==I&&y!==w){T=true;break}}if(W&&!T)if(J<$.length){var C=G0($,J),E=u5($,J,C);if(!E||E.ordered!==V.ordered||E.marker!==V.marker)break;z=true;}else break;if(J<$.length){var S=G0($,J);L0($,J,S);var s=$.charCodeAt(J+Q0);if((s===p$1||s===P0||s===O0)&&U0<=3&&d5($,J))break;var X0=u5($,J,S);if(X0&&X0.ordered===V.ordered&&X0.marker===V.marker&&X0.markerCol<G){z=true;continue}if(!e0($,J,S)&&U0<G)break}continue}if(U0>=G){var I0=L4($,J,O,G);if(G9>0){for(var d="",u0=G,B0=0;B0<G9;B0++)d+=" ",u0++;for(var W0=I0;W0<O;W0++)if($.charCodeAt(W0)===w){for(var H0=4-u0%4,D0=0;D0<H0;D0++)d+=" ";u0+=H0;}else d+=$[W0],u0++;U+=`${d}
17370
+ `;}else U+=`${$.slice(I0,O)}
17371
+ `;J=e($,O);continue}for(var m=false,c=0;c<U.length;c++){var K0=U.charCodeAt(c);if(K0!==g&&K0!==v5&&K0!==I&&K0!==w){m=true;break}}if(!z&&m&&!W){var y0=J+Q0,S0=$.charCodeAt(y0),_0=S0===V5||S0===l$1||S0===Y0||S0===Z0||S0===b0||(S0===p$1||S0===P0||S0===O0||S0===y5)&&(d5($,J)!=null||u5($,J,O)!=null)||S0>=r$1&&S0<=o&&u5($,J,O)!=null;if(!_0){U+=`${$.slice(y0,O)}
17372
+ `,J=e($,O);continue}}break}if(K.push({contentCol:G,raw:U,hasBlankAfter:z,isEmpty:W}),K.length===0)return null;var a=H;if(!a)for(var w0=0;w0<K.length;w0++){if(K[w0].hasBlankAfter&&w0<K.length-1){a=true;break}if(!K[w0].isEmpty){for(var z0=K[w0].raw,F0=z0.length,M0=0,f0=false,v0=false,k0=false,h0=false,p0=0,n=0,N0=-1;M0<F0;){var i=z0.indexOf(`
17373
+ `,M0);if(i<0&&(i=F0),h0){L0(z0,M0,i);for(var x0=z0.slice(M0+Q0,i),R=0;R<x0.length&&x0.charCodeAt(R)===p0;)R++;R>=n&&x0.slice(R).trim()===""&&(h0=false),M0=i<F0?i+1:F0;continue}if(e0(z0,M0,i)){N0>=0?k0=true:f0&&(v0=true),M0=i<F0?i+1:F0;continue}if(L0(z0,M0,i),N0>=0){if(U0>=N0){M0=i<F0?i+1:F0;continue}var J0=u5(z0,M0,i);if(J0&&J0.markerCol<N0&&J0.contentCol<=N0){M0=i<F0?i+1:F0;continue}if(J0){M0=i<F0?i+1:F0;continue}N0=-1,k0&&(v0=true,k0=false);}var a0=z0.slice(M0+Q0,i),q5=a0.charCodeAt(0);if((q5===Z0||q5===b0)&&U0<=3){for(var $0=0;$0<a0.length&&a0.charCodeAt($0)===q5;)$0++;if($0>=3){if(v0&&f0){a=true;break}h0=true,p0=q5,n=$0,f0=true,M0=i<F0?i+1:F0;continue}}var C0=U0<=3?u5(z0,M0,i):null;if(C0&&f0){if(v0){a=true;break}N0=C0.contentCol,k0=false,M0=i<F0?i+1:F0,f0=true;continue}if(v0){a=true;break}f0=true,M0=i<F0?i+1:F0;}if(a)break}}for(var t=[],d0=0;d0<K.length;d0++){for(var n0=K[d0],$5=n0.raw,l0=$5.length;l0>0&&$5.charCodeAt(l0-1)===g;)l0--;var s0=l0<$5.length?$5.slice(0,l0):$5,r5=null;if(s0.length>=3&&s0.charCodeAt(0)===A0){var x5=s0[1];(x5===" "||x5==="x"||x5==="X")&&s0.charCodeAt(2)===J5&&(r5={type:B$2.gfmTask,completed:x5==="x"||x5==="X"},s0=s0.slice(3));}var R0;if(n0.isEmpty&&s0.trim()==="")R0=[];else if(a){var o5=Z.inList;Z.inList=true;var w9=Z.i;Z.i=w9||d0!==K.length-1,R0=c5(s0,Z,X),Z.i=w9,Z.inList=o5;}else {var b5=Z.inList;Z.inList=true;var i5=Z.i;if(Z.i=i5||d0!==K.length-1,R0=c5(s0,Z,X),Z.i=i5,Z.inList=b5,R0.length===1&&R0[0].type===B$2.paragraph)R0=R0[0].children;else if(Z.p){var E5=[];Z.p.push({src:R0,dest:E5,unwrap:true}),R0=E5;}else {for(var j5=[],Z5=0;Z5<R0.length;Z5++)if(R0[Z5].type===B$2.paragraph)for(var B5=R0[Z5].children,V9=0;V9<B5.length;V9++)j5.push(B5[V9]);else j5.push(R0[Z5]);R0=j5;}}if(r5){var a5=[r5,{type:B$2.text,text:" "}];if(Z.p)Z.p.push({src:R0,dest:a5,unwrap:false});else for(var A5=0;A5<R0.length;A5++)a5.push(R0[A5]);t.push(a5);}else t.push(R0);}return {node:{type:V.ordered?B$2.orderedList:B$2.unorderedList,start:V.ordered?V.start:void 0,items:t},end:J}}var l9=new Set(["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","search","section","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"]);function P5($,Q,Z){let X={};for(let[K,J]of Object.entries($)){let G=K.toLowerCase();if(G==="style"&&typeof J=="string"){let U={},W=[],z=0,H=0;for(let M=0;M<J.length;M++){let j=J.charCodeAt(M);j===z5?z++:j===F5?z--:j===j9&&z===0&&(W.push(J.slice(H,M)),H=M+1);}H<J.length&&W.push(J.slice(H));let F=false;W.forEach(M=>{let j=M.indexOf(":");if(j===-1)return;let _=M.slice(0,j).trim(),q=M.slice(j+1).trim();if(_&&q){if(/url\s*\(\s*(javascript|vbscript|data:(?!image\/))/i.test(q)){F=true;return}let D=_.indexOf("-")===-1?_:_.replace(/-([a-z])/g,(A,N)=>N.toUpperCase());U[D]=q;}}),!F&&Object.keys(U).length>0&&(X[K]=U);}else if((G==="href"||G==="src")&&Z?.sanitizer){let U=Z.sanitizer(J,Q,G);U!=null&&(X[K]=U);}else if(J==="")X[K]=true;else if(J.length>=2&&J.charCodeAt(0)===S5&&J.charCodeAt(J.length-1)===E9){var Y=J.slice(1,-1);if(Y.length>0){var V=Y.charCodeAt(0);if(V===A0||V===S5)try{X[K]=JSON.parse(Y);continue}catch{}}if(Y==="true"){X[K]=true;continue}if(Y==="false"){X[K]=false;continue}if(Z?.evalUnserializableExpressions)try{X[K]=(0,eval)(`(${Y})`);continue}catch{}X[K]=Y;}else X[K]=J;}return X}function p5($,Q,Z){let X=Q.length;if(X===0)return Z;var Y=Q.charCodeAt(0),V=Y>=h$1&&Y<=u$1||Y>=V0&&Y<=q0;if(!V){for(var K=String.fromCharCode(Y),J=$.length-X,G=Z;G<=J;){var U=$.indexOf(K,G);if(U===-1||U>J)return -1;for(var W=true,z=1;z<X;z++){var H=$.charCodeAt(U+z),F=Q.charCodeAt(z);if(H>=h$1&&H<=u$1&&(H+=U5),F>=h$1&&F<=u$1&&(F+=U5),H!==F){W=false;break}}if(W)return U;G=U+1;}return -1}Y>=h$1&&Y<=u$1&&(Y+=U5);for(let j=Z;j<=$.length-X;j++){var M=$.charCodeAt(j);if(M>=h$1&&M<=u$1&&(M+=U5),M!==Y)continue;let _=true;for(let q=1;q<X;q++){let D=$.charCodeAt(j+q),A=Q.charCodeAt(q);if(D>=h$1&&D<=u$1&&(D+=U5),A>=h$1&&A<=u$1&&(A+=U5),D!==A){_=false;break}}if(_)return j}return -1}function o6($,Q,Z){let X=Q.length;var Y=Q.charCodeAt(0);Y>=h$1&&Y<=u$1&&(Y+=U5);for(let K=Math.min(Z,$.length-X);K>=0;K--){var V=$.charCodeAt(K);if(V>=h$1&&V<=u$1&&(V+=U5),V!==Y)continue;let J=true;for(let G=1;G<X;G++){let U=$.charCodeAt(K+G),W=Q.charCodeAt(G);if(U>=h$1&&U<=u$1&&(U+=U5),W>=h$1&&W<=u$1&&(W+=U5),U!==W){J=false;break}}if(J)return K}return -1}var r9=-1;function _$($,Q,Z){let X=Z.toLowerCase(),Y=`<${X}`,V=`</${X}`,K=1,J=Q,G=$.length;for(r9=-1;J<G&&K>0;){let z=p5($,Y,J),H=p5($,V,J);if(H===-1)return -1;if(z!==-1&&z<H){let F=w5($,z);F?(F.tag.toLowerCase()===X&&!F.f&&!F.n&&!Q9(F.tag)&&K++,J=F.end):J=z+1;}else {var U=H+V.length,W=U<G?$.charCodeAt(U):62;if((W===l$1||W===I||W===w||W===g)&&(K--,K===0)){r9=H;let F=H+V.length;for(;F<G&&$.charCodeAt(F)!==l$1;)F++;return F+1}J=H+1;}}return -1}function o4($,Q,Z,X){if(X.ignoreHTMLBlocks||X.disableParsingRawHTML)return null;var Y=G0($,Q);if(L0($,Q,Y),U0>3&&!Z.inHTML)return null;var V=Q+Q0;if($.charCodeAt(V)!==Y0)return null;var K=$.indexOf(">",V+1);if(K!==-1&&K<Y){var J=$.slice(V+1,K);if(/^[a-zA-Z][a-zA-Z0-9+.-]*:/.test(J)||/^[^\s@]+@[^\s@]+$/.test(J))return null}var G=i6($,V);if(G>=1&&G<=5){var U=$.length;if(G===1){for(var W=$.length,z=0;z<D$.length;z++){var H=p5($,`</${D$[z]}>`,V);H>=0&&H<W&&(W=H);}if(W<$.length){var F=$.indexOf(">",W);U=F>=0?e($,F+1):$.length;}}else {var M=G===2?"-->":G===3?"?>":G===4?">":"]]>",j=$.indexOf(M,V);j>=0&&(U=e($,j+M.length));}var _=$.slice(V,U);if(G>=2)return {node:{type:B$2.htmlComment,text:_,s:false,raw:true},end:U};var q="div",D=_.match(/^<\/?([a-zA-Z][a-zA-Z0-9-]*)/);D&&(q=D[1]);var A=w5($,V),N={},L;A&&!A.f&&(N=P5(A.attrs,q,X),L=A.g+A.b);var O=[],P=q.toLowerCase(),v=`</${P}`,b=p5(_,v,0),k="",x,T,f;if(A?.f){f=_.slice(0,A.end-V);for(var y=_.slice(A.end-V);y.length>0&&y.charCodeAt(y.length-1)===g;)y=y.slice(0,-1);y&&(T=G5(y));}else if(A&&!A.f){var C=A.end-V;if(b===-1){for(var E=_;E.length>0&&E.charCodeAt(E.length-1)===g;)E=E.slice(0,-1);x=G5(E);}else {var S=C;_.charCodeAt(S)===g&&S++;for(var s=b;s>S;){var X0=_.charCodeAt(s-1);if(X0!==I&&X0!==w&&X0!==g&&X0!==v5)break;s--;}var I0=_.slice(S,s);I0&&(T=G5(I0));for(var d=_.slice(b);d.length>0&&d.charCodeAt(d.length-1)===g;)d=d.slice(0,-1);f=G5(d),k=_.slice(C,b).trim();}}var u0=A?A.f:false;return {node:{type:B$2.htmlBlock,tag:q,attrs:N,b:L,children:O,e:T,h:f,j:x,text:k,c:true,a:u0},end:U}}if(G===6||G===7){var B0=N4($,Q),W0=B0<$.length?B0:$.length,H0=$.slice(V,W0),D0=B0<$.length?e($,B0):$.length,m=w5($,V);if(m){var c=m.tag,K0=c.toLowerCase(),y0=m.f;if(y0){var S0=$.slice(m.end,W0);return {node:{type:B$2.htmlBlock,tag:c,attrs:{},children:[],h:$.slice(V,m.end),e:S0?G5(S0):void 0,text:S0,c:true,a:true},end:D0}}if(m.n||Q9(c))return {node:{type:B$2.htmlBlock,tag:c,attrs:P5(m.attrs,c,X),b:m.g+m.b,children:[],text:"",c:false,a:false},end:m.end<$.length&&$.charCodeAt(m.end)===g?m.end+1:m.end};var _0=Z.d||0,a=$.slice(V,W0),w0=-1,z0=-1,F0=false;if(_0<10){for(var M0=`</${K0}`,f0=m.end-V,v0=1,k0=f0;k0<a.length&&v0>0;){var h0=p5(a,`<${K0}`,k0),p0=p5(a,M0,k0);if(p0===-1)break;if(h0!==-1&&h0<p0){var n=h0+K0.length+1;if(n<a.length){var N0=a.charCodeAt(n);(N0===I||N0===w||N0===g||N0===l$1||N0===j0)&&v0++;}k0=h0+1;}else {var i=p0+M0.length;if(i<a.length){var x0=a.charCodeAt(i);if((x0===l$1||x0===I||x0===w||x0===g)&&(v0--,v0===0)){w0=p0;for(var R=i;R<a.length&&a.charCodeAt(R)!==l$1;)R++;z0=R+1;break}}else if(v0--,v0===0){w0=p0,z0=a.length;break}k0=p0+1;}}if(w0===-1&&!m.f&&(G===6||m.u)){var J0=_$($,m.end,K0);if(J0!==-1){for(var a0=r9,q5=m.end,$0=false,C0=false,t=false,d0=0,n0=false,$5=false,l0=q5;l0<a0;){var s0=$.charCodeAt(l0);if(s0===g)$5&&($0=true),n0||d0++,$5=true,l0++;else if(s0===I||s0===w)l0++;else {if(!n0&&(n0=true,d0>=2&&s0===Y0)){t=true;break}if($5=false,s0===Y0){var r5=$.charCodeAt(l0+1)|32;if((r5===x9||r5===Y$||r5===s5)&&(j4.lastIndex=l0,j4.test($))){C0=true;break}}l0++;}}if($0&&!t&&!C0){var x5=G0($,J0);W0=x5,D0=e($,x5),a=$.slice(V,W0),H0=$.slice(V,W0),w0=a0-V,z0=J0-V,F0=true;}}}}var R0=m.b.indexOf(`
17374
+ `)!==-1||m.g.indexOf(`
17375
+ `)!==-1,o5=false;if(w0!==-1){var w9=a.slice(z0).trim();o5=w9.length===0;}var b5=false,i5=W0,E5=D0;if(w0!==-1){var j5=V+z0,Z5=G0($,j5-1);if(j5<Z5){for(var B5=j5;B5<Z5&&($.charCodeAt(B5)===I||$.charCodeAt(B5)===w);)B5++;if(B5<Z5&&$.charCodeAt(B5)===Y0){var V9=w5($,B5);V9&&!V9.f&&(b5=true,i5=j5,E5=j5,o5=true);}}if(!b5){var a5=e($,Z5);if(a5<W0){for(var A5=a5;A5<W0&&($.charCodeAt(A5)===I||$.charCodeAt(A5)===w);)A5++;if(A5<W0&&$.charCodeAt(A5)===Y0){var s4=w5($,A5);s4&&(b5=true,i5=Z5,E5=a5,o5=true);}}}if(!b5&&Z.inHTML){b5=true,i5=Z5,E5=e($,Z5);var t4=$.slice(j5,Z5).trim();o5=t4.length===0;}}var K9=[],Y5="";if(w0!==-1){Y5=a.slice(m.end-V,w0);var J9=Y5.trim();if(J9){var{inline:e4,inHTML:$6,d:Z6}=Z;Z.inHTML=true,Z.d=_0+1;var Q6=K0==="p";if(Q6)Z.inline=true,K9=W9(J9,false,Z,X);else {var S$=Y5.indexOf(`
17376
+
17377
+ `)!==-1,k$=F$.test(J9),a9=B4.test(J9),X6=S$||k$||Z.inHTML&&a9,Y6=Y5.length>=2&&Y5.charCodeAt(0)===g&&Y5.charCodeAt(Y5.length-1)===g&&!S$;Y6&&!k$&&!a9?K9=[{type:B$2.text,text:J9}]:X6||a9?(Z.inline=false,K9=c5(Y5,Z,X)):(Z.inline=true,K9=W9(J9,false,Z,X));}Z.inline=e4,Z.inHTML=$6,Z.d=Z6;}}var x$=false;if(G===6&&w0!==-1&&!Z.inHTML&&!R0){var V6=/<[a-zA-Z][^>]*>/.test(Y5),K6=Y5.indexOf(`
17378
+
17379
+ `)!==-1||F$.test(Y5);V6&&!K6&&(x$=true);}var J6=!F0&&(Z.inHTML||G===7||R0||!o5||x$);if(J6){var z9,_5,E$=false;if(w0!==-1&&b5){var g$=false;if(Z.inHTML&&z0<a.length){for(var R9=z0;R9<a.length&&a.charCodeAt(R9)!==g;)R9++;var n9=a.slice(z0,R9).trim();g$=n9.length>1&&n9.charCodeAt(0)===Y0&&n9.charCodeAt(1)!==j0;}_5=g$?a.slice(m.end-V):Y5,E$=true;}else (G===7||Z.inHTML)&&w0!==-1?(_5=a.slice(m.end-V),_5.charCodeAt(0)===g&&(_5=_5.slice(1))):b5?z9=$.slice(V,i5):R0?z9=H0:(_5=a.slice(m.end-V),_5.charCodeAt(0)===g&&(_5=_5.slice(1)));var C$=z9!==void 0,s9=G5(z9===void 0?_5||"":z9),f$={type:B$2.htmlBlock,tag:c,attrs:P5(m.attrs,c,X),b:m.g+m.b,children:K9,e:C$?void 0:s9,j:C$?s9:void 0,text:s9,c:true,a:false};return E$&&(f$.x=true),{node:f$,end:E5}}var h$=G5(Y5);return {node:{type:B$2.htmlBlock,tag:c,attrs:P5(m.attrs,c,X),b:m.g+m.b,children:K9,e:F0?void 0:h$,text:h$,c:false,a:false},end:E5}}var b9=H0.match(/^<(\/?)([a-zA-Z][a-zA-Z0-9-]*)/),U6=b9?b9[2]:"div",t9=b9?b9[1]==="/":false,e9,m$,u$,L9="";if(t9){var $$=H0.indexOf(">");$$===-1?e9=H0:(e9=H0.slice(0,$$+1),L9=H0.slice($$+1),L9&&(m$=G5(L9)));}else u$=G5(H0);return {node:{type:B$2.htmlBlock,tag:U6,attrs:{},children:[],e:m$,h:e9,j:u$,text:t9?L9:H0,c:true,a:t9},end:D0}}var r0=w5($,V);if(!r0)return null;var g5=r0.tag,Z$=g5.toLowerCase(),p$=g5.charCodeAt(0),T9=p$>=h$1&&p$<=u$1;if(!(T9||l9.has(Z$)||N9.has(Z$)||Z$.includes("-")))return null;if(r0.f)return {node:{type:B$2.htmlSelfClosing,tag:g5,attrs:{},h:$.slice(V,r0.end),a:true},end:r0.end};var n5=_$($,r0.end,g5),F9=[];if(n5!==-1){var G6=r9,y9=$.slice(r0.end,G6),S9=y9.trim();if(S9){var q6=y9.indexOf(`
17380
+
17381
+ `)!==-1,W6=F$.test(S9),z6=B4.test(S9),F6=Z.inline,H6=Z.inHTML,M6=Z.d;Z.inHTML=true,Z.d=(Z.d||0)+1,q6||W6||z6?(Z.inline=false,F9=c5(y9,Z,X)):(Z.inline=true,F9=W9(S9,false,Z,X)),Z.inline=F6,Z.inHTML=H6,Z.d=M6;}var O6=G0($,n5),D6=$.slice(n5,O6).trim(),Q$=D6?n5:e($,n5),d$=T9?$.slice(V,n5):$.slice(V,Q$);return {node:{type:B$2.htmlBlock,tag:g5,attrs:P5(r0.attrs,g5,X),b:r0.g+r0.b,children:F9,j:G5(d$),text:T9?y9:d$,c:true,a:false},end:Q$}}var H9=N4($,r0.end),A6=H9<$.length?e($,H9):H9,X$=$.slice(r0.end,H9);if(X$.trim()){var{inline:j6,inHTML:B6,d:_6}=Z;Z.inline=false,Z.inHTML=true,Z.d=(Z.d||0)+1,F9=c5(X$,Z,X),Z.inline=j6,Z.inHTML=B6,Z.d=_6;}var v6=$.slice(r0.end,H9);return {node:{type:B$2.htmlBlock,tag:g5,attrs:P5(r0.attrs,g5,X),b:r0.g+r0.b,children:F9,e:G5(v6),text:X$,c:true,a:false},end:A6}}function i6($,Q){if($.charCodeAt(Q)!==Y0)return 0;var Z=Q+1,X=$.length;if($.charCodeAt(Z)===c0&&$.charCodeAt(Z+1)===p$1&&$.charCodeAt(Z+2)===p$1)return 2;if($.charCodeAt(Z)===t5)return 3;if($.charCodeAt(Z)===c0){var Y=$.charCodeAt(Z+1);if(Y>=h$1&&Y<=u$1)return 4;if($.slice(Z+1,Z+8)==="[CDATA[")return 5}for(var V=$.charCodeAt(Z)===j0,K=V?Z+1:Z,J=K;J<X;){var G=$.charCodeAt(J);if(G>=h$1&&G<=u$1||G>=V0&&G<=q0||G>=r$1&&G<=o||G===p$1)J++;else break}if(J===K)return 0;var U=$.slice(K,J);if(N9.has(U.toLowerCase())){if(V)return 0;var W=$.charCodeAt(J);return W===I||W===w||W===l$1||W===g||J>=X?1:0}if(l9.has(U.toLowerCase())){if(V){for(var z=J;z<X&&($.charCodeAt(z)===I||$.charCodeAt(z)===w);)z++;return z<X&&$.charCodeAt(z)===l$1?6:0}var H=J<X?$.charCodeAt(J):-1;return H===I||H===w||H===l$1||H===g||H===j0||H===-1?6:0}if(V){for(var F=J;F<X&&($.charCodeAt(F)===I||$.charCodeAt(F)===w);)F++;if(F<X&&$.charCodeAt(F)===l$1){var M=G0($,Q),j=$.slice(F+1,M).trim();if(j==="")return 7}}else {var _=G0($,Q),q=w5($,Q);if(q&&q.end<=_){var D=$.slice(q.end,_).trim();if(D==="")return 7}}return 0}function y4($,Q,Z){for(var X=0,Y=$.length;X<Y&&($.charCodeAt(X)===I||$.charCodeAt(X)===w);)X++;for(;Y>X&&($.charCodeAt(Y-1)===I||$.charCodeAt(Y-1)===w);)Y--;X<Y&&$.charCodeAt(X)===E0&&X++,Y>X&&$.charCodeAt(Y-1)===E0&&(Y-2<X||$.charCodeAt(Y-2)!==T0)&&Y--;for(var V=[],K=X,J=false,G=[],U=X;U<Y;){var W=$.charCodeAt(U);if(W===T0&&U+1<Y){$.charCodeAt(U+1)===E0?(J||(J=true,G=[]),G.push($.slice(K,U)),G.push("|"),U+=2,K=U):U+=2;continue}if(W===Z0){for(var z=0;U<Y&&$.charCodeAt(U)===Z0;)z++,U++;for(var H=false;U<Y&&!H;){for(var F=0;U<Y&&$.charCodeAt(U)===Z0;)F++,U++;F===z?H=true:F===0&&U++;}continue}if(W===E0){var M=J?(G.push($.slice(K,U)),G.join("")):$.slice(K,U);V.push(M.trim()),U++,K=U,J=false,G=[];continue}U++;}var j=J?(G.push($.slice(K,Y)),G.join("")):$.slice(K,Y);return V.push(j.trim()),V.map(_=>{var q=_.indexOf("\\|")===-1?_:_.replace(/\\\|/g,"|");return q?W9(q,false,Q,Z):[]})}function S4($,Q,Z,X){let Y=G0($,Q);var V=$.indexOf("|",Q);if(V<0||V>=Y)return null;let K=e($,Y);if(K>=$.length)return null;let J=G0($,K);if(!c4($,K,J))return null;let G=$.slice(Q,Y),U=$.slice(K,J);for(var W=[],z=0,H=U.length;z<H&&(U.charCodeAt(z)===I||U.charCodeAt(z)===w);)z++;for(z<H&&U.charCodeAt(z)===E0&&z++;z<H;){for(;z<H&&(U.charCodeAt(z)===I||U.charCodeAt(z)===w);)z++;if(z>=H||U.charCodeAt(z)===E0)break;var F=U.charCodeAt(z)===m0;for(F&&z++;z<H&&U.charCodeAt(z)===p$1;)z++;var M=z<H&&U.charCodeAt(z)===m0;for(M&&z++,W.push(F&&M?"center":M?"right":F?"left":null);z<H&&(U.charCodeAt(z)===I||U.charCodeAt(z)===w);)z++;z<H&&U.charCodeAt(z)===E0&&z++;}let j=y4(G,Z,X);if(W.length!==j.length)return null;let _=[],q=e($,J);for(;q<$.length;){let P=G0($,q),v=$.slice(q,P);if(e0($,q,P))break;if(L0($,q,P),U0<4){var D=$.charCodeAt(q+Q0);if(D===l$1||D===V5||(D===p$1||D===P0||D===O0)&&d5($,q))break;if(D===Z0||D===b0){for(var A=q+Q0,N=0;A<P&&$.charCodeAt(A)===D;)N++,A++;if(N>=3)break}}_.push(y4(v,Z,X)),q=e($,P);}if(X.optimizeForStreaming&&_.length===0)return null;for(var L=j.length,O=0;O<_.length;O++)if(_[O].length<L)for(;_[O].length<L;)_[O].push([]);else _[O].length>L&&(_[O].length=L);return {node:{type:B$2.table,header:j,cells:_,align:W},end:q}}function a6($,Q,Z){var X=G0($,Q);if(L0($,Q,X),U0>3)return null;var Y=Q+Q0;if($.charCodeAt(Y)!==A0)return null;if(Y+1<$.length&&$.charCodeAt(Y+1)===W5){var V=n6($,Y,Z);return V||null}Z.refs||(Z.refs={});var K=l4($,Y,Z.refs);return K===null?null:{node:{type:B$2.refCollection},end:K}}function n6($,Q,Z){var X=$.length;if($.charCodeAt(Q)!==A0||Q+1>=X||$.charCodeAt(Q+1)!==W5)return null;for(var Y=Q+2,V=Y;Y<X&&$.charCodeAt(Y)!==J5;){if($.charCodeAt(Y)===g)return null;Y++;}if(Y>=X)return null;var K=`^${$.slice(V,Y)}`.toLowerCase();if(Y++,Y>=X||$.charCodeAt(Y)!==m0)return null;for(Y++;Y<X&&($.charCodeAt(Y)===I||$.charCodeAt(Y)===w);)Y++;if(Y<X&&$.charCodeAt(Y)===g)for(Y++;Y<X&&($.charCodeAt(Y)===I||$.charCodeAt(Y)===w);)Y++;var J=$.indexOf(`
17382
+ `,Y);J<0&&(J=X);for(var G=$.slice(Y,J).trim(),U=J<X?J+1:X;U<X;){var W=G0($,U);if(L0($,U,W),U0>=2&&!e0($,U,W))G+=`
17383
+ ${$.slice(U,W)}`,U=e($,W);else if(e0($,U,W)){var z=e($,W);if(z<X){var H=G0($,z);if(L0($,z,H),U0>=2){G+=`
17384
+ `,U=e($,W);continue}}break}else break}var F=Z.refs;return F&&!F[K]&&(F[K]={target:G,title:void 0}),{node:{type:B$2.footnote},end:U}}function s6($,Q,Z,X){let Y=Q,V=0,K=0,J=-1;for(;Y<$.length;){let f=J>=0?J:G0($,Y);if(J=-1,e0($,Y,f))break;if(L0($,Y,f),U0<4&&K>0&&!Z.l){let C=$.charCodeAt(Y+Q0);if(C===K5||C===p$1){let E=Y+Q0;for(;E<f&&$.charCodeAt(E)===C;)E++;for(;E<f&&($.charCodeAt(E)===I||$.charCodeAt(E)===w);)E++;if(E>=f){V=C===K5?1:2,Y=e($,f);break}}}K=f;let y=e($,f);if(y<$.length){if($.charCodeAt(y)===g9){var G=G0($,y);Y=e($,G),K=G;continue}let C=G0($,y);if(J=C,L0($,y,C),U0<4){let E=$.charCodeAt(y+Q0);if(E===l$1){Y=y;break}if(E===V5){for(var U=y+Q0,W=0;U<C&&$.charCodeAt(U)===V5&&W<=6;)W++,U++;if(W>=1&&W<=6&&(U>=C||$.charCodeAt(U)===I||$.charCodeAt(U)===w)){Y=y;break}}if(E===Z0||E===b0){for(var z=y+Q0,H=0;z<C&&$.charCodeAt(z)===E;)H++,z++;if(H>=3){Y=y;break}}if(E===Y0){var F=y+Q0+1,M=F<C?$.charCodeAt(F):0,j=M===c0||M===t5;if(!j&&M===j0){for(var _=F+1,q=_;q<C&&($.charCodeAt(q)>=h$1&&$.charCodeAt(q)<=u$1||$.charCodeAt(q)>=V0&&$.charCodeAt(q)<=q0||$.charCodeAt(q)>=r$1&&$.charCodeAt(q)<=o||$.charCodeAt(q)===p$1);)q++;q>_&&(j=l9.has($.slice(_,q).toLowerCase()));}else if(!j){for(var D=F;D<C&&($.charCodeAt(D)>=h$1&&$.charCodeAt(D)<=u$1||$.charCodeAt(D)>=V0&&$.charCodeAt(D)<=q0||$.charCodeAt(D)>=r$1&&$.charCodeAt(D)<=o||$.charCodeAt(D)===p$1);)D++;if(D>F){var A=$.slice(F,D).toLowerCase();j=l9.has(A)||N9.has(A);}}if(j&&o4($,y,Z,X)){Y=y;break}}if(E===p$1||E===P0||E===y5){let S=y+Q0+1;if(S<C&&($.charCodeAt(S)===I||$.charCodeAt(S)===w)){var N=v9($,S,C);if(N<C&&!d5($,y)){Y=y;break}}}if(E>=r$1&&E<=o){let S=y+Q0;for(;S<C&&$.charCodeAt(S)>=r$1&&$.charCodeAt(S)<=o;)S++;if(S<C&&($.charCodeAt(S)===Q5||$.charCodeAt(S)===F5)&&S-(y+Q0)===1&&$.charCodeAt(y+Q0)===49){var L=S+1;if(L<C&&($.charCodeAt(L)===I||$.charCodeAt(L)===w)){var O=v9($,L,C);if(O<C){Y=y;break}}}}if(E===E0){let S=e($,C);if(S<$.length){let s=G0($,S);if(c4($,S,s)){Y=y;break}}}if((E===p$1||E===P0||E===O0)&&d5($,y)){if(E!==p$1){Y=y;break}let s=y+Q0;for(;s<C&&$.charCodeAt(s)===p$1;)s++;for(;s<C&&($.charCodeAt(s)===I||$.charCodeAt(s)===w);)s++;if(s<C){Y=y;break}}}}Y=e($,f);}for(var P=V?K:Y;P>Q&&($.charCodeAt(P-1)===g||$.charCodeAt(P-1)===v5||$.charCodeAt(P-1)===I||$.charCodeAt(P-1)===w);)P--;for(var v=Q;v<P&&($.charCodeAt(v)===I||$.charCodeAt(v)===w);)v++;if(v>=P)return null;for(var b=false,k=v;k<P;k++)if($.charCodeAt(k)===g9){b=true;break}var x=b?$.slice(v,P).replace(/\u001E/g,""):$.slice(v,P);if(!x)return null;let T=W9(x,true,Z,X);return V?{node:{type:B$2.heading,level:V,children:T,id:""},end:Y}:{node:{type:B$2.paragraph,children:T},end:Y}}function W9($,Q,Z,X){var Y=Z.t;if(!Y){var V=Z.k;Z.k=Q;var K=R5($,0,$.length,Z,X);return Z.k=V,K}var J=[];return Y.push({dest:J,text:$,breaks:Q,inline:Z.inline,inAnchor:Z.inAnchor,inHTML:Z.inHTML,htmlDepth:Z.d,inList:Z.inList,inBlockQuote:Z.inBlockQuote,noSetext:Z.l,depth:Z.o}),J}function t6($,Q,Z){if($.charCodeAt(Q)!==Z0)return null;let X=l5($,Q,Z,96),Y=Q+X;for(;Y<Z;){let V=$.indexOf("`",Y);if(V<0||V>=Z)return null;let K=l5($,V,Z,96);if(K===X){let J=$.slice(Q+X,V);return J.indexOf(`
17385
+ `)!==-1&&(J=J.replace(/\n/g," ")),J.length>0&&J[0]===" "&&J.at(-1)===" "&&J.trim().length>0&&(J=J.slice(1,-1)),{node:{type:B$2.codeInline,text:J},end:V+K}}Y=V+K;}return null}function b$($,Q,Z){if($.charCodeAt(Q)!==Z0)return Q;let X=l5($,Q,Z,96),Y=Q+X;for(;Y<Z;){let V=$.indexOf("`",Y);if(V<0||V>=Z)return Q;let K=l5($,V,Z,96);if(K===X)return V+K;Y=V+K;}return Q}function e6($,Q,Z){if($.charCodeAt(Q)!==Y0)return Q;if(Q+1<Z&&$.charCodeAt(Q+1)===j0){let U=Q+2;for(;U<Z&&$.charCodeAt(U)!==l$1;)U++;return U<Z?U+1:Q}if(Q+3<Z&&$.charCodeAt(Q+1)===c0&&$.charCodeAt(Q+2)===p$1&&$.charCodeAt(Q+3)===p$1){let U=$.indexOf("-->",Q+4);return U>=0?U+3:Q}let X=Q+1,Y=X;for(;X<Z;){let U=$.charCodeAt(X);if(U>=h$1&&U<=u$1||U>=V0&&U<=q0||U>=r$1&&U<=o||U===p$1)X++;else break}if(X===Y)return Q;let V=$.slice(Y,X).toLowerCase(),K=false;for(;X<Z;){let U=$.charCodeAt(X);if(U===l$1){X++;break}if(U===j0&&X+1<Z&&$.charCodeAt(X+1)===l$1){X+=2,K=true;break}if(U===T5||U===f5){var J=U;for(X++;X<Z&&$.charCodeAt(X)!==J;)X++;X<Z&&X++;continue}if(U===g)return Q;X++;}if(K||Q9(V))return X;let G=1;for(;X<Z&&G>0;)if($.charCodeAt(X)===Y0)if(X+1<Z&&$.charCodeAt(X+1)===j0){let U=X+2,W=U;for(;W<Z&&($.charCodeAt(W)>=h$1&&$.charCodeAt(W)<=u$1||$.charCodeAt(W)>=V0&&$.charCodeAt(W)<=q0);)W++;if($.slice(U,W).toLowerCase()===V){for(;W<Z&&$.charCodeAt(W)!==l$1;)W++;if(W<Z&&W++,G--,G===0)return W}X=W;}else {let U=X+1,W=U;for(;W<Z&&($.charCodeAt(W)>=h$1&&$.charCodeAt(W)<=u$1||$.charCodeAt(W)>=V0&&$.charCodeAt(W)<=q0);)W++;$.slice(U,W).toLowerCase()===V&&G++,X++;}else X++;return X}function $Z($,Q,Z,X,Y){if($.charCodeAt(Q)!==b0||Q+1>=Z||$.charCodeAt(Q+1)!==b0)return null;let V=Q+2;for(;V+1<Z;){let K=$.charCodeAt(V);if(K===Z0){let J=b$($,V,Z);if(J>V){V=J;continue}}if(K===b0&&$.charCodeAt(V+1)===b0){let J=$.slice(Q+2,V),G=R5(J,0,J.length,X,Y);return {node:{type:B$2.textFormatted,tag:"del",children:G},end:V+2}}K===T0&&V+1<Z&&V++,V++;}return null}function ZZ($,Q,Z,X,Y){if($.charCodeAt(Q)!==K5||Q+1>=Z||$.charCodeAt(Q+1)!==K5)return null;let V=Q+2;for(;V+1<Z;){let K=$.charCodeAt(V);if(K===Z0){let J=b$($,V,Z);if(J>V){V=J;continue}}if(K===K5&&$.charCodeAt(V+1)===K5&&V>Q+2){let J=$.slice(Q+2,V),G=R5(J,0,J.length,X,Y);return {node:{type:B$2.textFormatted,tag:"mark",children:G},end:V+2}}K===T0&&V+1<Z&&V++,V++;}return null}function k4($,Q,Z){return $<U9?!!(R$($)&$9):K4.test(Q[Z])}function x4($,Q,Z){return $<U9?!!(R$($)&h5):J4.test(Q[Z])}function QZ($,Q,Z){var X=$.charCodeAt(Q);if(X!==P0&&X!==O0)return null;var Y=l5($,Q,Z,X);if(Y===0)return null;var V=Q>0?$.charCodeAt(Q-1):32,K=Q+Y<Z?$.charCodeAt(Q+Y):32,J=x4(V,$,Q-1),G=x4(K,$,Q+Y),U=Q>0?k4(V,$,Q-1):false,W=Q+Y<Z?k4(K,$,Q+Y):false,z=!G&&(!W||J||U),H=!J&&(!U||G||W),F,M;return X===P0?(F=z,M=H):(F=z&&(!H||U),M=H&&(!z||W)),{len:Y,canOpen:F,canClose:M}}function XZ($,Q,Z,X){if(Q.length!==0){for(var Y=$.length,V=Array(Y),K=null,J=null,G=0;G<Y;G++){var U={node:$[G],prev:J,next:null};J?J.next=U:K=U,V[G]=U,J=U;}for(var W=Array(Q.length),z=0;z<Q.length;z++)W[z]=V[Q[z].idx];for(var H=[],F=0;F<12;F++)H[F]=-1;for(var M=0;M<Q.length;){var j=Q[M];if(!(j.active&&j.canClose)){M++;continue}for(var _=j.ch===P0?0:1,q=_*6+j.len%3*2+(j.canOpen?1:0),D=H[q]===void 0?-1:H[q],A=-1,N=M-1;N>D;N--){var L=Q[N];if(!(!L.active||L.ch!==j.ch||!L.canOpen)&&!((j.canOpen||L.canClose)&&(L.len+j.len)%3===0&&L.len%3!==0)){A=N;break}}if(A<0){H[q]=M-1,!j.canOpen&&(j.active=false),M++;continue}var O=Q[A],P=O.len>=2&&j.len>=2,v=P?2:1;O.len-=v,j.len-=v;var b=W[A],k=W[M],x=b.node,T=k.node;x.text=x.text.slice(0,x.text.length-v),T.text=T.text.slice(v);for(var f=[],y=b.next;y&&y!==k;)f.push(y.node),y=y.next;var C={type:B$2.textFormatted,tag:P?"strong":"em",children:f},E={node:C,prev:b,next:k};b.next=E,k.prev=E;for(var S=A+1;S<M;S++)Q[S].active=false;if(O.len===0&&(O.active=false,x.text==="")){var s=b.prev;E.prev=s,s?s.next=E:K=E;}if(j.len===0){if(j.active=false,T.text===""){var X0=k.next;E.next=X0,X0&&(X0.prev=E);}}else continue;M++;}for(var I0=0,d=K;d;){var u0=d.node;if(u0.type===B$2.text){var B0=u0;if(B0.text===""){d=d.next;continue}if(I0>0&&$[I0-1].type===B$2.text){$[I0-1].text+=B0.text,d=d.next;continue}}$[I0++]=u0,d=d.next;}$.length=I0;}}function m9($,Q,Z,X){return Q($,Z,X)===null?null:$}var E4=0,v$=0,g4=0,I$=0,C4=0,N$=0,H$=0,O5=0;function YZ(){return H$===2147483647&&(v$=0,I$=0,N$=0,c9=0,H$=0),++H$}var M$=null,c9=0,u9=[],O$=256;function f4($,Q,Z,X,Y){let V=$.charCodeAt(Q)===c0,K=V?Q+1:Q;if($.charCodeAt(K)!==A0||I$===O5&&K>=g4)return null;var J=c9===O5?M$:null,G=J===null?0:J[K];if(G<0)return null;var U=G;if(G===0){var W=$.indexOf("]",K+1);if(W<0||W>=Z)return g4=K,I$=O5,null;U=K+1;var z=0;u9[z++]=K;for(var H=Z-K>=O$;U<Z&&z>0;){var F=$.charCodeAt(U);if(F===T0&&U+1<Z){U+=2;continue}if(F===Z0){var M=b$($,U,Z);if(M>U){U=M;continue}}if(F===Y0){var j=i4($,U,Z);if(j){U=j.end;continue}var _=e6($,U,Z);if(_>U){U=_;continue}}if(F===A0)u9[z++]=U;else if(F===J5){var q=u9[--z];J===null&&H&&U-K>=O$&&(J=M$=new Int32Array(Z),c9=O5),J!==null&&(J[q]=U+1);}U++;}if(z>0){if(J===null&&H&&U-K>=O$&&(J=M$=new Int32Array(Z),c9=O5),J!==null)for(;z>0;)J[u9[--z]]=-1;return null}}var D=U-1,A=$.slice(K+1,D),N=U<Z?$.charCodeAt(U):0,L=false;if(N===z5){var O=true;for(U++;U<Z&&($.charCodeAt(U)===I||$.charCodeAt(U)===g);)U++;var P="",v=U;if(U<Z&&$.charCodeAt(U)===Y0){for(U++,v=U;v<Z&&$.charCodeAt(v)!==l$1;){if($.charCodeAt(v)===T0&&v+1<Z){v+=2;continue}if($.charCodeAt(v)===g){O=false;break}v++;}O&&(v>=Z||$.charCodeAt(v)!==l$1)&&(O=false),O&&(P=$.slice(U,v),v++);}else if(O){var b=v$===O5?E4:-1;if(b>=0&&U>=b)O=false;else {for(var k=0,x=false;v<Z;){var T=$.charCodeAt(v);if(T===T0&&v+1<Z){v+=2;continue}if(T===z5)k++;else if(T===F5){if(x=true,k===0)break;k--;}else if(T===I||T===g)break;v++;}v>=Z&&!x&&(b<0||U<b)&&(E4=U,v$=O5),P=$.slice(U,v);}}if(O){for(U=v;U<Z&&($.charCodeAt(U)===I||$.charCodeAt(U)===g);)U++;var f;if(U<Z){var y=$.charCodeAt(U);if(y===T5||y===f5||y===z5){var C=y===z5?41:y;U++;for(var E=U;U<Z&&$.charCodeAt(U)!==C;)$.charCodeAt(U)===T0&&U+1<Z&&U++,U++;U>=Z?O=false:(f=$.slice(E,U),U++);}}if(O){for(;U<Z&&($.charCodeAt(U)===I||$.charCodeAt(U)===g);)U++;(U>=Z||$.charCodeAt(U)!==F5)&&(O=false);}}if(O){if(U++,P=I5(q9(P)),f!==void 0&&(f=I5(q9(f))),V){var S=R5(A,0,A.length,X,Y),s=o9(S);return {node:{type:B$2.image,target:m9(P,Y?.sanitizer||H5,"img","src"),alt:s,title:f},end:U}}var X0=X.inAnchor;X.inAnchor=true;var m=X0?[{type:B$2.text,text:A}]:R5(A,0,A.length,X,Y);return X.inAnchor=X0,!X.inAnchor&&P$(m)?null:{node:{type:B$2.link,target:m9(P,Y?.sanitizer||H5,"a","href"),title:f,children:m},end:U}}U=D+1,L=true;}var I0="",d=U;if(!L&&N===A0){var u0=U+1;d=u0;for(var B0=false;d<Z&&$.charCodeAt(d)!==J5;){if($.charCodeAt(d)===T0&&d+1<Z){d+=2;continue}if($.charCodeAt(d)===A0){B0=true;break}d++;}if(B0||d>=Z)return null;var W0=$.slice(u0,d);if(W0.trim())I0=p9(W0);else {if(I4(A))return null;I0=p9(A);}d+=1;}else {if(I4(A))return null;I0=p9(A);}var H0=X.refs?.[I0];if(!H0)return null;if(V)return {node:{type:B$2.image,target:m9(H0.target,Y?.sanitizer||H5,"img","src"),alt:o9(R5(A,0,A.length,X,Y)),title:H0.title},end:d};var D0=X.inAnchor;X.inAnchor=true;var m=D0?[{type:B$2.text,text:A}]:R5(A,0,A.length,X,Y);return X.inAnchor=D0,!X.inAnchor&&P$(m)?null:{node:{type:B$2.link,target:m9(H0.target,Y?.sanitizer||H5,"a","href"),title:H0.title,children:m},end:d}}function i4($,Q,Z){if($.charCodeAt(Q)!==Y0)return null;for(var X=Q+1;X<Z;){var Y=$.charCodeAt(X);if(Y===l$1)break;if(Y===I||Y===g||Y===v5||Y===Y0)return null;X++;}if(X>=Z||$.charCodeAt(X)!==l$1)return null;var V=$.slice(Q+1,X),K=V.match(/^([a-zA-Z][a-zA-Z0-9+.-]{1,31}):([^\x00-\x20]*)$/);return K?{node:{type:B$2.link,target:V,title:void 0,children:[{type:B$2.text,text:V}]},end:X+1}:V.indexOf("@")!==-1&&/^[a-zA-Z0-9.!#$%&'*+/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*$/.test(V)?{node:{type:B$2.link,target:`mailto:${V}`,title:void 0,children:[{type:B$2.text,text:V}]},end:X+1}:null}function VZ($,Q,Z,X){if($.charCodeAt(Q)!==A0||Q+1>=Z||$.charCodeAt(Q+1)!==W5||N$===O5&&Q>=C4)return null;let Y=Q+2;for(;Y<Z&&$.charCodeAt(Y)!==J5&&$.charCodeAt(Y)!==g;)Y++;if(Y>=Z)return C4=Q,N$=O5,null;if($.charCodeAt(Y)!==J5)return null;let V=$.slice(Q+2,Y);return V?{node:{type:B$2.footnoteReference,target:`#${N5(V)}`,text:V},end:Y+1}:null}function KZ($,Q,Z,X){if(X.disableBareUrls)return null;var Y="",V=false,K=$.charCodeAt(Q);if(K===A9||K===72?Q+8<=Z&&$.charCodeAt(Q+1)===s5&&$.charCodeAt(Q+2)===s5&&$.charCodeAt(Q+3)===x9&&($.charCodeAt(Q+4)===Y$&&$.charCodeAt(Q+5)===m0&&$.charCodeAt(Q+6)===j0&&$.charCodeAt(Q+7)===j0?Y="https://":$.charCodeAt(Q+4)===m0&&$.charCodeAt(Q+5)===j0&&$.charCodeAt(Q+6)===j0&&(Y="http://")):K===L5||K===70?Q+6<=Z&&$.charCodeAt(Q+1)===s5&&$.charCodeAt(Q+2)===x9&&$.charCodeAt(Q+3)===m0&&$.charCodeAt(Q+4)===j0&&$.charCodeAt(Q+5)===j0&&(Y="ftp://"):(K===C5||K===87)&&Q+4<=Z&&$.charCodeAt(Q+1)===C5&&$.charCodeAt(Q+2)===C5&&$.charCodeAt(Q+3)===Q5&&(Y="www.",V=true),!Y)return null;let J=Q+Y.length;for(;J<Z;){let O=$.charCodeAt(J);if(O===I||O===g||O===w||O===v5||O===Y0||O===l$1)break;J++;}for(var G=0,U=0,W=Q;W<J;W++){var z=$.charCodeAt(W);z===z5?G++:z===F5&&U++;}let H=J;for(;H>Q+Y.length;){let O=$.charCodeAt(H-1);if(O===Q5||O===r$||O===m0||O===c0||O===t5||O===F5||O===P0||O===O0||O===b0){if(O===F5){if(G>=U)break;U--;}H--;}else if(O===j9){for(var F=H-2;F>Q&&($.charCodeAt(F)>=h$1&&$.charCodeAt(F)<=u$1||$.charCodeAt(F)>=V0&&$.charCodeAt(F)<=q0||$.charCodeAt(F)>=r$1&&$.charCodeAt(F)<=o);)F--;F>=Q&&$.charCodeAt(F)===O9?H=F:H--;}else break}if(H<=Q+Y.length)return null;var M=Q+(V?4:Y.length),j=$.indexOf("/",M);if((j<0||j>H)&&(j=H),V&&$.indexOf(".",M)===-1)return null;for(var _=-1,q=-1,D=j-1;D>=M;D--)if($.charCodeAt(D)===Q5)if(_<0)_=D;else {q=D;break}for(var A=q>=0?q+1:M,D=A;D<j;D++)if($.charCodeAt(D)===O0)return null;var N=$.slice(Q,H),L=V?`http://${N}`:N;return {node:{type:B$2.link,target:L,title:void 0,children:[{type:B$2.text,text:N}]},end:H}}function JZ($,Q,Z,X){if(X.disableBareUrls)return null;for(var Y=Q,V=Y;Y<Z;){var K=$.charCodeAt(Y);if(K>=h$1&&K<=u$1||K>=V0&&K<=q0||K>=r$1&&K<=o||K===Q5||K===c0||K===V5||K===36||K===M9||K===O9||K===f5||K===P0||K===y5||K===j0||K===K5||K===t5||K===W5||K===O0||K===Z0||K===S5||K===E0||K===E9||K===b0||K===p$1)Y++;else break}if(Y===V||Y>=Z||$.charCodeAt(Y)!==k9)return null;Y++;for(var J=Y,G=-1,U=Y;Y<Z;){var K=$.charCodeAt(Y);if(K>=h$1&&K<=u$1||K>=V0&&K<=q0||K>=r$1&&K<=o)Y++;else if((K===p$1||K===O0)&&Y>J)Y++;else if(K===Q5){if(Y===J)break;var W=$.charCodeAt(Y-1);if(W===p$1||W===O0||Y-U>63)break;if(Y+1<Z){var z=$.charCodeAt(Y+1);if(z>=h$1&&z<=u$1||z>=V0&&z<=q0||z>=r$1&&z<=o)G=Y,U=Y+1,Y++;else break}else break}else break}if(Y-U>63||G<0)return null;var H=$.charCodeAt(Y-1);if(!(H>=h$1&&H<=u$1||H>=V0&&H<=q0||H>=r$1&&H<=o)||Y<=G+1)return null;for(var F=-1,M=G-1;M>=J;M--)if($.charCodeAt(M)===Q5){F=M;break}for(var j=F>=0?F+1:J,M=j;M<Y;M++)if($.charCodeAt(M)===O0)return null;var _=$.slice(Q,Y);return {node:{type:B$2.link,target:`mailto:${_}`,title:void 0,children:[{type:B$2.text,text:_}]},end:Y}}function P$($){for(var Q=0;Q<$.length;Q++)if($[Q].type===B$2.link||"children"in $[Q]&&Array.isArray($[Q].children)&&P$($[Q].children))return true;return false}function o9($,Q){for(var Z="",X=0;X<$.length;X++){var Y=$[X];Y.type===B$2.text?Z+=Y.text:Y.type===B$2.breakLine?Z+=" ":Y.type===B$2.codeInline||Y.type===B$2.footnoteReference?Z+=Y.text:"children"in Y&&Array.isArray(Y.children)?Z+=o9(Y.children,Q):!Q&&Y.type===B$2.image&&(Z+=Y.alt||"");}return Z}function w$($,Q,Z){for(var X=0;X<$.length;X++){var Y=$[X];if(Y.type===B$2.heading){var V=Y;V.id=u6(Z(o9(V.children,true)),Q);}if("children"in Y){var K=Y.children;Array.isArray(K)&&w$(K,Q,Z);}if((Y.type===B$2.orderedList||Y.type===B$2.unorderedList)&&Array.isArray(Y.items))for(var J=Y.items,G=0;G<J.length;G++)w$(J[G],Q,Z);}}function X9($){return {type:B$2.text,text:$}}function UZ($,Q,Z){var X=Q+1;if(X>=Z)return -1;if($.charCodeAt(X)===V5){X++;var Y=X<Z&&($.charCodeAt(X)===V$||$.charCodeAt(X)===K$);Y&&X++;for(var V=X,K=Y?6:7;X<Z&&X-V<=K;){var J=$.charCodeAt(X),G=J>=r$1&&J<=o||Y&&(J>=h$1&&J<=D9||J>=V0&&J<=L5);if(!G)break;X++;}return X===V||X-V>K?-1:X<Z&&$.charCodeAt(X)===j9?X+1:-1}for(var U=X;X<Z&&X-U<48;){var W=$.charCodeAt(X);if(W>=h$1&&W<=u$1||W>=V0&&W<=q0||W>=r$1&&W<=o){X++;continue}break}return X===U?-1:X<Z&&$.charCodeAt(X)===j9?X+1:-1}function GZ($,Q,Z,X,Y){if($.charCodeAt(Q)!==Y0)return null;var V=Q+1;if(V>=Z)return null;var K=$.charCodeAt(V);if(K===c0&&V+1<Z&&$.charCodeAt(V+1)===p$1&&V+2<Z&&$.charCodeAt(V+2)===p$1){var J=V+3;if(J<Z&&$.charCodeAt(J)===l$1)return {node:{type:B$2.htmlComment,text:"",s:true},end:J+1};if(J+1<Z&&$.charCodeAt(J)===p$1&&$.charCodeAt(J+1)===l$1)return {node:{type:B$2.htmlComment,text:"-",s:true},end:J+2};var G=$.indexOf("-->",J);return G!==-1&&G<=Z-3?{node:{type:B$2.htmlComment,text:$.slice(Q+4,G),s:false},end:G+3}:null}if(K===t5){var U=$.indexOf("?>",V+1);return U!==-1&&U<Z?{node:{type:B$2.htmlSelfClosing,tag:"?",attrs:{},m:$.slice(Q,U+2),a:false},end:U+2}:null}if(K===c0&&V+1<Z){var W=$.charCodeAt(V+1);if(W===A0&&$.slice(V+1,V+8)==="[CDATA["){var z=$.indexOf("]]>",V+8);return z!==-1&&z<Z?{node:{type:B$2.htmlSelfClosing,tag:"![CDATA[",attrs:{},m:$.slice(Q,z+3),a:false},end:z+3}:null}if(W>=h$1&&W<=u$1){var H=$.indexOf(">",V+2);return H!==-1&&H<Z?{node:{type:B$2.htmlSelfClosing,tag:`!${$.slice(V+1,H)}`,attrs:{},m:$.slice(Q,H+1),a:false},end:H+1}:null}}if(K===j0){var F=V+1;if(F>=Z)return null;var M=$.charCodeAt(F);if(!(M>=h$1&&M<=u$1||M>=V0&&M<=q0))return null;for(F++;F<Z;){var j=$.charCodeAt(F);if(j>=h$1&&j<=u$1||j>=V0&&j<=q0||j>=r$1&&j<=o||j===p$1)F++;else break}for(;F<Z&&($.charCodeAt(F)===I||$.charCodeAt(F)===w||$.charCodeAt(F)===g);)F++;if(F<Z&&$.charCodeAt(F)===l$1){var _=$.slice(V+1,F).trim();return {node:{type:B$2.htmlSelfClosing,tag:_,attrs:{},h:$.slice(Q,F+1),a:true},end:F+1}}return null}if(!(K>=h$1&&K<=u$1||K>=V0&&K<=q0))return null;var q=w5($,Q);if(!q)return null;var D=q.tag,A=D.toLowerCase(),N=q.n;if(N||Q9(D))return {node:{type:B$2.htmlSelfClosing,tag:D,attrs:P5(q.attrs,D,Y),m:q.q?A$(q):$.slice(Q,q.end),a:false},end:q.end};var L=N9.has(A),O=_$($.slice(0,Z),q.end,D);if(O===-1)return {node:{type:B$2.htmlSelfClosing,tag:D,attrs:P5(q.attrs,D,Y),m:q.q?A$(q):$.slice(Q,q.end),a:false},end:q.end};var P=o6($,`</${A}`,O),v=$.slice(q.end,P);if(L){var b=G5(v);return {node:{type:B$2.htmlBlock,tag:D,attrs:P5(q.attrs,D,Y),b:q.g+q.b,children:[],e:b||void 0,h:$.slice(P,O),text:b,c:true,a:false},end:O}}var k=[],x=v.trim();if(x){var{inAnchor:T,inline:f,k:y}=X;A==="a"&&(X.inAnchor=true),X.k=false;var C=x.indexOf(`
17386
+
17387
+ `)!==-1||/^#{1,6}\s/.test(x);C?(X.inline=false,k=c5(x,X,Y)):k=R5(x,0,x.length,X,Y),X.inAnchor=T,X.inline=f,X.k=y;}return {node:{type:B$2.htmlBlock,tag:D,attrs:P5(q.attrs,D,Y),b:q.b,children:k,text:G5(v),c:false,a:false},end:O}}var qZ=200,_9=0;function R5($,Q,Z,X,Y){if(_9++,_9>qZ)return _9--,[{type:B$2.text,text:$.slice(Q,Z)}];var V=O5;O5=YZ();let K=X;if(Y.optimizeForStreaming){let $0=function(t,d0){for(var n0=1,$5=d0+1;$5<t.length;$5++){var l0=t.charCodeAt($5);if(l0===A0)n0++;else if(l0===J5&&(n0--,n0===0))return $5}return -1},R=$.slice(Q,Z),J0=R;for(var J=0,G=0,U=0,W=0,z=0,H=-1,F=-1,M=-1,j=-1,_=-1,q=0;q<R.length;q++){var D=R.charCodeAt(q);D===P0?q+1<R.length&&R.charCodeAt(q+1)===P0?(J++,H=q,q++):(G++,F=q):D===O0?q+1<R.length&&R.charCodeAt(q+1)===O0?(U++,M=q,q++):(W++,j=q):D===b0&&q+1<R.length&&R.charCodeAt(q+1)===b0&&(z++,_=q,q++);}var A=[];z%2===1&&_>=0&&A.push([_,2]),U%2===1&&M>=0&&A.push([M,2]),W%2===1&&j>=0&&A.push([j,1]),J%2===1&&H>=0&&A.push([H,2]),G%2===1&&F>=0&&A.push([F,1]),A.sort((t,d0)=>d0[0]-t[0]);for(var N=0;N<A.length;N++){var L=A[N][0],O=A[N][1];R=R.slice(0,L)+R.slice(L+O);}let a0=0,q5=-1;for(let t=0;t<R.length;t++)R.charCodeAt(t)===Z0&&(a0++,q5=t);if(a0%2===1&&q5!==-1){let t=false,d0=-1,n0=0;for(;n0<R.length;)R.charCodeAt(n0)===Z0&&(t?(t=false,d0=-1):(d0=n0,t=true)),n0++;t&&d0!==-1&&(R=R.slice(0,d0));}for(var P=true;P;){P=false;for(var v=-1,b=-1,k=-1,x=false,T=0;T<R.length;T++){var f=R.charCodeAt(T);if(f===A0&&(T===0||R.charCodeAt(T-1)!==T0)){var y=T>0&&R.charCodeAt(T-1)===c0,C=y?T-1:T,E=$0(R,T);if(E===-1)v=C,x=y,b=T+1,k=R.length;else {var S=E+1;if(S>=R.length)v=C,x=y,b=T+1,k=E;else if(R.charCodeAt(S)===z5){var s=R.indexOf(")",S+1);s===-1?(v=C,x=y,b=T+1,k=E,T=R.length):T=s;}else if(R.charCodeAt(S)===A0){var X0=R.indexOf("]",S+1);X0===-1?(v=C,x=y,b=T+1,k=E,T=R.length):T=X0;}else T=E;}}}if(v>=0){var I0=x?"":R.slice(b,k);R=R.slice(0,v)+I0,P=true;}}let C0=R.match(/<([A-Z][A-Za-z0-9]*)(?:\s[^>]*)?>([^<]*)$/);if(C0&&C0.index!==void 0){var d=C0[0].length-C0[2].length,u0=d>=2&&C0[0].charCodeAt(d-2)===j0;if(!u0){for(var B0=false,W0=0,H0=0;H0<C0.index;H0++)R.charCodeAt(H0)===Z0&&W0++;if(B0=W0%2===1,!B0){let t=C0[1];p5(R,`</${t}`,0)===-1&&(R=R.slice(0,C0.index)+C0[2]);}}}R!==J0&&($=$.slice(0,Q)+R,Z=Q+R.length);}let D0=[];var m=[];let c=Q;var K0="",y0=Y.disableAutoLink||Y.disableBareUrls||K.inAnchor?-1:$.indexOf("@",Q);for(y0>=Z&&(y0=-1);Q<Z;){let R=$.charCodeAt(Q),J0=null;if(R===Z0){if(J0=t6($,Q,Z),!J0){var S0=l5($,Q,Z,Z0);Q+=S0-1;}}else if(R===P0||R===O0){var _0=QZ($,Q,Z);if(_0){if(_0.canOpen||_0.canClose){(K0||Q>c)&&(D0.push(X9(K0+$.slice(c,Q))),K0="");var a=$.slice(Q,Q+_0.len),w0=X9(a);m.push({idx:D0.length,ch:R,len:_0.len,canOpen:_0.canOpen,canClose:_0.canClose,active:true}),D0.push(w0),Q+=_0.len,c=Q;continue}Q+=_0.len-1;}}else if(R===b0)J0=$Z($,Q,Z,K,Y);else if(R===K5)J0=ZZ($,Q,Z,K,Y);else if(R===A0)Q+1<Z&&$.charCodeAt(Q+1)===W5&&(J0=VZ($,Q,Z)),J0||(J0=f4($,Q,Z,K,Y));else if(R===c0&&Q+1<Z&&$.charCodeAt(Q+1)===A0)J0=f4($,Q,Z,K,Y);else if(R===Y0)J0=i4($,Q,Z),!(J0||Y.disableParsingRawHTML||Y.ignoreHTMLBlocks)&&(J0=GZ($,Q,Z,K,Y));else if(R===O9){var z0=UZ($,Q,Z);if(z0!==-1){var F0=$.slice(Q,z0),M0=I5(F0);if(M0!==F0){K0=K0+$.slice(c,Q)+M0,Q=z0,c=z0;continue}}}else if((R===A9||R===C5||R===L5)&&!K.inAnchor&&!Y.disableAutoLink&&(Q===0||$.charCodeAt(Q-1)!==Y0)){var f0=Q+1<Z?$.charCodeAt(Q+1):0;(R===A9&&f0===s5||R===L5&&f0===s5||R===C5&&f0===C5)&&(J0=KZ($,Q,Z,Y));}if(!J0&&y0>=0&&y0-Q<=64&&!K.inAnchor&&!Y.disableAutoLink&&!Y.disableBareUrls&&(R>=h$1&&R<=u$1||R>=V0&&R<=q0||R>=r$1&&R<=o)&&(J0=JZ($,Q,Z,Y),!J0&&Q>=y0&&(y0=$.indexOf("@",Q+1),y0>=Z&&(y0=-1))),R===g&&K.k){var v0=false,k0=0;if(Q>c&&$.charCodeAt(Q-1)===T0)v0=true,k0=1;else {for(var h0=0,p0=Q-1;p0>=c&&$.charCodeAt(p0)===I;)h0++,p0--;h0>=2&&(v0=true,k0=h0);}if(v0){for((K0||Q-k0>c)&&(D0.push(X9(K0+$.slice(c,Q-k0))),K0=""),D0.push({type:B$2.breakLine}),Q++;Q<Z&&$.charCodeAt(Q)===I;)Q++;c=Q;continue}var n=Q>c&&$.charCodeAt(Q-1)===I,N0=Q+1<Z&&$.charCodeAt(Q+1)===I;if(n||N0){for(var i=Q;i>c&&$.charCodeAt(i-1)===I;)i--;for(K0+=`${$.slice(c,i)}
17388
+ `,Q++;Q<Z&&$.charCodeAt(Q)===I;)Q++;c=Q;continue}}if(J0)(K0||Q>c)&&(D0.push(X9(K0+$.slice(c,Q))),K0=""),D0.push(J0.node),Q=J0.end,c=Q;else {if(R===T0&&Q+1<Z){let a0=$.charCodeAt(Q+1);if(R$(a0)&$9){(K0||Q>c)&&(D0.push(X9(K0+$.slice(c,Q))),K0=""),D0.push(X9($[Q+1])),Q+=2,c=Q;continue}}if(Q++,y0<0||y0-Q>64)for(;Q<Z&&!(y0>=0&&y0-Q<=64);){var x0=$.charCodeAt(Q);if(x0<U9&&!u4[x0])Q++;else break}}}return (K0||Z>c)&&(D0.push(X9(K0+$.slice(c,Z))),K0=""),m.length>0&&XZ(D0,m),O5=V,_9--,D0}var WZ=500;function c5($,Q,Z){var X=Q.o||0;if(X>WZ)return [{type:B$2.text,text:$}];Q.o=X+1;if(Z.optimizeForStreaming&&!(Q.i||Q.w)){for(var V=$.length;V>0&&$.charCodeAt(V-1)===g;)V--;for(var K=V;K>0&&$.charCodeAt(K-1)!==g;)K--;if(V>K&&$.charCodeAt(K)===E0){for(var J=false,G=K+1;G<V;G++){var U=$.charCodeAt(G);if(U!==I&&U!==w&&U!==E0&&U!==m0&&U!==p$1){J=true;break}}for(var W=false,z=false,H=0,F=K,M=K-1;M>0;){for(var j=M;j>0&&$.charCodeAt(j-1)!==g;)j--;if($.charCodeAt(j)!==E0)break;F=j;for(var _=true,q=false,D=j;D<M;D++){var A=$.charCodeAt(D);if(A===p$1)q=true;else if(A!==I&&A!==w&&A!==m0&&A!==E0){_=false;break}}_&&q?(W=true,z=true):z||H++,M=j-1;}J?W||($=$.slice(0,K).trimEnd()):$=W&&H>0?$.slice(0,K).trimEnd():$.slice(0,F).trimEnd();}for(var N=-1,L=-1,O=-1,P=false,v=$.length-1;v>=0;v--)if($.charCodeAt(v)===Y0){for(var b=v+1<$.length?$.charCodeAt(v+1):0,k=b>=h$1&&b<=u$1||b>=V0&&b<=q0,x=b===j0&&v+2<$.length&&($.charCodeAt(v+2)>=h$1&&$.charCodeAt(v+2)<=u$1||$.charCodeAt(v+2)>=V0&&$.charCodeAt(v+2)<=q0),T=b===c0||b===t5,f=$.length;f>v+1&&$.charCodeAt(f-1)===g;)f--;var y=v+1>=f;if(k||x||T||y){var C=v+1;if((x||k)&&(C=v+2),k||x)for(;C<$.length;){var E=$.charCodeAt(C);if(E>=h$1&&E<=u$1||E>=V0&&E<=q0||E>=r$1&&E<=o)C++;else break}for(var S=k||x?C:v+2;S<$.length&&$.charCodeAt(S)!==l$1;)S++;if(S>=$.length)N=v,P=true;else if((k||x)&&$.charCodeAt(S-1)!==j0){for(var s=false,X0=S+1;X0<$.length;X0++)if($.charCodeAt(X0)===Y0){s=true;break}s||(N=v,L=C,O=S+1);}}break}if(N>=0){for(var I0=0,d=0;d<N;d++)$.charCodeAt(d)===Z0&&I0++;if(I0%2===0)if(P)$=$.slice(0,N);else {var u0=$.slice(N+1,L);p5($,`</${u0}`,0)===-1&&($=$.slice(0,N)+$.slice(O));}}for(var B0=$.length;B0>0&&$.charCodeAt(B0-1)===g;)B0--;if(B0>0){for(var W0=B0;W0>0&&$.charCodeAt(W0-1)!==g;)W0--;for(var H0=W0,D0=0;H0<B0&&$.charCodeAt(H0)===I&&D0<3;)H0++,D0++;if(W0>0&&H0<B0&&d6($,H0,B0)){for(var m=W0-1,c=m;c>0&&$.charCodeAt(c-1)!==g;)c--;e0($,c,m)||($=$.slice(0,W0).trimEnd());}}var K0=$.length;if(K0>0){for(var y0=$.lastIndexOf(`
17389
+ `),S0=y0===-1?0:y0+1,_0=K0,a=S0,w0=0;a<_0&&$.charCodeAt(a)===I&&w0<3;)a++,w0++;if(a<_0){var z0=$.charCodeAt(a),F0=false;if(z0===P0||z0===p$1||z0===y5){var M0=a+1;if(M0>=_0||$.charCodeAt(M0)===I||$.charCodeAt(M0)===w){for(var f0=M0;f0<_0&&($.charCodeAt(f0)===I||$.charCodeAt(f0)===w);)f0++;f0>=_0&&(F0=true);}}else if(z0>=r$1&&z0<=o){for(var v0=a;v0<_0&&$.charCodeAt(v0)>=r$1&&$.charCodeAt(v0)<=o;)v0++;if(v0<_0&&($.charCodeAt(v0)===Q5||$.charCodeAt(v0)===F5)){var k0=v0+1;if(k0>=_0||$.charCodeAt(k0)===I||$.charCodeAt(k0)===w){for(var h0=k0;h0<_0&&($.charCodeAt(h0)===I||$.charCodeAt(h0)===w);)h0++;h0>=_0&&(F0=true);}}}F0&&($=$.slice(0,S0).trimEnd());}}}if(Q.inline)return R5($,0,$.length,Q,Z);let p0=[],n=0,N0=$.length;if(n===0&&!Z.disableFrontmatter&&$.startsWith("---")){let $0=X4($);if($0?.hasValidYaml){if(Z.preserveFrontmatter!==false){let C0=$.slice(0,$0.endPos).trimEnd();p0.push({type:B$2.frontmatter,text:C0});}n=$0.endPos;}}for(;n<N0;){for(var i=$.indexOf(`
17390
+ `,n),x0=i<0?N0:i;n<N0&&e0($,n,x0);)n=x0<N0?x0+1:x0,n<N0&&(i=$.indexOf(`
17391
+ `,n),x0=i<0?N0:i);if(n>=N0)break;var R=$.charCodeAt(n)===g9;L0($,n,x0);let $0=null;if(j$=$,B$=n,d9=x0,!R&&U0>=4&&!Q.inHTML)$0=l6($,n);else if(!R){let C0=n+Q0,t=$.charCodeAt(C0);t===V5?$0=p6($,n,Q,Z):t===l$1?$0=r6($,n,Q,Z):t===Z0||t===b0?$0=c6($,n):t===p$1||t===P0||t===O0?($0=d5($,n),!$0&&($0=T4($,n,Q,Z))):t===y5||t>=r$1&&t<=o?$0=T4($,n,Q,Z):t===Y0?$0=o4($,n,Q,Z):t===E0?$0=S4($,n,Q,Z):t===A0&&($0=a6($,n,Q));}if(!$0){for(var J0=false,a0=n;a0<x0;a0++)if($.charCodeAt(a0)===E0){J0=true;break}J0&&($0=S4($,n,Q,Z));}if($0||($0=s6($,n,Q,Z)),$0)$0.node.type!==B$2.refCollection&&p0.push($0.node),n=$0.end;else {var q5=$.indexOf(`
17392
+ `,n);n=q5<0?N0:q5+1;}}return Q.o=X,p0}function a4($,Q,Z,X){var Y=w5($,Q);return Y?{tagName:Y.tag,tagLower:Y.tag.toLowerCase(),attrs:Y.b,whitespaceBeforeAttrs:Y.g,isSelfClosing:Y.n,hasSpaceBeforeSlash:Y.r,isClosing:Y.f,hasNewline:Y.g.includes(`
17393
+ `)||Y.b.includes(`
17394
+ `),endPos:Y.end}:null}function P9($,Q,Z){_9=0,$=U4($),!Q.refs&&(Q.refs={}),(Z.optimizeForStreaming||Q.inline)&&(Q.w=m6($,Q.refs,Z));var X,Y;Q.t||(Q.t=X=[],Q.p=Y=[]);let V=c5($,Q,Z);if(X&&Y){for(var K=X,J={inline:Q.inline,inAnchor:Q.inAnchor,inHTML:Q.inHTML,htmlDepth:Q.d,inList:Q.inList,inBlockQuote:Q.inBlockQuote,noSetext:Q.l,depth:Q.o},G=0;G<K.length;G++){var U=K[G];Q.inline=U.inline,Q.inAnchor=U.inAnchor,Q.inHTML=U.inHTML,Q.d=U.htmlDepth,Q.inList=U.inList,Q.inBlockQuote=U.inBlockQuote,Q.l=U.noSetext,Q.o=U.depth,Q.k=U.breaks;var W=R5(U.text,0,U.text.length,Q,Z);Q.k=false;for(var z=0;z<W.length;z++)U.dest.push(W[z]);}Q.inline=J.inline,Q.inAnchor=J.inAnchor,Q.inHTML=J.inHTML,Q.d=J.htmlDepth,Q.inList=J.inList,Q.inBlockQuote=J.inBlockQuote,Q.l=J.noSetext,Q.o=J.depth;for(var H=Y,F=0;F<H.length;F++)for(var M=H[F],j=0;j<M.src.length;j++){var _=M.src[j];if(M.unwrap&&_.type===B$2.paragraph)for(var q=_.children,D=0;D<q.length;D++)M.dest.push(q[D]);else M.dest.push(_);}Q.t=void 0,Q.p=void 0,w$(V,Q,Z.slugify);}return f9(Q.refs)?[{type:B$2.refCollection,refs:Q.refs},...V]:V}var L$;try{Y9=reactExports.createElement("div"),L$=Y9!=null&&typeof Y9=="object"&&"$$typeof"in Y9&&typeof Y9.$$typeof=="symbol"?Y9.$$typeof:Symbol.for("react.transitional.element");}catch{L$=Symbol.for("react.transitional.element");}var Y9;function T$($,Q,Z){return {$$typeof:L$,type:$,key:Z==null?null:String(Z),ref:null,props:Q,_owner:null,_store:{},_debugStack:null,_debugTask:null}}function D5($,Q){var Z={key:$};if(Q){var X=U$(Q);for(var Y in X)Z[Y]=X[Y];}return Z}var i9=typeof reactExports.createContext>"u"?void 0:reactExports.createContext(void 0);function n4($,Q,Z,X,Y,V,K,J,G){switch($.type){case B$2.blockQuote:{let q={key:Z.key};return $.alert&&(q.className=`markdown-alert-${V($.alert.toLowerCase(),N5)}`,$.children.unshift(q4($.alert))),X("blockquote",q,Q($.children,Z))}case B$2.breakLine:return X("br",{key:Z.key});case B$2.breakThematic:return X("hr",{key:Z.key});case B$2.frontmatter:return J.preserveFrontmatter?X("pre",{key:Z.key},$.text):null;case B$2.codeBlock:{let q=$.lang?I5($.lang):"";var U=$.attrs?U$($.attrs):{};return U.className=q?`language-${q} lang-${q}`:"",X("pre",{key:Z.key},X("code",U,$.text))}case B$2.codeInline:return X("code",{key:Z.key},$.text);case B$2.footnoteReference:return X("a",{key:Z.key,href:Y($.target,"a","href")||void 0},X("sup",null,$.text));case B$2.gfmTask:return X("input",{checked:$.completed,key:Z.key,readOnly:true,type:"checkbox"});case B$2.heading:return X(`h${$.level}`,{id:$.id,key:Z.key},Q($.children,Z));case B$2.htmlBlock:{let q=$;if(m5(J)&&W$(q.tag)){var W=q$(q);return W.kind==="literal"?X("span",{key:Z.key},W.literal):X("span",{key:Z.key},...F4(W.open,q.children?Q(q.children,Z):null,W.close))}let D=q.j,A=D!==void 0,N=A?D:q.a?q.e||"":(q.e||"")+(q.h||"");if(N&&q.c){let L=q.tag.toLowerCase(),O=p4(L),P=q.children,v=P!=null&&P.length>0;if(O){let S=A?D:q.e||"",s=m5(J)?z$(S):S;if(/<[a-z][^>]{0,100}>/i.test(N)){var z=D5(Z.key,$.attrs);return z.dangerouslySetInnerHTML={__html:s},G($.tag,z)}return G($.tag,D5(Z.key,$.attrs),s)}let b=new RegExp(`^<${q.tag}(\\s|>)`,"i");if(v&&!b.test(N)&&m5(J)&&D4(N))return G($.tag,D5(Z.key,$.attrs),Q(P,Z));if(d4(N)){let S=m5(J)?z$(N):N;var H=D5(Z.key,$.attrs);return H.dangerouslySetInnerHTML={__html:S},G($.tag,H)}let x=I9({slugify:J.slugify,sanitizer:Y,tagfilter:true}),T=G4(N);if(new RegExp(`^<${q.tag}(\\s[^>]*)?>(\\s*</${q.tag}>)?$`,"i").test(T))return q.children&&q.children.length>0?G($.tag,D5(Z.key,$.attrs),Q(q.children,Z)):G($.tag,D5(Z.key,$.attrs));let y=P9(T,{inline:false,refs:K,inHTML:false},x);G$(y);let C=q.tag.toLowerCase(),E=A;if(E&&v)return G($.tag,D5(Z.key,$.attrs),Q(P,Z));if(E)return Q(y.flatMap(Z9),Z);var F=z4(y,C);if(F.found&&F.afterClose.length>0){var M=F.beforeClose.flatMap(Z9),j=F.afterClose.flatMap(Z9);return T$(reactExports.Fragment,{children:[G($.tag,D5(Z.key,$.attrs),Q(M,Z)),Q(j,Z)]},Z.key)}return G($.tag,D5(Z.key,$.attrs),Q(y.flatMap(Z9),Z))}return Q9($.tag)?G($.tag,D5(Z.key,$.attrs)):G($.tag,D5(Z.key,$.attrs),$.children?Q($.children,Z):"")}case B$2.htmlSelfClosing:{let q=$;if(m5(J)&&W$(q.tag)){var _=q$(q);return X("span",{key:Z.key},_.kind==="literal"?_.literal:_.open+(_.close||""))}return G($.tag,D5(Z.key,$.attrs))}case B$2.image:{let q=$.target===null?null:Y($.target,"img","src");return X("img",{key:Z.key,alt:$.alt&&$.alt.length>0?$.alt:void 0,title:$.title||void 0,src:q||void 0})}case B$2.link:{let q={key:Z.key};if($.target!=null){let D=H4($.target,Y,"a","href");D!=null&&(q.href=D);}return $.title&&(q.title=$.title),X("a",q,Q($.children,Z))}case B$2.table:{let q=$;return X("table",{key:Z.key},X("thead",{key:"thead"},X("tr",null,q.header.map(function(A,N){return X("th",{key:N,style:q.align[N]===null?{}:{textAlign:q.align[N]}},Q(A,Z))}))),q.cells.length>0&&X("tbody",{key:"tbody"},q.cells.map(function(A,N){return X("tr",{key:N},A.map(function(O,P){return X("td",{key:P,style:q.align[P]===null?{}:{textAlign:q.align[P]}},Q(O,Z))}))})))}case B$2.text:return $.text;case B$2.textFormatted:return X($.tag,{key:Z.key},Q($.children,Z));case B$2.orderedList:case B$2.unorderedList:{let q=$.type===B$2.orderedList?"ol":"ul";return X(q,{key:Z.key,start:$.type===B$2.orderedList?$.start:void 0},$.items.map(function(A,N){return X("li",{key:N},Q(A,Z))}))}case B$2.paragraph:return X("p",{key:Z.key},Q($.children,Z));case B$2.ref:return null;default:return null}}var HZ=($,Q,Z,X,Y,V,K)=>{var J=U=>U.map(W=>"text"in W?W.text:""),G=(U,W={})=>{var z=Array.isArray(U)?U:[U],H=(W.renderDepth||0)+1;if(H>2500)return J(z);W.renderDepth=H;for(var F=W.key,M=[],j=false,_=0;_<z.length;_++){W.key=_;var q;if($){var D=n4.bind(null,z[_],G,W,Q,Z,X,Y,V,K);q=$(D,z[_],G,W);}else q=n4(z[_],G,W,Q,Z,X,Y,V,K);var A=typeof q=="string";if(j&&typeof q=="string"){var N=M.at(-1);M[M.length-1]=(typeof N=="string"?N:"")+q;}else if(q!=null)if(Array.isArray(q))for(var L=0;L<q.length;L++)M.push(q[L]);else M.push(q);j=A;}return W.key=F,W.renderDepth=H-1,M};return G},MZ=($,Q)=>{let Z=h9(Q,$,void 0);return Z?typeof Z=="function"||typeof Z=="object"&&"render"in Z?Z:h9(Q,`${$}.component`,$):$};function OZ($,Q){let Z={...Q||{}};Z.overrides=Z.overrides||{};let X=Z.slugify||N5,Y=Z.sanitizer||H5,V=Z.createElement,K=f9(Z.overrides),J=A=>y$(A,{...Z,wrapper:null});function G(A){for(var N in A){var L=A[N];if(typeof L=="string"&&L.length>0&&L.charCodeAt(0)===Y0&&(h4.test(L)||m4.test(L)||a4(L,0))){var O=J(L.trim());A[N]=N==="innerHTML"&&Array.isArray(O)?O[0]:O;}}}function U(A,N,...L){var O=N||{},P=A;if(K){var v=h9(Z.overrides,`${A}.props`,{});P=MZ(A,Z.overrides),O={...O,...v,className:O4(O.className,v.className)||void 0};}if(!V){var b=O.key;return b!=null&&delete O.key,L.length===1?O.children=L[0]:L.length>1&&(O.children=L),T$(P,O,b)}return V(P,O,...L)}function W(A,N,...L){return N&&G(N),U(A,N,...L)}let z=I9(Z,Z.forceInline),H=$[0]&&$[0].type===B$2.refCollection?$[0].refs:{},F=HZ(Z.renderRule,U,Y,X,H,Z,W),M=F($,{inline:Z.forceInline,refs:H}),j=M4(H);if(j.length>0&&M.push(U("footer",{key:"footer"},j.map(function(N){let L=N.identifier.charCodeAt(0)===W5?N.identifier.slice(1):N.identifier,O=P9(N.footnote,{inline:true,refs:H},z);return U("div",{id:X(L,N5),key:N.identifier},`${L}: `,F(O,{inline:true,refs:H}))}))),Z.wrapper===null)return M;let _=Z.wrapper||(Z.forceInline?"span":"div"),q;if(M.length>1||Z.forceWrapper)q=M;else return M.length===1?M[0]:null;var D=Z.wrapperProps?{...Z.wrapperProps}:{};return D.children=q,T$(_,D,"outer")}function y$($="",Q={}){let Z={...Q||{}};Z.overrides=Z.overrides||{};Z.slugify||N5;Z.sanitizer||H5;function V(J){let G=Z.forceInline||!(Z.forceBlock||Y4.test(J)),U=I9(Z,G),W=G?J:W4(J),z=P9(W,{inline:G,refs:K},U);return OZ(z,{...Z,forceInline:G})}let K={};return V($)}function DZ($){let Q=reactExports.useRef($),Z=Q.current;if(Z!==$){var X=true,Y=0;for(var V in $)if(Y++,!Object.is(Z[V],$[V])){X=false;break}if(X){var K=0;for(var J in Z)K++;X=K===Y;}X||(Q.current=$);}return Q.current}var AZ=({children:$,options:Q,...Z})=>{if(!(typeof reactExports.useContext<"u")){let U={...Q,overrides:{...Q?.overrides},wrapperProps:{...Q?.wrapperProps,...Z}};return y$($??"",U)}let Y=i9?reactExports.useContext(i9):void 0,V=DZ(Z),K=reactExports.useMemo(()=>({...Y,...Q,overrides:{...Y?.overrides,...Q?.overrides},wrapperProps:{...Y?.wrapperProps,...Q?.wrapperProps,...V}}),[Y,Q,V]),J=$??"";return reactExports.useMemo(()=>y$(J,K),[J,K])};
16601
17395
 
16602
17396
  /** Internal only symbol used by `Form` & `ObjectField` to mark an additional property element to be removed */
16603
17397
  const ADDITIONAL_PROPERTY_KEY_REMOVE = Symbol('remove-this-key');
@@ -16835,7 +17629,7 @@
16835
17629
  orderedProperties = orderProperties([...definedPropertyOrder, ...currentAdditionalProperties], uiOptions.order);
16836
17630
  }
16837
17631
  catch (err) {
16838
- return (jsxRuntimeExports.jsxs("div", { children: [jsxRuntimeExports.jsx("p", { className: 'rjsf-config-error', style: { color: 'red' }, children: jsxRuntimeExports.jsx(f6, { options: { disableParsingRawHTML: true }, children: translateString(TranslatableString.InvalidObjectField, [name || 'root', err.message]) }) }), jsxRuntimeExports.jsx("pre", { children: JSON.stringify(schema) })] }));
17632
+ return (jsxRuntimeExports.jsxs("div", { children: [jsxRuntimeExports.jsx("p", { className: 'rjsf-config-error', style: { color: 'red' }, children: jsxRuntimeExports.jsx(AZ, { options: { disableParsingRawHTML: true }, children: translateString(TranslatableString.InvalidObjectField, [name || 'root', err.message]) }) }), jsxRuntimeExports.jsx("pre", { children: JSON.stringify(schema) })] }));
16839
17633
  }
16840
17634
  }
16841
17635
  const Template = getTemplate('ObjectFieldTemplate', registry, uiOptions);
@@ -17379,7 +18173,7 @@
17379
18173
  const { globalUiOptions } = registry;
17380
18174
  const uiOptions = getUiOptions(uiSchema, globalUiOptions);
17381
18175
  if (uiOptions.enableMarkdownInDescription && typeof description === 'string') {
17382
- return (jsxRuntimeExports.jsx(f6, { options: { disableParsingRawHTML: true }, "data-testid": TEST_IDS$1.markdown, children: description }));
18176
+ return (jsxRuntimeExports.jsx(AZ, { options: { disableParsingRawHTML: true }, "data-testid": TEST_IDS$1.markdown, children: description }));
17383
18177
  }
17384
18178
  return description;
17385
18179
  }
@@ -17441,7 +18235,7 @@
17441
18235
  const { globalUiOptions } = registry;
17442
18236
  const uiOptions = getUiOptions(uiSchema, globalUiOptions);
17443
18237
  if (uiOptions.enableMarkdownInHelp && typeof help === 'string') {
17444
- return (jsxRuntimeExports.jsx(f6, { options: { disableParsingRawHTML: true }, "data-testid": TEST_IDS.markdown, children: help }));
18238
+ return (jsxRuntimeExports.jsx(AZ, { options: { disableParsingRawHTML: true }, "data-testid": TEST_IDS.markdown, children: help }));
17445
18239
  }
17446
18240
  return help;
17447
18241
  }
@@ -17581,7 +18375,7 @@
17581
18375
  : TranslatableString.UnsupportedFieldWithIdAndReason;
17582
18376
  translateParams.push(reason);
17583
18377
  }
17584
- return (jsxRuntimeExports.jsxs("div", { className: 'unsupported-field', children: [jsxRuntimeExports.jsx("p", { children: jsxRuntimeExports.jsx(f6, { options: { disableParsingRawHTML: true }, children: translateString(translateEnum, translateParams) }) }), schema && jsxRuntimeExports.jsx("pre", { children: JSON.stringify(schema, null, 2) })] }));
18378
+ return (jsxRuntimeExports.jsxs("div", { className: 'unsupported-field', children: [jsxRuntimeExports.jsx("p", { children: jsxRuntimeExports.jsx(AZ, { options: { disableParsingRawHTML: true }, children: translateString(translateEnum, translateParams) }) }), schema && jsxRuntimeExports.jsx("pre", { children: JSON.stringify(schema, null, 2) })] }));
17585
18379
  }
17586
18380
 
17587
18381
  /** The `WrapIfAdditional` component is used by the `FieldTemplate` to rename, or remove properties that are
@@ -17773,7 +18567,7 @@
17773
18567
  return (jsxRuntimeExports.jsx("ul", { className: 'file-info', children: filesInfo.map((fileInfo, key) => {
17774
18568
  const { name, size, type } = fileInfo;
17775
18569
  const handleRemove = () => onRemove(key);
17776
- return (jsxRuntimeExports.jsxs("li", { children: [jsxRuntimeExports.jsx(f6, { children: translateString(TranslatableString.FilesInfo, [name, type, String(size)]) }), preview && jsxRuntimeExports.jsx(FileInfoPreview, { fileInfo: fileInfo, registry: registry }), jsxRuntimeExports.jsx(RemoveButton, { onClick: handleRemove, registry: registry })] }, key));
18570
+ return (jsxRuntimeExports.jsxs("li", { children: [jsxRuntimeExports.jsx(AZ, { children: translateString(TranslatableString.FilesInfo, [name, type, String(size)]) }), preview && jsxRuntimeExports.jsx(FileInfoPreview, { fileInfo: fileInfo, registry: registry }), jsxRuntimeExports.jsx(RemoveButton, { onClick: handleRemove, registry: registry })] }, key));
17777
18571
  }) }));
17778
18572
  }
17779
18573
  /**
@@ -17973,10 +18767,22 @@
17973
18767
  * @param props - The `WidgetProps` for this component
17974
18768
  */
17975
18769
  function TimeWidget(props) {
17976
- const { onChange, options, registry } = props;
18770
+ const { onChange, options, registry, schema, value } = props;
17977
18771
  const BaseInputTemplate = getTemplate('BaseInputTemplate', registry, options);
17978
- const handleChange = reactExports.useCallback((value) => onChange(value ? `${value}:00` : undefined), [onChange]);
17979
- return jsxRuntimeExports.jsx(BaseInputTemplate, { type: 'time', ...props, onChange: handleChange });
18772
+ const hasSecondPrecision = typeof schema.multipleOf === 'number' && Number.isFinite(schema.multipleOf) && schema.multipleOf < 60;
18773
+ const handleChange = reactExports.useCallback((newValue) => {
18774
+ if (!newValue) {
18775
+ onChange(undefined);
18776
+ }
18777
+ else if (hasSecondPrecision) {
18778
+ onChange(newValue);
18779
+ }
18780
+ else {
18781
+ onChange(`${newValue}:00`);
18782
+ }
18783
+ }, [hasSecondPrecision, onChange]);
18784
+ const displayValue = typeof value === 'string' && !hasSecondPrecision && /^\d{2}:\d{2}:00$/.test(value) ? value.slice(0, -3) : value;
18785
+ return jsxRuntimeExports.jsx(BaseInputTemplate, { type: 'time', ...props, value: displayValue, onChange: handleChange });
17980
18786
  }
17981
18787
 
17982
18788
  /** The `UpDownWidget` component uses the `BaseInputTemplate` changing the type to `number`.
@@ -26983,6 +27789,17 @@
26983
27789
  }
26984
27790
  catch (err) {
26985
27791
  compilationError = err;
27792
+ // AJV registers a schema in its internal cache before running meta-schema
27793
+ // validation. When that check throws, the broken schema stays cached so
27794
+ // subsequent compile() calls skip revalidation and return silently. Remove
27795
+ // the entry so every call with an invalid schema consistently produces a
27796
+ // compilation error. For schemas with $id the cache key is the id string;
27797
+ // for anonymous schemas AJV uses the object reference as the key.
27798
+ // Guard with compiledValidator === undefined so that a runtime error thrown
27799
+ // by compiledValidator(formData) does not evict a correctly-compiled schema.
27800
+ if (compiledValidator === undefined) {
27801
+ this.ajv.removeSchema(schema[ID_KEY] !== undefined ? schema[ID_KEY] : schema);
27802
+ }
26986
27803
  }
26987
27804
  let errors;
26988
27805
  if (compiledValidator) {
@@ -27089,13 +27906,17 @@
27089
27906
  */
27090
27907
  isValid(schema, formData, rootSchema) {
27091
27908
  var _a;
27909
+ // schemaId and compiled are declared outside the try so the catch block can
27910
+ // conditionally remove the broken schema from AJV's registry.
27911
+ let schemaId;
27912
+ let compiled = false;
27092
27913
  try {
27093
27914
  this.handleSchemaUpdate(rootSchema);
27094
27915
  // then rewrite the schema ref's to point to the rootSchema
27095
27916
  // this accounts for the case where schema have references to models
27096
27917
  // that lives in the rootSchema but not in the schema in question.
27097
27918
  const schemaWithIdRefPrefix = withIdRefPrefix(schema);
27098
- const schemaId = (_a = schemaWithIdRefPrefix[ID_KEY]) !== null && _a !== void 0 ? _a : hashForSchema(schemaWithIdRefPrefix);
27919
+ schemaId = (_a = schemaWithIdRefPrefix[ID_KEY]) !== null && _a !== void 0 ? _a : hashForSchema(schemaWithIdRefPrefix);
27099
27920
  let compiledValidator;
27100
27921
  compiledValidator = this.ajv.getSchema(schemaId);
27101
27922
  if (compiledValidator === undefined) {
@@ -27106,12 +27927,20 @@
27106
27927
  this.ajv.addSchema(schemaWithIdRefPrefix, schemaId).getSchema(schemaId) ||
27107
27928
  this.ajv.compile(schemaWithIdRefPrefix);
27108
27929
  }
27930
+ compiled = true;
27109
27931
  const result = compiledValidator(formData);
27110
27932
  return result;
27111
27933
  }
27112
27934
  catch (e) {
27113
27935
  // oxlint-disable-next-line no-console
27114
27936
  console.warn('Error encountered compiling schema:', e);
27937
+ // Remove the broken schema from AJV's registry so a subsequent rawValidation
27938
+ // or isValid call does not silently reuse a cached entry that bypassed
27939
+ // meta-schema validation. Guard with !compiled so that a runtime error thrown
27940
+ // by compiledValidator(formData) does not evict a correctly-compiled schema.
27941
+ if (!compiled && schemaId !== undefined) {
27942
+ this.ajv.removeSchema(schemaId);
27943
+ }
27115
27944
  return false;
27116
27945
  }
27117
27946
  }
@@ -27150,7 +27979,7 @@
27150
27979
  }
27151
27980
 
27152
27981
  /**
27153
- * @license lucide-react v1.27.0 - ISC
27982
+ * @license lucide-react v1.38.0 - ISC
27154
27983
  *
27155
27984
  * This source code is licensed under the ISC license.
27156
27985
  * See the LICENSE file in the root directory of this source tree.
@@ -27161,7 +27990,7 @@
27161
27990
  }).join(" ").trim();
27162
27991
 
27163
27992
  /**
27164
- * @license lucide-react v1.27.0 - ISC
27993
+ * @license lucide-react v1.38.0 - ISC
27165
27994
  *
27166
27995
  * This source code is licensed under the ISC license.
27167
27996
  * See the LICENSE file in the root directory of this source tree.
@@ -27170,7 +27999,7 @@
27170
27999
  const toKebabCase = (string) => string.replace(/([a-z0-9])([A-Z])/g, "$1-$2").toLowerCase();
27171
28000
 
27172
28001
  /**
27173
- * @license lucide-react v1.27.0 - ISC
28002
+ * @license lucide-react v1.38.0 - ISC
27174
28003
  *
27175
28004
  * This source code is licensed under the ISC license.
27176
28005
  * See the LICENSE file in the root directory of this source tree.
@@ -27182,7 +28011,7 @@
27182
28011
  );
27183
28012
 
27184
28013
  /**
27185
- * @license lucide-react v1.27.0 - ISC
28014
+ * @license lucide-react v1.38.0 - ISC
27186
28015
  *
27187
28016
  * This source code is licensed under the ISC license.
27188
28017
  * See the LICENSE file in the root directory of this source tree.
@@ -27195,7 +28024,7 @@
27195
28024
  };
27196
28025
 
27197
28026
  /**
27198
- * @license lucide-react v1.27.0 - ISC
28027
+ * @license lucide-react v1.38.0 - ISC
27199
28028
  *
27200
28029
  * This source code is licensed under the ISC license.
27201
28030
  * See the LICENSE file in the root directory of this source tree.
@@ -27214,7 +28043,7 @@
27214
28043
  };
27215
28044
 
27216
28045
  /**
27217
- * @license lucide-react v1.27.0 - ISC
28046
+ * @license lucide-react v1.38.0 - ISC
27218
28047
  *
27219
28048
  * This source code is licensed under the ISC license.
27220
28049
  * See the LICENSE file in the root directory of this source tree.
@@ -27264,7 +28093,7 @@
27264
28093
  );
27265
28094
 
27266
28095
  /**
27267
- * @license lucide-react v1.27.0 - ISC
28096
+ * @license lucide-react v1.38.0 - ISC
27268
28097
  *
27269
28098
  * This source code is licensed under the ISC license.
27270
28099
  * See the LICENSE file in the root directory of this source tree.
@@ -27289,7 +28118,7 @@
27289
28118
  };
27290
28119
 
27291
28120
  /**
27292
- * @license lucide-react v1.27.0 - ISC
28121
+ * @license lucide-react v1.38.0 - ISC
27293
28122
  *
27294
28123
  * This source code is licensed under the ISC license.
27295
28124
  * See the LICENSE file in the root directory of this source tree.
@@ -27300,7 +28129,7 @@
27300
28129
  const Check = createLucideIcon("check", __iconNode$9);
27301
28130
 
27302
28131
  /**
27303
- * @license lucide-react v1.27.0 - ISC
28132
+ * @license lucide-react v1.38.0 - ISC
27304
28133
  *
27305
28134
  * This source code is licensed under the ISC license.
27306
28135
  * See the LICENSE file in the root directory of this source tree.
@@ -27311,7 +28140,7 @@
27311
28140
  const ChevronDown = createLucideIcon("chevron-down", __iconNode$8);
27312
28141
 
27313
28142
  /**
27314
- * @license lucide-react v1.27.0 - ISC
28143
+ * @license lucide-react v1.38.0 - ISC
27315
28144
  *
27316
28145
  * This source code is licensed under the ISC license.
27317
28146
  * See the LICENSE file in the root directory of this source tree.
@@ -27322,7 +28151,7 @@
27322
28151
  const ChevronUp = createLucideIcon("chevron-up", __iconNode$7);
27323
28152
 
27324
28153
  /**
27325
- * @license lucide-react v1.27.0 - ISC
28154
+ * @license lucide-react v1.38.0 - ISC
27326
28155
  *
27327
28156
  * This source code is licensed under the ISC license.
27328
28157
  * See the LICENSE file in the root directory of this source tree.
@@ -27337,7 +28166,7 @@
27337
28166
  const CircleAlert = createLucideIcon("circle-alert", __iconNode$6);
27338
28167
 
27339
28168
  /**
27340
- * @license lucide-react v1.27.0 - ISC
28169
+ * @license lucide-react v1.38.0 - ISC
27341
28170
  *
27342
28171
  * This source code is licensed under the ISC license.
27343
28172
  * See the LICENSE file in the root directory of this source tree.
@@ -27352,7 +28181,7 @@
27352
28181
  const CirclePlus = createLucideIcon("circle-plus", __iconNode$5);
27353
28182
 
27354
28183
  /**
27355
- * @license lucide-react v1.27.0 - ISC
28184
+ * @license lucide-react v1.38.0 - ISC
27356
28185
  *
27357
28186
  * This source code is licensed under the ISC license.
27358
28187
  * See the LICENSE file in the root directory of this source tree.
@@ -27363,7 +28192,7 @@
27363
28192
  const Circle = createLucideIcon("circle", __iconNode$4);
27364
28193
 
27365
28194
  /**
27366
- * @license lucide-react v1.27.0 - ISC
28195
+ * @license lucide-react v1.38.0 - ISC
27367
28196
  *
27368
28197
  * This source code is licensed under the ISC license.
27369
28198
  * See the LICENSE file in the root directory of this source tree.
@@ -27377,7 +28206,7 @@
27377
28206
  const Copy = createLucideIcon("copy", __iconNode$3);
27378
28207
 
27379
28208
  /**
27380
- * @license lucide-react v1.27.0 - ISC
28209
+ * @license lucide-react v1.38.0 - ISC
27381
28210
  *
27382
28211
  * This source code is licensed under the ISC license.
27383
28212
  * See the LICENSE file in the root directory of this source tree.
@@ -27391,7 +28220,7 @@
27391
28220
  const Search = createLucideIcon("search", __iconNode$2);
27392
28221
 
27393
28222
  /**
27394
- * @license lucide-react v1.27.0 - ISC
28223
+ * @license lucide-react v1.38.0 - ISC
27395
28224
  *
27396
28225
  * This source code is licensed under the ISC license.
27397
28226
  * See the LICENSE file in the root directory of this source tree.
@@ -27408,7 +28237,7 @@
27408
28237
  const Trash2 = createLucideIcon("trash-2", __iconNode$1);
27409
28238
 
27410
28239
  /**
27411
- * @license lucide-react v1.27.0 - ISC
28240
+ * @license lucide-react v1.38.0 - ISC
27412
28241
  *
27413
28242
  * This source code is licensed under the ISC license.
27414
28243
  * See the LICENSE file in the root directory of this source tree.