PageSourceSearch

https://www.kcl.ac.uk/_GhbZtw_8fe3d6e8-6c75-4fc9-88ef-46b7f2723b06…/legacy/js/3133.2318bd547603a1feeff7.js

js kcl.ac.uk collected 2026-09-24 07:33:12 UTC 250,401 bytes, 9,848 lines download raw bytes

1(self["__LOADABLE_LOADED_CHUNKS__"] = self["__LOADABLE_LOADED_CHUNKS__"] || []).push([[3133],{
2
3/***/ 28958
4(module) {
5
6"use strict";
7
8module.exports = bail;
9function bail(err) {
10  if (err) {
11    throw err;
12  }
13}
14
15
16/***/ },
17
18/***/ 42812
19(__unused_webpack_module, exports) {
20
21"use strict";
22
23exports.parse = parse;
24exports.stringify = stringify;
25var comma = ",";
26var space = " ";
27var empty = "";
28function parse(value) {
29  var values = [];
30  var input = String(value || empty);
31  var index = input.indexOf(comma);
32  var lastIndex = 0;
33  var end = false;
34  var val;
35  while (!end) {
36    if (index === -1) {
37      index = input.length;
38      end = true;
39    }
40    val = input.slice(lastIndex, index).trim();
41    if (val || !end) {
42      values.push(val);
43    }
44    lastIndex = index + 1;
45    index = input.indexOf(comma, lastIndex);
46  }
47  return values;
48}
49function stringify(values, options) {
50  var settings = options || {};
51  var left = settings.padLeft === false ? empty : space;
52  var right = settings.padRight ? space : empty;
53  if (values[values.length - 1] === empty) {
54    values = values.concat(empty);
55  }
56  return values.join(right + comma + left).trim();
57}
58
59
60/***/ },
61
62/***/ 99558
63(module) {
64
65"use strict";
66
67var hasOwn = Object.prototype.hasOwnProperty;
68var toStr = Object.prototype.toString;
69var defineProperty = Object.defineProperty;
70var gOPD = Object.getOwnPropertyDescriptor;
71var isArray = function isArray2(arr) {
72  if (typeof Array.isArray === "function") {
73    return Array.isArray(arr);
74  }
75  return toStr.call(arr) === "[object Array]";
76};
77var isPlainObject = function isPlainObject2(obj) {
78  if (!obj || toStr.call(obj) !== "[object Object]") {
79    return false;
80  }
81  var hasOwnConstructor = hasOwn.call(obj, "constructor");
82  var hasIsPrototypeOf = obj.constructor && obj.constructor.prototype && hasOwn.call(obj.constructor.prototype, "isPrototypeOf");
83  if (obj.constructor && !hasOwnConstructor && !hasIsPrototypeOf) {
84    return false;
85  }
86  var key;
87  for (key in obj) {
88  }
89  return typeof key === "undefined" || hasOwn.call(obj, key);
90};
91var setProperty = function setProperty2(target, options) {
92  if (defineProperty && options.name === "__proto__") {
93    defineProperty(target, options.name, {
94      enumerable: true,
95      configurable: true,
96      value: options.newValue,
97      writable: true
98    });
99  } else {
100    target[options.name] = options.newValue;
101  }
102};
103var getProperty = function getProperty2(obj, name) {
104  if (name === "__proto__") {
105    if (!hasOwn.call(obj, name)) {
106      return void 0;
107    } else if (gOPD) {
108      return gOPD(obj, name).value;
109    }
110  }
111  return obj[name];
112};
113module.exports = function extend() {
114  var options, name, src, copy, copyIsArray, clone;
115  var target = arguments[0];
116  var i = 1;
117  var length = arguments.length;
118  var deep = false;
119  if (typeof target === "boolean") {
120    deep = target;
121    target = arguments[1] || {};
122    i = 2;
123  }
124  if (target == null || typeof target !== "object" && typeof target !== "function") {
125    target = {};
126  }
127  for (; i < length; ++i) {
128    options = arguments[i];
129    if (options != null) {
130      for (name in options) {
131        src = getProperty(target, name);
132        copy = getProperty(options, name);
133        if (target !== copy) {
134          if (deep && copy && (isPlainObject(copy) || (copyIsArray = isArray(copy)))) {
135            if (copyIsArray) {
136              copyIsArray = false;
137              clone = src && isArray(src) ? src : [];
138            } else {
139              clone = src && isPlainObject(src) ? src : {};
140            }
141            setProperty(target, { name, newValue: extend(deep, clone, copy) });
142          } else if (typeof copy !== "undefined") {
143            setProperty(target, { name, newValue: copy });
144          }
145        }
146      }
147    }
148  }
149  return target;
150};
151
152
153/***/ },
154
155/***/ 38393
156(module) {
157
158var COMMENT_REGEX = /\/\*[^*]*\*+([^/*][^*]*\*+)*\//g;
159var NEWLINE_REGEX = /\n/g;
160var WHITESPACE_REGEX = /^\s*/;
161var PROPERTY_REGEX = /^(\*?[-#/*\\\w]+(\[[0-9a-z_-]+\])?)\s*/;
162var COLON_REGEX = /^:\s*/;
163var VALUE_REGEX = /^((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};])+)/;
164var SEMICOLON_REGEX = /^[;\s]*/;
165var TRIM_REGEX = /^\s+|\s+$/g;
166var NEWLINE = "\n";
167var FORWARD_SLASH = "/";
168var ASTERISK = "*";
169var EMPTY_STRING = "";
170var TYPE_COMMENT = "comment";
171var TYPE_DECLARATION = "declaration";
172module.exports = function(style, options) {
173  if (typeof style !== "string") {
174    throw new TypeError("First argument must be a string");
175  }
176  if (!style) return [];
177  options = options || {};
178  var lineno = 1;
179  var column = 1;
180  function updatePosition(str) {
181    var lines = str.match(NEWLINE_REGEX);
182    if (lines) lineno += lines.length;
183    var i = str.lastIndexOf(NEWLINE);
184    column = ~i ? str.length - i : column + str.length;
185  }
186  function position() {
187    var start = { line: lineno, column };
188    return function(node) {
189      node.position = new Position(start);
190      whitespace();
191      return node;
192    };
193  }
194  function Position(start) {
195    this.start = start;
196    this.end = { line: lineno, column };
197    this.source = options.source;
198  }
199  Position.prototype.content = style;
200  var errorsList = [];
201  function error(msg) {
202    var err = new Error(
203      options.source + ":" + lineno + ":" + column + ": " + msg
204    );
205    err.reason = msg;
206    err.filename = options.source;
207    err.line = lineno;
208    err.column = column;
209    err.source = style;
210    if (options.silent) {
211      errorsList.push(err);
212    } else {
213      throw err;
214    }
215  }
216  function match(re) {
217    var m = re.exec(style);
218    if (!m) return;
219    var str = m[0];
220    updatePosition(str);
221    style = style.slice(str.length);
222    return m;
223  }
224  function whitespace() {
225    match(WHITESPACE_REGEX);
226  }
227  function comments(rules) {
228    var c;
229    rules = rules || [];
230    while (c = comment()) {
231      if (c !== false) {
232        rules.push(c);
233      }
234    }
235    return rules;
236  }
237  function comment() {
238    var pos = position();
239    if (FORWARD_SLASH != style.charAt(0) || ASTERISK != style.charAt(1)) return;
240    var i = 2;
241    while (EMPTY_STRING != style.charAt(i) && (ASTERISK != style.charAt(i) || FORWARD_SLASH != style.charAt(i + 1))) {
242      ++i;
243    }
244    i += 2;
245    if (EMPTY_STRING === style.charAt(i - 1)) {
246      return error("End of comment missing");
247    }
248    var str = style.slice(2, i - 2);
249    column += 2;
250    updatePosition(str);
251    style = style.slice(i);
252    column += 2;
253    return pos({
254      type: TYPE_COMMENT,
255      comment: str
256    });
257  }
258  function declaration() {
259    var pos = position();
260    var prop = match(PROPERTY_REGEX);
261    if (!prop) return;
262    comment();
263    if (!match(COLON_REGEX)) return error("property missing ':'");
264    var val = match(VALUE_REGEX);
265    var ret = pos({
266      type: TYPE_DECLARATION,
267      property: trim(prop[0].replace(COMMENT_REGEX, EMPTY_STRING)),
268      value: val ? trim(val[0].replace(COMMENT_REGEX, EMPTY_STRING)) : EMPTY_STRING
269    });
270    match(SEMICOLON_REGEX);
271    return ret;
272  }
273  function declarations() {
274    var decls = [];
275    comments(decls);
276    var decl;
277    while (decl = declaration()) {
278      if (decl !== false) {
279        decls.push(decl);
280        comments(decls);
281      }
282    }
283    return decls;
284  }
285  whitespace();
286  return declarations();
287};
288function trim(str) {
289  return str ? str.replace(TRIM_REGEX, EMPTY_STRING) : EMPTY_STRING;
290}
291
292
293/***/ },
294
295/***/ 6543
296(module) {
297
298/*!
299 * Determine if an object is a Buffer
300 *
301 * @author   Feross Aboukhadijeh <https://feross.org>
302 * @license  MIT
303 */
304module.exports = function isBuffer(obj) {
305  return obj != null && obj.constructor != null && typeof obj.constructor.isBuffer === "function" && obj.constructor.isBuffer(obj);
306};
307
308
309/***/ },
310
311/***/ 42539
312(module, __unused_webpack_exports, __webpack_require__) {
313
314"use strict";
315
316var visit = __webpack_require__(70056);
317module.exports = getDefinitionFactory;
318var own = {}.hasOwnProperty;
319function getDefinitionFactory(node, options) {
320  return getterFactory(gather(node, options));
321}
322function gather(node) {
323  var cache = {};
324  if (!node || !node.type) {
325    throw new Error("mdast-util-definitions expected node");
326  }
327  visit(node, "definition", ondefinition);
328  return cache;
329  function ondefinition(definition) {
330    var id = normalise(definition.identifier);
331    if (!own.call(cache, id)) {
332      cache[id] = definition;
333    }
334  }
335}
336function getterFactory(cache) {
337  return getter;
338  function getter(identifier) {
339    var id = identifier && normalise(identifier);
340    return id && own.call(cache, id) ? cache[id] : null;
341  }
342}
343function normalise(identifier) {
344  return identifier.toUpperCase();
345}
346
347
348/***/ },
349
350/***/ 64436
351(module, __unused_webpack_exports, __webpack_require__) {
352
353"use strict";
354
355module.exports = fromMarkdown;
356var toString = __webpack_require__(44545);
357var assign = __webpack_require__(44552);
358var own = __webpack_require__(78736);
359var normalizeIdentifier = __webpack_require__(17904);
360var safeFromInt = __webpack_require__(6133);
361var parser = __webpack_require__(95895);
362var preprocessor = __webpack_require__(52660);
363var postprocess = __webpack_require__(23199);
364var decode = __webpack_require__(72859);
365var stringifyPosition = __webpack_require__(39946);
366function fromMarkdown(value, encoding, options) {
367  if (typeof encoding !== "string") {
368    options = encoding;
369    encoding = void 0;
370  }
371  return compiler(options)(
372    postprocess(
373      parser(options).document().write(preprocessor()(value, encoding, true))
374    )
375  );
376}
377function compiler(options) {
378  var settings = options || {};
379  var config = configure(
380    {
381      transforms: [],
382      canContainEols: [
383        "emphasis",
384        "fragment",
385        "heading",
386        "paragraph",
387        "strong"
388      ],
389      enter: {
390        autolink: opener(link),
391        autolinkProtocol: onenterdata,
392        autolinkEmail: onenterdata,
393        atxHeading: opener(heading),
394        blockQuote: opener(blockQuote),
395        characterEscape: onenterdata,
396        characterReference: onenterdata,
397        codeFenced: opener(codeFlow),
398        codeFencedFenceInfo: buffer,
399        codeFencedFenceMeta: buffer,
400        codeIndented: opener(codeFlow, buffer),
401        codeText: opener(codeText, buffer),
402        codeTextData: onenterdata,
403        data: onenterdata,
404        codeFlowValue: onenterdata,
405        definition: opener(definition),
406        definitionDestinationString: buffer,
407        definitionLabelString: buffer,
408        definitionTitleString: buffer,
409        emphasis: opener(emphasis),
410        hardBreakEscape: opener(hardBreak),
411        hardBreakTrailing: opener(hardBreak),
412        htmlFlow: opener(html, buffer),
413        htmlFlowData: onenterdata,
414        htmlText: opener(html, buffer),
415        htmlTextData: onenterdata,
416        image: opener(image),
417        label: buffer,
418        link: opener(link),
419        listItem: opener(listItem),
420        listItemValue: onenterlistitemvalue,
421        listOrdered: opener(list, onenterlistordered),
422        listUnordered: opener(list),
423        paragraph: opener(paragraph),
424        reference: onenterreference,
425        referenceString: buffer,
426        resourceDestinationString: buffer,
427        resourceTitleString: buffer,
428        setextHeading: opener(heading),
429        strong: opener(strong),
430        thematicBreak: opener(thematicBreak)
431      },
432      exit: {
433        atxHeading: closer(),
434        atxHeadingSequence: onexitatxheadingsequence,
435        autolink: closer(),
436        autolinkEmail: onexitautolinkemail,
437        autolinkProtocol: onexitautolinkprotocol,
438        blockQuote: closer(),
439        characterEscapeValue: onexitdata,
440        characterReferenceMarkerHexadecimal: onexitcharacterreferencemarker,
441        characterReferenceMarkerNumeric: onexitcharacterreferencemarker,
442        characterReferenceValue: onexitcharacterreferencevalue,
443        codeFenced: closer(onexitcodefenced),
444        codeFencedFence: onexitcodefencedfence,
445        codeFencedFenceInfo: onexitcodefencedfenceinfo,
446        codeFencedFenceMeta: onexitcodefencedfencemeta,
447        codeFlowValue: onexitdata,
448        codeIndented: closer(onexitcodeindented),
449        codeText: closer(onexitcodetext),
450        codeTextData: onexitdata,
451        data: onexitdata,
452        definition: closer(),
453        definitionDestinationString: onexitdefinitiondestinationstring,
vendor: 9,589 bytes, lines 454-739
454        definitionLabelString: onexitdefinitionlabelstring,
455        definitionTitleString: onexitdefinitiontitlestring,
456        emphasis: closer(),
457        hardBreakEscape: closer(onexithardbreak),
458        hardBreakTrailing: closer(onexithardbreak),
459        htmlFlow: closer(onexithtmlflow),
460        htmlFlowData: onexitdata,
461        htmlText: closer(onexithtmltext),
462        htmlTextData: onexitdata,
463        image: closer(onexitimage),
464        label: onexitlabel,
465        labelText: onexitlabeltext,
466        lineEnding: onexitlineending,
467        link: closer(onexitlink),
468        listItem: closer(),
469        listOrdered: closer(),
470        listUnordered: closer(),
471        paragraph: closer(),
472        referenceString: onexitreferencestring,
473        resourceDestinationString: onexitresourcedestinationstring,
474        resourceTitleString: onexitresourcetitlestring,
475        resource: onexitresource,
476        setextHeading: closer(onexitsetextheading),
477        setextHeadingLineSequence: onexitsetextheadinglinesequence,
478        setextHeadingText: onexitsetextheadingtext,
479        strong: closer(),
480        thematicBreak: closer()
481      }
482    },
483    settings.mdastExtensions || []
484  );
485  var data = {};
486  return compile;
487  function compile(events) {
488    var tree = { type: "root", children: [] };
489    var stack = [tree];
490    var tokenStack = [];
491    var listStack = [];
492    var index = -1;
493    var handler;
494    var listStart;
495    var context = {
496      stack,
497      tokenStack,
498      config,
499      enter,
500      exit,
501      buffer,
502      resume,
503      setData,
504      getData
505    };
506    while (++index < events.length) {
507      if (events[index][1].type === "listOrdered" || events[index][1].type === "listUnordered") {
508        if (events[index][0] === "enter") {
509          listStack.push(index);
510        } else {
511          listStart = listStack.pop(index);
512          index = prepareList(events, listStart, index);
513        }
514      }
515    }
516    index = -1;
517    while (++index < events.length) {
518      handler = config[events[index][0]];
519      if (own.call(handler, events[index][1].type)) {
520        handler[events[index][1].type].call(
521          assign({ sliceSerialize: events[index][2].sliceSerialize }, context),
522          events[index][1]
523        );
524      }
525    }
526    if (tokenStack.length) {
527      throw new Error(
528        "Cannot close document, a token (`" + tokenStack[tokenStack.length - 1].type + "`, " + stringifyPosition({
529          start: tokenStack[tokenStack.length - 1].start,
530          end: tokenStack[tokenStack.length - 1].end
531        }) + ") is still open"
532      );
533    }
534    tree.position = {
535      start: point(
536        events.length ? events[0][1].start : { line: 1, column: 1, offset: 0 }
537      ),
538      end: point(
539        events.length ? events[events.length - 2][1].end : { line: 1, column: 1, offset: 0 }
540      )
541    };
542    index = -1;
543    while (++index < config.transforms.length) {
544      tree = config.transforms[index](tree) || tree;
545    }
546    return tree;
547  }
548  function prepareList(events, start, length) {
549    var index = start - 1;
550    var containerBalance = -1;
551    var listSpread = false;
552    var listItem2;
553    var tailIndex;
554    var lineIndex;
555    var tailEvent;
556    var event;
557    var firstBlankLineIndex;
558    var atMarker;
559    while (++index <= length) {
560      event = events[index];
561      if (event[1].type === "listUnordered" || event[1].type === "listOrdered" || event[1].type === "blockQuote") {
562        if (event[0] === "enter") {
563          containerBalance++;
564        } else {
565          containerBalance--;
566        }
567        atMarker = void 0;
568      } else if (event[1].type === "lineEndingBlank") {
569        if (event[0] === "enter") {
570          if (listItem2 && !atMarker && !containerBalance && !firstBlankLineIndex) {
571            firstBlankLineIndex = index;
572          }
573          atMarker = void 0;
574        }
575      } else if (event[1].type === "linePrefix" || event[1].type === "listItemValue" || event[1].type === "listItemMarker" || event[1].type === "listItemPrefix" || event[1].type === "listItemPrefixWhitespace") {
576      } else {
577        atMarker = void 0;
578      }
579      if (!containerBalance && event[0] === "enter" && event[1].type === "listItemPrefix" || containerBalance === -1 && event[0] === "exit" && (event[1].type === "listUnordered" || event[1].type === "listOrdered")) {
580        if (listItem2) {
581          tailIndex = index;
582          lineIndex = void 0;
583          while (tailIndex--) {
584            tailEvent = events[tailIndex];
585            if (tailEvent[1].type === "lineEnding" || tailEvent[1].type === "lineEndingBlank") {
586              if (tailEvent[0] === "exit") continue;
587              if (lineIndex) {
588                events[lineIndex][1].type = "lineEndingBlank";
589                listSpread = true;
590              }
591              tailEvent[1].type = "lineEnding";
592              lineIndex = tailIndex;
593            } else if (tailEvent[1].type === "linePrefix" || tailEvent[1].type === "blockQuotePrefix" || tailEvent[1].type === "blockQuotePrefixWhitespace" || tailEvent[1].type === "blockQuoteMarker" || tailEvent[1].type === "listItemIndent") {
594            } else {
595              break;
596            }
597          }
598          if (firstBlankLineIndex && (!lineIndex || firstBlankLineIndex < lineIndex)) {
599            listItem2._spread = true;
600          }
601          listItem2.end = point(
602            lineIndex ? events[lineIndex][1].start : event[1].end
603          );
604          events.splice(lineIndex || index, 0, ["exit", listItem2, event[2]]);
605          index++;
606          length++;
607        }
608        if (event[1].type === "listItemPrefix") {
609          listItem2 = {
610            type: "listItem",
611            _spread: false,
612            start: point(event[1].start)
613          };
614          events.splice(index, 0, ["enter", listItem2, event[2]]);
615          index++;
616          length++;
617          firstBlankLineIndex = void 0;
618          atMarker = true;
619        }
620      }
621    }
622    events[start][1]._spread = listSpread;
623    return length;
624  }
625  function setData(key, value) {
626    data[key] = value;
627  }
628  function getData(key) {
629    return data[key];
630  }
631  function point(d) {
632    return { line: d.line, column: d.column, offset: d.offset };
633  }
634  function opener(create, and) {
635    return open;
636    function open(token) {
637      enter.call(this, create(token), token);
638      if (and) and.call(this, token);
639    }
640  }
641  function buffer() {
642    this.stack.push({ type: "fragment", children: [] });
643  }
644  function enter(node, token) {
645    this.stack[this.stack.length - 1].children.push(node);
646    this.stack.push(node);
647    this.tokenStack.push(token);
648    node.position = { start: point(token.start) };
649    return node;
650  }
651  function closer(and) {
652    return close;
653    function close(token) {
654      if (and) and.call(this, token);
655      exit.call(this, token);
656    }
657  }
658  function exit(token) {
659    var node = this.stack.pop();
660    var open = this.tokenStack.pop();
661    if (!open) {
662      throw new Error(
663        "Cannot close `" + token.type + "` (" + stringifyPosition({ start: token.start, end: token.end }) + "): it\u2019s not open"
664      );
665    } else if (open.type !== token.type) {
666      throw new Error(
667        "Cannot close `" + token.type + "` (" + stringifyPosition({ start: token.start, end: token.end }) + "): a different token (`" + open.type + "`, " + stringifyPosition({ start: open.start, end: open.end }) + ") is open"
668      );
669    }
670    node.position.end = point(token.end);
671    return node;
672  }
673  function resume() {
674    return toString(this.stack.pop());
675  }
676  function onenterlistordered() {
677    setData("expectingFirstListItemValue", true);
678  }
679  function onenterlistitemvalue(token) {
680    if (getData("expectingFirstListItemValue")) {
681      this.stack[this.stack.length - 2].start = parseInt(
682        this.sliceSerialize(token),
683        10
684      );
685      setData("expectingFirstListItemValue");
686    }
687  }
688  function onexitcodefencedfenceinfo() {
689    var data2 = this.resume();
690    this.stack[this.stack.length - 1].lang = data2;
691  }
692  function onexitcodefencedfencemeta() {
693    var data2 = this.resume();
694    this.stack[this.stack.length - 1].meta = data2;
695  }
696  function onexitcodefencedfence() {
697    if (getData("flowCodeInside")) return;
698    this.buffer();
699    setData("flowCodeInside", true);
700  }
701  function onexitcodefenced() {
702    var data2 = this.resume();
703    this.stack[this.stack.length - 1].value = data2.replace(
704      /^(\r?\n|\r)|(\r?\n|\r)$/g,
705      ""
706    );
707    setData("flowCodeInside");
708  }
709  function onexitcodeindented() {
710    var data2 = this.resume();
711    this.stack[this.stack.length - 1].value = data2;
712  }
713  function onexitdefinitionlabelstring(token) {
714    var label = this.resume();
715    this.stack[this.stack.length - 1].label = label;
716    this.stack[this.stack.length - 1].identifier = normalizeIdentifier(
717      this.sliceSerialize(token)
718    ).toLowerCase();
719  }
720  function onexitdefinitiontitlestring() {
721    var data2 = this.resume();
722    this.stack[this.stack.length - 1].title = data2;
723  }
724  function onexitdefinitiondestinationstring() {
725    var data2 = this.resume();
726    this.stack[this.stack.length - 1].url = data2;
727  }
728  function onexitatxheadingsequence(token) {
729    if (!this.stack[this.stack.length - 1].depth) {
730      this.stack[this.stack.length - 1].depth = this.sliceSerialize(
731        token
732      ).length;
733    }
734  }
735  function onexitsetextheadingtext() {
736    setData("setextHeadingSlurpLineEnding", true);
737  }
738  function onexitsetextheadinglinesequence(token) {
739    this.stack[this.stack.length - 1].depth = this.sliceSerialize(token).charCo
739deAt(0) === 61 ? 1 : 2;
740  }
741  function onexitsetextheading() {
742    setData("setextHeadingSlurpLineEnding");
743  }
744  function onenterdata(token) {
745    var siblings = this.stack[this.stack.length - 1].children;
746    var tail = siblings[siblings.length - 1];
747    if (!tail || tail.type !== "text") {
748      tail = text();
749      tail.position = { start: point(token.start) };
750      this.stack[this.stack.length - 1].children.push(tail);
751    }
752    this.stack.push(tail);
753  }
754  function onexitdata(token) {
755    var tail = this.stack.pop();
756    tail.value += this.sliceSerialize(token);
757    tail.position.end = point(token.end);
758  }
759  function onexitlineending(token) {
760    var context = this.stack[this.stack.length - 1];
761    if (getData("atHardBreak")) {
762      context.children[context.children.length - 1].position.end = point(
763        token.end
764      );
765      setData("atHardBreak");
766      return;
767    }
768    if (!getData("setextHeadingSlurpLineEnding") && config.canContainEols.indexOf(context.type) > -1) {
769      onenterdata.call(this, token);
770      onexitdata.call(this, token);
771    }
772  }
773  function onexithardbreak() {
774    setData("atHardBreak", true);
775  }
776  function onexithtmlflow() {
777    var data2 = this.resume();
778    this.stack[this.stack.length - 1].value = data2;
779  }
780  function onexithtmltext() {
781    var data2 = this.resume();
782    this.stack[this.stack.length - 1].value = data2;
783  }
784  function onexitcodetext() {
785    var data2 = this.resume();
786    this.stack[this.stack.length - 1].value = data2;
787  }
788  function onexitlink() {
789    var context = this.stack[this.stack.length - 1];
790    if (getData("inReference")) {
791      context.type += "Reference";
792      context.referenceType = getData("referenceType") || "shortcut";
793      delete context.url;
794      delete context.title;
795    } else {
796      delete context.identifier;
797      delete context.label;
798      delete context.referenceType;
799    }
800    setData("referenceType");
801  }
802  function onexitimage() {
803    var context = this.stack[this.stack.length - 1];
804    if (getData("inReference")) {
805      context.type += "Reference";
806      context.referenceType = getData("referenceType") || "shortcut";
807      delete context.url;
808      delete context.title;
809    } else {
810      delete context.identifier;
811      delete context.label;
812      delete context.referenceType;
813    }
814    setData("referenceType");
815  }
816  function onexitlabeltext(token) {
817    this.stack[this.stack.length - 2].identifier = normalizeIdentifier(
818      this.sliceSerialize(token)
819    ).toLowerCase();
820  }
821  function onexitlabel() {
822    var fragment = this.stack[this.stack.length - 1];
823    var value = this.resume();
824    this.stack[this.stack.length - 1].label = value;
825    setData("inReference", true);
826    if (this.stack[this.stack.length - 1].type === "link") {
827      this.stack[this.stack.length - 1].children = fragment.children;
828    } else {
829      this.stack[this.stack.length - 1].alt = value;
830    }
831  }
832  function onexitresourcedestinationstring() {
833    var data2 = this.resume();
834    this.stack[this.stack.length - 1].url = data2;
835  }
836  function onexitresourcetitlestring() {
837    var data2 = this.resume();
838    this.stack[this.stack.length - 1].title = data2;
839  }
840  function onexitresource() {
841    setData("inReference");
842  }
843  function onenterreference() {
844    setData("referenceType", "collapsed");
845  }
846  function onexitreferencestring(token) {
847    var label = this.resume();
848    this.stack[this.stack.length - 1].label = label;
849    this.stack[this.stack.length - 1].identifier = normalizeIdentifier(
850      this.sliceSerialize(token)
851    ).toLowerCase();
852    setData("referenceType", "full");
853  }
854  function onexitcharacterreferencemarker(token) {
855    setData("characterReferenceType", token.type);
856  }
857  function onexitcharacterreferencevalue(token) {
858    var data2 = this.sliceSerialize(token);
859    var type = getData("characterReferenceType");
860    var value;
861    var tail;
862    if (type) {
863      value = safeFromInt(
864        data2,
865        type === "characterReferenceMarkerNumeric" ? 10 : 16
866      );
867      setData("characterReferenceType");
868    } else {
869      value = decode(data2);
870    }
871    tail = this.stack.pop();
872    tail.value += value;
873    tail.position.end = point(token.end);
874  }
875  function onexitautolinkprotocol(token) {
876    onexitdata.call(this, token);
877    this.stack[this.stack.length - 1].url = this.sliceSerialize(token);
878  }
879  function onexitautolinkemail(token) {
880    onexitdata.call(this, token);
881    this.stack[this.stack.length - 1].url = "mailto:" + this.sliceSerialize(token);
882  }
883  function blockQuote() {
884    return { type: "blockquote", children: [] };
885  }
886  function codeFlow() {
887    return { type: "code", lang: null, meta: null, value: "" };
888  }
889  function codeText() {
890    return { type: "inlineCode", value: "" };
891  }
892  function definition() {
893    return {
894      type: "definition",
895      identifier: "",
896      label: null,
897      title: null,
898      url: ""
899    };
900  }
901  function emphasis() {
902    return { type: "emphasis", children: [] };
903  }
904  function heading() {
905    return { type: "heading", depth: void 0, children: [] };
906  }
907  function hardBreak() {
908    return { type: "break" };
909  }
910  function html() {
911    return { type: "html", value: "" };
912  }
913  function image() {
914    return { type: "image", title: null, url: "", alt: null };
915  }
916  function link() {
917    return { type: "link", title: null, url: "", children: [] };
918  }
919  function list(token) {
920    return {
921      type: "list",
922      ordered: token.type === "listOrdered",
923      start: null,
924      spread: token._spread,
925      children: []
926    };
927  }
928  function listItem(token) {
929    return {
930      type: "listItem",
931      spread: token._spread,
932      checked: null,
933      children: []
934    };
935  }
936  function paragraph() {
937    return { type: "paragraph", children: [] };
938  }
939  function strong() {
940    return { type: "strong", children: [] };
941  }
942  function text() {
943    return { type: "text", value: "" };
944  }
945  function thematicBreak() {
946    return { type: "thematicBreak" };
947  }
948}
949function configure(config, extensions) {
950  var index = -1;
951  while (++index < extensions.length) {
952    extension(config, extensions[index]);
953  }
954  return config;
955}
956function extension(config, extension2) {
957  var key;
958  var left;
959  for (key in extension2) {
960    left = own.call(config, key) ? config[key] : config[key] = {};
961    if (key === "canContainEols" || key === "transforms") {
962      config[key] = [].concat(left, extension2[key]);
963    } else {
964      Object.assign(left, extension2[key]);
965    }
966  }
967}
968
969
970/***/ },
971
972/***/ 33135
973(module, __unused_webpack_exports, __webpack_require__) {
974
975"use strict";
976
977module.exports = __webpack_require__(64436);
978
979
980/***/ },
981
982/***/ 44545
983(module) {
984
985"use strict";
986
987module.exports = toString;
988function toString(node) {
989  return node && (node.value || node.alt || node.title || "children" in node && all(node.children) || "length" in node && all(node)) || "";
990}
991function all(values) {
992  var result = [];
993  var index = -1;
994  while (++index < values.length) {
995    result[index] = toString(values[index]);
996  }
997  return result.join("");
998}
999
1000
1001/***/ },
1002
1003/***/ 14908
1004(module) {
1005
1006"use strict";
1007
1008var encodeCache = {};
1009function getEncodeCache(exclude) {
1010  var i, ch, cache = encodeCache[exclude];
1011  if (cache) {
1012    return cache;
1013  }
1014  cache = encodeCache[exclude] = [];
1015  for (i = 0; i < 128; i++) {
1016    ch = String.fromCharCode(i);
1017    if (/^[0-9a-z]$/i.test(ch)) {
1018      cache.push(ch);
1019    } else {
1020      cache.push("%" + ("0" + i.toString(16).toUpperCase()).slice(-2));
1021    }
1022  }
1023  for (i = 0; i < exclude.length; i++) {
1024    cache[exclude.charCodeAt(i)] = exclude[i];
1025  }
1026  return cache;
1027}
1028function encode(string, exclude, keepEscaped) {
1029  var i, l, code, nextCode, cache, result = "";
1030  if (typeof exclude !== "string") {
1031    keepEscaped = exclude;
1032    exclude = encode.defaultChars;
1033  }
1034  if (typeof keepEscaped === "undefined") {
1035    keepEscaped = true;
1036  }
1037  cache = getEncodeCache(exclude);
1038  for (i = 0, l = string.length; i < l; i++) {
1039    code = string.charCodeAt(i);
1040    if (keepEscaped && code === 37 && i + 2 < l) {
1041      if (/^[0-9a-f]{2}$/i.test(string.slice(i + 1, i + 3))) {
1042        result += string.slice(i, i + 3);
1043        i += 2;
1044        continue;
1045      }
1046    }
1047    if (code < 128) {
1048      result += cache[code];
1049      continue;
1050    }
1051    if (code >= 55296 && code <= 57343) {
1052      if (code >= 55296 && code <= 56319 && i + 1 < l) {
1053        nextCode = string.charCodeAt(i + 1);
1054        if (nextCode >= 56320 && nextCode <= 57343) {
1055          result += encodeURIComponent(string[i] + string[i + 1]);
1056          i++;
1057          continue;
1058        }
1059      }
1060      result += "%EF%BF%BD";
1061      continue;
1062    }
1063    result += encodeURIComponent(string[i]);
1064  }
1065  return result;
1066}
1067encode.defaultChars = ";/?:@&=+$,-_.!~*'()#";
1068encode.componentChars = "-_.!~*'()";
1069module.exports = encode;
1070
1071
1072/***/ },
1073
1074/***/ 40558
1075(module, __unused_webpack_exports, __webpack_require__) {
1076
1077"use strict";
1078
1079var regexCheck = __webpack_require__(70811);
1080var asciiAlpha = regexCheck(/[A-Za-z]/);
1081module.exports = asciiAlpha;
1082
1083
1084/***/ },
1085
1086/***/ 88567
1087(module, __unused_webpack_exports, __webpack_require__) {
1088
1089"use strict";
1090
1091var regexCheck = __webpack_require__(70811);
1092var asciiAlphanumeric = regexCheck(/[\dA-Za-z]/);
1093module.exports = asciiAlphanumeric;
1094
1095
1096/***/ },
1097
1098/***/ 89806
1099(module, __unused_webpack_exports, __webpack_require__) {
1100
1101"use strict";
1102
1103var regexCheck = __webpack_require__(70811);
1104var asciiAtext = regexCheck(/[#-'*+\--9=?A-Z^-~]/);
1105module.exports = asciiAtext;
1106
1107
1108/***/ },
1109
1110/***/ 7955
1111(module) {
1112
1113"use strict";
1114
1115function asciiControl(code) {
1116  return (
1117    // Special whitespace codes (which have negative values), C0 and Control
1118    // character DEL
1119    code < 32 || code === 127
1120  );
1121}
1122module.exports = asciiControl;
1123
1124
1125/***/ },
1126
1127/***/ 58488
1128(module, __unused_webpack_exports, __webpack_require__) {
1129
1130"use strict";
1131
1132var regexCheck = __webpack_require__(70811);
1133var asciiDigit = regexCheck(/\d/);
1134module.exports = asciiDigit;
1135
1136
1137/***/ },
1138
1139/***/ 56875
1140(module, __unused_webpack_exports, __webpack_require__) {
1141
1142"use strict";
1143
1144var regexCheck = __webpack_require__(70811);
1145var asciiHexDigit = regexCheck(/[\dA-Fa-f]/);
1146module.exports = asciiHexDigit;
1147
1148
1149/***/ },
1150
1151/***/ 72178
1152(module, __unused_webpack_exports, __webpack_require__) {
1153
1154"use strict";
1155
1156var regexCheck = __webpack_require__(70811);
1157var asciiPunctuation = regexCheck(/[!-/:-@[-`{-~]/);
1158module.exports = asciiPunctuation;
1159
1160
1161/***/ },
1162
1163/***/ 2575
1164(module) {
1165
1166"use strict";
1167
1168function markdownLineEndingOrSpace(code) {
1169  return code < 0 || code === 32;
1170}
1171module.exports = markdownLineEndingOrSpace;
1172
1173
1174/***/ },
1175
1176/***/ 63336
1177(module) {
1178
1179"use strict";
1180
1181function markdownLineEnding(code) {
1182  return code < -2;
1183}
1184module.exports = markdownLineEnding;
1185
1186
1187/***/ },
1188
1189/***/ 24248
1190(module) {
1191
1192"use strict";
1193
1194function markdownSpace(code) {
1195  return code === -2 || code === -1 || code === 32;
1196}
1197module.exports = markdownSpace;
1198
1199
1200/***/ },
1201
1202/***/ 62082
1203(module, __unused_webpack_exports, __webpack_require__) {
1204
1205"use strict";
1206
1207var unicodePunctuationRegex = __webpack_require__(52761);
1208var regexCheck = __webpack_require__(70811);
1209var unicodePunctuation = regexCheck(unicodePunctuationRegex);
1210module.exports = unicodePunctuation;
1211
1212
1213/***/ },
1214
1215/***/ 92813
1216(module, __unused_webpack_exports, __webpack_require__) {
1217
1218"use strict";
1219
1220var regexCheck = __webpack_require__(70811);
1221var unicodeWhitespace = regexCheck(/\s/);
1222module.exports = unicodeWhitespace;
1223
1224
1225/***/ },
1226
1227/***/ 44552
1228(module) {
1229
1230"use strict";
1231
1232var assign = Object.assign;
1233module.exports = assign;
1234
1235
1236/***/ },
1237
1238/***/ 86778
1239(module) {
1240
1241"use strict";
1242
1243var fromCharCode = String.fromCharCode;
1244module.exports = fromCharCode;
1245
1246
1247/***/ },
1248
1249/***/ 78736
1250(module) {
1251
1252"use strict";
1253
1254var own = {}.hasOwnProperty;
1255module.exports = own;
1256
1257
1258/***/ },
1259
1260/***/ 84809
1261(module) {
1262
1263"use strict";
1264
1265var basics = [
1266  "address",
1267  "article",
1268  "aside",
1269  "base",
1270  "basefont",
1271  "blockquote",
1272  "body",
1273  "caption",
1274  "center",
1275  "col",
1276  "colgroup",
1277  "dd",
1278  "details",
1279  "dialog",
1280  "dir",
1281  "div",
1282  "dl",
1283  "dt",
1284  "fieldset",
1285  "figcaption",
1286  "figure",
1287  "footer",
1288  "form",
1289  "frame",
1290  "frameset",
1291  "h1",
1292  "h2",
1293  "h3",
1294  "h4",
1295  "h5",
1296  "h6",
1297  "head",
1298  "header",
1299  "hr",
1300  "html",
1301  "iframe",
1302  "legend",
1303  "li",
1304  "link",
1305  "main",
1306  "menu",
1307  "menuitem",
1308  "nav",
1309  "noframes",
1310  "ol",
1311  "optgroup",
1312  "option",
1313  "p",
1314  "param",
1315  "section",
1316  "source",
1317  "summary",
1318  "table",
1319  "tbody",
1320  "td",
1321  "tfoot",
1322  "th",
1323  "thead",
1324  "title",
1325  "tr",
1326  "track",
1327  "ul"
1328];
1329module.exports = basics;
1330
1331
1332/***/ },
1333
1334/***/ 89558
1335(module) {
1336
1337"use strict";
1338
1339var raws = ["pre", "script", "style", "textarea"];
1340module.exports = raws;
1341
1342
1343/***/ },
1344
1345/***/ 42173
1346(module) {
1347
1348"use strict";
1349
1350var splice = [].splice;
1351module.exports = splice;
1352
1353
1354/***/ },
1355
1356/***/ 52761
1357(module) {
1358
1359"use strict";
1360
1361var unicodePunctuation = /[!-\/:-@\[-`\{-~\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C77\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4F\u2E52\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]/;
1362module.exports = unicodePunctuation;
1363
1364
1365/***/ },
1366
1367/***/ 78716
1368(__unused_webpack_module, exports, __webpack_require__) {
1369
1370"use strict";
1371
1372Object.defineProperty(exports, "__esModule", ({ value: true }));
1373var text$1 = __webpack_require__(38708);
1374var attention = __webpack_require__(62226);
1375var autolink = __webpack_require__(5729);
1376var blockQuote = __webpack_require__(77372);
1377var characterEscape = __webpack_require__(73279);
1378var characterReference = __webpack_require__(7115);
1379var codeFenced = __webpack_require__(44407);
1380var codeIndented = __webpack_require__(59487);
1381var codeText = __webpack_require__(2323);
1382var definition = __webpack_require__(50471);
1383var hardBreakEscape = __webpack_require__(95341);
vendor: 111,635 bytes, lines 1384-5661
1384var headingAtx = __webpack_require__(26628);
1385var htmlFlow = __webpack_require__(98272);
1386var htmlText = __webpack_require__(75775);
1387var labelEnd = __webpack_require__(63734);
1388var labelStartImage = __webpack_require__(98543);
1389var labelStartLink = __webpack_require__(87196);
1390var lineEnding = __webpack_require__(43742);
1391var list = __webpack_require__(42666);
1392var setextUnderline = __webpack_require__(57720);
1393var thematicBreak = __webpack_require__(75911);
1394var document = {
1395  42: list,
1396  // Asterisk
1397  43: list,
1398  // Plus sign
1399  45: list,
1400  // Dash
1401  48: list,
1402  // 0
1403  49: list,
1404  // 1
1405  50: list,
1406  // 2
1407  51: list,
1408  // 3
1409  52: list,
1410  // 4
1411  53: list,
1412  // 5
1413  54: list,
1414  // 6
1415  55: list,
1416  // 7
1417  56: list,
1418  // 8
1419  57: list,
1420  // 9
1421  62: blockQuote
1422  // Greater than
1423};
1424var contentInitial = {
1425  91: definition
1426  // Left square bracket
1427};
1428var flowInitial = {
1429  "-2": codeIndented,
1430  // Horizontal tab
1431  "-1": codeIndented,
1432  // Virtual space
1433  32: codeIndented
1434  // Space
1435};
1436var flow = {
1437  35: headingAtx,
1438  // Number sign
1439  42: thematicBreak,
1440  // Asterisk
1441  45: [setextUnderline, thematicBreak],
1442  // Dash
1443  60: htmlFlow,
1444  // Less than
1445  61: setextUnderline,
1446  // Equals to
1447  95: thematicBreak,
1448  // Underscore
1449  96: codeFenced,
1450  // Grave accent
1451  126: codeFenced
1452  // Tilde
1453};
1454var string = {
1455  38: characterReference,
1456  // Ampersand
1457  92: characterEscape
1458  // Backslash
1459};
1460var text = {
1461  "-5": lineEnding,
1462  // Carriage return
1463  "-4": lineEnding,
1464  // Line feed
1465  "-3": lineEnding,
1466  // Carriage return + line feed
1467  33: labelStartImage,
1468  // Exclamation mark
1469  38: characterReference,
1470  // Ampersand
1471  42: attention,
1472  // Asterisk
1473  60: [autolink, htmlText],
1474  // Less than
1475  91: labelStartLink,
1476  // Left square bracket
1477  92: [hardBreakEscape, characterEscape],
1478  // Backslash
1479  93: labelEnd,
1480  // Right square bracket
1481  95: attention,
1482  // Underscore
1483  96: codeText
1484  // Grave accent
1485};
1486var insideSpan = {
1487  null: [attention, text$1.resolver]
1488};
1489var disable = {
1490  null: []
1491};
1492exports.contentInitial = contentInitial;
1493exports.disable = disable;
1494exports.document = document;
1495exports.flow = flow;
1496exports.flowInitial = flowInitial;
1497exports.insideSpan = insideSpan;
1498exports.string = string;
1499exports.text = text;
1500
1501
1502/***/ },
1503
1504/***/ 38614
1505(__unused_webpack_module, exports, __webpack_require__) {
1506
1507"use strict";
1508
1509Object.defineProperty(exports, "__esModule", ({ value: true }));
1510var markdownLineEnding = __webpack_require__(63336);
1511var factorySpace = __webpack_require__(42145);
1512var tokenize = initializeContent;
1513function initializeContent(effects) {
1514  var contentStart = effects.attempt(
1515    this.parser.constructs.contentInitial,
1516    afterContentStartConstruct,
1517    paragraphInitial
1518  );
1519  var previous;
1520  return contentStart;
1521  function afterContentStartConstruct(code) {
1522    if (code === null) {
1523      effects.consume(code);
1524      return;
1525    }
1526    effects.enter("lineEnding");
1527    effects.consume(code);
1528    effects.exit("lineEnding");
1529    return factorySpace(effects, contentStart, "linePrefix");
1530  }
1531  function paragraphInitial(code) {
1532    effects.enter("paragraph");
1533    return lineStart(code);
1534  }
1535  function lineStart(code) {
1536    var token = effects.enter("chunkText", {
1537      contentType: "text",
1538      previous
1539    });
1540    if (previous) {
1541      previous.next = token;
1542    }
1543    previous = token;
1544    return data(code);
1545  }
1546  function data(code) {
1547    if (code === null) {
1548      effects.exit("chunkText");
1549      effects.exit("paragraph");
1550      effects.consume(code);
1551      return;
1552    }
1553    if (markdownLineEnding(code)) {
1554      effects.consume(code);
1555      effects.exit("chunkText");
1556      return lineStart;
1557    }
1558    effects.consume(code);
1559    return data;
1560  }
1561}
1562exports.tokenize = tokenize;
1563
1564
1565/***/ },
1566
1567/***/ 20370
1568(__unused_webpack_module, exports, __webpack_require__) {
1569
1570"use strict";
1571
1572Object.defineProperty(exports, "__esModule", ({ value: true }));
1573var markdownLineEnding = __webpack_require__(63336);
1574var factorySpace = __webpack_require__(42145);
1575var partialBlankLine = __webpack_require__(89177);
1576var tokenize = initializeDocument;
1577var containerConstruct = {
1578  tokenize: tokenizeContainer
1579};
1580var lazyFlowConstruct = {
1581  tokenize: tokenizeLazyFlow
1582};
1583function initializeDocument(effects) {
1584  var self = this;
1585  var stack = [];
1586  var continued = 0;
1587  var inspectConstruct = {
1588    tokenize: tokenizeInspect,
1589    partial: true
1590  };
1591  var inspectResult;
1592  var childFlow;
1593  var childToken;
1594  return start;
1595  function start(code) {
1596    if (continued < stack.length) {
1597      self.containerState = stack[continued][1];
1598      return effects.attempt(
1599        stack[continued][0].continuation,
1600        documentContinue,
1601        documentContinued
1602      )(code);
1603    }
1604    return documentContinued(code);
1605  }
1606  function documentContinue(code) {
1607    continued++;
1608    return start(code);
1609  }
1610  function documentContinued(code) {
1611    if (inspectResult && inspectResult.flowContinue) {
1612      return flowStart(code);
1613    }
1614    self.interrupt = childFlow && childFlow.currentConstruct && childFlow.currentConstruct.interruptible;
1615    self.containerState = {};
1616    return effects.attempt(
1617      containerConstruct,
1618      containerContinue,
1619      flowStart
1620    )(code);
1621  }
1622  function containerContinue(code) {
1623    stack.push([self.currentConstruct, self.containerState]);
1624    self.containerState = void 0;
1625    return documentContinued(code);
1626  }
1627  function flowStart(code) {
1628    if (code === null) {
1629      exitContainers(0, true);
1630      effects.consume(code);
1631      return;
1632    }
1633    childFlow = childFlow || self.parser.flow(self.now());
1634    effects.enter("chunkFlow", {
1635      contentType: "flow",
1636      previous: childToken,
1637      _tokenizer: childFlow
1638    });
1639    return flowContinue(code);
1640  }
1641  function flowContinue(code) {
1642    if (code === null) {
1643      continueFlow(effects.exit("chunkFlow"));
1644      return flowStart(code);
1645    }
1646    if (markdownLineEnding(code)) {
1647      effects.consume(code);
1648      continueFlow(effects.exit("chunkFlow"));
1649      return effects.check(inspectConstruct, documentAfterPeek);
1650    }
1651    effects.consume(code);
1652    return flowContinue;
1653  }
1654  function documentAfterPeek(code) {
1655    exitContainers(
1656      inspectResult.continued,
1657      inspectResult && inspectResult.flowEnd
1658    );
1659    continued = 0;
1660    return start(code);
1661  }
1662  function continueFlow(token) {
1663    if (childToken) childToken.next = token;
1664    childToken = token;
1665    childFlow.lazy = inspectResult && inspectResult.lazy;
1666    childFlow.defineSkip(token.start);
1667    childFlow.write(self.sliceStream(token));
1668  }
1669  function exitContainers(size, end) {
1670    var index = stack.length;
1671    if (childFlow && end) {
1672      childFlow.write([null]);
1673      childToken = childFlow = void 0;
1674    }
1675    while (index-- > size) {
1676      self.containerState = stack[index][1];
1677      stack[index][0].exit.call(self, effects);
1678    }
1679    stack.length = size;
1680  }
1681  function tokenizeInspect(effects2, ok) {
1682    var subcontinued = 0;
1683    inspectResult = {};
1684    return inspectStart;
1685    function inspectStart(code) {
1686      if (subcontinued < stack.length) {
1687        self.containerState = stack[subcontinued][1];
1688        return effects2.attempt(
1689          stack[subcontinued][0].continuation,
1690          inspectContinue,
1691          inspectLess
1692        )(code);
1693      }
1694      if (childFlow.currentConstruct && childFlow.currentConstruct.concrete) {
1695        inspectResult.flowContinue = true;
1696        return inspectDone(code);
1697      }
1698      self.interrupt = childFlow.currentConstruct && childFlow.currentConstruct.interruptible;
1699      self.containerState = {};
1700      return effects2.attempt(
1701        containerConstruct,
1702        inspectFlowEnd,
1703        inspectDone
1704      )(code);
1705    }
1706    function inspectContinue(code) {
1707      subcontinued++;
1708      return self.containerState._closeFlow ? inspectFlowEnd(code) : inspectStart(code);
1709    }
1710    function inspectLess(code) {
1711      if (childFlow.currentConstruct && childFlow.currentConstruct.lazy) {
1712        self.containerState = {};
1713        return effects2.attempt(
1714          containerConstruct,
1715          inspectFlowEnd,
1716          // Maybe flow, or a blank line?
1717          effects2.attempt(
1718            lazyFlowConstruct,
1719            inspectFlowEnd,
1720            effects2.check(partialBlankLine, inspectFlowEnd, inspectLazy)
1721          )
1722        )(code);
1723      }
1724      return inspectFlowEnd(code);
1725    }
1726    function inspectLazy(code) {
1727      subcontinued = stack.length;
1728      inspectResult.lazy = true;
1729      inspectResult.flowContinue = true;
1730      return inspectDone(code);
1731    }
1732    function inspectFlowEnd(code) {
1733      inspectResult.flowEnd = true;
1734      return inspectDone(code);
1735    }
1736    function inspectDone(code) {
1737      inspectResult.continued = subcontinued;
1738      self.interrupt = self.containerState = void 0;
1739      return ok(code);
1740    }
1741  }
1742}
1743function tokenizeContainer(effects, ok, nok) {
1744  return factorySpace(
1745    effects,
1746    effects.attempt(this.parser.constructs.document, ok, nok),
1747    "linePrefix",
1748    this.parser.constructs.disable.null.indexOf("codeIndented") > -1 ? void 0 : 4
1749  );
1750}
1751function tokenizeLazyFlow(effects, ok, nok) {
1752  return factorySpace(
1753    effects,
1754    effects.lazy(this.parser.constructs.flow, ok, nok),
1755    "linePrefix",
1756    this.parser.constructs.disable.null.indexOf("codeIndented") > -1 ? void 0 : 4
1757  );
1758}
1759exports.tokenize = tokenize;
1760
1761
1762/***/ },
1763
1764/***/ 99887
1765(__unused_webpack_module, exports, __webpack_require__) {
1766
1767"use strict";
1768
1769Object.defineProperty(exports, "__esModule", ({ value: true }));
1770var content = __webpack_require__(56461);
1771var factorySpace = __webpack_require__(42145);
1772var partialBlankLine = __webpack_require__(89177);
1773var tokenize = initializeFlow;
1774function initializeFlow(effects) {
1775  var self = this;
1776  var initial = effects.attempt(
1777    // Try to parse a blank line.
1778    partialBlankLine,
1779    atBlankEnding,
1780    // Try to parse initial flow (essentially, only code).
1781    effects.attempt(
1782      this.parser.constructs.flowInitial,
1783      afterConstruct,
1784      factorySpace(
1785        effects,
1786        effects.attempt(
1787          this.parser.constructs.flow,
1788          afterConstruct,
1789          effects.attempt(content, afterConstruct)
1790        ),
1791        "linePrefix"
1792      )
1793    )
1794  );
1795  return initial;
1796  function atBlankEnding(code) {
1797    if (code === null) {
1798      effects.consume(code);
1799      return;
1800    }
1801    effects.enter("lineEndingBlank");
1802    effects.consume(code);
1803    effects.exit("lineEndingBlank");
1804    self.currentConstruct = void 0;
1805    return initial;
1806  }
1807  function afterConstruct(code) {
1808    if (code === null) {
1809      effects.consume(code);
1810      return;
1811    }
1812    effects.enter("lineEnding");
1813    effects.consume(code);
1814    effects.exit("lineEnding");
1815    self.currentConstruct = void 0;
1816    return initial;
1817  }
1818}
1819exports.tokenize = tokenize;
1820
1821
1822/***/ },
1823
1824/***/ 38708
1825(__unused_webpack_module, exports, __webpack_require__) {
1826
1827"use strict";
1828
1829Object.defineProperty(exports, "__esModule", ({ value: true }));
1830var assign = __webpack_require__(44552);
1831var shallow = __webpack_require__(34645);
1832var text = initializeFactory("text");
1833var string = initializeFactory("string");
1834var resolver = {
1835  resolveAll: createResolver()
1836};
1837function initializeFactory(field) {
1838  return {
1839    tokenize: initializeText,
1840    resolveAll: createResolver(
1841      field === "text" ? resolveAllLineSuffixes : void 0
1842    )
1843  };
1844  function initializeText(effects) {
1845    var self = this;
1846    var constructs = this.parser.constructs[field];
1847    var text2 = effects.attempt(constructs, start, notText);
1848    return start;
1849    function start(code) {
1850      return atBreak(code) ? text2(code) : notText(code);
1851    }
1852    function notText(code) {
1853      if (code === null) {
1854        effects.consume(code);
1855        return;
1856      }
1857      effects.enter("data");
1858      effects.consume(code);
1859      return data;
1860    }
1861    function data(code) {
1862      if (atBreak(code)) {
1863        effects.exit("data");
1864        return text2(code);
1865      }
1866      effects.consume(code);
1867      return data;
1868    }
1869    function atBreak(code) {
1870      var list = constructs[code];
1871      var index = -1;
1872      if (code === null) {
1873        return true;
1874      }
1875      if (list) {
1876        while (++index < list.length) {
1877          if (!list[index].previous || list[index].previous.call(self, self.previous)) {
1878            return true;
1879          }
1880        }
1881      }
1882    }
1883  }
1884}
1885function createResolver(extraResolver) {
1886  return resolveAllText;
1887  function resolveAllText(events, context) {
1888    var index = -1;
1889    var enter;
1890    while (++index <= events.length) {
1891      if (enter === void 0) {
1892        if (events[index] && events[index][1].type === "data") {
1893          enter = index;
1894          index++;
1895        }
1896      } else if (!events[index] || events[index][1].type !== "data") {
1897        if (index !== enter + 2) {
1898          events[enter][1].end = events[index - 1][1].end;
1899          events.splice(enter + 2, index - enter - 2);
1900          index = enter + 2;
1901        }
1902        enter = void 0;
1903      }
1904    }
1905    return extraResolver ? extraResolver(events, context) : events;
1906  }
1907}
1908function resolveAllLineSuffixes(events, context) {
1909  var eventIndex = -1;
1910  var chunks;
1911  var data;
1912  var chunk;
1913  var index;
1914  var bufferIndex;
1915  var size;
1916  var tabs;
1917  var token;
1918  while (++eventIndex <= events.length) {
1919    if ((eventIndex === events.length || events[eventIndex][1].type === "lineEnding") && events[eventIndex - 1][1].type === "data") {
1920      data = events[eventIndex - 1][1];
1921      chunks = context.sliceStream(data);
1922      index = chunks.length;
1923      bufferIndex = -1;
1924      size = 0;
1925      tabs = void 0;
1926      while (index--) {
1927        chunk = chunks[index];
1928        if (typeof chunk === "string") {
1929          bufferIndex = chunk.length;
1930          while (chunk.charCodeAt(bufferIndex - 1) === 32) {
1931            size++;
1932            bufferIndex--;
1933          }
1934          if (bufferIndex) break;
1935          bufferIndex = -1;
1936        } else if (chunk === -2) {
1937          tabs = true;
1938          size++;
1939        } else if (chunk === -1) ;
1940        else {
1941          index++;
1942          break;
1943        }
1944      }
1945      if (size) {
1946        token = {
1947          type: eventIndex === events.length || tabs || size < 2 ? "lineSuffix" : "hardBreakTrailing",
1948          start: {
1949            line: data.end.line,
1950            column: data.end.column - size,
1951            offset: data.end.offset - size,
1952            _index: data.start._index + index,
1953            _bufferIndex: index ? bufferIndex : data.start._bufferIndex + bufferIndex
1954          },
1955          end: shallow(data.end)
1956        };
1957        data.end = shallow(token.start);
1958        if (data.start.offset === data.end.offset) {
1959          assign(data, token);
1960        } else {
1961          events.splice(
1962            eventIndex,
1963            0,
1964            ["enter", token, context],
1965            ["exit", token, context]
1966          );
1967          eventIndex += 2;
1968        }
1969      }
1970      eventIndex++;
1971    }
1972  }
1973  return events;
1974}
1975exports.resolver = resolver;
1976exports.string = string;
1977exports.text = text;
1978
1979
1980/***/ },
1981
1982/***/ 95895
1983(module, __unused_webpack_exports, __webpack_require__) {
1984
1985"use strict";
1986
1987var content = __webpack_require__(38614);
1988var document = __webpack_require__(20370);
1989var flow = __webpack_require__(99887);
1990var text = __webpack_require__(38708);
1991var combineExtensions = __webpack_require__(67511);
1992var createTokenizer = __webpack_require__(99573);
1993var miniflat = __webpack_require__(56489);
1994var constructs = __webpack_require__(78716);
1995function parse(options) {
1996  var settings = options || {};
1997  var parser = {
1998    defined: [],
1999    constructs: combineExtensions(
2000      [constructs].concat(miniflat(settings.extensions))
2001    ),
2002    content: create(content),
2003    document: create(document),
2004    flow: create(flow),
2005    string: create(text.string),
2006    text: create(text.text)
2007  };
2008  return parser;
2009  function create(initializer) {
2010    return creator;
2011    function creator(from) {
2012      return createTokenizer(parser, initializer, from);
2013    }
2014  }
2015}
2016module.exports = parse;
2017
2018
2019/***/ },
2020
2021/***/ 23199
2022(module, __unused_webpack_exports, __webpack_require__) {
2023
2024"use strict";
2025
2026var subtokenize = __webpack_require__(26306);
2027function postprocess(events) {
2028  while (!subtokenize(events)) {
2029  }
2030  return events;
2031}
2032module.exports = postprocess;
2033
2034
2035/***/ },
2036
2037/***/ 52660
2038(module) {
2039
2040"use strict";
2041
2042var search = /[\0\t\n\r]/g;
2043function preprocess() {
2044  var start = true;
2045  var column = 1;
2046  var buffer = "";
2047  var atCarriageReturn;
2048  return preprocessor;
2049  function preprocessor(value, encoding, end) {
2050    var chunks = [];
2051    var match;
2052    var next;
2053    var startPosition;
2054    var endPosition;
2055    var code;
2056    value = buffer + value.toString(encoding);
2057    startPosition = 0;
2058    buffer = "";
2059    if (start) {
2060      if (value.charCodeAt(0) === 65279) {
2061        startPosition++;
2062      }
2063      start = void 0;
2064    }
2065    while (startPosition < value.length) {
2066      search.lastIndex = startPosition;
2067      match = search.exec(value);
2068      endPosition = match ? match.index : value.length;
2069      code = value.charCodeAt(endPosition);
2070      if (!match) {
2071        buffer = value.slice(startPosition);
2072        break;
2073      }
2074      if (code === 10 && startPosition === endPosition && atCarriageReturn) {
2075        chunks.push(-3);
2076        atCarriageReturn = void 0;
2077      } else {
2078        if (atCarriageReturn) {
2079          chunks.push(-5);
2080          atCarriageReturn = void 0;
2081        }
2082        if (startPosition < endPosition) {
2083          chunks.push(value.slice(startPosition, endPosition));
2084          column += endPosition - startPosition;
2085        }
2086        if (code === 0) {
2087          chunks.push(65533);
2088          column++;
2089        } else if (code === 9) {
2090          next = Math.ceil(column / 4) * 4;
2091          chunks.push(-2);
2092          while (column++ < next) chunks.push(-1);
2093        } else if (code === 10) {
2094          chunks.push(-4);
2095          column = 1;
2096        } else {
2097          atCarriageReturn = true;
2098          column = 1;
2099        }
2100      }
2101      startPosition = endPosition + 1;
2102    }
2103    if (end) {
2104      if (atCarriageReturn) chunks.push(-5);
2105      if (buffer) chunks.push(buffer);
2106      chunks.push(null);
2107    }
2108    return chunks;
2109  }
2110}
2111module.exports = preprocess;
2112
2113
2114/***/ },
2115
2116/***/ 62226
2117(module, __unused_webpack_exports, __webpack_require__) {
2118
2119"use strict";
2120
2121var chunkedPush = __webpack_require__(90638);
2122var chunkedSplice = __webpack_require__(50638);
2123var classifyCharacter = __webpack_require__(13598);
2124var movePoint = __webpack_require__(99163);
2125var resolveAll = __webpack_require__(33399);
2126var shallow = __webpack_require__(34645);
2127var attention = {
2128  name: "attention",
2129  tokenize: tokenizeAttention,
2130  resolveAll: resolveAllAttention
2131};
2132function resolveAllAttention(events, context) {
2133  var index = -1;
2134  var open;
2135  var group;
2136  var text;
2137  var openingSequence;
2138  var closingSequence;
2139  var use;
2140  var nextEvents;
2141  var offset;
2142  while (++index < events.length) {
2143    if (events[index][0] === "enter" && events[index][1].type === "attentionSequence" && events[index][1]._close) {
2144      open = index;
2145      while (open--) {
2146        if (events[open][0] === "exit" && events[open][1].type === "attentionSequence" && events[open][1]._open && // If the markers are the same:
2147        context.sliceSerialize(events[open][1]).charCodeAt(0) === context.sliceSerialize(events[index][1]).charCodeAt(0)) {
2148          if ((events[open][1]._close || events[index][1]._open) && (events[index][1].end.offset - events[index][1].start.offset) % 3 && !((events[open][1].end.offset - events[open][1].start.offset + events[index][1].end.offset - events[index][1].start.offset) % 3)) {
2149            continue;
2150          }
2151          use = events[open][1].end.offset - events[open][1].start.offset > 1 && events[index][1].end.offset - events[index][1].start.offset > 1 ? 2 : 1;
2152          openingSequence = {
2153            type: use > 1 ? "strongSequence" : "emphasisSequence",
2154            start: movePoint(shallow(events[open][1].end), -use),
2155            end: shallow(events[open][1].end)
2156          };
2157          closingSequence = {
2158            type: use > 1 ? "strongSequence" : "emphasisSequence",
2159            start: shallow(events[index][1].start),
2160            end: movePoint(shallow(events[index][1].start), use)
2161          };
2162          text = {
2163            type: use > 1 ? "strongText" : "emphasisText",
2164            start: shallow(events[open][1].end),
2165            end: shallow(events[index][1].start)
2166          };
2167          group = {
2168            type: use > 1 ? "strong" : "emphasis",
2169            start: shallow(openingSequence.start),
2170            end: shallow(closingSequence.end)
2171          };
2172          events[open][1].end = shallow(openingSequence.start);
2173          events[index][1].start = shallow(closingSequence.end);
2174          nextEvents = [];
2175          if (events[open][1].end.offset - events[open][1].start.offset) {
2176            nextEvents = chunkedPush(nextEvents, [
2177              ["enter", events[open][1], context],
2178              ["exit", events[open][1], context]
2179            ]);
2180          }
2181          nextEvents = chunkedPush(nextEvents, [
2182            ["enter", group, context],
2183            ["enter", openingSequence, context],
2184            ["exit", openingSequence, context],
2185            ["enter", text, context]
2186          ]);
2187          nextEvents = chunkedPush(
2188            nextEvents,
2189            resolveAll(
2190              context.parser.constructs.insideSpan.null,
2191              events.slice(open + 1, index),
2192              context
2193            )
2194          );
2195          nextEvents = chunkedPush(nextEvents, [
2196            ["exit", text, context],
2197            ["enter", closingSequence, context],
2198            ["exit", closingSequence, context],
2199            ["exit", group, context]
2200          ]);
2201          if (events[index][1].end.offset - events[index][1].start.offset) {
2202            offset = 2;
2203            nextEvents = chunkedPush(nextEvents, [
2204              ["enter", events[index][1], context],
2205              ["exit", events[index][1], context]
2206            ]);
2207          } else {
2208            offset = 0;
2209          }
2210          chunkedSplice(events, open - 1, index - open + 3, nextEvents);
2211          index = open + nextEvents.length - offset - 2;
2212          break;
2213        }
2214      }
2215    }
2216  }
2217  index = -1;
2218  while (++index < events.length) {
2219    if (events[index][1].type === "attentionSequence") {
2220      events[index][1].type = "data";
2221    }
2222  }
2223  return events;
2224}
2225function tokenizeAttention(effects, ok) {
2226  var before = classifyCharacter(this.previous);
2227  var marker;
2228  return start;
2229  function start(code) {
2230    effects.enter("attentionSequence");
2231    marker = code;
2232    return sequence(code);
2233  }
2234  function sequence(code) {
2235    var token;
2236    var after;
2237    var open;
2238    var close;
2239    if (code === marker) {
2240      effects.consume(code);
2241      return sequence;
2242    }
2243    token = effects.exit("attentionSequence");
2244    after = classifyCharacter(code);
2245    open = !after || after === 2 && before;
2246    close = !before || before === 2 && after;
2247    token._open = marker === 42 ? open : open && (before || !close);
2248    token._close = marker === 42 ? close : close && (after || !open);
2249    return ok(code);
2250  }
2251}
2252module.exports = attention;
2253
2254
2255/***/ },
2256
2257/***/ 5729
2258(module, __unused_webpack_exports, __webpack_require__) {
2259
2260"use strict";
2261
2262var asciiAlpha = __webpack_require__(40558);
2263var asciiAlphanumeric = __webpack_require__(88567);
2264var asciiAtext = __webpack_require__(89806);
2265var asciiControl = __webpack_require__(7955);
2266var autolink = {
2267  name: "autolink",
2268  tokenize: tokenizeAutolink
2269};
2270function tokenizeAutolink(effects, ok, nok) {
2271  var size = 1;
2272  return start;
2273  function start(code) {
2274    effects.enter("autolink");
2275    effects.enter("autolinkMarker");
2276    effects.consume(code);
2277    effects.exit("autolinkMarker");
2278    effects.enter("autolinkProtocol");
2279    return open;
2280  }
2281  function open(code) {
2282    if (asciiAlpha(code)) {
2283      effects.consume(code);
2284      return schemeOrEmailAtext;
2285    }
2286    return asciiAtext(code) ? emailAtext(code) : nok(code);
2287  }
2288  function schemeOrEmailAtext(code) {
2289    return code === 43 || code === 45 || code === 46 || asciiAlphanumeric(code) ? schemeInsideOrEmailAtext(code) : emailAtext(code);
2290  }
2291  function schemeInsideOrEmailAtext(code) {
2292    if (code === 58) {
2293      effects.consume(code);
2294      return urlInside;
2295    }
2296    if ((code === 43 || code === 45 || code === 46 || asciiAlphanumeric(code)) && size++ < 32) {
2297      effects.consume(code);
2298      return schemeInsideOrEmailAtext;
2299    }
2300    return emailAtext(code);
2301  }
2302  function urlInside(code) {
2303    if (code === 62) {
2304      effects.exit("autolinkProtocol");
2305      return end(code);
2306    }
2307    if (code === 32 || code === 60 || asciiControl(code)) {
2308      return nok(code);
2309    }
2310    effects.consume(code);
2311    return urlInside;
2312  }
2313  function emailAtext(code) {
2314    if (code === 64) {
2315      effects.consume(code);
2316      size = 0;
2317      return emailAtSignOrDot;
2318    }
2319    if (asciiAtext(code)) {
2320      effects.consume(code);
2321      return emailAtext;
2322    }
2323    return nok(code);
2324  }
2325  function emailAtSignOrDot(code) {
2326    return asciiAlphanumeric(code) ? emailLabel(code) : nok(code);
2327  }
2328  function emailLabel(code) {
2329    if (code === 46) {
2330      effects.consume(code);
2331      size = 0;
2332      return emailAtSignOrDot;
2333    }
2334    if (code === 62) {
2335      effects.exit("autolinkProtocol").type = "autolinkEmail";
2336      return end(code);
2337    }
2338    return emailValue(code);
2339  }
2340  function emailValue(code) {
2341    if ((code === 45 || asciiAlphanumeric(code)) && size++ < 63) {
2342      effects.consume(code);
2343      return code === 45 ? emailValue : emailLabel;
2344    }
2345    return nok(code);
2346  }
2347  function end(code) {
2348    effects.enter("autolinkMarker");
2349    effects.consume(code);
2350    effects.exit("autolinkMarker");
2351    effects.exit("autolink");
2352    return ok;
2353  }
2354}
2355module.exports = autolink;
2356
2357
2358/***/ },
2359
2360/***/ 77372
2361(module, __unused_webpack_exports, __webpack_require__) {
2362
2363"use strict";
2364
2365var markdownSpace = __webpack_require__(24248);
2366var factorySpace = __webpack_require__(42145);
2367var blockQuote = {
2368  name: "blockQuote",
2369  tokenize: tokenizeBlockQuoteStart,
2370  continuation: {
2371    tokenize: tokenizeBlockQuoteContinuation
2372  },
2373  exit
2374};
2375function tokenizeBlockQuoteStart(effects, ok, nok) {
2376  var self = this;
2377  return start;
2378  function start(code) {
2379    if (code === 62) {
2380      if (!self.containerState.open) {
2381        effects.enter("blockQuote", {
2382          _container: true
2383        });
2384        self.containerState.open = true;
2385      }
2386      effects.enter("blockQuotePrefix");
2387      effects.enter("blockQuoteMarker");
2388      effects.consume(code);
2389      effects.exit("blockQuoteMarker");
2390      return after;
2391    }
2392    return nok(code);
2393  }
2394  function after(code) {
2395    if (markdownSpace(code)) {
2396      effects.enter("blockQuotePrefixWhitespace");
2397      effects.consume(code);
2398      effects.exit("blockQuotePrefixWhitespace");
2399      effects.exit("blockQuotePrefix");
2400      return ok;
2401    }
2402    effects.exit("blockQuotePrefix");
2403    return ok(code);
2404  }
2405}
2406function tokenizeBlockQuoteContinuation(effects, ok, nok) {
2407  return factorySpace(
2408    effects,
2409    effects.attempt(blockQuote, ok, nok),
2410    "linePrefix",
2411    this.parser.constructs.disable.null.indexOf("codeIndented") > -1 ? void 0 : 4
2412  );
2413}
2414function exit(effects) {
2415  effects.exit("blockQuote");
2416}
2417module.exports = blockQuote;
2418
2419
2420/***/ },
2421
2422/***/ 73279
2423(module, __unused_webpack_exports, __webpack_require__) {
2424
2425"use strict";
2426
2427var asciiPunctuation = __webpack_require__(72178);
2428var characterEscape = {
2429  name: "characterEscape",
2430  tokenize: tokenizeCharacterEscape
2431};
2432function tokenizeCharacterEscape(effects, ok, nok) {
2433  return start;
2434  function start(code) {
2435    effects.enter("characterEscape");
2436    effects.enter("escapeMarker");
2437    effects.consume(code);
2438    effects.exit("escapeMarker");
2439    return open;
2440  }
2441  function open(code) {
2442    if (asciiPunctuation(code)) {
2443      effects.enter("characterEscapeValue");
2444      effects.consume(code);
2445      effects.exit("characterEscapeValue");
2446      effects.exit("characterEscape");
2447      return ok;
2448    }
2449    return nok(code);
2450  }
2451}
2452module.exports = characterEscape;
2453
2454
2455/***/ },
2456
2457/***/ 7115
2458(module, __unused_webpack_exports, __webpack_require__) {
2459
2460"use strict";
2461
2462var decodeEntity = __webpack_require__(72859);
2463var asciiAlphanumeric = __webpack_require__(88567);
2464var asciiDigit = __webpack_require__(58488);
2465var asciiHexDigit = __webpack_require__(56875);
2466function _interopDefaultLegacy(e) {
2467  return e && typeof e === "object" && "default" in e ? e : { default: e };
2468}
2469var decodeEntity__default = /* @__PURE__ */ _interopDefaultLegacy(decodeEntity);
2470var characterReference = {
2471  name: "characterReference",
2472  tokenize: tokenizeCharacterReference
2473};
2474function tokenizeCharacterReference(effects, ok, nok) {
2475  var self = this;
2476  var size = 0;
2477  var max;
2478  var test;
2479  return start;
2480  function start(code) {
2481    effects.enter("characterReference");
2482    effects.enter("characterReferenceMarker");
2483    effects.consume(code);
2484    effects.exit("characterReferenceMarker");
2485    return open;
2486  }
2487  function open(code) {
2488    if (code === 35) {
2489      effects.enter("characterReferenceMarkerNumeric");
2490      effects.consume(code);
2491      effects.exit("characterReferenceMarkerNumeric");
2492      return numeric;
2493    }
2494    effects.enter("characterReferenceValue");
2495    max = 31;
2496    test = asciiAlphanumeric;
2497    return value(code);
2498  }
2499  function numeric(code) {
2500    if (code === 88 || code === 120) {
2501      effects.enter("characterReferenceMarkerHexadecimal");
2502      effects.consume(code);
2503      effects.exit("characterReferenceMarkerHexadecimal");
2504      effects.enter("characterReferenceValue");
2505      max = 6;
2506      test = asciiHexDigit;
2507      return value;
2508    }
2509    effects.enter("characterReferenceValue");
2510    max = 7;
2511    test = asciiDigit;
2512    return value(code);
2513  }
2514  function value(code) {
2515    var token;
2516    if (code === 59 && size) {
2517      token = effects.exit("characterReferenceValue");
2518      if (test === asciiAlphanumeric && !decodeEntity__default["default"](self.sliceSerialize(token))) {
2519        return nok(code);
2520      }
2521      effects.enter("characterReferenceMarker");
2522      effects.consume(code);
2523      effects.exit("characterReferenceMarker");
2524      effects.exit("characterReference");
2525      return ok;
2526    }
2527    if (test(code) && size++ < max) {
2528      effects.consume(code);
2529      return value;
2530    }
2531    return nok(code);
2532  }
2533}
2534module.exports = characterReference;
2535
2536
2537/***/ },
2538
2539/***/ 44407
2540(module, __unused_webpack_exports, __webpack_require__) {
2541
2542"use strict";
2543
2544var markdownLineEnding = __webpack_require__(63336);
2545var markdownLineEndingOrSpace = __webpack_require__(2575);
2546var prefixSize = __webpack_require__(71795);
2547var factorySpace = __webpack_require__(42145);
2548var codeFenced = {
2549  name: "codeFenced",
2550  tokenize: tokenizeCodeFenced,
2551  concrete: true
2552};
2553function tokenizeCodeFenced(effects, ok, nok) {
2554  var self = this;
2555  var closingFenceConstruct = {
2556    tokenize: tokenizeClosingFence,
2557    partial: true
2558  };
2559  var initialPrefix = prefixSize(this.events, "linePrefix");
2560  var sizeOpen = 0;
2561  var marker;
2562  return start;
2563  function start(code) {
2564    effects.enter("codeFenced");
2565    effects.enter("codeFencedFence");
2566    effects.enter("codeFencedFenceSequence");
2567    marker = code;
2568    return sequenceOpen(code);
2569  }
2570  function sequenceOpen(code) {
2571    if (code === marker) {
2572      effects.consume(code);
2573      sizeOpen++;
2574      return sequenceOpen;
2575    }
2576    effects.exit("codeFencedFenceSequence");
2577    return sizeOpen < 3 ? nok(code) : factorySpace(effects, infoOpen, "whitespace")(code);
2578  }
2579  function infoOpen(code) {
2580    if (code === null || markdownLineEnding(code)) {
2581      return openAfter(code);
2582    }
2583    effects.enter("codeFencedFenceInfo");
2584    effects.enter("chunkString", {
2585      contentType: "string"
2586    });
2587    return info(code);
2588  }
2589  function info(code) {
2590    if (code === null || markdownLineEndingOrSpace(code)) {
2591      effects.exit("chunkString");
2592      effects.exit("codeFencedFenceInfo");
2593      return factorySpace(effects, infoAfter, "whitespace")(code);
2594    }
2595    if (code === 96 && code === marker) return nok(code);
2596    effects.consume(code);
2597    return info;
2598  }
2599  function infoAfter(code) {
2600    if (code === null || markdownLineEnding(code)) {
2601      return openAfter(code);
2602    }
2603    effects.enter("codeFencedFenceMeta");
2604    effects.enter("chunkString", {
2605      contentType: "string"
2606    });
2607    return meta(code);
2608  }
2609  function meta(code) {
2610    if (code === null || markdownLineEnding(code)) {
2611      effects.exit("chunkString");
2612      effects.exit("codeFencedFenceMeta");
2613      return openAfter(code);
2614    }
2615    if (code === 96 && code === marker) return nok(code);
2616    effects.consume(code);
2617    return meta;
2618  }
2619  function openAfter(code) {
2620    effects.exit("codeFencedFence");
2621    return self.interrupt ? ok(code) : content(code);
2622  }
2623  function content(code) {
2624    if (code === null) {
2625      return after(code);
2626    }
2627    if (markdownLineEnding(code)) {
2628      effects.enter("lineEnding");
2629      effects.consume(code);
2630      effects.exit("lineEnding");
2631      return effects.attempt(
2632        closingFenceConstruct,
2633        after,
2634        initialPrefix ? factorySpace(effects, content, "linePrefix", initialPrefix + 1) : content
2635      );
2636    }
2637    effects.enter("codeFlowValue");
2638    return contentContinue(code);
2639  }
2640  function contentContinue(code) {
2641    if (code === null || markdownLineEnding(code)) {
2642      effects.exit("codeFlowValue");
2643      return content(code);
2644    }
2645    effects.consume(code);
2646    return contentContinue;
2647  }
2648  function after(code) {
2649    effects.exit("codeFenced");
2650    return ok(code);
2651  }
2652  function tokenizeClosingFence(effects2, ok2, nok2) {
2653    var size = 0;
2654    return factorySpace(
2655      effects2,
2656      closingSequenceStart,
2657      "linePrefix",
2658      this.parser.constructs.disable.null.indexOf("codeIndented") > -1 ? void 0 : 4
2659    );
2660    function closingSequenceStart(code) {
2661      effects2.enter("codeFencedFence");
2662      effects2.enter("codeFencedFenceSequence");
2663      return closingSequence(code);
2664    }
2665    function closingSequence(code) {
2666      if (code === marker) {
2667        effects2.consume(code);
2668        size++;
2669        return closingSequence;
2670      }
2671      if (size < sizeOpen) return nok2(code);
2672      effects2.exit("codeFencedFenceSequence");
2673      return factorySpace(effects2, closingSequenceEnd, "whitespace")(code);
2674    }
2675    function closingSequenceEnd(code) {
2676      if (code === null || markdownLineEnding(code)) {
2677        effects2.exit("codeFencedFence");
2678        return ok2(code);
2679      }
2680      return nok2(code);
2681    }
2682  }
2683}
2684module.exports = codeFenced;
2685
2686
2687/***/ },
2688
2689/***/ 59487
2690(module, __unused_webpack_exports, __webpack_require__) {
2691
2692"use strict";
2693
2694var markdownLineEnding = __webpack_require__(63336);
2695var chunkedSplice = __webpack_require__(50638);
2696var prefixSize = __webpack_require__(71795);
2697var factorySpace = __webpack_require__(42145);
2698var codeIndented = {
2699  name: "codeIndented",
2700  tokenize: tokenizeCodeIndented,
2701  resolve: resolveCodeIndented
2702};
2703var indentedContentConstruct = {
2704  tokenize: tokenizeIndentedContent,
2705  partial: true
2706};
2707function resolveCodeIndented(events, context) {
2708  var code = {
2709    type: "codeIndented",
2710    start: events[0][1].start,
2711    end: events[events.length - 1][1].end
2712  };
2713  chunkedSplice(events, 0, 0, [["enter", code, context]]);
2714  chunkedSplice(events, events.length, 0, [["exit", code, context]]);
2715  return events;
2716}
2717function tokenizeCodeIndented(effects, ok, nok) {
2718  return effects.attempt(indentedContentConstruct, afterPrefix, nok);
2719  function afterPrefix(code) {
2720    if (code === null) {
2721      return ok(code);
2722    }
2723    if (markdownLineEnding(code)) {
2724      return effects.attempt(indentedContentConstruct, afterPrefix, ok)(code);
2725    }
2726    effects.enter("codeFlowValue");
2727    return content(code);
2728  }
2729  function content(code) {
2730    if (code === null || markdownLineEnding(code)) {
2731      effects.exit("codeFlowValue");
2732      return afterPrefix(code);
2733    }
2734    effects.consume(code);
2735    return content;
2736  }
2737}
2738function tokenizeIndentedContent(effects, ok, nok) {
2739  var self = this;
2740  return factorySpace(effects, afterPrefix, "linePrefix", 4 + 1);
2741  function afterPrefix(code) {
2742    if (markdownLineEnding(code)) {
2743      effects.enter("lineEnding");
2744      effects.consume(code);
2745      effects.exit("lineEnding");
2746      return factorySpace(effects, afterPrefix, "linePrefix", 4 + 1);
2747    }
2748    return prefixSize(self.events, "linePrefix") < 4 ? nok(code) : ok(code);
2749  }
2750}
2751module.exports = codeIndented;
2752
2753
2754/***/ },
2755
2756/***/ 2323
2757(module, __unused_webpack_exports, __webpack_require__) {
2758
2759"use strict";
2760
2761var markdownLineEnding = __webpack_require__(63336);
2762var codeText = {
2763  name: "codeText",
2764  tokenize: tokenizeCodeText,
2765  resolve: resolveCodeText,
2766  previous
2767};
2768function resolveCodeText(events) {
2769  var tailExitIndex = events.length - 4;
2770  var headEnterIndex = 3;
2771  var index;
2772  var enter;
2773  if ((events[headEnterIndex][1].type === "lineEnding" || events[headEnterIndex][1].type === "space") && (events[tailExitIndex][1].type === "lineEnding" || events[tailExitIndex][1].type === "space")) {
2774    index = headEnterIndex;
2775    while (++index < tailExitIndex) {
2776      if (events[index][1].type === "codeTextData") {
2777        events[tailExitIndex][1].type = events[headEnterIndex][1].type = "codeTextPadding";
2778        headEnterIndex += 2;
2779        tailExitIndex -= 2;
2780        break;
2781      }
2782    }
2783  }
2784  index = headEnterIndex - 1;
2785  tailExitIndex++;
2786  while (++index <= tailExitIndex) {
2787    if (enter === void 0) {
2788      if (index !== tailExitIndex && events[index][1].type !== "lineEnding") {
2789        enter = index;
2790      }
2791    } else if (index === tailExitIndex || events[index][1].type === "lineEnding") {
2792      events[enter][1].type = "codeTextData";
2793      if (index !== enter + 2) {
2794        events[enter][1].end = events[index - 1][1].end;
2795        events.splice(enter + 2, index - enter - 2);
2796        tailExitIndex -= index - enter - 2;
2797        index = enter + 2;
2798      }
2799      enter = void 0;
2800    }
2801  }
2802  return events;
2803}
2804function previous(code) {
2805  return code !== 96 || this.events[this.events.length - 1][1].type === "characterEscape";
2806}
2807function tokenizeCodeText(effects, ok, nok) {
2808  var sizeOpen = 0;
2809  var size;
2810  var token;
2811  return start;
2812  function start(code) {
2813    effects.enter("codeText");
2814    effects.enter("codeTextSequence");
2815    return openingSequence(code);
2816  }
2817  function openingSequence(code) {
2818    if (code === 96) {
2819      effects.consume(code);
2820      sizeOpen++;
2821      return openingSequence;
2822    }
2823    effects.exit("codeTextSequence");
2824    return gap(code);
2825  }
2826  function gap(code) {
2827    if (code === null) {
2828      return nok(code);
2829    }
2830    if (code === 96) {
2831      token = effects.enter("codeTextSequence");
2832      size = 0;
2833      return closingSequence(code);
2834    }
2835    if (code === 32) {
2836      effects.enter("space");
2837      effects.consume(code);
2838      effects.exit("space");
2839      return gap;
2840    }
2841    if (markdownLineEnding(code)) {
2842      effects.enter("lineEnding");
2843      effects.consume(code);
2844      effects.exit("lineEnding");
2845      return gap;
2846    }
2847    effects.enter("codeTextData");
2848    return data(code);
2849  }
2850  function data(code) {
2851    if (code === null || code === 32 || code === 96 || markdownLineEnding(code)) {
2852      effects.exit("codeTextData");
2853      return gap(code);
2854    }
2855    effects.consume(code);
2856    return data;
2857  }
2858  function closingSequence(code) {
2859    if (code === 96) {
2860      effects.consume(code);
2861      size++;
2862      return closingSequence;
2863    }
2864    if (size === sizeOpen) {
2865      effects.exit("codeTextSequence");
2866      effects.exit("codeText");
2867      return ok(code);
2868    }
2869    token.type = "codeTextData";
2870    return data(code);
2871  }
2872}
2873module.exports = codeText;
2874
2875
2876/***/ },
2877
2878/***/ 56461
2879(module, __unused_webpack_exports, __webpack_require__) {
2880
2881"use strict";
2882
2883var markdownLineEnding = __webpack_require__(63336);
2884var prefixSize = __webpack_require__(71795);
2885var subtokenize = __webpack_require__(26306);
2886var factorySpace = __webpack_require__(42145);
2887var content = {
2888  tokenize: tokenizeContent,
2889  resolve: resolveContent,
2890  interruptible: true,
2891  lazy: true
2892};
2893var continuationConstruct = {
2894  tokenize: tokenizeContinuation,
2895  partial: true
2896};
2897function resolveContent(events) {
2898  subtokenize(events);
2899  return events;
2900}
2901function tokenizeContent(effects, ok) {
2902  var previous;
2903  return start;
2904  function start(code) {
2905    effects.enter("content");
2906    previous = effects.enter("chunkContent", {
2907      contentType: "content"
2908    });
2909    return data(code);
2910  }
2911  function data(code) {
2912    if (code === null) {
2913      return contentEnd(code);
2914    }
2915    if (markdownLineEnding(code)) {
2916      return effects.check(
2917        continuationConstruct,
2918        contentContinue,
2919        contentEnd
2920      )(code);
2921    }
2922    effects.consume(code);
2923    return data;
2924  }
2925  function contentEnd(code) {
2926    effects.exit("chunkContent");
2927    effects.exit("content");
2928    return ok(code);
2929  }
2930  function contentContinue(code) {
2931    effects.consume(code);
2932    effects.exit("chunkContent");
2933    previous = previous.next = effects.enter("chunkContent", {
2934      contentType: "content",
2935      previous
2936    });
2937    return data;
2938  }
2939}
2940function tokenizeContinuation(effects, ok, nok) {
2941  var self = this;
2942  return startLookahead;
2943  function startLookahead(code) {
2944    effects.enter("lineEnding");
2945    effects.consume(code);
2946    effects.exit("lineEnding");
2947    return factorySpace(effects, prefixed, "linePrefix");
2948  }
2949  function prefixed(code) {
2950    if (code === null || markdownLineEnding(code)) {
2951      return nok(code);
2952    }
2953    if (self.parser.constructs.disable.null.indexOf("codeIndented") > -1 || prefixSize(self.events, "linePrefix") < 4) {
2954      return effects.interrupt(self.parser.constructs.flow, nok, ok)(code);
2955    }
2956    return ok(code);
2957  }
2958}
2959module.exports = content;
2960
2961
2962/***/ },
2963
2964/***/ 50471
2965(module, __unused_webpack_exports, __webpack_require__) {
2966
2967"use strict";
2968
2969var markdownLineEnding = __webpack_require__(63336);
2970var markdownLineEndingOrSpace = __webpack_require__(2575);
2971var normalizeIdentifier = __webpack_require__(17904);
2972var factoryDestination = __webpack_require__(53263);
2973var factoryLabel = __webpack_require__(27465);
2974var factorySpace = __webpack_require__(42145);
2975var factoryWhitespace = __webpack_require__(69726);
2976var factoryTitle = __webpack_require__(47065);
2977var definition = {
2978  name: "definition",
2979  tokenize: tokenizeDefinition
2980};
2981var titleConstruct = {
2982  tokenize: tokenizeTitle,
2983  partial: true
2984};
2985function tokenizeDefinition(effects, ok, nok) {
2986  var self = this;
2987  var identifier;
2988  return start;
2989  function start(code) {
2990    effects.enter("definition");
2991    return factoryLabel.call(
2992      self,
2993      effects,
2994      labelAfter,
2995      nok,
2996      "definitionLabel",
2997      "definitionLabelMarker",
2998      "definitionLabelString"
2999    )(code);
3000  }
3001  function labelAfter(code) {
3002    identifier = normalizeIdentifier(
3003      self.sliceSerialize(self.events[self.events.length - 1][1]).slice(1, -1)
3004    );
3005    if (code === 58) {
3006      effects.enter("definitionMarker");
3007      effects.consume(code);
3008      effects.exit("definitionMarker");
3009      return factoryWhitespace(
3010        effects,
3011        factoryDestination(
3012          effects,
3013          effects.attempt(
3014            titleConstruct,
3015            factorySpace(effects, after, "whitespace"),
3016            factorySpace(effects, after, "whitespace")
3017          ),
3018          nok,
3019          "definitionDestination",
3020          "definitionDestinationLiteral",
3021          "definitionDestinationLiteralMarker",
3022          "definitionDestinationRaw",
3023          "definitionDestinationString"
3024        )
3025      );
3026    }
3027    return nok(code);
3028  }
3029  function after(code) {
3030    if (code === null || markdownLineEnding(code)) {
3031      effects.exit("definition");
3032      if (self.parser.defined.indexOf(identifier) < 0) {
3033        self.parser.defined.push(identifier);
3034      }
3035      return ok(code);
3036    }
3037    return nok(code);
3038  }
3039}
3040function tokenizeTitle(effects, ok, nok) {
3041  return start;
3042  function start(code) {
3043    return markdownLineEndingOrSpace(code) ? factoryWhitespace(effects, before)(code) : nok(code);
3044  }
3045  function before(code) {
3046    if (code === 34 || code === 39 || code === 40) {
3047      return factoryTitle(
3048        effects,
3049        factorySpace(effects, after, "whitespace"),
3050        nok,
3051        "definitionTitle",
3052        "definitionTitleMarker",
3053        "definitionTitleString"
3054      )(code);
3055    }
3056    return nok(code);
3057  }
3058  function after(code) {
3059    return code === null || markdownLineEnding(code) ? ok(code) : nok(code);
3060  }
3061}
3062module.exports = definition;
3063
3064
3065/***/ },
3066
3067/***/ 53263
3068(module, __unused_webpack_exports, __webpack_require__) {
3069
3070"use strict";
3071
3072var asciiControl = __webpack_require__(7955);
3073var markdownLineEndingOrSpace = __webpack_require__(2575);
3074var markdownLineEnding = __webpack_require__(63336);
3075function destinationFactory(effects, ok, nok, type, literalType, literalMarkerType, rawType, stringType, max) {
3076  var limit = max || Infinity;
3077  var balance = 0;
3078  return start;
3079  function start(code) {
3080    if (code === 60) {
3081      effects.enter(type);
3082      effects.enter(literalType);
3083      effects.enter(literalMarkerType);
3084      effects.consume(code);
3085      effects.exit(literalMarkerType);
3086      return destinationEnclosedBefore;
3087    }
3088    if (asciiControl(code) || code === 41) {
3089      return nok(code);
3090    }
3091    effects.enter(type);
3092    effects.enter(rawType);
3093    effects.enter(stringType);
3094    effects.enter("chunkString", {
3095      contentType: "string"
3096    });
3097    return destinationRaw(code);
3098  }
3099  function destinationEnclosedBefore(code) {
3100    if (code === 62) {
3101      effects.enter(literalMarkerType);
3102      effects.consume(code);
3103      effects.exit(literalMarkerType);
3104      effects.exit(literalType);
3105      effects.exit(type);
3106      return ok;
3107    }
3108    effects.enter(stringType);
3109    effects.enter("chunkString", {
3110      contentType: "string"
3111    });
3112    return destinationEnclosed(code);
3113  }
3114  function destinationEnclosed(code) {
3115    if (code === 62) {
3116      effects.exit("chunkString");
3117      effects.exit(stringType);
3118      return destinationEnclosedBefore(code);
3119    }
3120    if (code === null || code === 60 || markdownLineEnding(code)) {
3121      return nok(code);
3122    }
3123    effects.consume(code);
3124    return code === 92 ? destinationEnclosedEscape : destinationEnclosed;
3125  }
3126  function destinationEnclosedEscape(code) {
3127    if (code === 60 || code === 62 || code === 92) {
3128      effects.consume(code);
3129      return destinationEnclosed;
3130    }
3131    return destinationEnclosed(code);
3132  }
3133  function destinationRaw(code) {
3134    if (code === 40) {
3135      if (++balance > limit) return nok(code);
3136      effects.consume(code);
3137      return destinationRaw;
3138    }
3139    if (code === 41) {
3140      if (!balance--) {
3141        effects.exit("chunkString");
3142        effects.exit(stringType);
3143        effects.exit(rawType);
3144        effects.exit(type);
3145        return ok(code);
3146      }
3147      effects.consume(code);
3148      return destinationRaw;
3149    }
3150    if (code === null || markdownLineEndingOrSpace(code)) {
3151      if (balance) return nok(code);
3152      effects.exit("chunkString");
3153      effects.exit(stringType);
3154      effects.exit(rawType);
3155      effects.exit(type);
3156      return ok(code);
3157    }
3158    if (asciiControl(code)) return nok(code);
3159    effects.consume(code);
3160    return code === 92 ? destinationRawEscape : destinationRaw;
3161  }
3162  function destinationRawEscape(code) {
3163    if (code === 40 || code === 41 || code === 92) {
3164      effects.consume(code);
3165      return destinationRaw;
3166    }
3167    return destinationRaw(code);
3168  }
3169}
3170module.exports = destinationFactory;
3171
3172
3173/***/ },
3174
3175/***/ 27465
3176(module, __unused_webpack_exports, __webpack_require__) {
3177
3178"use strict";
3179
3180var markdownLineEnding = __webpack_require__(63336);
3181var markdownSpace = __webpack_require__(24248);
3182function labelFactory(effects, ok, nok, type, markerType, stringType) {
3183  var self = this;
3184  var size = 0;
3185  var data;
3186  return start;
3187  function start(code) {
3188    effects.enter(type);
3189    effects.enter(markerType);
3190    effects.consume(code);
3191    effects.exit(markerType);
3192    effects.enter(stringType);
3193    return atBreak;
3194  }
3195  function atBreak(code) {
3196    if (code === null || code === 91 || code === 93 && !data || /* c8 ignore next */
3197    code === 94 && /* c8 ignore next */
3198    !size && /* c8 ignore next */
3199    "_hiddenFootnoteSupport" in self.parser.constructs || size > 999) {
3200      return nok(code);
3201    }
3202    if (code === 93) {
3203      effects.exit(stringType);
3204      effects.enter(markerType);
3205      effects.consume(code);
3206      effects.exit(markerType);
3207      effects.exit(type);
3208      return ok;
3209    }
3210    if (markdownLineEnding(code)) {
3211      effects.enter("lineEnding");
3212      effects.consume(code);
3213      effects.exit("lineEnding");
3214      return atBreak;
3215    }
3216    effects.enter("chunkString", {
3217      contentType: "string"
3218    });
3219    return label(code);
3220  }
3221  function label(code) {
3222    if (code === null || code === 91 || code === 93 || markdownLineEnding(code) || size++ > 999) {
3223      effects.exit("chunkString");
3224      return atBreak(code);
3225    }
3226    effects.consume(code);
3227    data = data || !markdownSpace(code);
3228    return code === 92 ? labelEscape : label;
3229  }
3230  function labelEscape(code) {
3231    if (code === 91 || code === 92 || code === 93) {
3232      effects.consume(code);
3233      size++;
3234      return label;
3235    }
3236    return label(code);
3237  }
3238}
3239module.exports = labelFactory;
3240
3241
3242/***/ },
3243
3244/***/ 42145
3245(module, __unused_webpack_exports, __webpack_require__) {
3246
3247"use strict";
3248
3249var markdownSpace = __webpack_require__(24248);
3250function spaceFactory(effects, ok, type, max) {
3251  var limit = max ? max - 1 : Infinity;
3252  var size = 0;
3253  return start;
3254  function start(code) {
3255    if (markdownSpace(code)) {
3256      effects.enter(type);
3257      return prefix(code);
3258    }
3259    return ok(code);
3260  }
3261  function prefix(code) {
3262    if (markdownSpace(code) && size++ < limit) {
3263      effects.consume(code);
3264      return prefix;
3265    }
3266    effects.exit(type);
3267    return ok(code);
3268  }
3269}
3270module.exports = spaceFactory;
3271
3272
3273/***/ },
3274
3275/***/ 47065
3276(module, __unused_webpack_exports, __webpack_require__) {
3277
3278"use strict";
3279
3280var markdownLineEnding = __webpack_require__(63336);
3281var factorySpace = __webpack_require__(42145);
3282function titleFactory(effects, ok, nok, type, markerType, stringType) {
3283  var marker;
3284  return start;
3285  function start(code) {
3286    effects.enter(type);
3287    effects.enter(markerType);
3288    effects.consume(code);
3289    effects.exit(markerType);
3290    marker = code === 40 ? 41 : code;
3291    return atFirstTitleBreak;
3292  }
3293  function atFirstTitleBreak(code) {
3294    if (code === marker) {
3295      effects.enter(markerType);
3296      effects.consume(code);
3297      effects.exit(markerType);
3298      effects.exit(type);
3299      return ok;
3300    }
3301    effects.enter(stringType);
3302    return atTitleBreak(code);
3303  }
3304  function atTitleBreak(code) {
3305    if (code === marker) {
3306      effects.exit(stringType);
3307      return atFirstTitleBreak(marker);
3308    }
3309    if (code === null) {
3310      return nok(code);
3311    }
3312    if (markdownLineEnding(code)) {
3313      effects.enter("lineEnding");
3314      effects.consume(code);
3315      effects.exit("lineEnding");
3316      return factorySpace(effects, atTitleBreak, "linePrefix");
3317    }
3318    effects.enter("chunkString", {
3319      contentType: "string"
3320    });
3321    return title(code);
3322  }
3323  function title(code) {
3324    if (code === marker || code === null || markdownLineEnding(code)) {
3325      effects.exit("chunkString");
3326      return atTitleBreak(code);
3327    }
3328    effects.consume(code);
3329    return code === 92 ? titleEscape : title;
3330  }
3331  function titleEscape(code) {
3332    if (code === marker || code === 92) {
3333      effects.consume(code);
3334      return title;
3335    }
3336    return title(code);
3337  }
3338}
3339module.exports = titleFactory;
3340
3341
3342/***/ },
3343
3344/***/ 69726
3345(module, __unused_webpack_exports, __webpack_require__) {
3346
3347"use strict";
3348
3349var markdownLineEnding = __webpack_require__(63336);
3350var markdownSpace = __webpack_require__(24248);
3351var factorySpace = __webpack_require__(42145);
3352function whitespaceFactory(effects, ok) {
3353  var seen;
3354  return start;
3355  function start(code) {
3356    if (markdownLineEnding(code)) {
3357      effects.enter("lineEnding");
3358      effects.consume(code);
3359      effects.exit("lineEnding");
3360      seen = true;
3361      return start;
3362    }
3363    if (markdownSpace(code)) {
3364      return factorySpace(
3365        effects,
3366        start,
3367        seen ? "linePrefix" : "lineSuffix"
3368      )(code);
3369    }
3370    return ok(code);
3371  }
3372}
3373module.exports = whitespaceFactory;
3374
3375
3376/***/ },
3377
3378/***/ 95341
3379(module, __unused_webpack_exports, __webpack_require__) {
3380
3381"use strict";
3382
3383var markdownLineEnding = __webpack_require__(63336);
3384var hardBreakEscape = {
3385  name: "hardBreakEscape",
3386  tokenize: tokenizeHardBreakEscape
3387};
3388function tokenizeHardBreakEscape(effects, ok, nok) {
3389  return start;
3390  function start(code) {
3391    effects.enter("hardBreakEscape");
3392    effects.enter("escapeMarker");
3393    effects.consume(code);
3394    return open;
3395  }
3396  function open(code) {
3397    if (markdownLineEnding(code)) {
3398      effects.exit("escapeMarker");
3399      effects.exit("hardBreakEscape");
3400      return ok(code);
3401    }
3402    return nok(code);
3403  }
3404}
3405module.exports = hardBreakEscape;
3406
3407
3408/***/ },
3409
3410/***/ 26628
3411(module, __unused_webpack_exports, __webpack_require__) {
3412
3413"use strict";
3414
3415var markdownLineEnding = __webpack_require__(63336);
3416var markdownLineEndingOrSpace = __webpack_require__(2575);
3417var markdownSpace = __webpack_require__(24248);
3418var chunkedSplice = __webpack_require__(50638);
3419var factorySpace = __webpack_require__(42145);
3420var headingAtx = {
3421  name: "headingAtx",
3422  tokenize: tokenizeHeadingAtx,
3423  resolve: resolveHeadingAtx
3424};
3425function resolveHeadingAtx(events, context) {
3426  var contentEnd = events.length - 2;
3427  var contentStart = 3;
3428  var content;
3429  var text;
3430  if (events[contentStart][1].type === "whitespace") {
3431    contentStart += 2;
3432  }
3433  if (contentEnd - 2 > contentStart && events[contentEnd][1].type === "whitespace") {
3434    contentEnd -= 2;
3435  }
3436  if (events[contentEnd][1].type === "atxHeadingSequence" && (contentStart === contentEnd - 1 || contentEnd - 4 > contentStart && events[contentEnd - 2][1].type === "whitespace")) {
3437    contentEnd -= contentStart + 1 === contentEnd ? 2 : 4;
3438  }
3439  if (contentEnd > contentStart) {
3440    content = {
3441      type: "atxHeadingText",
3442      start: events[contentStart][1].start,
3443      end: events[contentEnd][1].end
3444    };
3445    text = {
3446      type: "chunkText",
3447      start: events[contentStart][1].start,
3448      end: events[contentEnd][1].end,
3449      contentType: "text"
3450    };
3451    chunkedSplice(events, contentStart, contentEnd - contentStart + 1, [
3452      ["enter", content, context],
3453      ["enter", text, context],
3454      ["exit", text, context],
3455      ["exit", content, context]
3456    ]);
3457  }
3458  return events;
3459}
3460function tokenizeHeadingAtx(effects, ok, nok) {
3461  var self = this;
3462  var size = 0;
3463  return start;
3464  function start(code) {
3465    effects.enter("atxHeading");
3466    effects.enter("atxHeadingSequence");
3467    return fenceOpenInside(code);
3468  }
3469  function fenceOpenInside(code) {
3470    if (code === 35 && size++ < 6) {
3471      effects.consume(code);
3472      return fenceOpenInside;
3473    }
3474    if (code === null || markdownLineEndingOrSpace(code)) {
3475      effects.exit("atxHeadingSequence");
3476      return self.interrupt ? ok(code) : headingBreak(code);
3477    }
3478    return nok(code);
3479  }
3480  function headingBreak(code) {
3481    if (code === 35) {
3482      effects.enter("atxHeadingSequence");
3483      return sequence(code);
3484    }
3485    if (code === null || markdownLineEnding(code)) {
3486      effects.exit("atxHeading");
3487      return ok(code);
3488    }
3489    if (markdownSpace(code)) {
3490      return factorySpace(effects, headingBreak, "whitespace")(code);
3491    }
3492    effects.enter("atxHeadingText");
3493    return data(code);
3494  }
3495  function sequence(code) {
3496    if (code === 35) {
3497      effects.consume(code);
3498      return sequence;
3499    }
3500    effects.exit("atxHeadingSequence");
3501    return headingBreak(code);
3502  }
3503  function data(code) {
3504    if (code === null || code === 35 || markdownLineEndingOrSpace(code)) {
3505      effects.exit("atxHeadingText");
3506      return headingBreak(code);
3507    }
3508    effects.consume(code);
3509    return data;
3510  }
3511}
3512module.exports = headingAtx;
3513
3514
3515/***/ },
3516
3517/***/ 98272
3518(module, __unused_webpack_exports, __webpack_require__) {
3519
3520"use strict";
3521
3522var asciiAlpha = __webpack_require__(40558);
3523var asciiAlphanumeric = __webpack_require__(88567);
3524var markdownLineEnding = __webpack_require__(63336);
3525var markdownLineEndingOrSpace = __webpack_require__(2575);
3526var markdownSpace = __webpack_require__(24248);
3527var fromCharCode = __webpack_require__(86778);
3528var htmlBlockNames = __webpack_require__(84809);
3529var htmlRawNames = __webpack_require__(89558);
3530var partialBlankLine = __webpack_require__(89177);
3531var htmlFlow = {
3532  name: "htmlFlow",
3533  tokenize: tokenizeHtmlFlow,
3534  resolveTo: resolveToHtmlFlow,
3535  concrete: true
3536};
3537var nextBlankConstruct = {
3538  tokenize: tokenizeNextBlank,
3539  partial: true
3540};
3541function resolveToHtmlFlow(events) {
3542  var index = events.length;
3543  while (index--) {
3544    if (events[index][0] === "enter" && events[index][1].type === "htmlFlow") {
3545      break;
3546    }
3547  }
3548  if (index > 1 && events[index - 2][1].type === "linePrefix") {
3549    events[index][1].start = events[index - 2][1].start;
3550    events[index + 1][1].start = events[index - 2][1].start;
3551    events.splice(index - 2, 2);
3552  }
3553  return events;
3554}
3555function tokenizeHtmlFlow(effects, ok, nok) {
3556  var self = this;
3557  var kind;
3558  var startTag;
3559  var buffer;
3560  var index;
3561  var marker;
3562  return start;
3563  function start(code) {
3564    effects.enter("htmlFlow");
3565    effects.enter("htmlFlowData");
3566    effects.consume(code);
3567    return open;
3568  }
3569  function open(code) {
3570    if (code === 33) {
3571      effects.consume(code);
3572      return declarationStart;
3573    }
3574    if (code === 47) {
3575      effects.consume(code);
3576      return tagCloseStart;
3577    }
3578    if (code === 63) {
3579      effects.consume(code);
3580      kind = 3;
3581      return self.interrupt ? ok : continuationDeclarationInside;
3582    }
3583    if (asciiAlpha(code)) {
3584      effects.consume(code);
3585      buffer = fromCharCode(code);
3586      startTag = true;
3587      return tagName;
3588    }
3589    return nok(code);
3590  }
3591  function declarationStart(code) {
3592    if (code === 45) {
3593      effects.consume(code);
3594      kind = 2;
3595      return commentOpenInside;
3596    }
3597    if (code === 91) {
3598      effects.consume(code);
3599      kind = 5;
3600      buffer = "CDATA[";
3601      index = 0;
3602      return cdataOpenInside;
3603    }
3604    if (asciiAlpha(code)) {
3605      effects.consume(code);
3606      kind = 4;
3607      return self.interrupt ? ok : continuationDeclarationInside;
3608    }
3609    return nok(code);
3610  }
3611  function commentOpenInside(code) {
3612    if (code === 45) {
3613      effects.consume(code);
3614      return self.interrupt ? ok : continuationDeclarationInside;
3615    }
3616    return nok(code);
3617  }
3618  function cdataOpenInside(code) {
3619    if (code === buffer.charCodeAt(index++)) {
3620      effects.consume(code);
3621      return index === buffer.length ? self.interrupt ? ok : continuation : cdataOpenInside;
3622    }
3623    return nok(code);
3624  }
3625  function tagCloseStart(code) {
3626    if (asciiAlpha(code)) {
3627      effects.consume(code);
3628      buffer = fromCharCode(code);
3629      return tagName;
3630    }
3631    return nok(code);
3632  }
3633  function tagName(code) {
3634    if (code === null || code === 47 || code === 62 || markdownLineEndingOrSpace(code)) {
3635      if (code !== 47 && startTag && htmlRawNames.indexOf(buffer.toLowerCase()) > -1) {
3636        kind = 1;
3637        return self.interrupt ? ok(code) : continuation(code);
3638      }
3639      if (htmlBlockNames.indexOf(buffer.toLowerCase()) > -1) {
3640        kind = 6;
3641        if (code === 47) {
3642          effects.consume(code);
3643          return basicSelfClosing;
3644        }
3645        return self.interrupt ? ok(code) : continuation(code);
3646      }
3647      kind = 7;
3648      return self.interrupt ? nok(code) : startTag ? completeAttributeNameBefore(code) : completeClosingTagAfter(code);
3649    }
3650    if (code === 45 || asciiAlphanumeric(code)) {
3651      effects.consume(code);
3652      buffer += fromCharCode(code);
3653      return tagName;
3654    }
3655    return nok(code);
3656  }
3657  function basicSelfClosing(code) {
3658    if (code === 62) {
3659      effects.consume(code);
3660      return self.interrupt ? ok : continuation;
3661    }
3662    return nok(code);
3663  }
3664  function completeClosingTagAfter(code) {
3665    if (markdownSpace(code)) {
3666      effects.consume(code);
3667      return completeClosingTagAfter;
3668    }
3669    return completeEnd(code);
3670  }
3671  function completeAttributeNameBefore(code) {
3672    if (code === 47) {
3673      effects.consume(code);
3674      return completeEnd;
3675    }
3676    if (code === 58 || code === 95 || asciiAlpha(code)) {
3677      effects.consume(code);
3678      return completeAttributeName;
3679    }
3680    if (markdownSpace(code)) {
3681      effects.consume(code);
3682      return completeAttributeNameBefore;
3683    }
3684    return completeEnd(code);
3685  }
3686  function completeAttributeName(code) {
3687    if (code === 45 || code === 46 || code === 58 || code === 95 || asciiAlphanumeric(code)) {
3688      effects.consume(code);
3689      return completeAttributeName;
3690    }
3691    return completeAttributeNameAfter(code);
3692  }
3693  function completeAttributeNameAfter(code) {
3694    if (code === 61) {
3695      effects.consume(code);
3696      return completeAttributeValueBefore;
3697    }
3698    if (markdownSpace(code)) {
3699      effects.consume(code);
3700      return completeAttributeNameAfter;
3701    }
3702    return completeAttributeNameBefore(code);
3703  }
3704  function completeAttributeValueBefore(code) {
3705    if (code === null || code === 60 || code === 61 || code === 62 || code === 96) {
3706      return nok(code);
3707    }
3708    if (code === 34 || code === 39) {
3709      effects.consume(code);
3710      marker = code;
3711      return completeAttributeValueQuoted;
3712    }
3713    if (markdownSpace(code)) {
3714      effects.consume(code);
3715      return completeAttributeValueBefore;
3716    }
3717    marker = void 0;
3718    return completeAttributeValueUnquoted(code);
3719  }
3720  function completeAttributeValueQuoted(code) {
3721    if (code === marker) {
3722      effects.consume(code);
3723      return completeAttributeValueQuotedAfter;
3724    }
3725    if (code === null || markdownLineEnding(code)) {
3726      return nok(code);
3727    }
3728    effects.consume(code);
3729    return completeAttributeValueQuoted;
3730  }
3731  function completeAttributeValueUnquoted(code) {
3732    if (code === null || code === 34 || code === 39 || code === 60 || code === 61 || code === 62 || code === 96 || markdownLineEndingOrSpace(code)) {
3733      return completeAttributeNameAfter(code);
3734    }
3735    effects.consume(code);
3736    return completeAttributeValueUnquoted;
3737  }
3738  function completeAttributeValueQuotedAfter(code) {
3739    if (code === 47 || code === 62 || markdownSpace(code)) {
3740      return completeAttributeNameBefore(code);
3741    }
3742    return nok(code);
3743  }
3744  function completeEnd(code) {
3745    if (code === 62) {
3746      effects.consume(code);
3747      return completeAfter;
3748    }
3749    return nok(code);
3750  }
3751  function completeAfter(code) {
3752    if (markdownSpace(code)) {
3753      effects.consume(code);
3754      return completeAfter;
3755    }
3756    return code === null || markdownLineEnding(code) ? continuation(code) : nok(code);
3757  }
3758  function continuation(code) {
3759    if (code === 45 && kind === 2) {
3760      effects.consume(code);
3761      return continuationCommentInside;
3762    }
3763    if (code === 60 && kind === 1) {
3764      effects.consume(code);
3765      return continuationRawTagOpen;
3766    }
3767    if (code === 62 && kind === 4) {
3768      effects.consume(code);
3769      return continuationClose;
3770    }
3771    if (code === 63 && kind === 3) {
3772      effects.consume(code);
3773      return continuationDeclarationInside;
3774    }
3775    if (code === 93 && kind === 5) {
3776      effects.consume(code);
3777      return continuationCharacterDataInside;
3778    }
3779    if (markdownLineEnding(code) && (kind === 6 || kind === 7)) {
3780      return effects.check(
3781        nextBlankConstruct,
3782        continuationClose,
3783        continuationAtLineEnding
3784      )(code);
3785    }
3786    if (code === null || markdownLineEnding(code)) {
3787      return continuationAtLineEnding(code);
3788    }
3789    effects.consume(code);
3790    return continuation;
3791  }
3792  function continuationAtLineEnding(code) {
3793    effects.exit("htmlFlowData");
3794    return htmlContinueStart(code);
3795  }
3796  function htmlContinueStart(code) {
3797    if (code === null) {
3798      return done(code);
3799    }
3800    if (markdownLineEnding(code)) {
3801      effects.enter("lineEnding");
3802      effects.consume(code);
3803      effects.exit("lineEnding");
3804      return htmlContinueStart;
3805    }
3806    effects.enter("htmlFlowData");
3807    return continuation(code);
3808  }
3809  function continuationCommentInside(code) {
3810    if (code === 45) {
3811      effects.consume(code);
3812      return continuationDeclarationInside;
3813    }
3814    return continuation(code);
3815  }
3816  function continuationRawTagOpen(code) {
3817    if (code === 47) {
3818      effects.consume(code);
3819      buffer = "";
3820      return continuationRawEndTag;
3821    }
3822    return continuation(code);
3823  }
3824  function continuationRawEndTag(code) {
3825    if (code === 62 && htmlRawNames.indexOf(buffer.toLowerCase()) > -1) {
3826      effects.consume(code);
3827      return continuationClose;
3828    }
3829    if (asciiAlpha(code) && buffer.length < 8) {
3830      effects.consume(code);
3831      buffer += fromCharCode(code);
3832      return continuationRawEndTag;
3833    }
3834    return continuation(code);
3835  }
3836  function continuationCharacterDataInside(code) {
3837    if (code === 93) {
3838      effects.consume(code);
3839      return continuationDeclarationInside;
3840    }
3841    return continuation(code);
3842  }
3843  function continuationDeclarationInside(code) {
3844    if (code === 62) {
3845      effects.consume(code);
3846      return continuationClose;
3847    }
3848    return continuation(code);
3849  }
3850  function continuationClose(code) {
3851    if (code === null || markdownLineEnding(code)) {
3852      effects.exit("htmlFlowData");
3853      return done(code);
3854    }
3855    effects.consume(code);
3856    return continuationClose;
3857  }
3858  function done(code) {
3859    effects.exit("htmlFlow");
3860    return ok(code);
3861  }
3862}
3863function tokenizeNextBlank(effects, ok, nok) {
3864  return start;
3865  function start(code) {
3866    effects.exit("htmlFlowData");
3867    effects.enter("lineEndingBlank");
3868    effects.consume(code);
3869    effects.exit("lineEndingBlank");
3870    return effects.attempt(partialBlankLine, ok, nok);
3871  }
3872}
3873module.exports = htmlFlow;
3874
3875
3876/***/ },
3877
3878/***/ 75775
3879(module, __unused_webpack_exports, __webpack_require__) {
3880
3881"use strict";
3882
3883var asciiAlpha = __webpack_require__(40558);
3884var asciiAlphanumeric = __webpack_require__(88567);
3885var markdownLineEnding = __webpack_require__(63336);
3886var markdownLineEndingOrSpace = __webpack_require__(2575);
3887var markdownSpace = __webpack_require__(24248);
3888var factorySpace = __webpack_require__(42145);
3889var htmlText = {
3890  name: "htmlText",
3891  tokenize: tokenizeHtmlText
3892};
3893function tokenizeHtmlText(effects, ok, nok) {
3894  var self = this;
3895  var marker;
3896  var buffer;
3897  var index;
3898  var returnState;
3899  return start;
3900  function start(code) {
3901    effects.enter("htmlText");
3902    effects.enter("htmlTextData");
3903    effects.consume(code);
3904    return open;
3905  }
3906  function open(code) {
3907    if (code === 33) {
3908      effects.consume(code);
3909      return declarationOpen;
3910    }
3911    if (code === 47) {
3912      effects.consume(code);
3913      return tagCloseStart;
3914    }
3915    if (code === 63) {
3916      effects.consume(code);
3917      return instruction;
3918    }
3919    if (asciiAlpha(code)) {
3920      effects.consume(code);
3921      return tagOpen;
3922    }
3923    return nok(code);
3924  }
3925  function declarationOpen(code) {
3926    if (code === 45) {
3927      effects.consume(code);
3928      return commentOpen;
3929    }
3930    if (code === 91) {
3931      effects.consume(code);
3932      buffer = "CDATA[";
3933      index = 0;
3934      return cdataOpen;
3935    }
3936    if (asciiAlpha(code)) {
3937      effects.consume(code);
3938      return declaration;
3939    }
3940    return nok(code);
3941  }
3942  function commentOpen(code) {
3943    if (code === 45) {
3944      effects.consume(code);
3945      return commentStart;
3946    }
3947    return nok(code);
3948  }
3949  function commentStart(code) {
3950    if (code === null || code === 62) {
3951      return nok(code);
3952    }
3953    if (code === 45) {
3954      effects.consume(code);
3955      return commentStartDash;
3956    }
3957    return comment(code);
3958  }
3959  function commentStartDash(code) {
3960    if (code === null || code === 62) {
3961      return nok(code);
3962    }
3963    return comment(code);
3964  }
3965  function comment(code) {
3966    if (code === null) {
3967      return nok(code);
3968    }
3969    if (code === 45) {
3970      effects.consume(code);
3971      return commentClose;
3972    }
3973    if (markdownLineEnding(code)) {
3974      returnState = comment;
3975      return atLineEnding(code);
3976    }
3977    effects.consume(code);
3978    return comment;
3979  }
3980  function commentClose(code) {
3981    if (code === 45) {
3982      effects.consume(code);
3983      return end;
3984    }
3985    return comment(code);
3986  }
3987  function cdataOpen(code) {
3988    if (code === buffer.charCodeAt(index++)) {
3989      effects.consume(code);
3990      return index === buffer.length ? cdata : cdataOpen;
3991    }
3992    return nok(code);
3993  }
3994  function cdata(code) {
3995    if (code === null) {
3996      return nok(code);
3997    }
3998    if (code === 93) {
3999      effects.consume(code);
4000      return cdataClose;
4001    }
4002    if (markdownLineEnding(code)) {
4003      returnState = cdata;
4004      return atLineEnding(code);
4005    }
4006    effects.consume(code);
4007    return cdata;
4008  }
4009  function cdataClose(code) {
4010    if (code === 93) {
4011      effects.consume(code);
4012      return cdataEnd;
4013    }
4014    return cdata(code);
4015  }
4016  function cdataEnd(code) {
4017    if (code === 62) {
4018      return end(code);
4019    }
4020    if (code === 93) {
4021      effects.consume(code);
4022      return cdataEnd;
4023    }
4024    return cdata(code);
4025  }
4026  function declaration(code) {
4027    if (code === null || code === 62) {
4028      return end(code);
4029    }
4030    if (markdownLineEnding(code)) {
4031      returnState = declaration;
4032      return atLineEnding(code);
4033    }
4034    effects.consume(code);
4035    return declaration;
4036  }
4037  function instruction(code) {
4038    if (code === null) {
4039      return nok(code);
4040    }
4041    if (code === 63) {
4042      effects.consume(code);
4043      return instructionClose;
4044    }
4045    if (markdownLineEnding(code)) {
4046      returnState = instruction;
4047      return atLineEnding(code);
4048    }
4049    effects.consume(code);
4050    return instruction;
4051  }
4052  function instructionClose(code) {
4053    return code === 62 ? end(code) : instruction(code);
4054  }
4055  function tagCloseStart(code) {
4056    if (asciiAlpha(code)) {
4057      effects.consume(code);
4058      return tagClose;
4059    }
4060    return nok(code);
4061  }
4062  function tagClose(code) {
4063    if (code === 45 || asciiAlphanumeric(code)) {
4064      effects.consume(code);
4065      return tagClose;
4066    }
4067    return tagCloseBetween(code);
4068  }
4069  function tagCloseBetween(code) {
4070    if (markdownLineEnding(code)) {
4071      returnState = tagCloseBetween;
4072      return atLineEnding(code);
4073    }
4074    if (markdownSpace(code)) {
4075      effects.consume(code);
4076      return tagCloseBetween;
4077    }
4078    return end(code);
4079  }
4080  function tagOpen(code) {
4081    if (code === 45 || asciiAlphanumeric(code)) {
4082      effects.consume(code);
4083      return tagOpen;
4084    }
4085    if (code === 47 || code === 62 || markdownLineEndingOrSpace(code)) {
4086      return tagOpenBetween(code);
4087    }
4088    return nok(code);
4089  }
4090  function tagOpenBetween(code) {
4091    if (code === 47) {
4092      effects.consume(code);
4093      return end;
4094    }
4095    if (code === 58 || code === 95 || asciiAlpha(code)) {
4096      effects.consume(code);
4097      return tagOpenAttributeName;
4098    }
4099    if (markdownLineEnding(code)) {
4100      returnState = tagOpenBetween;
4101      return atLineEnding(code);
4102    }
4103    if (markdownSpace(code)) {
4104      effects.consume(code);
4105      return tagOpenBetween;
4106    }
4107    return end(code);
4108  }
4109  function tagOpenAttributeName(code) {
4110    if (code === 45 || code === 46 || code === 58 || code === 95 || asciiAlphanumeric(code)) {
4111      effects.consume(code);
4112      return tagOpenAttributeName;
4113    }
4114    return tagOpenAttributeNameAfter(code);
4115  }
4116  function tagOpenAttributeNameAfter(code) {
4117    if (code === 61) {
4118      effects.consume(code);
4119      return tagOpenAttributeValueBefore;
4120    }
4121    if (markdownLineEnding(code)) {
4122      returnState = tagOpenAttributeNameAfter;
4123      return atLineEnding(code);
4124    }
4125    if (markdownSpace(code)) {
4126      effects.consume(code);
4127      return tagOpenAttributeNameAfter;
4128    }
4129    return tagOpenBetween(code);
4130  }
4131  function tagOpenAttributeValueBefore(code) {
4132    if (code === null || code === 60 || code === 61 || code === 62 || code === 96) {
4133      return nok(code);
4134    }
4135    if (code === 34 || code === 39) {
4136      effects.consume(code);
4137      marker = code;
4138      return tagOpenAttributeValueQuoted;
4139    }
4140    if (markdownLineEnding(code)) {
4141      returnState = tagOpenAttributeValueBefore;
4142      return atLineEnding(code);
4143    }
4144    if (markdownSpace(code)) {
4145      effects.consume(code);
4146      return tagOpenAttributeValueBefore;
4147    }
4148    effects.consume(code);
4149    marker = void 0;
4150    return tagOpenAttributeValueUnquoted;
4151  }
4152  function tagOpenAttributeValueQuoted(code) {
4153    if (code === marker) {
4154      effects.consume(code);
4155      return tagOpenAttributeValueQuotedAfter;
4156    }
4157    if (code === null) {
4158      return nok(code);
4159    }
4160    if (markdownLineEnding(code)) {
4161      returnState = tagOpenAttributeValueQuoted;
4162      return atLineEnding(code);
4163    }
4164    effects.consume(code);
4165    return tagOpenAttributeValueQuoted;
4166  }
4167  function tagOpenAttributeValueQuotedAfter(code) {
4168    if (code === 62 || code === 47 || markdownLineEndingOrSpace(code)) {
4169      return tagOpenBetween(code);
4170    }
4171    return nok(code);
4172  }
4173  function tagOpenAttributeValueUnquoted(code) {
4174    if (code === null || code === 34 || code === 39 || code === 60 || code === 61 || code === 96) {
4175      return nok(code);
4176    }
4177    if (code === 62 || markdownLineEndingOrSpace(code)) {
4178      return tagOpenBetween(code);
4179    }
4180    effects.consume(code);
4181    return tagOpenAttributeValueUnquoted;
4182  }
4183  function atLineEnding(code) {
4184    effects.exit("htmlTextData");
4185    effects.enter("lineEnding");
4186    effects.consume(code);
4187    effects.exit("lineEnding");
4188    return factorySpace(
4189      effects,
4190      afterPrefix,
4191      "linePrefix",
4192      self.parser.constructs.disable.null.indexOf("codeIndented") > -1 ? void 0 : 4
4193    );
4194  }
4195  function afterPrefix(code) {
4196    effects.enter("htmlTextData");
4197    return returnState(code);
4198  }
4199  function end(code) {
4200    if (code === 62) {
4201      effects.consume(code);
4202      effects.exit("htmlTextData");
4203      effects.exit("htmlText");
4204      return ok;
4205    }
4206    return nok(code);
4207  }
4208}
4209module.exports = htmlText;
4210
4211
4212/***/ },
4213
4214/***/ 63734
4215(module, __unused_webpack_exports, __webpack_require__) {
4216
4217"use strict";
4218
4219var markdownLineEndingOrSpace = __webpack_require__(2575);
4220var chunkedPush = __webpack_require__(90638);
4221var chunkedSplice = __webpack_require__(50638);
4222var normalizeIdentifier = __webpack_require__(17904);
4223var resolveAll = __webpack_require__(33399);
4224var shallow = __webpack_require__(34645);
4225var factoryDestination = __webpack_require__(53263);
4226var factoryLabel = __webpack_require__(27465);
4227var factoryTitle = __webpack_require__(47065);
4228var factoryWhitespace = __webpack_require__(69726);
4229var labelEnd = {
4230  name: "labelEnd",
4231  tokenize: tokenizeLabelEnd,
4232  resolveTo: resolveToLabelEnd,
4233  resolveAll: resolveAllLabelEnd
4234};
4235var resourceConstruct = {
4236  tokenize: tokenizeResource
4237};
4238var fullReferenceConstruct = {
4239  tokenize: tokenizeFullReference
4240};
4241var collapsedReferenceConstruct = {
4242  tokenize: tokenizeCollapsedReference
4243};
4244function resolveAllLabelEnd(events) {
4245  var index = -1;
4246  var token;
4247  while (++index < events.length) {
4248    token = events[index][1];
4249    if (!token._used && (token.type === "labelImage" || token.type === "labelLink" || token.type === "labelEnd")) {
4250      events.splice(index + 1, token.type === "labelImage" ? 4 : 2);
4251      token.type = "data";
4252      index++;
4253    }
4254  }
4255  return events;
4256}
4257function resolveToLabelEnd(events, context) {
4258  var index = events.length;
4259  var offset = 0;
4260  var group;
4261  var label;
4262  var text;
4263  var token;
4264  var open;
4265  var close;
4266  var media;
4267  while (index--) {
4268    token = events[index][1];
4269    if (open) {
4270      if (token.type === "link" || token.type === "labelLink" && token._inactive) {
4271        break;
4272      }
4273      if (events[index][0] === "enter" && token.type === "labelLink") {
4274        token._inactive = true;
4275      }
4276    } else if (close) {
4277      if (events[index][0] === "enter" && (token.type === "labelImage" || token.type === "labelLink") && !token._balanced) {
4278        open = index;
4279        if (token.type !== "labelLink") {
4280          offset = 2;
4281          break;
4282        }
4283      }
4284    } else if (token.type === "labelEnd") {
4285      close = index;
4286    }
4287  }
4288  group = {
4289    type: events[open][1].type === "labelLink" ? "link" : "image",
4290    start: shallow(events[open][1].start),
4291    end: shallow(events[events.length - 1][1].end)
4292  };
4293  label = {
4294    type: "label",
4295    start: shallow(events[open][1].start),
4296    end: shallow(events[close][1].end)
4297  };
4298  text = {
4299    type: "labelText",
4300    start: shallow(events[open + offset + 2][1].end),
4301    end: shallow(events[close - 2][1].start)
4302  };
4303  media = [
4304    ["enter", group, context],
4305    ["enter", label, context]
4306  ];
4307  media = chunkedPush(media, events.slice(open + 1, open + offset + 3));
4308  media = chunkedPush(media, [["enter", text, context]]);
4309  media = chunkedPush(
4310    media,
4311    resolveAll(
4312      context.parser.constructs.insideSpan.null,
4313      events.slice(open + offset + 4, close - 3),
4314      context
4315    )
4316  );
4317  media = chunkedPush(media, [
4318    ["exit", text, context],
4319    events[close - 2],
4320    events[close - 1],
4321    ["exit", label, context]
4322  ]);
4323  media = chunkedPush(media, events.slice(close + 1));
4324  media = chunkedPush(media, [["exit", group, context]]);
4325  chunkedSplice(events, open, events.length, media);
4326  return events;
4327}
4328function tokenizeLabelEnd(effects, ok, nok) {
4329  var self = this;
4330  var index = self.events.length;
4331  var labelStart;
4332  var defined;
4333  while (index--) {
4334    if ((self.events[index][1].type === "labelImage" || self.events[index][1].type === "labelLink") && !self.events[index][1]._balanced) {
4335      labelStart = self.events[index][1];
4336      break;
4337    }
4338  }
4339  return start;
4340  function start(code) {
4341    if (!labelStart) {
4342      return nok(code);
4343    }
4344    if (labelStart._inactive) return balanced(code);
4345    defined = self.parser.defined.indexOf(
4346      normalizeIdentifier(
4347        self.sliceSerialize({
4348          start: labelStart.end,
4349          end: self.now()
4350        })
4351      )
4352    ) > -1;
4353    effects.enter("labelEnd");
4354    effects.enter("labelMarker");
4355    effects.consume(code);
4356    effects.exit("labelMarker");
4357    effects.exit("labelEnd");
4358    return afterLabelEnd;
4359  }
4360  function afterLabelEnd(code) {
4361    if (code === 40) {
4362      return effects.attempt(
4363        resourceConstruct,
4364        ok,
4365        defined ? ok : balanced
4366      )(code);
4367    }
4368    if (code === 91) {
4369      return effects.attempt(
4370        fullReferenceConstruct,
4371        ok,
4372        defined ? effects.attempt(collapsedReferenceConstruct, ok, balanced) : balanced
4373      )(code);
4374    }
4375    return defined ? ok(code) : balanced(code);
4376  }
4377  function balanced(code) {
4378    labelStart._balanced = true;
4379    return nok(code);
4380  }
4381}
4382function tokenizeResource(effects, ok, nok) {
4383  return start;
4384  function start(code) {
4385    effects.enter("resource");
4386    effects.enter("resourceMarker");
4387    effects.consume(code);
4388    effects.exit("resourceMarker");
4389    return factoryWhitespace(effects, open);
4390  }
4391  function open(code) {
4392    if (code === 41) {
4393      return end(code);
4394    }
4395    return factoryDestination(
4396      effects,
4397      destinationAfter,
4398      nok,
4399      "resourceDestination",
4400      "resourceDestinationLiteral",
4401      "resourceDestinationLiteralMarker",
4402      "resourceDestinationRaw",
4403      "resourceDestinationString",
4404      3
4405    )(code);
4406  }
4407  function destinationAfter(code) {
4408    return markdownLineEndingOrSpace(code) ? factoryWhitespace(effects, between)(code) : end(code);
4409  }
4410  function between(code) {
4411    if (code === 34 || code === 39 || code === 40) {
4412      return factoryTitle(
4413        effects,
4414        factoryWhitespace(effects, end),
4415        nok,
4416        "resourceTitle",
4417        "resourceTitleMarker",
4418        "resourceTitleString"
4419      )(code);
4420    }
4421    return end(code);
4422  }
4423  function end(code) {
4424    if (code === 41) {
4425      effects.enter("resourceMarker");
4426      effects.consume(code);
4427      effects.exit("resourceMarker");
4428      effects.exit("resource");
4429      return ok;
4430    }
4431    return nok(code);
4432  }
4433}
4434function tokenizeFullReference(effects, ok, nok) {
4435  var self = this;
4436  return start;
4437  function start(code) {
4438    return factoryLabel.call(
4439      self,
4440      effects,
4441      afterLabel,
4442      nok,
4443      "reference",
4444      "referenceMarker",
4445      "referenceString"
4446    )(code);
4447  }
4448  function afterLabel(code) {
4449    return self.parser.defined.indexOf(
4450      normalizeIdentifier(
4451        self.sliceSerialize(self.events[self.events.length - 1][1]).slice(1, -1)
4452      )
4453    ) < 0 ? nok(code) : ok(code);
4454  }
4455}
4456function tokenizeCollapsedReference(effects, ok, nok) {
4457  return start;
4458  function start(code) {
4459    effects.enter("reference");
4460    effects.enter("referenceMarker");
4461    effects.consume(code);
4462    effects.exit("referenceMarker");
4463    return open;
4464  }
4465  function open(code) {
4466    if (code === 93) {
4467      effects.enter("referenceMarker");
4468      effects.consume(code);
4469      effects.exit("referenceMarker");
4470      effects.exit("reference");
4471      return ok;
4472    }
4473    return nok(code);
4474  }
4475}
4476module.exports = labelEnd;
4477
4478
4479/***/ },
4480
4481/***/ 98543
4482(module, __unused_webpack_exports, __webpack_require__) {
4483
4484"use strict";
4485
4486var labelEnd = __webpack_require__(63734);
4487var labelStartImage = {
4488  name: "labelStartImage",
4489  tokenize: tokenizeLabelStartImage,
4490  resolveAll: labelEnd.resolveAll
4491};
4492function tokenizeLabelStartImage(effects, ok, nok) {
4493  var self = this;
4494  return start;
4495  function start(code) {
4496    effects.enter("labelImage");
4497    effects.enter("labelImageMarker");
4498    effects.consume(code);
4499    effects.exit("labelImageMarker");
4500    return open;
4501  }
4502  function open(code) {
4503    if (code === 91) {
4504      effects.enter("labelMarker");
4505      effects.consume(code);
4506      effects.exit("labelMarker");
4507      effects.exit("labelImage");
4508      return after;
4509    }
4510    return nok(code);
4511  }
4512  function after(code) {
4513    return code === 94 && /* c8 ignore next */
4514    "_hiddenFootnoteSupport" in self.parser.constructs ? (
4515      /* c8 ignore next */
4516      nok(code)
4517    ) : ok(code);
4518  }
4519}
4520module.exports = labelStartImage;
4521
4522
4523/***/ },
4524
4525/***/ 87196
4526(module, __unused_webpack_exports, __webpack_require__) {
4527
4528"use strict";
4529
4530var labelEnd = __webpack_require__(63734);
4531var labelStartLink = {
4532  name: "labelStartLink",
4533  tokenize: tokenizeLabelStartLink,
4534  resolveAll: labelEnd.resolveAll
4535};
4536function tokenizeLabelStartLink(effects, ok, nok) {
4537  var self = this;
4538  return start;
4539  function start(code) {
4540    effects.enter("labelLink");
4541    effects.enter("labelMarker");
4542    effects.consume(code);
4543    effects.exit("labelMarker");
4544    effects.exit("labelLink");
4545    return after;
4546  }
4547  function after(code) {
4548    return code === 94 && /* c8 ignore next */
4549    "_hiddenFootnoteSupport" in self.parser.constructs ? (
4550      /* c8 ignore next */
4551      nok(code)
4552    ) : ok(code);
4553  }
4554}
4555module.exports = labelStartLink;
4556
4557
4558/***/ },
4559
4560/***/ 43742
4561(module, __unused_webpack_exports, __webpack_require__) {
4562
4563"use strict";
4564
4565var factorySpace = __webpack_require__(42145);
4566var lineEnding = {
4567  name: "lineEnding",
4568  tokenize: tokenizeLineEnding
4569};
4570function tokenizeLineEnding(effects, ok) {
4571  return start;
4572  function start(code) {
4573    effects.enter("lineEnding");
4574    effects.consume(code);
4575    effects.exit("lineEnding");
4576    return factorySpace(effects, ok, "linePrefix");
4577  }
4578}
4579module.exports = lineEnding;
4580
4581
4582/***/ },
4583
4584/***/ 42666
4585(module, __unused_webpack_exports, __webpack_require__) {
4586
4587"use strict";
4588
4589var asciiDigit = __webpack_require__(58488);
4590var markdownSpace = __webpack_require__(24248);
4591var prefixSize = __webpack_require__(71795);
4592var sizeChunks = __webpack_require__(87175);
4593var factorySpace = __webpack_require__(42145);
4594var partialBlankLine = __webpack_require__(89177);
4595var thematicBreak = __webpack_require__(75911);
4596var list = {
4597  name: "list",
4598  tokenize: tokenizeListStart,
4599  continuation: {
4600    tokenize: tokenizeListContinuation
4601  },
4602  exit: tokenizeListEnd
4603};
4604var listItemPrefixWhitespaceConstruct = {
4605  tokenize: tokenizeListItemPrefixWhitespace,
4606  partial: true
4607};
4608var indentConstruct = {
4609  tokenize: tokenizeIndent,
4610  partial: true
4611};
4612function tokenizeListStart(effects, ok, nok) {
4613  var self = this;
4614  var initialSize = prefixSize(self.events, "linePrefix");
4615  var size = 0;
4616  return start;
4617  function start(code) {
4618    var kind = self.containerState.type || (code === 42 || code === 43 || code === 45 ? "listUnordered" : "listOrdered");
4619    if (kind === "listUnordered" ? !self.containerState.marker || code === self.containerState.marker : asciiDigit(code)) {
4620      if (!self.containerState.type) {
4621        self.containerState.type = kind;
4622        effects.enter(kind, {
4623          _container: true
4624        });
4625      }
4626      if (kind === "listUnordered") {
4627        effects.enter("listItemPrefix");
4628        return code === 42 || code === 45 ? effects.check(thematicBreak, nok, atMarker)(code) : atMarker(code);
4629      }
4630      if (!self.interrupt || code === 49) {
4631        effects.enter("listItemPrefix");
4632        effects.enter("listItemValue");
4633        return inside(code);
4634      }
4635    }
4636    return nok(code);
4637  }
4638  function inside(code) {
4639    if (asciiDigit(code) && ++size < 10) {
4640      effects.consume(code);
4641      return inside;
4642    }
4643    if ((!self.interrupt || size < 2) && (self.containerState.marker ? code === self.containerState.marker : code === 41 || code === 46)) {
4644      effects.exit("listItemValue");
4645      return atMarker(code);
4646    }
4647    return nok(code);
4648  }
4649  function atMarker(code) {
4650    effects.enter("listItemMarker");
4651    effects.consume(code);
4652    effects.exit("listItemMarker");
4653    self.containerState.marker = self.containerState.marker || code;
4654    return effects.check(
4655      partialBlankLine,
4656      // Can’t be empty when interrupting.
4657      self.interrupt ? nok : onBlank,
4658      effects.attempt(
4659        listItemPrefixWhitespaceConstruct,
4660        endOfPrefix,
4661        otherPrefix
4662      )
4663    );
4664  }
4665  function onBlank(code) {
4666    self.containerState.initialBlankLine = true;
4667    initialSize++;
4668    return endOfPrefix(code);
4669  }
4670  function otherPrefix(code) {
4671    if (markdownSpace(code)) {
4672      effects.enter("listItemPrefixWhitespace");
4673      effects.consume(code);
4674      effects.exit("listItemPrefixWhitespace");
4675      return endOfPrefix;
4676    }
4677    return nok(code);
4678  }
4679  function endOfPrefix(code) {
4680    self.containerState.size = initialSize + sizeChunks(self.sliceStream(effects.exit("listItemPrefix")));
4681    return ok(code);
4682  }
4683}
4684function tokenizeListContinuation(effects, ok, nok) {
4685  var self = this;
4686  self.containerState._closeFlow = void 0;
4687  return effects.check(partialBlankLine, onBlank, notBlank);
4688  function onBlank(code) {
4689    self.containerState.furtherBlankLines = self.containerState.furtherBlankLines || self.containerState.initialBlankLine;
4690    return factorySpace(
4691      effects,
4692      ok,
4693      "listItemIndent",
4694      self.containerState.size + 1
4695    )(code);
4696  }
4697  function notBlank(code) {
4698    if (self.containerState.furtherBlankLines || !markdownSpace(code)) {
4699      self.containerState.furtherBlankLines = self.containerState.initialBlankLine = void 0;
4700      return notInCurrentItem(code);
4701    }
4702    self.containerState.furtherBlankLines = self.containerState.initialBlankLine = void 0;
4703    return effects.attempt(indentConstruct, ok, notInCurrentItem)(code);
4704  }
4705  function notInCurrentItem(code) {
4706    self.containerState._closeFlow = true;
4707    self.interrupt = void 0;
4708    return factorySpace(
4709      effects,
4710      effects.attempt(list, ok, nok),
4711      "linePrefix",
4712      self.parser.constructs.disable.null.indexOf("codeIndented") > -1 ? void 0 : 4
4713    )(code);
4714  }
4715}
4716function tokenizeIndent(effects, ok, nok) {
4717  var self = this;
4718  return factorySpace(
4719    effects,
4720    afterPrefix,
4721    "listItemIndent",
4722    self.containerState.size + 1
4723  );
4724  function afterPrefix(code) {
4725    return prefixSize(self.events, "listItemIndent") === self.containerState.size ? ok(code) : nok(code);
4726  }
4727}
4728function tokenizeListEnd(effects) {
4729  effects.exit(this.containerState.type);
4730}
4731function tokenizeListItemPrefixWhitespace(effects, ok, nok) {
4732  var self = this;
4733  return factorySpace(
4734    effects,
4735    afterPrefix,
4736    "listItemPrefixWhitespace",
4737    self.parser.constructs.disable.null.indexOf("codeIndented") > -1 ? void 0 : 4 + 1
4738  );
4739  function afterPrefix(code) {
4740    return markdownSpace(code) || !prefixSize(self.events, "listItemPrefixWhitespace") ? nok(code) : ok(code);
4741  }
4742}
4743module.exports = list;
4744
4745
4746/***/ },
4747
4748/***/ 89177
4749(module, __unused_webpack_exports, __webpack_require__) {
4750
4751"use strict";
4752
4753var markdownLineEnding = __webpack_require__(63336);
4754var factorySpace = __webpack_require__(42145);
4755var partialBlankLine = {
4756  tokenize: tokenizePartialBlankLine,
4757  partial: true
4758};
4759function tokenizePartialBlankLine(effects, ok, nok) {
4760  return factorySpace(effects, afterWhitespace, "linePrefix");
4761  function afterWhitespace(code) {
4762    return code === null || markdownLineEnding(code) ? ok(code) : nok(code);
4763  }
4764}
4765module.exports = partialBlankLine;
4766
4767
4768/***/ },
4769
4770/***/ 57720
4771(module, __unused_webpack_exports, __webpack_require__) {
4772
4773"use strict";
4774
4775var markdownLineEnding = __webpack_require__(63336);
4776var shallow = __webpack_require__(34645);
4777var factorySpace = __webpack_require__(42145);
4778var setextUnderline = {
4779  name: "setextUnderline",
4780  tokenize: tokenizeSetextUnderline,
4781  resolveTo: resolveToSetextUnderline
4782};
4783function resolveToSetextUnderline(events, context) {
4784  var index = events.length;
4785  var content;
4786  var text;
4787  var definition;
4788  var heading;
4789  while (index--) {
4790    if (events[index][0] === "enter") {
4791      if (events[index][1].type === "content") {
4792        content = index;
4793        break;
4794      }
4795      if (events[index][1].type === "paragraph") {
4796        text = index;
4797      }
4798    } else {
4799      if (events[index][1].type === "content") {
4800        events.splice(index, 1);
4801      }
4802      if (!definition && events[index][1].type === "definition") {
4803        definition = index;
4804      }
4805    }
4806  }
4807  heading = {
4808    type: "setextHeading",
4809    start: shallow(events[text][1].start),
4810    end: shallow(events[events.length - 1][1].end)
4811  };
4812  events[text][1].type = "setextHeadingText";
4813  if (definition) {
4814    events.splice(text, 0, ["enter", heading, context]);
4815    events.splice(definition + 1, 0, ["exit", events[content][1], context]);
4816    events[content][1].end = shallow(events[definition][1].end);
4817  } else {
4818    events[content][1] = heading;
4819  }
4820  events.push(["exit", heading, context]);
4821  return events;
4822}
4823function tokenizeSetextUnderline(effects, ok, nok) {
4824  var self = this;
4825  var index = self.events.length;
4826  var marker;
4827  var paragraph;
4828  while (index--) {
4829    if (self.events[index][1].type !== "lineEnding" && self.events[index][1].type !== "linePrefix" && self.events[index][1].type !== "content") {
4830      paragraph = self.events[index][1].type === "paragraph";
4831      break;
4832    }
4833  }
4834  return start;
4835  function start(code) {
4836    if (!self.lazy && (self.interrupt || paragraph)) {
4837      effects.enter("setextHeadingLine");
4838      effects.enter("setextHeadingLineSequence");
4839      marker = code;
4840      return closingSequence(code);
4841    }
4842    return nok(code);
4843  }
4844  function closingSequence(code) {
4845    if (code === marker) {
4846      effects.consume(code);
4847      return closingSequence;
4848    }
4849    effects.exit("setextHeadingLineSequence");
4850    return factorySpace(effects, closingSequenceEnd, "lineSuffix")(code);
4851  }
4852  function closingSequenceEnd(code) {
4853    if (code === null || markdownLineEnding(code)) {
4854      effects.exit("setextHeadingLine");
4855      return ok(code);
4856    }
4857    return nok(code);
4858  }
4859}
4860module.exports = setextUnderline;
4861
4862
4863/***/ },
4864
4865/***/ 75911
4866(module, __unused_webpack_exports, __webpack_require__) {
4867
4868"use strict";
4869
4870var markdownLineEnding = __webpack_require__(63336);
4871var markdownSpace = __webpack_require__(24248);
4872var factorySpace = __webpack_require__(42145);
4873var thematicBreak = {
4874  name: "thematicBreak",
4875  tokenize: tokenizeThematicBreak
4876};
4877function tokenizeThematicBreak(effects, ok, nok) {
4878  var size = 0;
4879  var marker;
4880  return start;
4881  function start(code) {
4882    effects.enter("thematicBreak");
4883    marker = code;
4884    return atBreak(code);
4885  }
4886  function atBreak(code) {
4887    if (code === marker) {
4888      effects.enter("thematicBreakSequence");
4889      return sequence(code);
4890    }
4891    if (markdownSpace(code)) {
4892      return factorySpace(effects, atBreak, "whitespace")(code);
4893    }
4894    if (size < 3 || code !== null && !markdownLineEnding(code)) {
4895      return nok(code);
4896    }
4897    effects.exit("thematicBreak");
4898    return ok(code);
4899  }
4900  function sequence(code) {
4901    if (code === marker) {
4902      effects.consume(code);
4903      size++;
4904      return sequence;
4905    }
4906    effects.exit("thematicBreakSequence");
4907    return atBreak(code);
4908  }
4909}
4910module.exports = thematicBreak;
4911
4912
4913/***/ },
4914
4915/***/ 90638
4916(module, __unused_webpack_exports, __webpack_require__) {
4917
4918"use strict";
4919
4920var chunkedSplice = __webpack_require__(50638);
4921function chunkedPush(list, items) {
4922  if (list.length) {
4923    chunkedSplice(list, list.length, 0, items);
4924    return list;
4925  }
4926  return items;
4927}
4928module.exports = chunkedPush;
4929
4930
4931/***/ },
4932
4933/***/ 50638
4934(module, __unused_webpack_exports, __webpack_require__) {
4935
4936"use strict";
4937
4938var splice = __webpack_require__(42173);
4939function chunkedSplice(list, start, remove, items) {
4940  var end = list.length;
4941  var chunkStart = 0;
4942  var parameters;
4943  if (start < 0) {
4944    start = -start > end ? 0 : end + start;
4945  } else {
4946    start = start > end ? end : start;
4947  }
4948  remove = remove > 0 ? remove : 0;
4949  if (items.length < 1e4) {
4950    parameters = Array.from(items);
4951    parameters.unshift(start, remove);
4952    splice.apply(list, parameters);
4953  } else {
4954    if (remove) splice.apply(list, [start, remove]);
4955    while (chunkStart < items.length) {
4956      parameters = items.slice(chunkStart, chunkStart + 1e4);
4957      parameters.unshift(start, 0);
4958      splice.apply(list, parameters);
4959      chunkStart += 1e4;
4960      start += 1e4;
4961    }
4962  }
4963}
4964module.exports = chunkedSplice;
4965
4966
4967/***/ },
4968
4969/***/ 13598
4970(module, __unused_webpack_exports, __webpack_require__) {
4971
4972"use strict";
4973
4974var markdownLineEndingOrSpace = __webpack_require__(2575);
4975var unicodePunctuation = __webpack_require__(62082);
4976var unicodeWhitespace = __webpack_require__(92813);
4977function classifyCharacter(code) {
4978  if (code === null || markdownLineEndingOrSpace(code) || unicodeWhitespace(code)) {
4979    return 1;
4980  }
4981  if (unicodePunctuation(code)) {
4982    return 2;
4983  }
4984}
4985module.exports = classifyCharacter;
4986
4987
4988/***/ },
4989
4990/***/ 67511
4991(module, __unused_webpack_exports, __webpack_require__) {
4992
4993"use strict";
4994
4995var hasOwnProperty = __webpack_require__(78736);
4996var chunkedSplice = __webpack_require__(50638);
4997var miniflat = __webpack_require__(56489);
4998function combineExtensions(extensions) {
4999  var all = {};
5000  var index = -1;
5001  while (++index < extensions.length) {
5002    extension(all, extensions[index]);
5003  }
5004  return all;
5005}
5006function extension(all, extension2) {
5007  var hook;
5008  var left;
5009  var right;
5010  var code;
5011  for (hook in extension2) {
5012    left = hasOwnProperty.call(all, hook) ? all[hook] : all[hook] = {};
5013    right = extension2[hook];
5014    for (code in right) {
5015      left[code] = constructs(
5016        miniflat(right[code]),
5017        hasOwnProperty.call(left, code) ? left[code] : []
5018      );
5019    }
5020  }
5021}
5022function constructs(list, existing) {
5023  var index = -1;
5024  var before = [];
5025  while (++index < list.length) {
5026    ;
5027    (list[index].add === "after" ? existing : before).push(list[index]);
5028  }
5029  chunkedSplice(existing, 0, 0, before);
5030  return existing;
5031}
5032module.exports = combineExtensions;
5033
5034
5035/***/ },
5036
5037/***/ 99573
5038(module, __unused_webpack_exports, __webpack_require__) {
5039
5040"use strict";
5041
5042var assign = __webpack_require__(44552);
5043var markdownLineEnding = __webpack_require__(63336);
5044var chunkedPush = __webpack_require__(90638);
5045var chunkedSplice = __webpack_require__(50638);
5046var miniflat = __webpack_require__(56489);
5047var resolveAll = __webpack_require__(33399);
5048var serializeChunks = __webpack_require__(1074);
5049var shallow = __webpack_require__(34645);
5050var sliceChunks = __webpack_require__(68362);
5051function createTokenizer(parser, initialize, from) {
5052  var point = from ? shallow(from) : {
5053    line: 1,
5054    column: 1,
5055    offset: 0
5056  };
5057  var columnStart = {};
5058  var resolveAllConstructs = [];
5059  var chunks = [];
5060  var stack = [];
5061  var effects = {
5062    consume,
5063    enter,
5064    exit,
5065    attempt: constructFactory(onsuccessfulconstruct),
5066    check: constructFactory(onsuccessfulcheck),
5067    interrupt: constructFactory(onsuccessfulcheck, {
5068      interrupt: true
5069    }),
5070    lazy: constructFactory(onsuccessfulcheck, {
5071      lazy: true
5072    })
5073  };
5074  var context = {
5075    previous: null,
5076    events: [],
5077    parser,
5078    sliceStream,
5079    sliceSerialize,
5080    now,
5081    defineSkip: skip,
5082    write
5083  };
5084  var state = initialize.tokenize.call(context, effects);
5085  if (initialize.resolveAll) {
5086    resolveAllConstructs.push(initialize);
5087  }
5088  point._index = 0;
5089  point._bufferIndex = -1;
5090  return context;
5091  function write(slice) {
5092    chunks = chunkedPush(chunks, slice);
5093    main();
5094    if (chunks[chunks.length - 1] !== null) {
5095      return [];
5096    }
5097    addResult(initialize, 0);
5098    context.events = resolveAll(resolveAllConstructs, context.events, context);
5099    return context.events;
5100  }
5101  function sliceSerialize(token) {
5102    return serializeChunks(sliceStream(token));
5103  }
5104  function sliceStream(token) {
5105    return sliceChunks(chunks, token);
5106  }
5107  function now() {
5108    return shallow(point);
5109  }
5110  function skip(value) {
5111    columnStart[value.line] = value.column;
5112    accountForPotentialSkip();
5113  }
5114  function main() {
5115    var chunkIndex;
5116    var chunk;
5117    while (point._index < chunks.length) {
5118      chunk = chunks[point._index];
5119      if (typeof chunk === "string") {
5120        chunkIndex = point._index;
5121        if (point._bufferIndex < 0) {
5122          point._bufferIndex = 0;
5123        }
5124        while (point._index === chunkIndex && point._bufferIndex < chunk.length) {
5125          go(chunk.charCodeAt(point._bufferIndex));
5126        }
5127      } else {
5128        go(chunk);
5129      }
5130    }
5131  }
5132  function go(code) {
5133    state = state(code);
5134  }
5135  function consume(code) {
5136    if (markdownLineEnding(code)) {
5137      point.line++;
5138      point.column = 1;
5139      point.offset += code === -3 ? 2 : 1;
5140      accountForPotentialSkip();
5141    } else if (code !== -1) {
5142      point.column++;
5143      point.offset++;
5144    }
5145    if (point._bufferIndex < 0) {
5146      point._index++;
5147    } else {
5148      point._bufferIndex++;
5149      if (point._bufferIndex === chunks[point._index].length) {
5150        point._bufferIndex = -1;
5151        point._index++;
5152      }
5153    }
5154    context.previous = code;
5155  }
5156  function enter(type, fields) {
5157    var token = fields || {};
5158    token.type = type;
5159    token.start = now();
5160    context.events.push(["enter", token, context]);
5161    stack.push(token);
5162    return token;
5163  }
5164  function exit(type) {
5165    var token = stack.pop();
5166    token.end = now();
5167    context.events.push(["exit", token, context]);
5168    return token;
5169  }
5170  function onsuccessfulconstruct(construct, info) {
5171    addResult(construct, info.from);
5172  }
5173  function onsuccessfulcheck(construct, info) {
5174    info.restore();
5175  }
5176  function constructFactory(onreturn, fields) {
5177    return hook;
5178    function hook(constructs, returnState, bogusState) {
5179      var listOfConstructs;
5180      var constructIndex;
5181      var currentConstruct;
5182      var info;
5183      return constructs.tokenize || "length" in constructs ? handleListOfConstructs(miniflat(constructs)) : handleMapOfConstructs;
5184      function handleMapOfConstructs(code) {
5185        if (code in constructs || null in constructs) {
5186          return handleListOfConstructs(
5187            constructs.null ? (
5188              /* c8 ignore next */
5189              miniflat(constructs[code]).concat(miniflat(constructs.null))
5190            ) : constructs[code]
5191          )(code);
5192        }
5193        return bogusState(code);
5194      }
5195      function handleListOfConstructs(list) {
5196        listOfConstructs = list;
5197        constructIndex = 0;
5198        return handleConstruct(list[constructIndex]);
5199      }
5200      function handleConstruct(construct) {
5201        return start;
5202        function start(code) {
5203          info = store();
5204          currentConstruct = construct;
5205          if (!construct.partial) {
5206            context.currentConstruct = construct;
5207          }
5208          if (construct.name && context.parser.constructs.disable.null.indexOf(construct.name) > -1) {
5209            return nok();
5210          }
5211          return construct.tokenize.call(
5212            fields ? assign({}, context, fields) : context,
5213            effects,
5214            ok,
5215            nok
5216          )(code);
5217        }
5218      }
5219      function ok(code) {
5220        onreturn(currentConstruct, info);
5221        return returnState;
5222      }
5223      function nok(code) {
5224        info.restore();
5225        if (++constructIndex < listOfConstructs.length) {
5226          return handleConstruct(listOfConstructs[constructIndex]);
5227        }
5228        return bogusState;
5229      }
5230    }
5231  }
5232  function addResult(construct, from2) {
5233    if (construct.resolveAll && resolveAllConstructs.indexOf(construct) < 0) {
5234      resolveAllConstructs.push(construct);
5235    }
5236    if (construct.resolve) {
5237      chunkedSplice(
5238        context.events,
5239        from2,
5240        context.events.length - from2,
5241        construct.resolve(context.events.slice(from2), context)
5242      );
5243    }
5244    if (construct.resolveTo) {
5245      context.events = construct.resolveTo(context.events, context);
5246    }
5247  }
5248  function store() {
5249    var startPoint = now();
5250    var startPrevious = context.previous;
5251    var startCurrentConstruct = context.currentConstruct;
5252    var startEventsIndex = context.events.length;
5253    var startStack = Array.from(stack);
5254    return {
5255      restore,
5256      from: startEventsIndex
5257    };
5258    function restore() {
5259      point = startPoint;
5260      context.previous = startPrevious;
5261      context.currentConstruct = startCurrentConstruct;
5262      context.events.length = startEventsIndex;
5263      stack = startStack;
5264      accountForPotentialSkip();
5265    }
5266  }
5267  function accountForPotentialSkip() {
5268    if (point.line in columnStart && point.column < 2) {
5269      point.column = columnStart[point.line];
5270      point.offset += columnStart[point.line] - 1;
5271    }
5272  }
5273}
5274module.exports = createTokenizer;
5275
5276
5277/***/ },
5278
5279/***/ 56489
5280(module) {
5281
5282"use strict";
5283
5284function miniflat(value) {
5285  return value === null || value === void 0 ? [] : "length" in value ? value : [value];
5286}
5287module.exports = miniflat;
5288
5289
5290/***/ },
5291
5292/***/ 99163
5293(module) {
5294
5295"use strict";
5296
5297function movePoint(point, offset) {
5298  point.column += offset;
5299  point.offset += offset;
5300  point._bufferIndex += offset;
5301  return point;
5302}
5303module.exports = movePoint;
5304
5305
5306/***/ },
5307
5308/***/ 17904
5309(module) {
5310
5311"use strict";
5312
5313function normalizeIdentifier(value) {
5314  return value.replace(/[\t\n\r ]+/g, " ").replace(/^ | $/g, "").toLowerCase().toUpperCase();
5315}
5316module.exports = normalizeIdentifier;
5317
5318
5319/***/ },
5320
5321/***/ 71795
5322(module, __unused_webpack_exports, __webpack_require__) {
5323
5324"use strict";
5325
5326var sizeChunks = __webpack_require__(87175);
5327function prefixSize(events, type) {
5328  var tail = events[events.length - 1];
5329  if (!tail || tail[1].type !== type) return 0;
5330  return sizeChunks(tail[2].sliceStream(tail[1]));
5331}
5332module.exports = prefixSize;
5333
5334
5335/***/ },
5336
5337/***/ 70811
5338(module, __unused_webpack_exports, __webpack_require__) {
5339
5340"use strict";
5341
5342var fromCharCode = __webpack_require__(86778);
5343function regexCheck(regex) {
5344  return check;
5345  function check(code) {
5346    return regex.test(fromCharCode(code));
5347  }
5348}
5349module.exports = regexCheck;
5350
5351
5352/***/ },
5353
5354/***/ 33399
5355(module) {
5356
5357"use strict";
5358
5359function resolveAll(constructs, events, context) {
5360  var called = [];
5361  var index = -1;
5362  var resolve;
5363  while (++index < constructs.length) {
5364    resolve = constructs[index].resolveAll;
5365    if (resolve && called.indexOf(resolve) < 0) {
5366      events = resolve(events, context);
5367      called.push(resolve);
5368    }
5369  }
5370  return events;
5371}
5372module.exports = resolveAll;
5373
5374
5375/***/ },
5376
5377/***/ 6133
5378(module, __unused_webpack_exports, __webpack_require__) {
5379
5380"use strict";
5381
5382var fromCharCode = __webpack_require__(86778);
5383function safeFromInt(value, base) {
5384  var code = parseInt(value, base);
5385  if (
5386    // C0 except for HT, LF, FF, CR, space
5387    code < 9 || code === 11 || code > 13 && code < 32 || // Control character (DEL) of the basic block and C1 controls.
5388    code > 126 && code < 160 || // Lone high surrogates and low surrogates.
5389    code > 55295 && code < 57344 || // Noncharacters.
5390    code > 64975 && code < 65008 || (code & 65535) === 65535 || (code & 65535) === 65534 || // Out of range
5391    code > 1114111
5392  ) {
5393    return "\uFFFD";
5394  }
5395  return fromCharCode(code);
5396}
5397module.exports = safeFromInt;
5398
5399
5400/***/ },
5401
5402/***/ 1074
5403(module, __unused_webpack_exports, __webpack_require__) {
5404
5405"use strict";
5406
5407var fromCharCode = __webpack_require__(86778);
5408function serializeChunks(chunks) {
5409  var index = -1;
5410  var result = [];
5411  var chunk;
5412  var value;
5413  var atTab;
5414  while (++index < chunks.length) {
5415    chunk = chunks[index];
5416    if (typeof chunk === "string") {
5417      value = chunk;
5418    } else if (chunk === -5) {
5419      value = "\r";
5420    } else if (chunk === -4) {
5421      value = "\n";
5422    } else if (chunk === -3) {
5423      value = "\r\n";
5424    } else if (chunk === -2) {
5425      value = "	";
5426    } else if (chunk === -1) {
5427      if (atTab) continue;
5428      value = " ";
5429    } else {
5430      value = fromCharCode(chunk);
5431    }
5432    atTab = chunk === -2;
5433    result.push(value);
5434  }
5435  return result.join("");
5436}
5437module.exports = serializeChunks;
5438
5439
5440/***/ },
5441
5442/***/ 34645
5443(module, __unused_webpack_exports, __webpack_require__) {
5444
5445"use strict";
5446
5447var assign = __webpack_require__(44552);
5448function shallow(object) {
5449  return assign({}, object);
5450}
5451module.exports = shallow;
5452
5453
5454/***/ },
5455
5456/***/ 87175
5457(module) {
5458
5459"use strict";
5460
5461function sizeChunks(chunks) {
5462  var index = -1;
5463  var size = 0;
5464  while (++index < chunks.length) {
5465    size += typeof chunks[index] === "string" ? chunks[index].length : 1;
5466  }
5467  return size;
5468}
5469module.exports = sizeChunks;
5470
5471
5472/***/ },
5473
5474/***/ 68362
5475(module) {
5476
5477"use strict";
5478
5479function sliceChunks(chunks, token) {
5480  var startIndex = token.start._index;
5481  var startBufferIndex = token.start._bufferIndex;
5482  var endIndex = token.end._index;
5483  var endBufferIndex = token.end._bufferIndex;
5484  var view;
5485  if (startIndex === endIndex) {
5486    view = [chunks[startIndex].slice(startBufferIndex, endBufferIndex)];
5487  } else {
5488    view = chunks.slice(startIndex, endIndex);
5489    if (startBufferIndex > -1) {
5490      view[0] = view[0].slice(startBufferIndex);
5491    }
5492    if (endBufferIndex > 0) {
5493      view.push(chunks[endIndex].slice(0, endBufferIndex));
5494    }
5495  }
5496  return view;
5497}
5498module.exports = sliceChunks;
5499
5500
5501/***/ },
5502
5503/***/ 26306
5504(module, __unused_webpack_exports, __webpack_require__) {
5505
5506"use strict";
5507
5508var assign = __webpack_require__(44552);
5509var chunkedSplice = __webpack_require__(50638);
5510var shallow = __webpack_require__(34645);
5511function subtokenize(events) {
5512  var jumps = {};
5513  var index = -1;
5514  var event;
5515  var lineIndex;
5516  var otherIndex;
5517  var otherEvent;
5518  var parameters;
5519  var subevents;
5520  var more;
5521  while (++index < events.length) {
5522    while (index in jumps) {
5523      index = jumps[index];
5524    }
5525    event = events[index];
5526    if (index && event[1].type === "chunkFlow" && events[index - 1][1].type === "listItemPrefix") {
5527      subevents = event[1]._tokenizer.events;
5528      otherIndex = 0;
5529      if (otherIndex < subevents.length && subevents[otherIndex][1].type === "lineEndingBlank") {
5530        otherIndex += 2;
5531      }
5532      if (otherIndex < subevents.length && subevents[otherIndex][1].type === "content") {
5533        while (++otherIndex < subevents.length) {
5534          if (subevents[otherIndex][1].type === "content") {
5535            break;
5536          }
5537          if (subevents[otherIndex][1].type === "chunkText") {
5538            subevents[otherIndex][1].isInFirstContentOfListItem = true;
5539            otherIndex++;
5540          }
5541        }
5542      }
5543    }
5544    if (event[0] === "enter") {
5545      if (event[1].contentType) {
5546        assign(jumps, subcontent(events, index));
5547        index = jumps[index];
5548        more = true;
5549      }
5550    } else if (event[1]._container || event[1]._movePreviousLineEndings) {
5551      otherIndex = index;
5552      lineIndex = void 0;
5553      while (otherIndex--) {
5554        otherEvent = events[otherIndex];
5555        if (otherEvent[1].type === "lineEnding" || otherEvent[1].type === "lineEndingBlank") {
5556          if (otherEvent[0] === "enter") {
5557            if (lineIndex) {
5558              events[lineIndex][1].type = "lineEndingBlank";
5559            }
5560            otherEvent[1].type = "lineEnding";
5561            lineIndex = otherIndex;
5562          }
5563        } else {
5564          break;
5565        }
5566      }
5567      if (lineIndex) {
5568        event[1].end = shallow(events[lineIndex][1].start);
5569        parameters = events.slice(lineIndex, index);
5570        parameters.unshift(event);
5571        chunkedSplice(events, lineIndex, index - lineIndex + 1, parameters);
5572      }
5573    }
5574  }
5575  return !more;
5576}
5577function subcontent(events, eventIndex) {
5578  var token = events[eventIndex][1];
5579  var context = events[eventIndex][2];
5580  var startPosition = eventIndex - 1;
5581  var startPositions = [];
5582  var tokenizer = token._tokenizer || context.parser[token.contentType](token.start);
5583  var childEvents = tokenizer.events;
5584  var jumps = [];
5585  var gaps = {};
5586  var stream;
5587  var previous;
5588  var index;
5589  var entered;
5590  var end;
5591  var adjust;
5592  while (token) {
5593    while (events[++startPosition][1] !== token) {
5594    }
5595    startPositions.push(startPosition);
5596    if (!token._tokenizer) {
5597      stream = context.sliceStream(token);
5598      if (!token.next) {
5599        stream.push(null);
5600      }
5601      if (previous) {
5602        tokenizer.defineSkip(token.start);
5603      }
5604      if (token.isInFirstContentOfListItem) {
5605        tokenizer._gfmTasklistFirstContentOfListItem = true;
5606      }
5607      tokenizer.write(stream);
5608      if (token.isInFirstContentOfListItem) {
5609        tokenizer._gfmTasklistFirstContentOfListItem = void 0;
5610      }
5611    }
5612    previous = token;
5613    token = token.next;
5614  }
5615  token = previous;
5616  index = childEvents.length;
5617  while (index--) {
5618    if (childEvents[index][0] === "enter") {
5619      entered = true;
5620    } else if (
5621      // Find a void token that includes a break.
5622      entered && childEvents[index][1].type === childEvents[index - 1][1].type && childEvents[index][1].start.line !== childEvents[index][1].end.line
5623    ) {
5624      add(childEvents.slice(index + 1, end));
5625      token._tokenizer = token.next = void 0;
5626      token = token.previous;
5627      end = index + 1;
5628    }
5629  }
5630  tokenizer.events = token._tokenizer = token.next = void 0;
5631  add(childEvents.slice(0, end));
5632  index = -1;
5633  adjust = 0;
5634  while (++index < jumps.length) {
5635    gaps[adjust + jumps[index][0]] = adjust + jumps[index][1];
5636    adjust += jumps[index][1] - jumps[index][0] - 1;
5637  }
5638  return gaps;
5639  function add(slice) {
5640    var start = startPositions.pop();
5641    jumps.unshift([start, start + slice.length - 1]);
5642    chunkedSplice(events, start, 2, slice);
5643  }
5644}
5645module.exports = subtokenize;
5646
5647
5648/***/ },
5649
5650/***/ 72859
5651(module) {
5652
5653"use strict";
5654
5655var el;
5656var semicolon = 59;
5657module.exports = decodeEntity;
5658function decodeEntity(characters) {
5659  var entity = "&" + characters + ";";
5660  var char;
5661  el = el || document.createElement("i");
5662  el.innerHTML = entity;
5663  char = el.textContent;
5664  if (char.charCodeAt(char.length - 1) === semicolon && characters !== "semi") {
5665    return false;
5666  }
5667  return char === entity ? false : char;
5668}
5669
5670
5671/***/ },
5672
5673/***/ 8521
5674(module, __unused_webpack_exports, __webpack_require__) {
5675
5676"use strict";
5677
5678var normalize = __webpack_require__(93695);
5679var DefinedInfo = __webpack_require__(43965);
5680var Info = __webpack_require__(45093);
5681var data = "data";
5682module.exports = find;
5683var valid = /^data[-\w.:]+$/i;
5684var dash = /-[a-z]/g;
5685var cap = /[A-Z]/g;
5686function find(schema, value) {
5687  var normal = normalize(value);
5688  var prop = value;
5689  var Type = Info;
5690  if (normal in schema.normal) {
5691    return schema.property[schema.normal[normal]];
5692  }
5693  if (normal.length > 4 && normal.slice(0, 4) === data && valid.test(value)) {
5694    if (value.charAt(4) === "-") {
5695      prop = datasetToProperty(value);
5696    } else {
5697      value = datasetToAttribute(value);
5698    }
5699    Type = DefinedInfo;
5700  }
5701  return new Type(prop, value);
5702}
5703function datasetToProperty(attribute) {
5704  var value = attribute.slice(5).replace(dash, camelcase);
5705  return data + value.charAt(0).toUpperCase() + value.slice(1);
5706}
5707function datasetToAttribute(property) {
5708  var value = property.slice(4);
5709  if (dash.test(value)) {
5710    return property;
5711  }
5712  value = value.replace(cap, kebab);
5713  if (value.charAt(0) !== "-") {
5714    value = "-" + value;
5715  }
5716  return data + value;
5717}
5718function kebab($0) {
5719  return "-" + $0.toLowerCase();
5720}
5721function camelcase($0) {
5722  return $0.charAt(1).toUpperCase();
5723}
5724
5725
5726/***/ },
5727
5728/***/ 48555
5729(module, __unused_webpack_exports, __webpack_require__) {
5730
5731"use strict";
5732
5733var merge = __webpack_require__(73877);
5734var xlink = __webpack_require__(47776);
5735var xml = __webpack_require__(86481);
5736var xmlns = __webpack_require__(32738);
5737var aria = __webpack_require__(24607);
5738var html = __webpack_require__(82815);
5739module.exports = merge([xml, xlink, xmlns, aria, html]);
5740
5741
5742/***/ },
5743
5744/***/ 24607
5745(module, __unused_webpack_exports, __webpack_require__) {
5746
5747"use strict";
5748
5749var types = __webpack_require__(62864);
5750var create = __webpack_require__(35897);
5751var booleanish = types.booleanish;
5752var number = types.number;
5753var spaceSeparated = types.spaceSeparated;
5754module.exports = create({
5755  transform: ariaTransform,
5756  properties: {
5757    ariaActiveDescendant: null,
5758    ariaAtomic: booleanish,
5759    ariaAutoComplete: null,
5760    ariaBusy: booleanish,
5761    ariaChecked: booleanish,
5762    ariaColCount: number,
5763    ariaColIndex: number,
5764    ariaColSpan: number,
5765    ariaControls: spaceSeparated,
5766    ariaCurrent: null,
5767    ariaDescribedBy: spaceSeparated,
5768    ariaDetails: null,
5769    ariaDisabled: booleanish,
5770    ariaDropEffect: spaceSeparated,
5771    ariaErrorMessage: null,
5772    ariaExpanded: booleanish,
5773    ariaFlowTo: spaceSeparated,
5774    ariaGrabbed: booleanish,
5775    ariaHasPopup: null,
5776    ariaHidden: booleanish,
5777    ariaInvalid: null,
5778    ariaKeyShortcuts: null,
5779    ariaLabel: null,
5780    ariaLabelledBy: spaceSeparated,
5781    ariaLevel: number,
5782    ariaLive: null,
5783    ariaModal: booleanish,
5784    ariaMultiLine: booleanish,
5785    ariaMultiSelectable: booleanish,
5786    ariaOrientation: null,
5787    ariaOwns: spaceSeparated,
5788    ariaPlaceholder: null,
5789    ariaPosInSet: number,
5790    ariaPressed: booleanish,
5791    ariaReadOnly: booleanish,
5792    ariaRelevant: null,
5793    ariaRequired: booleanish,
5794    ariaRoleDescription: spaceSeparated,
5795    ariaRowCount: number,
5796    ariaRowIndex: number,
5797    ariaRowSpan: number,
5798    ariaSelected: booleanish,
5799    ariaSetSize: number,
5800    ariaSort: null,
5801    ariaValueMax: number,
5802    ariaValueMin: number,
5803    ariaValueNow: number,
5804    ariaValueText: null,
5805    role: null
5806  }
5807});
5808function ariaTransform(_, prop) {
5809  return prop === "role" ? prop : "aria-" + prop.slice(4).toLowerCase();
5810}
5811
5812
5813/***/ },
5814
5815/***/ 82815
5816(module, __unused_webpack_exports, __webpack_require__) {
5817
5818"use strict";
5819
5820var types = __webpack_require__(62864);
5821var create = __webpack_require__(35897);
5822var caseInsensitiveTransform = __webpack_require__(7388);
5823var boolean = types.boolean;
5824var overloadedBoolean = types.overloadedBoolean;
5825var booleanish = types.booleanish;
5826var number = types.number;
5827var spaceSeparated = types.spaceSeparated;
5828var commaSeparated = types.commaSeparated;
5829module.exports = create({
5830  space: "html",
5831  attributes: {
5832    acceptcharset: "accept-charset",
5833    classname: "class",
5834    htmlfor: "for",
5835    httpequiv: "http-equiv"
5836  },
5837  transform: caseInsensitiveTransform,
5838  mustUseProperty: ["checked", "multiple", "muted", "selected"],
5839  properties: {
5840    // Standard Properties.
5841    abbr: null,
5842    accept: commaSeparated,
5843    acceptCharset: spaceSeparated,
5844    accessKey: spaceSeparated,
5845    action: null,
5846    allow: null,
5847    allowFullScreen: boolean,
5848    allowPaymentRequest: boolean,
5849    allowUserMedia: boolean,
5850    alt: null,
5851    as: null,
5852    async: boolean,
5853    autoCapitalize: null,
5854    autoComplete: spaceSeparated,
5855    autoFocus: boolean,
5856    autoPlay: boolean,
5857    capture: boolean,
5858    charSet: null,
5859    checked: boolean,
5860    cite: null,
5861    className: spaceSeparated,
5862    cols: number,
5863    colSpan: null,
5864    content: null,
5865    contentEditable: booleanish,
5866    controls: boolean,
5867    controlsList: spaceSeparated,
5868    coords: number | commaSeparated,
5869    crossOrigin: null,
5870    data: null,
5871    dateTime: null,
5872    decoding: null,
5873    default: boolean,
5874    defer: boolean,
5875    dir: null,
5876    dirName: null,
5877    disabled: boolean,
5878    download: overloadedBoolean,
5879    draggable: booleanish,
5880    encType: null,
5881    enterKeyHint: null,
5882    form: null,
5883    formAction: null,
5884    formEncType: null,
5885    formMethod: null,
5886    formNoValidate: boolean,
5887    formTarget: null,
5888    headers: spaceSeparated,
5889    height: number,
5890    hidden: boolean,
5891    high: number,
5892    href: null,
5893    hrefLang: null,
5894    htmlFor: spaceSeparated,
5895    httpEquiv: spaceSeparated,
5896    id: null,
5897    imageSizes: null,
5898    imageSrcSet: commaSeparated,
5899    inputMode: null,
5900    integrity: null,
5901    is: null,
5902    isMap: boolean,
5903    itemId: null,
5904    itemProp: spaceSeparated,
5905    itemRef: spaceSeparated,
5906    itemScope: boolean,
5907    itemType: spaceSeparated,
5908    kind: null,
5909    label: null,
5910    lang: null,
5911    language: null,
5912    list: null,
5913    loading: null,
5914    loop: boolean,
5915    low: number,
5916    manifest: null,
5917    max: null,
5918    maxLength: number,
5919    media: null,
5920    method: null,
5921    min: null,
5922    minLength: number,
5923    multiple: boolean,
5924    muted: boolean,
5925    name: null,
5926    nonce: null,
5927    noModule: boolean,
5928    noValidate: boolean,
5929    onAbort: null,
5930    onAfterPrint: null,
5931    onAuxClick: null,
5932    onBeforePrint: null,
5933    onBeforeUnload: null,
5934    onBlur: null,
5935    onCancel: null,
5936    onCanPlay: null,
5937    onCanPlayThrough: null,
5938    onChange: null,
5939    onClick: null,
5940    onClose: null,
5941    onContextMenu: null,
5942    onCopy: null,
5943    onCueChange: null,
5944    onCut: null,
5945    onDblClick: null,
5946    onDrag: null,
5947    onDragEnd: null,
5948    onDragEnter: null,
5949    onDragExit: null,
5950    onDragLeave: null,
5951    onDragOver: null,
5952    onDragStart: null,
5953    onDrop: null,
5954    onDurationChange: null,
5955    onEmptied: null,
5956    onEnded: null,
5957    onError: null,
5958    onFocus: null,
5959    onFormData: null,
5960    onHashChange: null,
5961    onInput: null,
5962    onInvalid: null,
5963    onKeyDown: null,
5964    onKeyPress: null,
5965    onKeyUp: null,
5966    onLanguageChange: null,
5967    onLoad: null,
5968    onLoadedData: null,
5969    onLoadedMetadata: null,
5970    onLoadEnd: null,
5971    onLoadStart: null,
5972    onMessage: null,
5973    onMessageError: null,
5974    onMouseDown: null,
5975    onMouseEnter: null,
5976    onMouseLeave: null,
5977    onMouseMove: null,
5978    onMouseOut: null,
5979    onMouseOver: null,
5980    onMouseUp: null,
5981    onOffline: null,
5982    onOnline: null,
5983    onPageHide: null,
5984    onPageShow: null,
5985    onPaste: null,
5986    onPause: null,
5987    onPlay: null,
5988    onPlaying: null,
5989    onPopState: null,
5990    onProgress: null,
5991    onRateChange: null,
5992    onRejectionHandled: null,
5993    onReset: null,
5994    onResize: null,
5995    onScroll: null,
5996    onSecurityPolicyViolation: null,
5997    onSeeked: null,
5998    onSeeking: null,
5999    onSelect: null,
6000    onSlotChange: null,
6001    onStalled: null,
6002    onStorage: null,
6003    onSubmit: null,
6004    onSuspend: null,
6005    onTimeUpdate: null,
6006    onToggle: null,
6007    onUnhandledRejection: null,
6008    onUnload: null,
6009    onVolumeChange: null,
6010    onWaiting: null,
6011    onWheel: null,
6012    open: boolean,
6013    optimum: number,
6014    pattern: null,
6015    ping: spaceSeparated,
6016    placeholder: null,
6017    playsInline: boolean,
6018    poster: null,
6019    preload: null,
6020    readOnly: boolean,
6021    referrerPolicy: null,
6022    rel: spaceSeparated,
6023    required: boolean,
6024    reversed: boolean,
6025    rows: number,
6026    rowSpan: number,
6027    sandbox: spaceSeparated,
6028    scope: null,
6029    scoped: boolean,
6030    seamless: boolean,
6031    selected: boolean,
6032    shape: null,
6033    size: number,
6034    sizes: null,
6035    slot: null,
6036    span: number,
6037    spellCheck: booleanish,
6038    src: null,
6039    srcDoc: null,
6040    srcLang: null,
6041    srcSet: commaSeparated,
6042    start: number,
6043    step: null,
6044    style: null,
6045    tabIndex: number,
6046    target: null,
6047    title: null,
6048    translate: null,
6049    type: null,
6050    typeMustMatch: boolean,
6051    useMap: null,
6052    value: booleanish,
6053    width: number,
6054    wrap: null,
6055    // Legacy.
6056    // See: https://html.spec.whatwg.org/#other-elements,-attributes-and-apis
6057    align: null,
6058    // Several. Use CSS `text-align` instead,
6059    aLink: null,
6060    // `<body>`. Use CSS `a:active {color}` instead
6061    archive: spaceSeparated,
6062    // `<object>`. List of URIs to archives
6063    axis: null,
6064    // `<td>` and `<th>`. Use `scope` on `<th>`
6065    background: null,
6066    // `<body>`. Use CSS `background-image` instead
6067    bgColor: null,
6068    // `<body>` and table elements. Use CSS `background-color` instead
6069    border: number,
6070    // `<table>`. Use CSS `border-width` instead,
6071    borderColor: null,
6072    // `<table>`. Use CSS `border-color` instead,
6073    bottomMargin: number,
6074    // `<body>`
6075    cellPadding: null,
6076    // `<table>`
6077    cellSpacing: null,
6078    // `<table>`
6079    char: null,
6080    // Several table elements. When `align=char`, sets the character to align on
6081    charOff: null,
6082    // Several table elements. When `char`, offsets the alignment
6083    classId: null,
6084    // `<object>`
6085    clear: null,
6086    // `<br>`. Use CSS `clear` instead
6087    code: null,
6088    // `<object>`
6089    codeBase: null,
6090    // `<object>`
6091    codeType: null,
6092    // `<object>`
6093    color: null,
6094    // `<font>` and `<hr>`. Use CSS instead
6095    compact: boolean,
6096    // Lists. Use CSS to reduce space between items instead
6097    declare: boolean,
6098    // `<object>`
6099    event: null,
6100    // `<script>`
6101    face: null,
6102    // `<font>`. Use CSS instead
6103    frame: null,
6104    // `<table>`
6105    frameBorder: null,
6106    // `<iframe>`. Use CSS `border` instead
6107    hSpace: number,
6108    // `<img>` and `<object>`
6109    leftMargin: number,
6110    // `<body>`
6111    link: null,
6112    // `<body>`. Use CSS `a:link {color: *}` instead
6113    longDesc: null,
6114    // `<frame>`, `<iframe>`, and `<img>`. Use an `<a>`
6115    lowSrc: null,
6116    // `<img>`. Use a `<picture>`
6117    marginHeight: number,
6118    // `<body>`
6119    marginWidth: number,
6120    // `<body>`
6121    noResize: boolean,
6122    // `<frame>`
6123    noHref: boolean,
6124    // `<area>`. Use no href instead of an explicit `nohref`
6125    noShade: boolean,
6126    // `<hr>`. Use background-color and height instead of borders
6127    noWrap: boolean,
6128    // `<td>` and `<th>`
6129    object: null,
6130    // `<applet>`
6131    profile: null,
6132    // `<head>`
6133    prompt: null,
6134    // `<isindex>`
6135    rev: null,
6136    // `<link>`
6137    rightMargin: number,
6138    // `<body>`
6139    rules: null,
6140    // `<table>`
6141    scheme: null,
6142    // `<meta>`
6143    scrolling: booleanish,
6144    // `<frame>`. Use overflow in the child context
6145    standby: null,
6146    // `<object>`
6147    summary: null,
6148    // `<table>`
6149    text: null,
6150    // `<body>`. Use CSS `color` instead
6151    topMargin: number,
6152    // `<body>`
6153    valueType: null,
6154    // `<param>`
6155    version: null,
6156    // `<html>`. Use a doctype.
6157    vAlign: null,
6158    // Several. Use CSS `vertical-align` instead
6159    vLink: null,
6160    // `<body>`. Use CSS `a:visited {color}` instead
6161    vSpace: number,
6162    // `<img>` and `<object>`
6163    // Non-standard Properties.
6164    allowTransparency: null,
6165    autoCorrect: null,
6166    autoSave: null,
6167    disablePictureInPicture: boolean,
6168    disableRemotePlayback: boolean,
6169    prefix: null,
6170    property: null,
6171    results: number,
6172    security: null,
6173    unselectable: null
6174  }
6175});
6176
6177
6178/***/ },
6179
6180/***/ 9242
6181(module, __unused_webpack_exports, __webpack_require__) {
6182
6183"use strict";
6184
6185var types = __webpack_require__(62864);
6186var create = __webpack_require__(35897);
6187var caseSensitiveTransform = __webpack_require__(85181);
6188var boolean = types.boolean;
6189var number = types.number;
6190var spaceSeparated = types.spaceSeparated;
6191var commaSeparated = types.commaSeparated;
6192var commaOrSpaceSeparated = types.commaOrSpaceSeparated;
6193module.exports = create({
6194  space: "svg",
6195  attributes: {
6196    accentHeight: "accent-height",
6197    alignmentBaseline: "alignment-baseline",
6198    arabicForm: "arabic-form",
6199    baselineShift: "baseline-shift",
6200    capHeight: "cap-height",
6201    className: "class",
6202    clipPath: "clip-path",
6203    clipRule: "clip-rule",
6204    colorInterpolation: "color-interpolation",
6205    colorInterpolationFilters: "color-interpolation-filters",
6206    colorProfile: "color-profile",
6207    colorRendering: "color-rendering",
6208    crossOrigin: "crossorigin",
6209    dataType: "datatype",
6210    dominantBaseline: "dominant-baseline",
6211    enableBackground: "enable-background",
6212    fillOpacity: "fill-opacity",
6213    fillRule: "fill-rule",
6214    floodColor: "flood-color",
6215    floodOpacity: "flood-opacity",
6216    fontFamily: "font-family",
6217    fontSize: "font-size",
6218    fontSizeAdjust: "font-size-adjust",
6219    fontStretch: "font-stretch",
6220    fontStyle: "font-style",
6221    fontVariant: "font-variant",
6222    fontWeight: "font-weight",
6223    glyphName: "glyph-name",
6224    glyphOrientationHorizontal: "glyph-orientation-horizontal",
6225    glyphOrientationVertical: "glyph-orientation-vertical",
6226    hrefLang: "hreflang",
6227    horizAdvX: "horiz-adv-x",
6228    horizOriginX: "horiz-origin-x",
6229    horizOriginY: "horiz-origin-y",
6230    imageRendering: "image-rendering",
6231    letterSpacing: "letter-spacing",
6232    lightingColor: "lighting-color",
6233    markerEnd: "marker-end",
6234    markerMid: "marker-mid",
6235    markerStart: "marker-start",
6236    navDown: "nav-down",
6237    navDownLeft: "nav-down-left",
6238    navDownRight: "nav-down-right",
6239    navLeft: "nav-left",
6240    navNext: "nav-next",
6241    navPrev: "nav-prev",
6242    navRight: "nav-right",
6243    navUp: "nav-up",
6244    navUpLeft: "nav-up-left",
6245    navUpRight: "nav-up-right",
6246    onAbort: "onabort",
6247    onActivate: "onactivate",
6248    onAfterPrint: "onafterprint",
6249    onBeforePrint: "onbeforeprint",
6250    onBegin: "onbegin",
6251    onCancel: "oncancel",
6252    onCanPlay: "oncanplay",
6253    onCanPlayThrough: "oncanplaythrough",
6254    onChange: "onchange",
6255    onClick: "onclick",
6256    onClose: "onclose",
6257    onCopy: "oncopy",
6258    onCueChange: "oncuechange",
6259    onCut: "oncut",
6260    onDblClick: "ondblclick",
6261    onDrag: "ondrag",
6262    onDragEnd: "ondragend",
6263    onDragEnter: "ondragenter",
6264    onDragExit: "ondragexit",
6265    onDragLeave: "ondragleave",
6266    onDragOver: "ondragover",
6267    onDragStart: "ondragstart",
6268    onDrop: "ondrop",
6269    onDurationChange: "ondurationchange",
6270    onEmptied: "onemptied",
6271    onEnd: "onend",
6272    onEnded: "onended",
6273    onError: "onerror",
6274    onFocus: "onfocus",
6275    onFocusIn: "onfocusin",
6276    onFocusOut: "onfocusout",
6277    onHashChange: "onhashchange",
6278    onInput: "oninput",
6279    onInvalid: "oninvalid",
6280    onKeyDown: "onkeydown",
6281    onKeyPress: "onkeypress",
6282    onKeyUp: "onkeyup",
6283    onLoad: "onload",
6284    onLoadedData: "onloadeddata",
6285    onLoadedMetadata: "onloadedmetadata",
6286    onLoadStart: "onloadstart",
6287    onMessage: "onmessage",
6288    onMouseDown: "onmousedown",
6289    onMouseEnter: "onmouseenter",
6290    onMouseLeave: "onmouseleave",
6291    onMouseMove: "onmousemove",
6292    onMouseOut: "onmouseout",
6293    onMouseOver: "onmouseover",
6294    onMouseUp: "onmouseup",
6295    onMouseWheel: "onmousewheel",
6296    onOffline: "onoffline",
6297    onOnline: "ononline",
6298    onPageHide: "onpagehide",
6299    onPageShow: "onpageshow",
6300    onPaste: "onpaste",
6301    onPause: "onpause",
6302    onPlay: "onplay",
6303    onPlaying: "onplaying",
6304    onPopState: "onpopstate",
6305    onProgress: "onprogress",
6306    onRateChange: "onratechange",
6307    onRepeat: "onrepeat",
6308    onReset: "onreset",
6309    onResize: "onresize",
6310    onScroll: "onscroll",
6311    onSeeked: "onseeked",
6312    onSeeking: "onseeking",
6313    onSelect: "onselect",
6314    onShow: "onshow",
6315    onStalled: "onstalled",
6316    onStorage: "onstorage",
6317    onSubmit: "onsubmit",
6318    onSuspend: "onsuspend",
6319    onTimeUpdate: "ontimeupdate",
6320    onToggle: "ontoggle",
6321    onUnload: "onunload",
6322    onVolumeChange: "onvolumechange",
6323    onWaiting: "onwaiting",
6324    onZoom: "onzoom",
6325    overlinePosition: "overline-position",
6326    overlineThickness: "overline-thickness",
6327    paintOrder: "paint-order",
6328    panose1: "panose-1",
6329    pointerEvents: "pointer-events",
6330    referrerPolicy: "referrerpolicy",
6331    renderingIntent: "rendering-intent",
6332    shapeRendering: "shape-rendering",
6333    stopColor: "stop-color",
6334    stopOpacity: "stop-opacity",
6335    strikethroughPosition: "strikethrough-position",
6336    strikethroughThickness: "strikethrough-thickness",
6337    strokeDashArray: "stroke-dasharray",
6338    strokeDashOffset: "stroke-dashoffset",
6339    strokeLineCap: "stroke-linecap",
6340    strokeLineJoin: "stroke-linejoin",
6341    strokeMiterLimit: "stroke-miterlimit",
6342    strokeOpacity: "stroke-opacity",
6343    strokeWidth: "stroke-width",
6344    tabIndex: "tabindex",
6345    textAnchor: "text-anchor",
6346    textDecoration: "text-decoration",
6347    textRendering: "text-rendering",
6348    typeOf: "typeof",
6349    underlinePosition: "underline-position",
6350    underlineThickness: "underline-thickness",
6351    unicodeBidi: "unicode-bidi",
6352    unicodeRange: "unicode-range",
6353    unitsPerEm: "units-per-em",
6354    vAlphabetic: "v-alphabetic",
6355    vHanging: "v-hanging",
6356    vIdeographic: "v-ideographic",
6357    vMathematical: "v-mathematical",
6358    vectorEffect: "vector-effect",
6359    vertAdvY: "vert-adv-y",
6360    vertOriginX: "vert-origin-x",
6361    vertOriginY: "vert-origin-y",
6362    wordSpacing: "word-spacing",
6363    writingMode: "writing-mode",
6364    xHeight: "x-height",
6365    // These were camelcased in Tiny. Now lowercased in SVG 2
6366    playbackOrder: "playbackorder",
6367    timelineBegin: "timelinebegin"
6368  },
6369  transform: caseSensitiveTransform,
6370  properties: {
6371    about: commaOrSpaceSeparated,
6372    accentHeight: number,
6373    accumulate: null,
6374    additive: null,
6375    alignmentBaseline: null,
6376    alphabetic: number,
6377    amplitude: number,
6378    arabicForm: null,
6379    ascent: number,
6380    attributeName: null,
6381    attributeType: null,
6382    azimuth: number,
6383    bandwidth: null,
6384    baselineShift: null,
6385    baseFrequency: null,
6386    baseProfile: null,
6387    bbox: null,
6388    begin: null,
6389    bias: number,
6390    by: null,
6391    calcMode: null,
6392    capHeight: number,
6393    className: spaceSeparated,
6394    clip: null,
6395    clipPath: null,
6396    clipPathUnits: null,
6397    clipRule: null,
6398    color: null,
6399    colorInterpolation: null,
6400    colorInterpolationFilters: null,
6401    colorProfile: null,
6402    colorRendering: null,
6403    content: null,
6404    contentScriptType: null,
6405    contentStyleType: null,
6406    crossOrigin: null,
6407    cursor: null,
6408    cx: null,
6409    cy: null,
6410    d: null,
6411    dataType: null,
6412    defaultAction: null,
6413    descent: number,
6414    diffuseConstant: number,
6415    direction: null,
6416    display: null,
6417    dur: null,
6418    divisor: number,
6419    dominantBaseline: null,
6420    download: boolean,
6421    dx: null,
6422    dy: null,
6423    edgeMode: null,
6424    editable: null,
6425    elevation: number,
6426    enableBackground: null,
6427    end: null,
6428    event: null,
6429    exponent: number,
6430    externalResourcesRequired: null,
6431    fill: null,
6432    fillOpacity: number,
6433    fillRule: null,
6434    filter: null,
6435    filterRes: null,
6436    filterUnits: null,
6437    floodColor: null,
6438    floodOpacity: null,
6439    focusable: null,
6440    focusHighlight: null,
6441    fontFamily: null,
6442    fontSize: null,
6443    fontSizeAdjust: null,
6444    fontStretch: null,
6445    fontStyle: null,
6446    fontVariant: null,
6447    fontWeight: null,
6448    format: null,
6449    fr: null,
6450    from: null,
6451    fx: null,
6452    fy: null,
6453    g1: commaSeparated,
6454    g2: commaSeparated,
6455    glyphName: commaSeparated,
6456    glyphOrientationHorizontal: null,
6457    glyphOrientationVertical: null,
6458    glyphRef: null,
6459    gradientTransform: null,
6460    gradientUnits: null,
6461    handler: null,
6462    hanging: number,
6463    hatchContentUnits: null,
6464    hatchUnits: null,
6465    height: null,
6466    href: null,
6467    hrefLang: null,
6468    horizAdvX: number,
6469    horizOriginX: number,
6470    horizOriginY: number,
6471    id: null,
6472    ideographic: number,
6473    imageRendering: null,
6474    initialVisibility: null,
6475    in: null,
6476    in2: null,
6477    intercept: number,
6478    k: number,
6479    k1: number,
6480    k2: number,
6481    k3: number,
6482    k4: number,
6483    kernelMatrix: commaOrSpaceSeparated,
6484    kernelUnitLength: null,
6485    keyPoints: null,
6486    // SEMI_COLON_SEPARATED
6487    keySplines: null,
6488    // SEMI_COLON_SEPARATED
6489    keyTimes: null,
6490    // SEMI_COLON_SEPARATED
6491    kerning: null,
6492    lang: null,
6493    lengthAdjust: null,
6494    letterSpacing: null,
6495    lightingColor: null,
6496    limitingConeAngle: number,
6497    local: null,
6498    markerEnd: null,
6499    markerMid: null,
6500    markerStart: null,
6501    markerHeight: null,
6502    markerUnits: null,
6503    markerWidth: null,
6504    mask: null,
6505    maskContentUnits: null,
6506    maskUnits: null,
6507    mathematical: null,
6508    max: null,
6509    media: null,
6510    mediaCharacterEncoding: null,
6511    mediaContentEncodings: null,
6512    mediaSize: number,
6513    mediaTime: null,
6514    method: null,
6515    min: null,
6516    mode: null,
6517    name: null,
6518    navDown: null,
6519    navDownLeft: null,
6520    navDownRight: null,
6521    navLeft: null,
6522    navNext: null,
6523    navPrev: null,
6524    navRight: null,
6525    navUp: null,
6526    navUpLeft: null,
6527    navUpRight: null,
6528    numOctaves: null,
6529    observer: null,
6530    offset: null,
6531    onAbort: null,
6532    onActivate: null,
6533    onAfterPrint: null,
6534    onBeforePrint: null,
6535    onBegin: null,
6536    onCancel: null,
6537    onCanPlay: null,
6538    onCanPlayThrough: null,
6539    onChange: null,
6540    onClick: null,
6541    onClose: null,
6542    onCopy: null,
6543    onCueChange: null,
6544    onCut: null,
6545    onDblClick: null,
6546    onDrag: null,
6547    onDragEnd: null,
6548    onDragEnter: null,
6549    onDragExit: null,
6550    onDragLeave: null,
6551    onDragOver: null,
6552    onDragStart: null,
6553    onDrop: null,
6554    onDurationChange: null,
6555    onEmptied: null,
6556    onEnd: null,
6557    onEnded: null,
6558    onError: null,
6559    onFocus: null,
6560    onFocusIn: null,
6561    onFocusOut: null,
6562    onHashChange: null,
6563    onInput: null,
6564    onInvalid: null,
6565    onKeyDown: null,
6566    onKeyPress: null,
6567    onKeyUp: null,
6568    onLoad: null,
6569    onLoadedData: null,
6570    onLoadedMetadata: null,
6571    onLoadStart: null,
6572    onMessage: null,
6573    onMouseDown: null,
6574    onMouseEnter: null,
6575    onMouseLeave: null,
6576    onMouseMove: null,
6577    onMouseOut: null,
6578    onMouseOver: null,
6579    onMouseUp: null,
6580    onMouseWheel: null,
6581    onOffline: null,
6582    onOnline: null,
6583    onPageHide: null,
6584    onPageShow: null,
6585    onPaste: null,
6586    onPause: null,
6587    onPlay: null,
6588    onPlaying: null,
6589    onPopState: null,
6590    onProgress: null,
6591    onRateChange: null,
6592    onRepeat: null,
6593    onReset: null,
6594    onResize: null,
6595    onScroll: null,
6596    onSeeked: null,
6597    onSeeking: null,
6598    onSelect: null,
6599    onShow: null,
6600    onStalled: null,
6601    onStorage: null,
6602    onSubmit: null,
6603    onSuspend: null,
6604    onTimeUpdate: null,
6605    onToggle: null,
6606    onUnload: null,
6607    onVolumeChange: null,
6608    onWaiting: null,
6609    onZoom: null,
6610    opacity: null,
6611    operator: null,
6612    order: null,
6613    orient: null,
6614    orientation: null,
6615    origin: null,
6616    overflow: null,
6617    overlay: null,
6618    overlinePosition: number,
6619    overlineThickness: number,
6620    paintOrder: null,
6621    panose1: null,
6622    path: null,
6623    pathLength: number,
6624    patternContentUnits: null,
6625    patternTransform: null,
6626    patternUnits: null,
6627    phase: null,
6628    ping: spaceSeparated,
6629    pitch: null,
6630    playbackOrder: null,
6631    pointerEvents: null,
6632    points: null,
6633    pointsAtX: number,
6634    pointsAtY: number,
6635    pointsAtZ: number,
6636    preserveAlpha: null,
6637    preserveAspectRatio: null,
6638    primitiveUnits: null,
6639    propagate: null,
6640    property: commaOrSpaceSeparated,
6641    r: null,
6642    radius: null,
6643    referrerPolicy: null,
6644    refX: null,
6645    refY: null,
6646    rel: commaOrSpaceSeparated,
6647    rev: commaOrSpaceSeparated,
6648    renderingIntent: null,
6649    repeatCount: null,
6650    repeatDur: null,
6651    requiredExtensions: commaOrSpaceSeparated,
6652    requiredFeatures: commaOrSpaceSeparated,
6653    requiredFonts: commaOrSpaceSeparated,
6654    requiredFormats: commaOrSpaceSeparated,
6655    resource: null,
6656    restart: null,
6657    result: null,
6658    rotate: null,
6659    rx: null,
6660    ry: null,
6661    scale: null,
6662    seed: null,
6663    shapeRendering: null,
6664    side: null,
6665    slope: null,
6666    snapshotTime: null,
6667    specularConstant: number,
6668    specularExponent: number,
6669    spreadMethod: null,
6670    spacing: null,
6671    startOffset: null,
6672    stdDeviation: null,
6673    stemh: null,
6674    stemv: null,
6675    stitchTiles: null,
6676    stopColor: null,
6677    stopOpacity: null,
6678    strikethroughPosition: number,
6679    strikethroughThickness: number,
6680    string: null,
6681    stroke: null,
6682    strokeDashArray: commaOrSpaceSeparated,
6683    strokeDashOffset: null,
6684    strokeLineCap: null,
6685    strokeLineJoin: null,
6686    strokeMiterLimit: number,
6687    strokeOpacity: number,
6688    strokeWidth: null,
6689    style: null,
6690    surfaceScale: number,
6691    syncBehavior: null,
6692    syncBehaviorDefault: null,
6693    syncMaster: null,
6694    syncTolerance: null,
6695    syncToleranceDefault: null,
6696    systemLanguage: commaOrSpaceSeparated,
6697    tabIndex: number,
6698    tableValues: null,
6699    target: null,
6700    targetX: number,
6701    targetY: number,
6702    textAnchor: null,
6703    textDecoration: null,
6704    textRendering: null,
6705    textLength: null,
6706    timelineBegin: null,
6707    title: null,
6708    transformBehavior: null,
6709    type: null,
6710    typeOf: commaOrSpaceSeparated,
6711    to: null,
6712    transform: null,
6713    u1: null,
6714    u2: null,
6715    underlinePosition: number,
6716    underlineThickness: number,
6717    unicode: null,
6718    unicodeBidi: null,
6719    unicodeRange: null,
6720    unitsPerEm: number,
6721    values: null,
6722    vAlphabetic: number,
6723    vMathematical: number,
6724    vectorEffect: null,
6725    vHanging: number,
6726    vIdeographic: number,
6727    version: null,
6728    vertAdvY: number,
6729    vertOriginX: number,
6730    vertOriginY: number,
6731    viewBox: null,
6732    viewTarget: null,
6733    visibility: null,
6734    width: null,
6735    widths: null,
6736    wordSpacing: null,
6737    writingMode: null,
6738    x: null,
6739    x1: null,
6740    x2: null,
6741    xChannelSelector: null,
6742    xHeight: number,
6743    y: null,
6744    y1: null,
6745    y2: null,
6746    yChannelSelector: null,
6747    z: null,
6748    zoomAndPan: null
6749  }
6750});
6751
6752
6753/***/ },
6754
6755/***/ 7388
6756(module, __unused_webpack_exports, __webpack_require__) {
6757
6758"use strict";
6759
6760var caseSensitiveTransform = __webpack_require__(85181);
6761module.exports = caseInsensitiveTransform;
6762function caseInsensitiveTransform(attributes, property) {
6763  return caseSensitiveTransform(attributes, property.toLowerCase());
6764}
6765
6766
6767/***/ },
6768
6769/***/ 85181
6770(module) {
6771
6772"use strict";
6773
6774module.exports = caseSensitiveTransform;
6775function caseSensitiveTransform(attributes, attribute) {
6776  return attribute in attributes ? attributes[attribute] : attribute;
6777}
6778
6779
6780/***/ },
6781
6782/***/ 35897
6783(module, __unused_webpack_exports, __webpack_require__) {
6784
6785"use strict";
6786
6787var normalize = __webpack_require__(93695);
6788var Schema = __webpack_require__(38798);
6789var DefinedInfo = __webpack_require__(43965);
6790module.exports = create;
6791function create(definition) {
6792  var space = definition.space;
6793  var mustUseProperty = definition.mustUseProperty || [];
6794  var attributes = definition.attributes || {};
6795  var props = definition.properties;
6796  var transform = definition.transform;
6797  var property = {};
6798  var normal = {};
6799  var prop;
6800  var info;
6801  for (prop in props) {
6802    info = new DefinedInfo(
6803      prop,
6804      transform(attributes, prop),
6805      props[prop],
6806      space
6807    );
6808    if (mustUseProperty.indexOf(prop) !== -1) {
6809      info.mustUseProperty = true;
6810    }
6811    property[prop] = info;
6812    normal[normalize(prop)] = prop;
6813    normal[normalize(info.attribute)] = prop;
6814  }
6815  return new Schema(property, normal, space);
6816}
6817
6818
6819/***/ },
6820
6821/***/ 43965
6822(module, __unused_webpack_exports, __webpack_require__) {
6823
6824"use strict";
6825
6826var Info = __webpack_require__(45093);
6827var types = __webpack_require__(62864);
6828module.exports = DefinedInfo;
6829DefinedInfo.prototype = new Info();
6830DefinedInfo.prototype.defined = true;
6831var checks = [
6832  "boolean",
6833  "booleanish",
6834  "overloadedBoolean",
6835  "number",
6836  "commaSeparated",
6837  "spaceSeparated",
6838  "commaOrSpaceSeparated"
6839];
6840var checksLength = checks.length;
6841function DefinedInfo(property, attribute, mask, space) {
6842  var index = -1;
6843  var check;
6844  mark(this, "space", space);
6845  Info.call(this, property, attribute);
6846  while (++index < checksLength) {
6847    check = checks[index];
6848    mark(this, check, (mask & types[check]) === types[check]);
6849  }
6850}
6851function mark(values, key, value) {
6852  if (value) {
6853    values[key] = value;
6854  }
6855}
6856
6857
6858/***/ },
6859
6860/***/ 45093
6861(module) {
6862
6863"use strict";
6864
6865module.exports = Info;
6866var proto = Info.prototype;
6867proto.space = null;
6868proto.attribute = null;
6869proto.property = null;
6870proto.boolean = false;
6871proto.booleanish = false;
6872proto.overloadedBoolean = false;
6873proto.number = false;
6874proto.commaSeparated = false;
6875proto.spaceSeparated = false;
6876proto.commaOrSpaceSeparated = false;
6877proto.mustUseProperty = false;
6878proto.defined = false;
6879function Info(property, attribute) {
6880  this.property = property;
6881  this.attribute = attribute;
6882}
6883
6884
6885/***/ },
6886
6887/***/ 73877
6888(module, __unused_webpack_exports, __webpack_require__) {
6889
6890"use strict";
6891
6892var xtend = __webpack_require__(66243);
6893var Schema = __webpack_require__(38798);
6894module.exports = merge;
6895function merge(definitions) {
6896  var length = definitions.length;
6897  var property = [];
6898  var normal = [];
6899  var index = -1;
6900  var info;
6901  var space;
6902  while (++index < length) {
6903    info = definitions[index];
6904    property.push(info.property);
6905    normal.push(info.normal);
6906    space = info.space;
6907  }
6908  return new Schema(
6909    xtend.apply(null, property),
6910    xtend.apply(null, normal),
6911    space
6912  );
6913}
6914
6915
6916/***/ },
6917
6918/***/ 38798
6919(module) {
6920
6921"use strict";
6922
6923module.exports = Schema;
6924var proto = Schema.prototype;
6925proto.space = null;
6926proto.normal = {};
6927proto.property = {};
6928function Schema(property, normal, space) {
6929  this.property = property;
6930  this.normal = normal;
6931  if (space) {
6932    this.space = space;
6933  }
6934}
6935
6936
6937/***/ },
6938
6939/***/ 62864
6940(__unused_webpack_module, exports) {
6941
6942"use strict";
6943
6944var powers = 0;
6945exports.boolean = increment();
6946exports.booleanish = increment();
6947exports.overloadedBoolean = increment();
6948exports.number = increment();
6949exports.spaceSeparated = increment();
6950exports.commaSeparated = increment();
6951exports.commaOrSpaceSeparated = increment();
6952function increment() {
6953  return Math.pow(2, ++powers);
6954}
6955
6956
6957/***/ },
6958
6959/***/ 47776
6960(module, __unused_webpack_exports, __webpack_require__) {
6961
6962"use strict";
6963
6964var create = __webpack_require__(35897);
6965module.exports = create({
6966  space: "xlink",
6967  transform: xlinkTransform,
6968  properties: {
6969    xLinkActuate: null,
6970    xLinkArcRole: null,
6971    xLinkHref: null,
6972    xLinkRole: null,
6973    xLinkShow: null,
6974    xLinkTitle: null,
6975    xLinkType: null
6976  }
6977});
6978function xlinkTransform(_, prop) {
6979  return "xlink:" + prop.slice(5).toLowerCase();
6980}
6981
6982
6983/***/ },
6984
6985/***/ 86481
6986(module, __unused_webpack_exports, __webpack_require__) {
6987
6988"use strict";
6989
6990var create = __webpack_require__(35897);
6991module.exports = create({
6992  space: "xml",
6993  transform: xmlTransform,
6994  properties: {
6995    xmlLang: null,
6996    xmlBase: null,
6997    xmlSpace: null
6998  }
6999});
7000function xmlTransform(_, prop) {
7001  return "xml:" + prop.slice(3).toLowerCase();
7002}
7003
7004
7005/***/ },
7006
7007/***/ 32738
7008(module, __unused_webpack_exports, __webpack_require__) {
7009
7010"use strict";
7011
7012var create = __webpack_require__(35897);
7013var caseInsensitiveTransform = __webpack_require__(7388);
7014module.exports = create({
7015  space: "xmlns",
7016  attributes: {
7017    xmlnsxlink: "xmlns:xlink"
7018  },
7019  transform: caseInsensitiveTransform,
7020  properties: {
7021    xmlns: null,
7022    xmlnsXLink: null
7023  }
7024});
7025
7026
7027/***/ },
7028
7029/***/ 93695
7030(module) {
7031
7032"use strict";
7033
7034module.exports = normalize;
7035function normalize(value) {
7036  return value.toLowerCase();
7037}
7038
7039
7040/***/ },
7041
7042/***/ 92294
7043(module, __unused_webpack_exports, __webpack_require__) {
7044
7045"use strict";
7046
7047var merge = __webpack_require__(73877);
7048var xlink = __webpack_require__(47776);
7049var xml = __webpack_require__(86481);
7050var xmlns = __webpack_require__(32738);
7051var aria = __webpack_require__(24607);
7052var svg = __webpack_require__(9242);
7053module.exports = merge([xml, xlink, xmlns, aria, svg]);
7054
7055
7056/***/ },
7057
7058/***/ 88599
7059(__unused_webpack_module, exports) {
7060
7061"use strict";
7062var __webpack_unused_export__;
7063
7064/** @license React v17.0.2
7065 * react-is.production.min.js
7066 *
7067 * Copyright (c) Facebook, Inc. and its affiliates.
7068 *
7069 * This source code is licensed under the MIT license found in the
7070 * LICENSE file in the root directory of this source tree.
7071 */
7072var b = 60103, c = 60106, d = 60107, e = 60108, f = 60114, g = 60109, h = 60110, k = 60112, l = 60113, m = 60120, n = 60115, p = 60116, q = 60121, r = 60122, u = 60117, v = 60129, w = 60131;
7073if ("function" === typeof Symbol && Symbol.for) {
7074  var x = Symbol.for;
7075  b = x("react.element");
7076  c = x("react.portal");
7077  d = x("react.fragment");
7078  e = x("react.strict_mode");
7079  f = x("react.profiler");
7080  g = x("react.provider");
7081  h = x("react.context");
7082  k = x("react.forward_ref");
7083  l = x("react.suspense");
7084  m = x("react.suspense_list");
7085  n = x("react.memo");
7086  p = x("react.lazy");
7087  q = x("react.block");
7088  r = x("react.server.block");
7089  u = x("react.fundamental");
7090  v = x("react.debug_trace_mode");
7091  w = x("react.legacy_hidden");
7092}
7093function y(a) {
7094  if ("object" === typeof a && null !== a) {
7095    var t = a.$$typeof;
7096    switch (t) {
7097      case b:
7098        switch (a = a.type, a) {
7099          case d:
7100          case f:
7101          case e:
7102          case l:
7103          case m:
7104            return a;
7105          default:
7106            switch (a = a && a.$$typeof, a) {
7107              case h:
7108              case k:
7109              case p:
7110              case n:
7111              case g:
7112                return a;
7113              default:
7114                return t;
7115            }
7116        }
7117      case c:
7118        return t;
7119    }
7120  }
7121}
7122var z = g, A = b, B = k, C = d, D = p, E = n, F = c, G = f, H = e, I = l;
7123__webpack_unused_export__ = h;
7124__webpack_unused_export__ = z;
7125__webpack_unused_export__ = A;
7126__webpack_unused_export__ = B;
7127__webpack_unused_export__ = C;
7128__webpack_unused_export__ = D;
7129__webpack_unused_export__ = E;
7130__webpack_unused_export__ = F;
7131__webpack_unused_export__ = G;
7132__webpack_unused_export__ = H;
7133__webpack_unused_export__ = I;
7134__webpack_unused_export__ = function() {
7135  return false;
7136};
7137__webpack_unused_export__ = function() {
7138  return false;
7139};
7140__webpack_unused_export__ = function(a) {
7141  return y(a) === h;
7142};
7143__webpack_unused_export__ = function(a) {
7144  return y(a) === g;
7145};
7146__webpack_unused_export__ = function(a) {
7147  return "object" === typeof a && null !== a && a.$$typeof === b;
7148};
7149__webpack_unused_export__ = function(a) {
7150  return y(a) === k;
7151};
7152__webpack_unused_export__ = function(a) {
7153  return y(a) === d;
7154};
7155__webpack_unused_export__ = function(a) {
7156  return y(a) === p;
7157};
7158__webpack_unused_export__ = function(a) {
7159  return y(a) === n;
7160};
7161__webpack_unused_export__ = function(a) {
7162  return y(a) === c;
7163};
7164__webpack_unused_export__ = function(a) {
7165  return y(a) === f;
7166};
7167__webpack_unused_export__ = function(a) {
7168  return y(a) === e;
7169};
7170__webpack_unused_export__ = function(a) {
7171  return y(a) === l;
7172};
7173exports.isValidElementType = function(a) {
7174  return "string" === typeof a || "function" === typeof a || a === d || a === f || a === v || a === e || a === l || a === m || a === w || "object" === typeof a && null !== a && (a.$$typeof === p || a.$$typeof === n || a.$$typeof === g || a.$$typeof === h || a.$$typeof === k || a.$$typeof === u || a.$$typeof === q || a[0] === r) ? true : false;
7175};
7176__webpack_unused_export__ = y;
7177
7178
7179/***/ },
7180
7181/***/ 30771
7182(module, __unused_webpack_exports, __webpack_require__) {
7183
7184"use strict";
7185
7186if (true) {
7187  module.exports = __webpack_require__(88599);
7188} else // removed by dead control flow
7189{}
7190
7191
7192/***/ },
7193
7194/***/ 64399
7195(module, __unused_webpack_exports, __webpack_require__) {
7196
7197"use strict";
7198
7199module.exports = parse;
7200var fromMarkdown = __webpack_require__(33135);
7201function parse(options) {
7202  var self = this;
7203  this.Parser = parse2;
7204  function parse2(doc) {
7205    return fromMarkdown(
7206      doc,
7207      Object.assign({}, self.data("settings"), options, {
7208        // Note: these options are not in the readme.
7209        // The goal is for them to be set by plugins on `data` instead of being
7210        // passed by users.
7211        extensions: self.data("micromarkExtensions") || [],
7212        mdastExtensions: self.data("fromMarkdownExtensions") || []
7213      })
7214    );
7215  }
7216}
7217
7218
7219/***/ },
7220
7221/***/ 13854
7222(__unused_webpack_module, exports, __webpack_require__) {
7223
7224"use strict";
7225var __webpack_unused_export__;
7226
7227const React = __webpack_require__(29633);
7228const ReactIs = __webpack_require__(30771);
7229const svg = __webpack_require__(92294);
7230const find = __webpack_require__(8521);
7231const hastToReact = __webpack_require__(60308);
7232const spaces = __webpack_require__(97111);
7233const commas = __webpack_require__(42812);
7234const style = __webpack_require__(525);
7235__webpack_unused_export__ = toReact;
7236exports.i = childrenToReact;
7237const own = {}.hasOwnProperty;
7238const tableElements = /* @__PURE__ */ new Set(["table", "thead", "tbody", "tfoot", "tr"]);
7239function childrenToReact(context, node) {
7240  const children = [];
7241  let childIndex = -1;
7242  let child;
7243  while (++childIndex < node.children.length) {
7244    child = node.children[childIndex];
7245    if (child.type === "element") {
7246      children.push(toReact(context, child, childIndex, node));
7247    } else if (child.type === "text") {
7248      if (node.type !== "element" || !tableElements.has(node.tagName) || child.value !== "\n") {
7249        children.push(child.value);
7250      }
7251    } else if (child.type === "raw" && !context.options.skipHtml) {
7252      children.push(child.value);
7253    }
7254  }
7255  return children;
7256}
7257function toReact(context, node, index, parent) {
7258  const options = context.options;
7259  const parentSchema = context.schema;
7260  const name = node.tagName;
7261  const properties = {};
7262  let schema = parentSchema;
7263  let property;
7264  if (parentSchema.space === "html" && name === "svg") {
7265    schema = svg;
7266    context.schema = schema;
7267  }
7268  if (node.properties) {
7269    for (property in node.properties) {
7270      if (own.call(node.properties, property)) {
7271        addProperty(properties, property, node.properties[property], context);
7272      }
7273    }
7274  }
7275  if (name === "ol" || name === "ul") {
7276    context.listDepth++;
7277  }
7278  const children = childrenToReact(context, node);
7279  if (name === "ol" || name === "ul") {
7280    context.listDepth--;
7281  }
7282  context.schema = parentSchema;
7283  const position = node.position || {
7284    start: { line: null, column: null, offset: null },
7285    end: { line: null, column: null, offset: null }
7286  };
7287  const component = options.components && own.call(options.components, name) ? options.components[name] : name;
7288  const basic = typeof component === "string" || component === React.Fragment;
7289  if (!ReactIs.isValidElementType(component)) {
7290    throw new TypeError(
7291      `Component for name \`${name}\` not defined or is not renderable`
7292    );
7293  }
7294  properties.key = [
7295    name,
7296    position.start.line,
7297    position.start.column,
7298    index
7299  ].join("-");
7300  if (name === "a" && options.linkTarget) {
7301    properties.target = typeof options.linkTarget === "function" ? (
7302      // @ts-expect-error assume `href` is a string
7303      options.linkTarget(properties.href, node.children, properties.title)
7304    ) : options.linkTarget;
7305  }
7306  if (name === "a" && options.transformLinkUri) {
7307    properties.href = options.transformLinkUri(
7308      // @ts-expect-error assume `href` is a string
7309      properties.href,
7310      node.children,
7311      properties.title
7312    );
7313  }
7314  if (!basic && name === "code" && parent.type === "element" && parent.tagName !== "pre") {
7315    properties.inline = true;
7316  }
7317  if (!basic && (name === "h1" || name === "h2" || name === "h3" || name === "h4" || name === "h5" || name === "h6")) {
7318    properties.level = parseInt(name.charAt(1), 10);
7319  }
7320  if (name === "img" && options.transformImageUri) {
7321    properties.src = options.transformImageUri(
7322      // @ts-expect-error assume `src` is a string
7323      properties.src,
7324      properties.alt,
7325      properties.title
7326    );
7327  }
7328  if (!basic && name === "li" && parent.type === "element") {
7329    const input = getInputElement(node);
7330    properties.checked = input && input.properties ? Boolean(input.properties.checked) : null;
7331    properties.index = getElementsBeforeCount(parent, node);
7332    properties.ordered = parent.tagName === "ol";
7333  }
7334  if (!basic && (name === "ol" || name === "ul")) {
7335    properties.ordered = name === "ol";
7336    properties.depth = context.listDepth;
7337  }
7338  if (name === "td" || name === "th") {
7339    if (properties.align) {
7340      if (!properties.style) properties.style = {};
7341      properties.style.textAlign = properties.align;
7342      delete properties.align;
7343    }
7344    if (!basic) {
7345      properties.isHeader = name === "th";
7346    }
7347  }
7348  if (!basic && name === "tr" && parent.type === "element") {
7349    properties.isHeader = Boolean(parent.tagName === "thead");
7350  }
7351  if (options.sourcePos) {
7352    properties["data-sourcepos"] = flattenPosition(position);
7353  }
7354  if (!basic && options.rawSourcePos) {
7355    properties.sourcePosition = node.position;
7356  }
7357  if (!basic && options.includeElementIndex) {
7358    properties.index = getElementsBeforeCount(parent, node);
7359    properties.siblingCount = getElementsBeforeCount(parent);
7360  }
7361  if (!basic) {
7362    properties.node = node;
7363  }
7364  return children.length > 0 ? React.createElement(component, properties, children) : React.createElement(component, properties);
7365}
7366function getInputElement(node) {
7367  let index = -1;
7368  while (++index < node.children.length) {
7369    const child = node.children[index];
7370    if (child.type === "element" && child.tagName === "input") {
7371      return child;
7372    }
7373  }
7374  return null;
7375}
7376function getElementsBeforeCount(parent, node) {
7377  let index = -1;
7378  let count = 0;
7379  while (++index < parent.children.length) {
7380    if (parent.children[index] === node) break;
7381    if (parent.children[index].type === "element") count++;
7382  }
7383  return count;
7384}
7385function addProperty(props, prop, value, ctx) {
7386  const info = find(ctx.schema, prop);
7387  let result = value;
7388  if (result === null || result === void 0 || result !== result) {
7389    return;
7390  }
7391  if (result && typeof result === "object" && "length" in result) {
7392    result = (info.commaSeparated ? commas : spaces).stringify(result);
7393  }
7394  if (info.property === "style" && typeof result === "string") {
7395    result = parseStyle(result);
7396  }
7397  if (info.space && info.property) {
7398    props[own.call(hastToReact, info.property) ? hastToReact[info.property] : info.property] = result;
7399  } else if (info.attribute) {
7400    props[info.attribute] = result;
7401  }
7402}
7403function parseStyle(value) {
7404  const result = {};
7405  try {
7406    style(value, iterator);
7407  } catch (_) {
7408  }
7409  return result;
7410  function iterator(name, v) {
7411    const k = name.slice(0, 4) === "-ms-" ? `ms-${name.slice(4)}` : name;
7412    result[k.replace(/-([a-z])/g, styleReplacer)] = v;
7413  }
7414}
7415function styleReplacer(_, $1) {
7416  return $1.toUpperCase();
7417}
7418function flattenPosition(pos) {
7419  return [
7420    pos.start.line,
7421    ":",
7422    pos.start.column,
7423    "-",
7424    pos.end.line,
7425    ":",
7426    pos.end.column
7427  ].map((d) => String(d)).join("");
7428}
7429
7430
7431/***/ },
7432
7433/***/ 3133
7434(module, __unused_webpack_exports, __webpack_require__) {
7435
7436"use strict";
7437
7438const React = __webpack_require__(29633);
7439const vfile = __webpack_require__(59578);
7440const unified = __webpack_require__(36124);
7441const parse = __webpack_require__(64399);
7442const remarkRehype = __webpack_require__(47211);
7443const PropTypes = __webpack_require__(86627);
7444const html = __webpack_require__(48555);
7445const filter = __webpack_require__(41658);
7446const uriTransformer = __webpack_require__(24708);
7447const childrenToReact = (__webpack_require__(13854)/* .hastChildrenToReact */ .i);
7448module.exports = ReactMarkdown;
7449const own = {}.hasOwnProperty;
7450const changelog = "https://github.com/remarkjs/react-markdown/blob/main/changelog.md";
7451const deprecated = {
7452  renderers: { to: "components", id: "change-renderers-to-components" },
7453  astPlugins: { id: "remove-buggy-html-in-markdown-parser" },
7454  allowDangerousHtml: { id: "remove-buggy-html-in-markdown-parser" },
7455  escapeHtml: { id: "remove-buggy-html-in-markdown-parser" },
7456  source: { to: "children", id: "change-source-to-children" },
7457  allowNode: {
7458    to: "allowElement",
7459    id: "replace-allownode-allowedtypes-and-disallowedtypes"
7460  },
7461  allowedTypes: {
7462    to: "allowedElements",
7463    id: "replace-allownode-allowedtypes-and-disallowedtypes"
7464  },
7465  disallowedTypes: {
7466    to: "disallowedElements",
7467    id: "replace-allownode-allowedtypes-and-disallowedtypes"
7468  },
7469  includeNodeIndex: {
7470    to: "includeElementIndex",
7471    id: "change-includenodeindex-to-includeelementindex"
7472  }
7473};
7474function ReactMarkdown(options) {
7475  for (const key in deprecated) {
7476    if (own.call(deprecated, key) && own.call(options, key)) {
7477      const deprecation = deprecated[key];
7478      console.warn(
7479        `[react-markdown] Warning: please ${deprecation.to ? `use \`${deprecation.to}\` instead of` : "remove"} \`${key}\` (see <${changelog}#${deprecation.id}> for more info)`
7480      );
7481      delete deprecated[key];
7482    }
7483  }
7484  const processor = unified().use(parse).use(options.remarkPlugins || options.plugins || []).use(remarkRehype, { allowDangerousHtml: true }).use(options.rehypePlugins || []).use(filter, options);
7485  let file;
7486  if (typeof options.children === "string") {
7487    file = vfile(options.children);
7488  } else {
7489    if (options.children !== void 0 && options.children !== null) {
7490      console.warn(
7491        `[react-markdown] Warning: please pass a string as \`children\` (not: \`${options.children}\`)`
7492      );
7493    }
7494    file = vfile();
7495  }
7496  const hastNode = processor.runSync(processor.parse(file), file);
7497  if (hastNode.type !== "root") {
7498    throw new TypeError("Expected a `root` node");
7499  }
7500  let result = React.createElement(
7501    React.Fragment,
7502    {},
7503    childrenToReact({ options, schema: html, listDepth: 0 }, hastNode)
7504  );
7505  if (options.className) {
7506    result = React.createElement("div", { className: options.className }, result);
7507  }
7508  return result;
7509}
7510ReactMarkdown.defaultProps = { transformLinkUri: uriTransformer };
7511ReactMarkdown.propTypes = {
7512  // Core options:
7513  children: PropTypes.string,
7514  // Layout options:
7515  className: PropTypes.string,
7516  // Filter options:
7517  allowElement: PropTypes.func,
7518  allowedElements: PropTypes.arrayOf(PropTypes.string),
7519  disallowedElements: PropTypes.arrayOf(PropTypes.string),
7520  unwrapDisallowed: PropTypes.bool,
7521  // Plugin options:
7522  // type-coverage:ignore-next-line
7523  remarkPlugins: PropTypes.arrayOf(
7524    PropTypes.oneOfType([
7525      PropTypes.object,
7526      PropTypes.func,
7527      PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.object, PropTypes.func
7527]))
7528    ])
7529  ),
7530  // type-coverage:ignore-next-line
7531  rehypePlugins: PropTypes.arrayOf(
7532    PropTypes.oneOfType([
7533      PropTypes.object,
7534      PropTypes.func,
7535      PropTypes.arrayOf(PropTypes.oneOfType([PropTypes.object, PropTypes.func]))
7536    ])
7537  ),
7538  // Transform options:
7539  sourcePos: PropTypes.bool,
7540  rawSourcePos: PropTypes.bool,
7541  skipHtml: PropTypes.bool,
7542  includeElementIndex: PropTypes.bool,
7543  transformLinkUri: PropTypes.oneOfType([PropTypes.func, PropTypes.bool]),
7544  linkTarget: PropTypes.oneOfType([PropTypes.func, PropTypes.string]),
7545  transformImageUri: PropTypes.func,
7546  components: PropTypes.object
7547};
7548ReactMarkdown.uriTransformer = uriTransformer;
7549
7550
7551/***/ },
7552
7553/***/ 41658
7554(module, __unused_webpack_exports, __webpack_require__) {
7555
7556const visit = __webpack_require__(70056);
7557module.exports = rehypeFilter;
7558function rehypeFilter(options) {
7559  if (options.allowedElements && options.disallowedElements) {
7560    throw new TypeError(
7561      "Only one of `allowedElements` and `disallowedElements` should be defined"
7562    );
7563  }
7564  if (options.allowedElements || options.disallowedElements || options.allowElement) {
7565    return (tree) => {
7566      const node = (
7567        /** @type {Root} */
7568        tree
7569      );
7570      visit(node, "element", onelement);
7571    };
7572  }
7573  function onelement(node_, index, parent_) {
7574    const node = (
7575      /** @type {Element} */
7576      node_
7577    );
7578    const parent = (
7579      /** @type {Element|Root} */
7580      parent_
7581    );
7582    let remove;
7583    if (options.allowedElements) {
7584      remove = !options.allowedElements.includes(node.tagName);
7585    } else if (options.disallowedElements) {
7586      remove = options.disallowedElements.includes(node.tagName);
7587    }
7588    if (!remove && options.allowElement && typeof index === "number") {
7589      remove = !options.allowElement(node, index, parent);
7590    }
7591    if (remove && typeof index === "number") {
7592      if (options.unwrapDisallowed && node.children) {
7593        parent.children.splice(index, 1, ...node.children);
7594      } else {
7595        parent.children.splice(index, 1);
7596      }
7597      return index;
7598    }
7599    return void 0;
7600  }
7601}
7602
7603
7604/***/ },
7605
7606/***/ 24708
7607(module) {
7608
7609const protocols = ["http", "https", "mailto", "tel"];
7610module.exports = uriTransformer;
7611function uriTransformer(uri) {
7612  const url = (uri || "").trim();
7613  const first = url.charAt(0);
7614  if (first === "#" || first === "/") {
7615    return url;
7616  }
7617  const colon = url.indexOf(":");
7618  if (colon === -1) {
7619    return url;
7620  }
7621  let index = -1;
7622  while (++index < protocols.length) {
7623    const protocol = protocols[index];
7624    if (colon === protocol.length && url.slice(0, protocol.length).toLowerCase() === protocol) {
7625      return url;
7626    }
7627  }
7628  index = url.indexOf("?");
7629  if (index !== -1 && colon > index) {
7630    return url;
7631  }
7632  index = url.indexOf("#");
7633  if (index !== -1 && colon > index) {
7634    return url;
7635  }
7636  return "javascript:void(0)";
7637}
7638
7639
7640/***/ },
7641
7642/***/ 47211
7643(module, __unused_webpack_exports, __webpack_require__) {
7644
7645"use strict";
7646
7647var mdast2hast = __webpack_require__(34599);
7648module.exports = remark2rehype;
7649function remark2rehype(destination, options) {
7650  if (destination && !destination.process) {
7651    options = destination;
7652    destination = null;
7653  }
7654  return destination ? bridge(destination, options) : mutate(options);
7655}
7656function bridge(destination, options) {
7657  return transformer;
7658  function transformer(node, file, next) {
7659    destination.run(mdast2hast(node, options), file, done);
7660    function done(error) {
7661      next(error);
7662    }
7663  }
7664}
7665function mutate(options) {
7666  return transformer;
7667  function transformer(node) {
7668    return mdast2hast(node, options);
7669  }
7670}
7671
7672
7673/***/ },
7674
7675/***/ 34599
7676(module, __unused_webpack_exports, __webpack_require__) {
7677
7678"use strict";
7679
7680module.exports = __webpack_require__(67223);
7681
7682
7683/***/ },
7684
7685/***/ 76300
7686(module, __unused_webpack_exports, __webpack_require__) {
7687
7688"use strict";
7689
7690module.exports = all;
7691var one = __webpack_require__(78095);
7692function all(h, parent) {
7693  var nodes = parent.children || [];
7694  var length = nodes.length;
7695  var values = [];
7696  var index = -1;
7697  var result;
7698  var head;
7699  while (++index < length) {
7700    result = one(h, nodes[index], parent);
7701    if (result) {
7702      if (index && nodes[index - 1].type === "break") {
7703        if (result.value) {
7704          result.value = result.value.replace(/^\s+/, "");
7705        }
7706        head = result.children && result.children[0];
7707        if (head && head.value) {
7708          head.value = head.value.replace(/^\s+/, "");
7709        }
7710      }
7711      values = values.concat(result);
7712    }
7713  }
7714  return values;
7715}
7716
7717
7718/***/ },
7719
7720/***/ 61052
7721(module, __unused_webpack_exports, __webpack_require__) {
7722
7723"use strict";
7724
7725module.exports = generateFootnotes;
7726var thematicBreak = __webpack_require__(33272);
7727var list = __webpack_require__(35401);
7728var wrap = __webpack_require__(55215);
7729function generateFootnotes(h) {
7730  var footnoteById = h.footnoteById;
7731  var footnoteOrder = h.footnoteOrder;
7732  var length = footnoteOrder.length;
7733  var index = -1;
7734  var listItems = [];
7735  var def;
7736  var backReference;
7737  var content;
7738  var tail;
7739  while (++index < length) {
7740    def = footnoteById[footnoteOrder[index].toUpperCase()];
7741    if (!def) {
7742      continue;
7743    }
7744    content = def.children.concat();
7745    tail = content[content.length - 1];
7746    backReference = {
7747      type: "link",
7748      url: "#fnref-" + def.identifier,
7749      data: { hProperties: { className: ["footnote-backref"] } },
7750      children: [{ type: "text", value: "\u21A9" }]
7751    };
7752    if (!tail || tail.type !== "paragraph") {
7753      tail = { type: "paragraph", children: [] };
7754      content.push(tail);
7755    }
7756    tail.children.push(backReference);
7757    listItems.push({
7758      type: "listItem",
7759      data: { hProperties: { id: "fn-" + def.identifier } },
7760      children: content,
7761      position: def.position
7762    });
7763  }
7764  if (listItems.length === 0) {
7765    return null;
7766  }
7767  return h(
7768    null,
7769    "div",
7770    { className: ["footnotes"] },
7771    wrap(
7772      [
7773        thematicBreak(h),
7774        list(h, { type: "list", ordered: true, children: listItems })
7775      ],
7776      true
7777    )
7778  );
7779}
7780
7781
7782/***/ },
7783
7784/***/ 90810
7785(module, __unused_webpack_exports, __webpack_require__) {
7786
7787"use strict";
7788
7789module.exports = blockquote;
7790var wrap = __webpack_require__(55215);
7791var all = __webpack_require__(76300);
7792function blockquote(h, node) {
7793  return h(node, "blockquote", wrap(all(h, node), true));
7794}
7795
7796
7797/***/ },
7798
7799/***/ 434
7800(module, __unused_webpack_exports, __webpack_require__) {
7801
7802"use strict";
7803
7804module.exports = hardBreak;
7805var u = __webpack_require__(2341);
7806function hardBreak(h, node) {
7807  return [h(node, "br"), u("text", "\n")];
7808}
7809
7810
7811/***/ },
7812
7813/***/ 94356
7814(module, __unused_webpack_exports, __webpack_require__) {
7815
7816"use strict";
7817
7818module.exports = code;
7819var u = __webpack_require__(2341);
7820function code(h, node) {
7821  var value = node.value ? node.value + "\n" : "";
7822  var lang = node.lang && node.lang.match(/^[^ \t]+(?=[ \t]|$)/);
7823  var props = {};
7824  var code2;
7825  if (lang) {
7826    props.className = ["language-" + lang];
7827  }
7828  code2 = h(node, "code", props, [u("text", value)]);
7829  if (node.meta) {
7830    code2.data = { meta: node.meta };
7831  }
7832  return h(node.position, "pre", [code2]);
7833}
7834
7835
7836/***/ },
7837
7838/***/ 10366
7839(module, __unused_webpack_exports, __webpack_require__) {
7840
7841"use strict";
7842
7843module.exports = strikethrough;
7844var all = __webpack_require__(76300);
7845function strikethrough(h, node) {
7846  return h(node, "del", all(h, node));
7847}
7848
7849
7850/***/ },
7851
7852/***/ 27479
7853(module, __unused_webpack_exports, __webpack_require__) {
7854
7855"use strict";
7856
7857module.exports = emphasis;
7858var all = __webpack_require__(76300);
7859function emphasis(h, node) {
7860  return h(node, "em", all(h, node));
7861}
7862
7863
7864/***/ },
7865
7866/***/ 64873
7867(module, __unused_webpack_exports, __webpack_require__) {
7868
7869"use strict";
7870
7871module.exports = footnoteReference;
7872var u = __webpack_require__(2341);
7873function footnoteReference(h, node) {
7874  var footnoteOrder = h.footnoteOrder;
7875  var identifier = String(node.identifier);
7876  if (footnoteOrder.indexOf(identifier) === -1) {
7877    footnoteOrder.push(identifier);
7878  }
7879  return h(node.position, "sup", { id: "fnref-" + identifier }, [
7880    h(node, "a", { href: "#fn-" + identifier, className: ["footnote-ref"] }, [
7881      u("text", node.label || identifier)
7882    ])
7883  ]);
7884}
7885
7886
7887/***/ },
7888
7889/***/ 89657
7890(module, __unused_webpack_exports, __webpack_require__) {
7891
7892"use strict";
7893
7894module.exports = footnote;
7895var footnoteReference = __webpack_require__(64873);
7896function footnote(h, node) {
7897  var footnoteById = h.footnoteById;
7898  var footnoteOrder = h.footnoteOrder;
7899  var identifier = 1;
7900  while (identifier in footnoteById) {
7901    identifier++;
7902  }
7903  identifier = String(identifier);
7904  footnoteOrder.push(identifier);
7905  footnoteById[identifier] = {
7906    type: "footnoteDefinition",
7907    identifier,
7908    children: [{ type: "paragraph", children: node.children }],
7909    position: node.position
7910  };
7911  return footnoteReference(h, {
7912    type: "footnoteReference",
7913    identifier,
7914    position: node.position
7915  });
7916}
7917
7918
7919/***/ },
7920
7921/***/ 9915
7922(module, __unused_webpack_exports, __webpack_require__) {
7923
7924"use strict";
7925
7926module.exports = heading;
7927var all = __webpack_require__(76300);
7928function heading(h, node) {
7929  return h(node, "h" + node.depth, all(h, node));
7930}
7931
7932
7933/***/ },
7934
7935/***/ 6900
7936(module, __unused_webpack_exports, __webpack_require__) {
7937
7938"use strict";
7939
7940module.exports = html;
7941var u = __webpack_require__(2341);
7942function html(h, node) {
7943  return h.dangerous ? h.augment(node, u("raw", node.value)) : null;
7944}
7945
7946
7947/***/ },
7948
7949/***/ 19611
7950(module, __unused_webpack_exports, __webpack_require__) {
7951
7952"use strict";
7953
7954module.exports = imageReference;
7955var normalize = __webpack_require__(14908);
7956var revert = __webpack_require__(70461);
7957function imageReference(h, node) {
7958  var def = h.definition(node.identifier);
7959  var props;
7960  if (!def) {
7961    return revert(h, node);
7962  }
7963  props = { src: normalize(def.url || ""), alt: node.alt };
7964  if (def.title !== null && def.title !== void 0) {
7965    props.title = def.title;
7966  }
7967  return h(node, "img", props);
7968}
7969
7970
7971/***/ },
7972
7973/***/ 59140
7974(module, __unused_webpack_exports, __webpack_require__) {
7975
7976"use strict";
7977
7978var normalize = __webpack_require__(14908);
7979module.exports = image;
7980function image(h, node) {
7981  var props = { src: normalize(node.url), alt: node.alt };
7982  if (node.title !== null && node.title !== void 0) {
7983    props.title = node.title;
7984  }
7985  return h(node, "img", props);
7986}
7987
7988
7989/***/ },
7990
7991/***/ 36737
7992(module, __unused_webpack_exports, __webpack_require__) {
7993
7994"use strict";
7995
7996module.exports = {
7997  blockquote: __webpack_require__(90810),
7998  break: __webpack_require__(434),
7999  code: __webpack_require__(94356),
8000  delete: __webpack_require__(10366),
8001  emphasis: __webpack_require__(27479),
8002  footnoteReference: __webpack_require__(64873),
8003  footnote: __webpack_require__(89657),
8004  heading: __webpack_require__(9915),
8005  html: __webpack_require__(6900),
8006  imageReference: __webpack_require__(19611),
8007  image: __webpack_require__(59140),
8008  inlineCode: __webpack_require__(54216),
8009  linkReference: __webpack_require__(3045),
8010  link: __webpack_require__(84061),
8011  listItem: __webpack_require__(62925),
8012  list: __webpack_require__(35401),
8013  paragraph: __webpack_require__(75439),
8014  root: __webpack_require__(17801),
8015  strong: __webpack_require__(91286),
8016  table: __webpack_require__(42353),
8017  text: __webpack_require__(82714),
8018  thematicBreak: __webpack_require__(33272),
8019  toml: ignore,
8020  yaml: ignore,
8021  definition: ignore,
8022  footnoteDefinition: ignore
8023};
8024function ignore() {
8025  return null;
8026}
8027
8028
8029/***/ },
8030
8031/***/ 54216
8032(module, __unused_webpack_exports, __webpack_require__) {
8033
8034"use strict";
8035
8036module.exports = inlineCode;
8037var u = __webpack_require__(2341);
8038function inlineCode(h, node) {
8039  var value = node.value.replace(/\r?\n|\r/g, " ");
8040  return h(node, "code", [u("text", value)]);
8041}
8042
8043
8044/***/ },
8045
8046/***/ 3045
8047(module, __unused_webpack_exports, __webpack_require__) {
8048
8049"use strict";
8050
8051module.exports = linkReference;
8052var normalize = __webpack_require__(14908);
8053var revert = __webpack_require__(70461);
8054var all = __webpack_require__(76300);
8055function linkReference(h, node) {
8056  var def = h.definition(node.identifier);
8057  var props;
8058  if (!def) {
8059    return revert(h, node);
8060  }
8061  props = { href: normalize(def.url || "") };
8062  if (def.title !== null && def.title !== void 0) {
8063    props.title = def.title;
8064  }
8065  return h(node, "a", props, all(h, node));
8066}
8067
8068
8069/***/ },
8070
8071/***/ 84061
8072(module, __unused_webpack_exports, __webpack_require__) {
8073
8074"use strict";
8075
8076var normalize = __webpack_require__(14908);
8077var all = __webpack_require__(76300);
8078module.exports = link;
8079function link(h, node) {
8080  var props = { href: normalize(node.url) };
8081  if (node.title !== null && node.title !== void 0) {
8082    props.title = node.title;
8083  }
8084  return h(node, "a", props, all(h, node));
8085}
8086
8087
8088/***/ },
8089
8090/***/ 62925
8091(module, __unused_webpack_exports, __webpack_require__) {
8092
8093"use strict";
8094
8095module.exports = listItem;
8096var u = __webpack_require__(2341);
8097var all = __webpack_require__(76300);
8098function listItem(h, node, parent) {
8099  var result = all(h, node);
8100  var head = result[0];
8101  var loose = parent ? listLoose(parent) : listItemLoose(node);
8102  var props = {};
8103  var wrapped = [];
8104  var length;
8105  var index;
8106  var child;
8107  if (typeof node.checked === "boolean") {
8108    if (!head || head.tagName !== "p") {
8109      head = h(null, "p", []);
8110      result.unshift(head);
8111    }
8112    if (head.children.length > 0) {
8113      head.children.unshift(u("text", " "));
8114    }
8115    head.children.unshift(
8116      h(null, "input", {
8117        type: "checkbox",
8118        checked: node.checked,
8119        disabled: true
8120      })
8121    );
8122    props.className = ["task-list-item"];
8123  }
8124  length = result.length;
8125  index = -1;
8126  while (++index < length) {
8127    child = result[index];
8128    if (loose || index !== 0 || child.tagName !== "p") {
8129      wrapped.push(u("text", "\n"));
8130    }
8131    if (child.tagName === "p" && !loose) {
8132      wrapped = wrapped.concat(child.children);
8133    } else {
8134      wrapped.push(child);
8135    }
8136  }
8137  if (length && (loose || child.tagName !== "p")) {
8138    wrapped.push(u("text", "\n"));
8139  }
8140  return h(node, "li", props, wrapped);
8141}
8142function listLoose(node) {
8143  var loose = node.spread;
8144  var children = node.children;
8145  var length = children.length;
8146  var index = -1;
8147  while (!loose && ++index < length) {
8148    loose = listItemLoose(children[index]);
8149  }
8150  return loose;
8151}
8152function listItemLoose(node) {
8153  var spread = node.spread;
8154  return spread === void 0 || spread === null ? node.children.length > 1 : spread;
8155}
8156
8157
8158/***/ },
8159
8160/***/ 35401
8161(module, __unused_webpack_exports, __webpack_require__) {
8162
8163"use strict";
8164
8165module.exports = list;
8166var wrap = __webpack_require__(55215);
8167var all = __webpack_require__(76300);
8168function list(h, node) {
8169  var props = {};
8170  var name = node.ordered ? "ol" : "ul";
8171  var items;
8172  var index = -1;
8173  var length;
8174  if (typeof node.start === "number" && node.start !== 1) {
8175    props.start = node.start;
8176  }
8177  items = all(h, node);
8178  length = items.length;
8179  while (++index < length) {
8180    if (items[index].properties.className && items[index].properties.className.indexOf("task-list-item") !== -1) {
8181      props.className = ["contains-task-list"];
8182      break;
8183    }
8184  }
8185  return h(node, name, props, wrap(items, true));
8186}
8187
8188
8189/***/ },
8190
8191/***/ 75439
8192(module, __unused_webpack_exports, __webpack_require__) {
8193
8194"use strict";
8195
8196module.exports = paragraph;
8197var all = __webpack_require__(76300);
8198function paragraph(h, node) {
8199  return h(node, "p", all(h, node));
8200}
8201
8202
8203/***/ },
8204
8205/***/ 17801
8206(module, __unused_webpack_exports, __webpack_require__) {
8207
8208"use strict";
8209
8210module.exports = root;
8211var u = __webpack_require__(2341);
8212var wrap = __webpack_require__(55215);
8213var all = __webpack_require__(76300);
8214function root(h, node) {
8215  return h.augment(node, u("root", wrap(all(h, node))));
8216}
8217
8218
8219/***/ },
8220
8221/***/ 91286
8222(module, __unused_webpack_exports, __webpack_require__) {
8223
8224"use strict";
8225
8226module.exports = strong;
8227var all = __webpack_require__(76300);
8228function strong(h, node) {
8229  return h(node, "strong", all(h, node));
8230}
8231
8232
8233/***/ },
8234
8235/***/ 42353
8236(module, __unused_webpack_exports, __webpack_require__) {
8237
8238"use strict";
8239
8240module.exports = table;
8241var position = __webpack_require__(42706);
8242var wrap = __webpack_require__(55215);
8243var all = __webpack_require__(76300);
8244function table(h, node) {
8245  var rows = node.children;
8246  var index = rows.length;
8247  var align = node.align || [];
8248  var alignLength = align.length;
8249  var result = [];
8250  var pos;
8251  var row;
8252  var out;
8252
8253  var name;
8254  var cell;
8255  while (index--) {
8256    row = rows[index].children;
8257    name = index === 0 ? "th" : "td";
8258    pos = alignLength || row.length;
8259    out = [];
8260    while (pos--) {
8261      cell = row[pos];
8262      out[pos] = h(cell, name, { align: align[pos] }, cell ? all(h, cell) : []);
8263    }
8264    result[index] = h(rows[index], "tr", wrap(out, true));
8265  }
8266  return h(
8267    node,
8268    "table",
8269    wrap(
8270      [h(result[0].position, "thead", wrap([result[0]], true))].concat(
8271        result[1] ? h(
8272          {
8273            start: position.start(result[1]),
8274            end: position.end(result[result.length - 1])
8275          },
8276          "tbody",
8277          wrap(result.slice(1), true)
8278        ) : []
8279      ),
8280      true
8281    )
8282  );
8283}
8284
8285
8286/***/ },
8287
8288/***/ 82714
8289(module, __unused_webpack_exports, __webpack_require__) {
8290
8291"use strict";
8292
8293module.exports = text;
8294var u = __webpack_require__(2341);
8295function text(h, node) {
8296  return h.augment(
8297    node,
8298    u("text", String(node.value).replace(/[ \t]*(\r?\n|\r)[ \t]*/g, "$1"))
8299  );
8300}
8301
8302
8303/***/ },
8304
8305/***/ 33272
8306(module) {
8307
8308"use strict";
8309
8310module.exports = thematicBreak;
8311function thematicBreak(h, node) {
8312  return h(node, "hr");
8313}
8314
8315
8316/***/ },
8317
8318/***/ 67223
8319(module, __unused_webpack_exports, __webpack_require__) {
8320
8321"use strict";
8322
8323module.exports = toHast;
8324var u = __webpack_require__(2341);
8325var visit = __webpack_require__(70056);
8326var position = __webpack_require__(42706);
8327var generated = __webpack_require__(28298);
8328var definitions = __webpack_require__(42539);
8329var one = __webpack_require__(78095);
8330var footer = __webpack_require__(61052);
8331var handlers = __webpack_require__(36737);
8332var own = {}.hasOwnProperty;
8333var deprecationWarningIssued = false;
8334function factory(tree, options) {
8335  var settings = options || {};
8336  if (settings.allowDangerousHTML !== void 0 && !deprecationWarningIssued) {
8337    deprecationWarningIssued = true;
8338    console.warn(
8339      "mdast-util-to-hast: deprecation: `allowDangerousHTML` is nonstandard, use `allowDangerousHtml` instead"
8340    );
8341  }
8342  var dangerous = settings.allowDangerousHtml || settings.allowDangerousHTML;
8343  var footnoteById = {};
8344  h.dangerous = dangerous;
8345  h.definition = definitions(tree);
8346  h.footnoteById = footnoteById;
8347  h.footnoteOrder = [];
8348  h.augment = augment;
8349  h.handlers = Object.assign({}, handlers, settings.handlers);
8350  h.unknownHandler = settings.unknownHandler;
8351  h.passThrough = settings.passThrough;
8352  visit(tree, "footnoteDefinition", onfootnotedefinition);
8353  return h;
8354  function augment(left, right) {
8355    var data;
8356    var ctx;
8357    if (left && left.data) {
8358      data = left.data;
8359      if (data.hName) {
8360        if (right.type !== "element") {
8361          right = {
8362            type: "element",
8363            tagName: "",
8364            properties: {},
8365            children: []
8366          };
8367        }
8368        right.tagName = data.hName;
8369      }
8370      if (right.type === "element" && data.hProperties) {
8371        right.properties = Object.assign({}, right.properties, data.hProperties);
8372      }
8373      if (right.children && data.hChildren) {
8374        right.children = data.hChildren;
8375      }
8376    }
8377    ctx = left && left.position ? left : { position: left };
8378    if (!generated(ctx)) {
8379      right.position = {
8380        start: position.start(ctx),
8381        end: position.end(ctx)
8382      };
8383    }
8384    return right;
8385  }
8386  function h(node, tagName, props, children) {
8387    if ((children === void 0 || children === null) && typeof props === "object" && "length" in props) {
8388      children = props;
8389      props = {};
8390    }
8391    return augment(node, {
8392      type: "element",
8393      tagName,
8394      properties: props || {},
8395      children: children || []
8396    });
8397  }
8398  function onfootnotedefinition(definition) {
8399    var id = String(definition.identifier).toUpperCase();
8400    if (!own.call(footnoteById, id)) {
8401      footnoteById[id] = definition;
8402    }
8403  }
8404}
8405function toHast(tree, options) {
8406  var h = factory(tree, options);
8407  var node = one(h, tree);
8408  var foot = footer(h);
8409  if (foot) {
8410    node.children = node.children.concat(u("text", "\n"), foot);
8411  }
8412  return node;
8413}
8414
8415
8416/***/ },
8417
8418/***/ 78095
8419(module, __unused_webpack_exports, __webpack_require__) {
8420
8421"use strict";
8422
8423module.exports = one;
8424var u = __webpack_require__(2341);
8425var all = __webpack_require__(76300);
8426var own = {}.hasOwnProperty;
8427function unknown(h, node) {
8428  if (text(node)) {
8429    return h.augment(node, u("text", node.value));
8430  }
8431  return h(node, "div", all(h, node));
8432}
8433function one(h, node, parent) {
8434  var type = node && node.type;
8435  var fn;
8436  if (!type) {
8437    throw new Error("Expected node, got `" + node + "`");
8438  }
8439  if (own.call(h.handlers, type)) {
8440    fn = h.handlers[type];
8441  } else if (h.passThrough && h.passThrough.indexOf(type) > -1) {
8442    fn = returnNode;
8443  } else {
8444    fn = h.unknownHandler;
8445  }
8446  return (typeof fn === "function" ? fn : unknown)(h, node, parent);
8447}
8448function text(node) {
8449  var data = node.data || {};
8450  if (own.call(data, "hName") || own.call(data, "hProperties") || own.call(data, "hChildren")) {
8451    return false;
8452  }
8453  return "value" in node;
8454}
8455function returnNode(h, node) {
8456  var clone;
8457  if (node.children) {
8458    clone = Object.assign({}, node);
8459    clone.children = all(h, node);
8460    return clone;
8461  }
8462  return node;
8463}
8464
8465
8466/***/ },
8467
8468/***/ 70461
8469(module, __unused_webpack_exports, __webpack_require__) {
8470
8471"use strict";
8472
8473module.exports = revert;
8474var u = __webpack_require__(2341);
8475var all = __webpack_require__(76300);
8476function revert(h, node) {
8477  var subtype = node.referenceType;
8478  var suffix = "]";
8479  var contents;
8480  var head;
8481  var tail;
8482  if (subtype === "collapsed") {
8483    suffix += "[]";
8484  } else if (subtype === "full") {
8485    suffix += "[" + (node.label || node.identifier) + "]";
8486  }
8487  if (node.type === "imageReference") {
8488    return u("text", "![" + node.alt + suffix);
8489  }
8490  contents = all(h, node);
8491  head = contents[0];
8492  if (head && head.type === "text") {
8493    head.value = "[" + head.value;
8494  } else {
8495    contents.unshift(u("text", "["));
8496  }
8497  tail = contents[contents.length - 1];
8498  if (tail && tail.type === "text") {
8499    tail.value += suffix;
8500  } else {
8501    contents.push(u("text", suffix));
8502  }
8503  return contents;
8504}
8505
8506
8507/***/ },
8508
8509/***/ 55215
8510(module, __unused_webpack_exports, __webpack_require__) {
8511
8512"use strict";
8513
8514module.exports = wrap;
8515var u = __webpack_require__(2341);
8516function wrap(nodes, loose) {
8517  var result = [];
8518  var index = -1;
8519  var length = nodes.length;
8520  if (loose) {
8521    result.push(u("text", "\n"));
8522  }
8523  while (++index < length) {
8524    if (index) {
8525      result.push(u("text", "\n"));
8526    }
8527    result.push(nodes[index]);
8528  }
8529  if (loose && nodes.length > 0) {
8530    result.push(u("text", "\n"));
8531  }
8532  return result;
8533}
8534
8535
8536/***/ },
8537
8538/***/ 97111
8539(__unused_webpack_module, exports) {
8540
8541"use strict";
8542
8543exports.parse = parse;
8544exports.stringify = stringify;
8545var empty = "";
8546var space = " ";
8547var whiteSpace = /[ \t\n\r\f]+/g;
8548function parse(value) {
8549  var input = String(value || empty).trim();
8550  return input === empty ? [] : input.split(whiteSpace);
8551}
8552function stringify(values) {
8553  return values.join(space).trim();
8554}
8555
8556
8557/***/ },
8558
8559/***/ 525
8560(module, __unused_webpack_exports, __webpack_require__) {
8561
8562var parse = __webpack_require__(38393);
8563function StyleToObject(style, iterator) {
8564  var output = null;
8565  if (!style || typeof style !== "string") {
8566    return output;
8567  }
8568  var declaration;
8569  var declarations = parse(style);
8570  var hasIterator = typeof iterator === "function";
8571  var property;
8572  var value;
8573  for (var i = 0, len = declarations.length; i < len; i++) {
8574    declaration = declarations[i];
8575    property = declaration.property;
8576    value = declaration.value;
8577    if (hasIterator) {
8578      iterator(property, value, declaration);
8579    } else if (value) {
8580      output || (output = {});
8581      output[property] = value;
8582    }
8583  }
8584  return output;
8585}
8586module.exports = StyleToObject;
8587
8588
8589/***/ },
8590
8591/***/ 92071
8592(module, __unused_webpack_exports, __webpack_require__) {
8593
8594"use strict";
8595
8596var wrap = __webpack_require__(21996);
8597module.exports = trough;
8598trough.wrap = wrap;
8599var slice = [].slice;
8600function trough() {
8601  var fns = [];
8602  var middleware = {};
8603  middleware.run = run;
8604  middleware.use = use;
8605  return middleware;
8606  function run() {
8607    var index = -1;
8608    var input = slice.call(arguments, 0, -1);
8609    var done = arguments[arguments.length - 1];
8610    if (typeof done !== "function") {
8611      throw new Error("Expected function as last argument, not " + done);
8612    }
8613    next.apply(null, [null].concat(input));
8614    function next(err) {
8615      var fn = fns[++index];
8616      var params = slice.call(arguments, 0);
8617      var values = params.slice(1);
8618      var length = input.length;
8619      var pos = -1;
8620      if (err) {
8621        done(err);
8622        return;
8623      }
8624      while (++pos < length) {
8625        if (values[pos] === null || values[pos] === void 0) {
8626          values[pos] = input[pos];
8627        }
8628      }
8629      input = values;
8630      if (fn) {
8631        wrap(fn, next).apply(null, input);
8632      } else {
8633        done.apply(null, [null].concat(input));
8634      }
8635    }
8636  }
8637  function use(fn) {
8638    if (typeof fn !== "function") {
8639      throw new Error("Expected `fn` to be a function, not " + fn);
8640    }
8641    fns.push(fn);
8642    return middleware;
8643  }
8644}
8645
8646
8647/***/ },
8648
8649/***/ 21996
8650(module) {
8651
8652"use strict";
8653
8654var slice = [].slice;
8655module.exports = wrap;
8656function wrap(fn, callback) {
8657  var invoked;
8658  return wrapped;
8659  function wrapped() {
8660    var params = slice.call(arguments, 0);
8661    var callback2 = fn.length > params.length;
8662    var result;
8663    if (callback2) {
8664      params.push(done);
8665    }
8666    try {
8667      result = fn.apply(null, params);
8668    } catch (error) {
8669      if (callback2 && invoked) {
8670        throw error;
8671      }
8672      return done(error);
8673    }
8674    if (!callback2) {
8675      if (result && typeof result.then === "function") {
8676        result.then(then, done);
8677      } else if (result instanceof Error) {
8678        done(result);
8679      } else {
8680        then(result);
8681      }
8682    }
8683  }
8684  function done() {
8685    if (!invoked) {
8686      invoked = true;
8687      callback.apply(null, arguments);
8688    }
8689  }
8690  function then(value) {
8691    done(null, value);
8692  }
8693}
8694
8695
8696/***/ },
8697
8698/***/ 36124
8699(module, __unused_webpack_exports, __webpack_require__) {
8700
8701"use strict";
8702
8703var bail = __webpack_require__(28958);
8704var buffer = __webpack_require__(6543);
8705var extend = __webpack_require__(99558);
8706var plain = __webpack_require__(6201);
8707var trough = __webpack_require__(92071);
8708var vfile = __webpack_require__(59578);
8709module.exports = unified().freeze();
8710var slice = [].slice;
8711var own = {}.hasOwnProperty;
8712var pipeline = trough().use(pipelineParse).use(pipelineRun).use(pipelineStringify);
8713function pipelineParse(p, ctx) {
8714  ctx.tree = p.parse(ctx.file);
8715}
8716function pipelineRun(p, ctx, next) {
8717  p.run(ctx.tree, ctx.file, done);
8718  function done(err, tree, file) {
8719    if (err) {
8720      next(err);
8721    } else {
8722      ctx.tree = tree;
8723      ctx.file = file;
8724      next();
8725    }
8726  }
8727}
8728function pipelineStringify(p, ctx) {
8729  var result = p.stringify(ctx.tree, ctx.file);
8730  var file = ctx.file;
8731  if (result === void 0 || result === null) {
8732  } else if (typeof result === "string" || buffer(result)) {
8733    file.contents = result;
8734  } else {
8735    file.result = result;
8736  }
8737}
8738function unified() {
8739  var attachers = [];
8740  var transformers = trough();
8741  var namespace = {};
8742  var frozen = false;
vendor: 4,678 bytes, lines 8743-8921
8743  var freezeIndex = -1;
8744  processor.data = data;
8745  processor.freeze = freeze;
8746  processor.attachers = attachers;
8747  processor.use = use;
8748  processor.parse = parse;
8749  processor.stringify = stringify;
8750  processor.run = run;
8751  processor.runSync = runSync;
8752  processor.process = process;
8753  processor.processSync = processSync;
8754  return processor;
8755  function processor() {
8756    var destination = unified();
8757    var length = attachers.length;
8758    var index = -1;
8759    while (++index < length) {
8760      destination.use.apply(null, attachers[index]);
8761    }
8762    destination.data(extend(true, {}, namespace));
8763    return destination;
8764  }
8765  function freeze() {
8766    var values;
8767    var plugin;
8768    var options;
8769    var transformer;
8770    if (frozen) {
8771      return processor;
8772    }
8773    while (++freezeIndex < attachers.length) {
8774      values = attachers[freezeIndex];
8775      plugin = values[0];
8776      options = values[1];
8777      transformer = null;
8778      if (options === false) {
8779        continue;
8780      }
8781      if (options === true) {
8782        values[1] = void 0;
8783      }
8784      transformer = plugin.apply(processor, values.slice(1));
8785      if (typeof transformer === "function") {
8786        transformers.use(transformer);
8787      }
8788    }
8789    frozen = true;
8790    freezeIndex = Infinity;
8791    return processor;
8792  }
8793  function data(key, value) {
8794    if (typeof key === "string") {
8795      if (arguments.length === 2) {
8796        assertUnfrozen("data", frozen);
8797        namespace[key] = value;
8798        return processor;
8799      }
8800      return own.call(namespace, key) && namespace[key] || null;
8801    }
8802    if (key) {
8803      assertUnfrozen("data", frozen);
8804      namespace = key;
8805      return processor;
8806    }
8807    return namespace;
8808  }
8809  function use(value) {
8810    var settings;
8811    assertUnfrozen("use", frozen);
8812    if (value === null || value === void 0) {
8813    } else if (typeof value === "function") {
8814      addPlugin.apply(null, arguments);
8815    } else if (typeof value === "object") {
8816      if ("length" in value) {
8817        addList(value);
8818      } else {
8819        addPreset(value);
8820      }
8821    } else {
8822      throw new Error("Expected usable value, not `" + value + "`");
8823    }
8824    if (settings) {
8825      namespace.settings = extend(namespace.settings || {}, settings);
8826    }
8827    return processor;
8828    function addPreset(result) {
8829      addList(result.plugins);
8830      if (result.settings) {
8831        settings = extend(settings || {}, result.settings);
8832      }
8833    }
8834    function add(value2) {
8835      if (typeof value2 === "function") {
8836        addPlugin(value2);
8837      } else if (typeof value2 === "object") {
8838        if ("length" in value2) {
8839          addPlugin.apply(null, value2);
8840        } else {
8841          addPreset(value2);
8842        }
8843      } else {
8844        throw new Error("Expected usable value, not `" + value2 + "`");
8845      }
8846    }
8847    function addList(plugins) {
8848      var length;
8849      var index;
8850      if (plugins === null || plugins === void 0) {
8851      } else if (typeof plugins === "object" && "length" in plugins) {
8852        length = plugins.length;
8853        index = -1;
8854        while (++index < length) {
8855          add(plugins[index]);
8856        }
8857      } else {
8858        throw new Error("Expected a list of plugins, not `" + plugins + "`");
8859      }
8860    }
8861    function addPlugin(plugin, value2) {
8862      var entry = find(plugin);
8863      if (entry) {
8864        if (plain(entry[1]) && plain(value2)) {
8865          value2 = extend(entry[1], value2);
8866        }
8867        entry[1] = value2;
8868      } else {
8869        attachers.push(slice.call(arguments));
8870      }
8871    }
8872  }
8873  function find(plugin) {
8874    var length = attachers.length;
8875    var index = -1;
8876    var entry;
8877    while (++index < length) {
8878      entry = attachers[index];
8879      if (entry[0] === plugin) {
8880        return entry;
8881      }
8882    }
8883  }
8884  function parse(doc) {
8885    var file = vfile(doc);
8886    var Parser;
8887    freeze();
8888    Parser = processor.Parser;
8889    assertParser("parse", Parser);
8890    if (newable(Parser, "parse")) {
8891      return new Parser(String(file), file).parse();
8892    }
8893    return Parser(String(file), file);
8894  }
8895  function run(node, file, cb) {
8896    assertNode(node);
8897    freeze();
8898    if (!cb && typeof file === "function") {
8899      cb = file;
8900      file = null;
8901    }
8902    if (!cb) {
8903      return new Promise(executor);
8904    }
8905    executor(null, cb);
8906    function executor(resolve, reject) {
8907      transformers.run(node, vfile(file), done);
8908      function done(err, tree, file2) {
8909        tree = tree || node;
8910        if (err) {
8911          reject(err);
8912        } else if (resolve) {
8913          resolve(tree);
8914        } else {
8915          cb(null, tree, file2);
8916        }
8917      }
8918    }
8919  }
8920  function runSync(node, file) {
8921    var complete = false;
8922    var result;
8923    run(node, file, done);
8924    assertDone("runSync", "run", complete);
8925    return result;
8926    function done(err, tree) {
8927      complete = true;
8928      bail(err);
8929      result = tree;
8930    }
8931  }
8932  function stringify(node, doc) {
8933    var file = vfile(doc);
8934    var Compiler;
8935    freeze();
8936    Compiler = processor.Compiler;
8937    assertCompiler("stringify", Compiler);
8938    assertNode(node);
8939    if (newable(Compiler, "compile")) {
8940      return new Compiler(node, file).compile();
8941    }
8942    return Compiler(node, file);
8943  }
8944  function process(doc, cb) {
8945    freeze();
8946    assertParser("process", processor.Parser);
8947    assertCompiler("process", processor.Compiler);
8948    if (!cb) {
8949      return new Promise(executor);
8950    }
8951    executor(null, cb);
8952    function executor(resolve, reject) {
8953      var file = vfile(doc);
8954      pipeline.run(processor, { file }, done);
8955      function done(err) {
8956        if (err) {
8957          reject(err);
8958        } else if (resolve) {
8959          resolve(file);
8960        } else {
8961          cb(null, file);
8962        }
8963      }
8964    }
8965  }
8966  function processSync(doc) {
8967    var complete = false;
8968    var file;
8969    freeze();
8970    assertParser("processSync", processor.Parser);
8971    assertCompiler("processSync", processor.Compiler);
8972    file = vfile(doc);
8973    process(file, done);
8974    assertDone("processSync", "process", complete);
8975    return file;
8976    function done(err) {
8977      complete = true;
8978      bail(err);
8979    }
8980  }
8981}
8982function newable(value, name) {
8983  return typeof value === "function" && value.prototype && // A function with keys in its prototype is probably a constructor.
8984  // Classes’ prototype methods are not enumerable, so we check if some value
8985  // exists in the prototype.
8986  (keys(value.prototype) || name in value.prototype);
8987}
8988function keys(value) {
8989  var key;
8990  for (key in value) {
8991    return true;
8992  }
8993  return false;
8994}
8995function assertParser(name, Parser) {
8996  if (typeof Parser !== "function") {
8997    throw new Error("Cannot `" + name + "` without `Parser`");
8998  }
8999}
9000function assertCompiler(name, Compiler) {
9001  if (typeof Compiler !== "function") {
9002    throw new Error("Cannot `" + name + "` without `Compiler`");
9003  }
9004}
9005function assertUnfrozen(name, frozen) {
9006  if (frozen) {
9007    throw new Error(
9008      "Cannot invoke `" + name + "` on a frozen processor.\nCreate a new processor first, by invoking it: use `processor()` instead of `processor`."
9009    );
9010  }
9011}
9012function assertNode(node) {
9013  if (!node || typeof node.type !== "string") {
9014    throw new Error("Expected node, got `" + node + "`");
9015  }
9016}
9017function assertDone(name, asyncName, complete) {
9018  if (!complete) {
9019    throw new Error(
9020      "`" + name + "` finished async. Use `" + asyncName + "` instead"
9021    );
9022  }
9023}
9024
9025
9026/***/ },
9027
9028/***/ 6201
9029(module) {
9030
9031"use strict";
9032
9033module.exports = (value) => {
9034  if (Object.prototype.toString.call(value) !== "[object Object]") {
9035    return false;
9036  }
9037  const prototype = Object.getPrototypeOf(value);
9038  return prototype === null || prototype === Object.prototype;
9039};
9040
9041
9042/***/ },
9043
9044/***/ 2341
9045(module) {
9046
9047"use strict";
9048
9049module.exports = u;
9050function u(type, props, value) {
9051  var node;
9052  if ((value === null || value === void 0) && (typeof props !== "object" || Array.isArray(props))) {
9053    value = props;
9054    props = {};
9055  }
9056  node = Object.assign({ type: String(type) }, props);
9057  if (Array.isArray(value)) {
9058    node.children = value;
9059  } else if (value !== null && value !== void 0) {
9060    node.value = String(value);
9061  }
9062  return node;
9063}
9064
9065
9066/***/ },
9067
9068/***/ 28298
9069(module) {
9070
9071"use strict";
9072
9073module.exports = generated;
9074function generated(node) {
9075  return !node || !node.position || !node.position.start || !node.position.start.line || !node.position.start.column || !node.position.end || !node.position.end.line || !node.position.end.column;
9076}
9077
9078
9079/***/ },
9080
9081/***/ 95274
9082(module) {
9083
9084"use strict";
9085
9086module.exports = convert;
9087function convert(test) {
9088  if (test == null) {
9089    return ok;
9090  }
9091  if (typeof test === "string") {
9092    return typeFactory(test);
9093  }
9094  if (typeof test === "object") {
9095    return "length" in test ? anyFactory(test) : allFactory(test);
9096  }
9097  if (typeof test === "function") {
9098    return test;
9099  }
9100  throw new Error("Expected function, string, or object as test");
9101}
9102function allFactory(test) {
9103  return all;
9104  function all(node) {
9105    var key;
9106    for (key in test) {
9107      if (node[key] !== test[key]) return false;
vendor: 7,201 bytes, lines 9108-9422
9108    }
9109    return true;
9110  }
9111}
9112function anyFactory(tests) {
9113  var checks = [];
9114  var index = -1;
9115  while (++index < tests.length) {
9116    checks[index] = convert(tests[index]);
9117  }
9118  return any;
9119  function any() {
9120    var index2 = -1;
9121    while (++index2 < checks.length) {
9122      if (checks[index2].apply(this, arguments)) {
9123        return true;
9124      }
9125    }
9126    return false;
9127  }
9128}
9129function typeFactory(test) {
9130  return type;
9131  function type(node) {
9132    return Boolean(node && node.type === test);
9133  }
9134}
9135function ok() {
9136  return true;
9137}
9138
9139
9140/***/ },
9141
9142/***/ 42706
9143(module) {
9144
9145"use strict";
9146
9147var start = factory("start");
9148var end = factory("end");
9149module.exports = position;
9150position.start = start;
9151position.end = end;
9152function position(node) {
9153  return { start: start(node), end: end(node) };
9154}
9155function factory(type) {
9156  point.displayName = type;
9157  return point;
9158  function point(node) {
9159    var point2 = node && node.position && node.position[type] || {};
9160    return {
9161      line: point2.line || null,
9162      column: point2.column || null,
9163      offset: isNaN(point2.offset) ? null : point2.offset
9164    };
9165  }
9166}
9167
9168
9169/***/ },
9170
9171/***/ 39946
9172(module) {
9173
9174"use strict";
9175
9176var own = {}.hasOwnProperty;
9177module.exports = stringify;
9178function stringify(value) {
9179  if (!value || typeof value !== "object") {
9180    return "";
9181  }
9182  if (own.call(value, "position") || own.call(value, "type")) {
9183    return position(value.position);
9184  }
9185  if (own.call(value, "start") || own.call(value, "end")) {
9186    return position(value);
9187  }
9188  if (own.call(value, "line") || own.call(value, "column")) {
9189    return point(value);
9190  }
9191  return "";
9192}
9193function point(point2) {
9194  if (!point2 || typeof point2 !== "object") {
9195    point2 = {};
9196  }
9197  return index(point2.line) + ":" + index(point2.column);
9198}
9199function position(pos) {
9200  if (!pos || typeof pos !== "object") {
9201    pos = {};
9202  }
9203  return point(pos.start) + "-" + point(pos.end);
9204}
9205function index(value) {
9206  return value && typeof value === "number" ? value : 1;
9207}
9208
9209
9210/***/ },
9211
9212/***/ 38973
9213(module) {
9214
9215module.exports = identity;
9216function identity(d) {
9217  return d;
9218}
9219
9220
9221/***/ },
9222
9223/***/ 51884
9224(module, __unused_webpack_exports, __webpack_require__) {
9225
9226"use strict";
9227
9228module.exports = visitParents;
9229var convert = __webpack_require__(95274);
9230var color = __webpack_require__(38973);
9231var CONTINUE = true;
9232var SKIP = "skip";
9233var EXIT = false;
9234visitParents.CONTINUE = CONTINUE;
9235visitParents.SKIP = SKIP;
9236visitParents.EXIT = EXIT;
9237function visitParents(tree, test, visitor, reverse) {
9238  var step;
9239  var is;
9240  if (typeof test === "function" && typeof visitor !== "function") {
9241    reverse = visitor;
9242    visitor = test;
9243    test = null;
9244  }
9245  is = convert(test);
9246  step = reverse ? -1 : 1;
9247  factory(tree, null, [])();
9248  function factory(node, index, parents) {
9249    var value = typeof node === "object" && node !== null ? node : {};
9250    var name;
9251    if (typeof value.type === "string") {
9252      name = typeof value.tagName === "string" ? value.tagName : typeof value.name === "string" ? value.name : void 0;
9253      visit.displayName = "node (" + color(value.type + (name ? "<" + name + ">" : "")) + ")";
9254    }
9255    return visit;
9256    function visit() {
9257      var grandparents = parents.concat(node);
9258      var result = [];
9259      var subresult;
9260      var offset;
9261      if (!test || is(node, index, parents[parents.length - 1] || null)) {
9262        result = toResult(visitor(node, parents));
9263        if (result[0] === EXIT) {
9264          return result;
9265        }
9266      }
9267      if (node.children && result[0] !== SKIP) {
9268        offset = (reverse ? node.children.length : -1) + step;
9269        while (offset > -1 && offset < node.children.length) {
9270          subresult = factory(node.children[offset], offset, grandparents)();
9271          if (subresult[0] === EXIT) {
9272            return subresult;
9273          }
9274          offset = typeof subresult[1] === "number" ? subresult[1] : offset + step;
9275        }
9276      }
9277      return result;
9278    }
9279  }
9280}
9281function toResult(value) {
9282  if (value !== null && typeof value === "object" && "length" in value) {
9283    return value;
9284  }
9285  if (typeof value === "number") {
9286    return [CONTINUE, value];
9287  }
9288  return [value];
9289}
9290
9291
9292/***/ },
9293
9294/***/ 70056
9295(module, __unused_webpack_exports, __webpack_require__) {
9296
9297"use strict";
9298
9299module.exports = visit;
9300var visitParents = __webpack_require__(51884);
9301var CONTINUE = visitParents.CONTINUE;
9302var SKIP = visitParents.SKIP;
9303var EXIT = visitParents.EXIT;
9304visit.CONTINUE = CONTINUE;
9305visit.SKIP = SKIP;
9306visit.EXIT = EXIT;
9307function visit(tree, test, visitor, reverse) {
9308  if (typeof test === "function" && typeof visitor !== "function") {
9309    reverse = visitor;
9310    visitor = test;
9311    test = null;
9312  }
9313  visitParents(tree, test, overload, reverse);
9314  function overload(node, parents) {
9315    var parent = parents[parents.length - 1];
9316    var index = parent ? parent.children.indexOf(node) : null;
9317    return visitor(node, index, parent);
9318  }
9319}
9320
9321
9322/***/ },
9323
9324/***/ 82392
9325(module, __unused_webpack_exports, __webpack_require__) {
9326
9327"use strict";
9328
9329var stringify = __webpack_require__(39946);
9330module.exports = VMessage;
9331function VMessagePrototype() {
9332}
9333VMessagePrototype.prototype = Error.prototype;
9334VMessage.prototype = new VMessagePrototype();
9335var proto = VMessage.prototype;
9336proto.file = "";
9337proto.name = "";
9338proto.reason = "";
9339proto.message = "";
9340proto.stack = "";
9341proto.fatal = null;
9342proto.column = null;
9343proto.line = null;
9344function VMessage(reason, position, origin) {
9345  var parts;
9346  var range;
9347  var location;
9348  if (typeof position === "string") {
9349    origin = position;
9350    position = null;
9351  }
9352  parts = parseOrigin(origin);
9353  range = stringify(position) || "1:1";
9354  location = {
9355    start: { line: null, column: null },
9356    end: { line: null, column: null }
9357  };
9358  if (position && position.position) {
9359    position = position.position;
9360  }
9361  if (position) {
9362    if (position.start) {
9363      location = position;
9364      position = position.start;
9365    } else {
9366      location.start = position;
9367    }
9368  }
9369  if (reason.stack) {
9370    this.stack = reason.stack;
9371    reason = reason.message;
9372  }
9373  this.message = reason;
9374  this.name = range;
9375  this.reason = reason;
9376  this.line = position ? position.line : null;
9377  this.column = position ? position.column : null;
9378  this.location = location;
9379  this.source = parts[0];
9380  this.ruleId = parts[1];
9381}
9382function parseOrigin(origin) {
9383  var result = [null, null];
9384  var index;
9385  if (typeof origin === "string") {
9386    index = origin.indexOf(":");
9387    if (index === -1) {
9388      result[1] = origin;
9389    } else {
9390      result[0] = origin.slice(0, index);
9391      result[1] = origin.slice(index + 1);
9392    }
9393  }
9394  return result;
9395}
9396
9397
9398/***/ },
9399
9400/***/ 59578
9401(module, __unused_webpack_exports, __webpack_require__) {
9402
9403"use strict";
9404
9405module.exports = __webpack_require__(37502);
9406
9407
9408/***/ },
9409
9410/***/ 57123
9411(module, __unused_webpack_exports, __webpack_require__) {
9412
9413"use strict";
9414
9415var p = __webpack_require__(47291);
9416var proc = __webpack_require__(78400);
9417var buffer = __webpack_require__(6543);
9418module.exports = VFile;
9419var own = {}.hasOwnProperty;
9420var order = ["history", "path", "basename", "stem", "extname", "dirname"];
9421VFile.prototype.toString = toString;
9422Object.defineProperty(VFile.prototype, "path", { get: getPath, set
9422: setPath });
9423Object.defineProperty(VFile.prototype, "dirname", {
9424  get: getDirname,
9425  set: setDirname
9426});
9427Object.defineProperty(VFile.prototype, "basename", {
9428  get: getBasename,
9429  set: setBasename
9430});
9431Object.defineProperty(VFile.prototype, "extname", {
9432  get: getExtname,
9433  set: setExtname
9434});
9435Object.defineProperty(VFile.prototype, "stem", { get: getStem, set: setStem });
9436function VFile(options) {
9437  var prop;
9438  var index;
9439  if (!options) {
9440    options = {};
9441  } else if (typeof options === "string" || buffer(options)) {
9442    options = { contents: options };
9443  } else if ("message" in options && "messages" in options) {
9444    return options;
9445  }
9446  if (!(this instanceof VFile)) {
9447    return new VFile(options);
9448  }
9449  this.data = {};
9450  this.messages = [];
9451  this.history = [];
9452  this.cwd = proc.cwd();
9453  index = -1;
9454  while (++index < order.length) {
9455    prop = order[index];
9456    if (own.call(options, prop)) {
9457      this[prop] = options[prop];
9458    }
9459  }
9460  for (prop in options) {
9461    if (order.indexOf(prop) < 0) {
9462      this[prop] = options[prop];
9463    }
9464  }
9465}
9466function getPath() {
9467  return this.history[this.history.length - 1];
9468}
9469function setPath(path) {
9470  assertNonEmpty(path, "path");
9471  if (this.path !== path) {
9472    this.history.push(path);
9473  }
9474}
9475function getDirname() {
9476  return typeof this.path === "string" ? p.dirname(this.path) : void 0;
9477}
9478function setDirname(dirname) {
9479  assertPath(this.path, "dirname");
9480  this.path = p.join(dirname || "", this.basename);
9481}
9482function getBasename() {
9483  return typeof this.path === "string" ? p.basename(this.path) : void 0;
9484}
9485function setBasename(basename) {
9486  assertNonEmpty(basename, "basename");
9487  assertPart(basename, "basename");
9488  this.path = p.join(this.dirname || "", basename);
9489}
9490function getExtname() {
9491  return typeof this.path === "string" ? p.extname(this.path) : void 0;
9492}
9493function setExtname(extname) {
9494  assertPart(extname, "extname");
9495  assertPath(this.path, "extname");
9496  if (extname) {
9497    if (extname.charCodeAt(0) !== 46) {
9498      throw new Error("`extname` must start with `.`");
9499    }
9500    if (extname.indexOf(".", 1) > -1) {
9501      throw new Error("`extname` cannot contain multiple dots");
9502    }
9503  }
9504  this.path = p.join(this.dirname, this.stem + (extname || ""));
9505}
9506function getStem() {
9507  return typeof this.path === "string" ? p.basename(this.path, this.extname) : void 0;
9508}
9509function setStem(stem) {
9510  assertNonEmpty(stem, "stem");
9511  assertPart(stem, "stem");
9512  this.path = p.join(this.dirname || "", stem + (this.extname || ""));
9513}
9514function toString(encoding) {
9515  return (this.contents || "").toString(encoding);
9516}
9517function assertPart(part, name) {
9518  if (part && part.indexOf(p.sep) > -1) {
9519    throw new Error(
9520      "`" + name + "` cannot be a path: did not expect `" + p.sep + "`"
9521    );
9522  }
9523}
9524function assertNonEmpty(part, name) {
9525  if (!part) {
9526    throw new Error("`" + name + "` cannot be empty");
9527  }
9528}
9529function assertPath(path, name) {
9530  if (!path) {
9531    throw new Error("Setting `" + name + "` requires `path` to be set too");
9532  }
9533}
9534
9535
9536/***/ },
9537
9538/***/ 37502
9539(module, __unused_webpack_exports, __webpack_require__) {
9540
9541"use strict";
9542
9543var VMessage = __webpack_require__(82392);
9544var VFile = __webpack_require__(57123);
9545module.exports = VFile;
9546VFile.prototype.message = message;
9547VFile.prototype.info = info;
9548VFile.prototype.fail = fail;
9549function message(reason, position, origin) {
9550  var message2 = new VMessage(reason, position, origin);
9551  if (this.path) {
9552    message2.name = this.path + ":" + message2.name;
9553    message2.file = this.path;
9554  }
9555  message2.fatal = false;
9556  this.messages.push(message2);
9557  return message2;
9558}
9559function fail() {
9560  var message2 = this.message.apply(this, arguments);
9561  message2.fatal = true;
9562  throw message2;
9563}
9564function info() {
9565  var message2 = this.message.apply(this, arguments);
9566  message2.fatal = null;
9567  return message2;
9568}
9569
9570
9571/***/ },
9572
9573/***/ 47291
9574(__unused_webpack_module, exports) {
9575
9576"use strict";
9577
9578exports.basename = basename;
9579exports.dirname = dirname;
9580exports.extname = extname;
9581exports.join = join;
9582exports.sep = "/";
9583function basename(path, ext) {
9584  var start = 0;
9585  var end = -1;
9586  var index;
9587  var firstNonSlashEnd;
9588  var seenNonSlash;
9589  var extIndex;
9590  if (ext !== void 0 && typeof ext !== "string") {
9591    throw new TypeError('"ext" argument must be a string');
9592  }
9593  assertPath(path);
9594  index = path.length;
9595  if (ext === void 0 || !ext.length || ext.length > path.length) {
9596    while (index--) {
9597      if (path.charCodeAt(index) === 47) {
9598        if (seenNonSlash) {
9599          start = index + 1;
9600          break;
9601        }
9602      } else if (end < 0) {
9603        seenNonSlash = true;
9604        end = index + 1;
9605      }
9606    }
9607    return end < 0 ? "" : path.slice(start, end);
9608  }
9609  if (ext === path) {
9610    return "";
9611  }
9612  firstNonSlashEnd = -1;
9613  extIndex = ext.length - 1;
9614  while (index--) {
9615    if (path.charCodeAt(index) === 47) {
9616      if (seenNonSlash) {
9617        start = index + 1;
9618        break;
9619      }
9620    } else {
9621      if (firstNonSlashEnd < 0) {
9622        seenNonSlash = true;
9623        firstNonSlashEnd = index + 1;
9624      }
9625      if (extIndex > -1) {
9626        if (path.charCodeAt(index) === ext.charCodeAt(extIndex--)) {
9627          if (extIndex < 0) {
9628            end = index;
9629          }
9630        } else {
9631          extIndex = -1;
9632          end = firstNonSlashEnd;
9633        }
9634      }
9635    }
9636  }
9637  if (start === end) {
9638    end = firstNonSlashEnd;
9639  } else if (end < 0) {
9640    end = path.length;
9641  }
9642  return path.slice(start, end);
9643}
9644function dirname(path) {
9645  var end;
9646  var unmatchedSlash;
9647  var index;
9648  assertPath(path);
9649  if (!path.length) {
9650    return ".";
9651  }
9652  end = -1;
9653  index = path.length;
9654  while (--index) {
9655    if (path.charCodeAt(index) === 47) {
9656      if (unmatchedSlash) {
9657        end = index;
9658        break;
9659      }
9660    } else if (!unmatchedSlash) {
9661      unmatchedSlash = true;
9662    }
9663  }
9664  return end < 0 ? path.charCodeAt(0) === 47 ? "/" : "." : end === 1 && path.
9664charCodeAt(0) === 47 ? "//" : path.slice(0, end);
9665}
9666function extname(path) {
9667  var startDot = -1;
9668  var startPart = 0;
9669  var end = -1;
9670  var preDotState = 0;
9671  var unmatchedSlash;
9672  var code;
9673  var index;
9674  assertPath(path);
9675  index = path.length;
9676  while (index--) {
9677    code = path.charCodeAt(index);
9678    if (code === 47) {
9679      if (unmatchedSlash) {
9680        startPart = index + 1;
9681        break;
9682      }
9683      continue;
9684    }
9685    if (end < 0) {
9686      unmatchedSlash = true;
9687      end = index + 1;
9688    }
9689    if (code === 46) {
9690      if (startDot < 0) {
9691        startDot = index;
9692      } else if (preDotState !== 1) {
9693        preDotState = 1;
9694      }
9695    } else if (startDot > -1) {
9696      preDotState = -1;
9697    }
9698  }
9699  if (startDot < 0 || end < 0 || // We saw a non-dot character immediately before the dot.
9700  preDotState === 0 || // The (right-most) trimmed path component is exactly `..`.
9701  preDotState === 1 && startDot === end - 1 && startDot === startPart + 1) {
9702    return "";
9703  }
9704  return path.slice(startDot, end);
9705}
9706function join() {
9707  var index = -1;
9708  var joined;
9709  while (++index < arguments.length) {
9710    assertPath(arguments[index]);
9711    if (arguments[index]) {
9712      joined = joined === void 0 ? arguments[index] : joined + "/" + arguments[index];
9713    }
9714  }
9715  return joined === void 0 ? "." : normalize(joined);
9716}
9717function normalize(path) {
9718  var absolute;
9719  var value;
9720  assertPath(path);
9721  absolute = path.charCodeAt(0) === 47;
9722  value = normalizeString(path, !absolute);
9723  if (!value.length && !absolute) {
9724    value = ".";
9725  }
9726  if (value.length && path.charCodeAt(path.length - 1) === 47) {
9727    value += "/";
9728  }
9729  return absolute ? "/" + value : value;
9730}
9731function normalizeString(path, allowAboveRoot) {
9732  var result = "";
9733  var lastSegmentLength = 0;
9734  var lastSlash = -1;
9735  var dots = 0;
9736  var index = -1;
9737  var code;
9738  var lastSlashIndex;
9739  while (++index <= path.length) {
9740    if (index < path.length) {
9741      code = path.charCodeAt(index);
9742    } else if (code === 47) {
9743      break;
9744    } else {
9745      code = 47;
9746    }
9747    if (code === 47) {
9748      if (lastSlash === index - 1 || dots === 1) {
9749      } else if (lastSlash !== index - 1 && dots === 2) {
9750        if (result.length < 2 || lastSegmentLength !== 2 || result.charCodeAt(result.length - 1) !== 46 || result.charCodeAt(result.length - 2) !== 46) {
9751          if (result.length > 2) {
9752            lastSlashIndex = result.lastIndexOf("/");
9753            if (lastSlashIndex !== result.length - 1) {
9754              if (lastSlashIndex < 0) {
9755                result = "";
9756                lastSegmentLength = 0;
9757              } else {
9758                result = result.slice(0, lastSlashIndex);
9759                lastSegmentLength = result.length - 1 - result.lastIndexOf("/");
9760              }
9761              lastSlash = index;
9762              dots = 0;
9763              continue;
9764            }
9765          } else if (result.length) {
9766            result = "";
9767            lastSegmentLength = 0;
9768            lastSlash = index;
9769            dots = 0;
9770            continue;
9771          }
9772        }
9773        if (allowAboveRoot) {
9774          result = result.length ? result + "/.." : "..";
9775          lastSegmentLength = 2;
9776        }
9777      } else {
9778        if (result.length) {
9779          result += "/" + path.slice(lastSlash + 1, index);
9780        } else {
9781          result = path.slice(lastSlash + 1, index);
9782        }
9783        lastSegmentLength = index - lastSlash - 1;
9784      }
9785      lastSlash = index;
9786      dots = 0;
9787    } else if (code === 46 && dots > -1) {
9788      dots++;
9789    } else {
9790      dots = -1;
9791    }
9792  }
9793  return result;
9794}
9795function assertPath(path) {
9796  if (typeof path !== "string") {
9797    throw new TypeError(
9798      "Path must be a string. Received " + JSON.stringify(path)
9799    );
9800  }
9801}
9802
9803
9804/***/ },
9805
9806/***/ 78400
9807(__unused_webpack_module, exports) {
9808
9809"use strict";
9810
9811exports.cwd = cwd;
9812function cwd() {
9813  return "/";
9814}
9815
9816
9817/***/ },
9818
9819/***/ 66243
9820(module) {
9821
9822module.exports = extend;
9823var hasOwnProperty = Object.prototype.hasOwnProperty;
9824function extend() {
9825  var target = {};
9826  for (var i = 0; i < arguments.length; i++) {
9827    var source = arguments[i];
9828    for (var key in source) {
9829      if (hasOwnProperty.call(source, key)) {
9830        target[key] = source[key];
9831      }
9832    }
9833  }
9834  return target;
9835}
9836
9837
9838/***/ },
9839
9840/***/ 60308
9841(module) {
9842
9843"use strict";
9844module.exports = /*#__PURE__*/JSON.parse('{"classId":"classID","dataType":"datatype","itemId":"itemID","strokeDashArray":"strokeDasharray","strokeDashOffset":"strokeDashoffset","strokeLineCap":"strokeLinecap","strokeLineJoin":"strokeLinejoin","strokeMiterLimit":"strokeMiterlimit","typeOf":"typeof","xLinkActuate":"xlinkActuate","xLinkArcRole":"xlinkArcrole","xLinkHref":"xl
9844inkHref","xLinkRole":"xlinkRole","xLinkShow":"xlinkShow","xLinkTitle":"xlinkTitle","xLinkType":"xlinkType","xmlnsXLink":"xmlnsXlink"}');
9845
9846/***/ }
9847
9848}]);

Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.