Merge branch 'dartdoc-compare-dart' of git://github.com/jirkadanek/markdown into jirkadanek-dartdoc-compare-dart

* 'dartdoc-compare-dart' of git://github.com/jirkadanek/markdown:
  Add a dartdoc-compare.dart script
diff --git a/pkgs/markdown/.analysis_options b/pkgs/markdown/.analysis_options
new file mode 100644
index 0000000..a10d4c5
--- /dev/null
+++ b/pkgs/markdown/.analysis_options
@@ -0,0 +1,2 @@
+analyzer:
+  strong-mode: true
diff --git a/pkgs/markdown/CHANGELOG.md b/pkgs/markdown/CHANGELOG.md
index b104977..5d88d40 100644
--- a/pkgs/markdown/CHANGELOG.md
+++ b/pkgs/markdown/CHANGELOG.md
@@ -1,3 +1,16 @@
+## 0.10.0
+
+* BREAKING: Now following the CommonMark spec for fenced code blocks.
+  If a language (info string) is provided, it is added as a class to the `code`
+  element with a `language-` prefix.
+* BREAKING: Now following the CommonMark spec for images. Previously,
+  `![text](img.png)` would compile too
+  `<a href="img.prg"><img src="img.prg" alt="text"></img></a>`. That same code
+  will now compile to `<img src="img.png" alt="text" />`.
+* Fix all [strong mode][] errors.
+
+[strong mode]: https://github.com/dart-lang/dev_compiler/blob/master/STRONG_MODE.md
+
 ## 0.9.0
 
 * BREAKING: The text `[foo] (bar)` no longer renders as an inline link (#53).
diff --git a/pkgs/markdown/lib/src/block_parser.dart b/pkgs/markdown/lib/src/block_parser.dart
index 4a5bd58..aa82149 100644
--- a/pkgs/markdown/lib/src/block_parser.dart
+++ b/pkgs/markdown/lib/src/block_parser.dart
@@ -216,7 +216,7 @@
   const SetextHeaderWithIdSyntax();
 
   Node parse(BlockParser parser) {
-    var element = super.parse(parser);
+    var element = super.parse(parser) as Element;
     element.generatedId = BlockSyntax.generateAnchorHash(element);
     return element;
   }
@@ -242,7 +242,7 @@
   const HeaderWithIdSyntax();
 
   Node parse(BlockParser parser) {
-    var element = super.parse(parser);
+    var element = super.parse(parser) as Element;
     element.generatedId = BlockSyntax.generateAnchorHash(element);
     return element;
   }
@@ -341,7 +341,7 @@
     // Get the syntax identifier, if there is one.
     var match = pattern.firstMatch(parser.current);
     var endBlock = match.group(1);
-    var syntax = match.group(2);
+    var infoString = match.group(2);
 
     var childLines = parseChildLines(parser, endBlock);
 
@@ -351,8 +351,19 @@
     // Escape the code.
     var escaped = escapeHtml(childLines.join('\n'));
 
-    var element = new Element('pre', [new Element.text('code', escaped)]);
-    if (syntax != '') element.attributes['class'] = syntax;
+    var code = new Element.text('code', escaped);
+
+    // the info-string should be trimmed
+    // http://spec.commonmark.org/0.22/#example-100
+    infoString = infoString.trim();
+    if (infoString.isNotEmpty) {
+      // only use the first word in the syntax
+      // http://spec.commonmark.org/0.22/#example-100
+      infoString = infoString.split(' ').first;
+      code.attributes['class'] = "language-$infoString";
+    }
+
+    var element = new Element('pre', [code]);
 
     return element;
   }
diff --git a/pkgs/markdown/lib/src/extension_set.dart b/pkgs/markdown/lib/src/extension_set.dart
index 0beb1dd..665d8f8 100644
--- a/pkgs/markdown/lib/src/extension_set.dart
+++ b/pkgs/markdown/lib/src/extension_set.dart
@@ -7,8 +7,8 @@
   static ExtensionSet commonMark = new ExtensionSet._(
       [const FencedCodeBlockSyntax()], [new InlineHtmlSyntax()]);
 
-  final List blockSyntaxes;
-  final List inlineSyntaxes;
+  final List<BlockSyntax> blockSyntaxes;
+  final List<InlineSyntax> inlineSyntaxes;
 
   ExtensionSet._(this.blockSyntaxes, this.inlineSyntaxes);
 }
diff --git a/pkgs/markdown/lib/src/inline_parser.dart b/pkgs/markdown/lib/src/inline_parser.dart
index a008ca8..e59cbfd 100644
--- a/pkgs/markdown/lib/src/inline_parser.dart
+++ b/pkgs/markdown/lib/src/inline_parser.dart
@@ -15,7 +15,7 @@
       new List<InlineSyntax>.unmodifiable(<InlineSyntax>[
     new AutolinkSyntax(),
     new LinkSyntax(),
-    new ImageLinkSyntax(),
+    new ImageSyntax(),
     // Allow any punctuation to be escaped.
     new EscapeSyntax(),
     // "*" surrounded by spaces is left alone.
@@ -85,7 +85,7 @@
     // Custom link resolvers go after the generic text syntax.
     syntaxes.insertAll(1, [
       new LinkSyntax(linkResolver: document.linkResolver),
-      new ImageLinkSyntax(linkResolver: document.imageLinkResolver)
+      new ImageSyntax(linkResolver: document.imageLinkResolver)
     ]);
   }
 
@@ -284,8 +284,8 @@
   /// breaks it into pieces.
   static get linkPattern {
     var refLink = r'\[([^\]]*)\]'; // `[id]` reflink id.
-    var title = r'(?:\s*"([^"]+)"|)'; // Optional title in quotes.
-    var inlineLink = '\\((\\S*)$title\\)'; // `(url "title")` link.
+    var title = r'(?:\s*"([^"]+?)"|)'; // Optional title in quotes.
+    var inlineLink = '\\((\\S*?)$title\\)'; // `(url "title")` link.
     return '\](?:($refLink|$inlineLink)|)';
 
     // The groups matched by this are:
@@ -336,6 +336,10 @@
     return element;
   }
 
+  /// Get the Link represented by [match].
+  ///
+  /// This method can return null, if the link is a reference link, and has no
+  /// accompanying link reference definition.
   Link getLink(InlineParser parser, Match match, TagState state) {
     if (match[3] != null) {
       // Inline link like [foo](url).
@@ -375,30 +379,25 @@
 
 /// Matches images like `![alternate text](url "optional title")` and
 /// `![alternate text][url reference]`.
-class ImageLinkSyntax extends LinkSyntax {
-  ImageLinkSyntax({Resolver linkResolver})
+class ImageSyntax extends LinkSyntax {
+  ImageSyntax({Resolver linkResolver})
       : super(linkResolver: linkResolver, pattern: r'!\[');
 
-  /// Creates an <a> element from the given complete [match].
+  /// Creates an <img> element from the given complete [match].
   Element _createElement(InlineParser parser, Match match, TagState state) {
-    var element = super._createElement(parser, match, state);
-    if (element == null) return null;
+    var link = getLink(parser, match, state);
+    if (link == null) return null;
+    var image = new Element.empty("img");
+    image.attributes["src"] = escapeHtml(link.url);
 
-    var image = new Element.withTag("img");
-    image.attributes["src"] = element.attributes["href"];
-
-    if (element.attributes.containsKey("title")) {
-      image.attributes["title"] = element.attributes["title"];
+    if (link.title != null) {
+      image.attributes["title"] = escapeHtml(link.title);
     }
 
-    var alt = element.children.map((e) => e is! Text ? "" : e.text).join(" ");
+    var alt = state.children.map((e) => e is Text ? e.text : "").join(" ");
     if (alt != "") image.attributes["alt"] = alt;
 
-    element.children
-      ..clear()
-      ..add(image);
-
-    return element;
+    return image;
   }
 }
 
diff --git a/pkgs/markdown/pubspec.yaml b/pkgs/markdown/pubspec.yaml
index 0c2cab4..7740d41 100644
--- a/pkgs/markdown/pubspec.yaml
+++ b/pkgs/markdown/pubspec.yaml
@@ -1,5 +1,5 @@
 name: markdown
-version: 0.9.0-dev
+version: 0.10.0
 author: Dart Team <misc@dartlang.org>
 description: A library for converting markdown to HTML.
 homepage: https://github.com/dart-lang/markdown
@@ -7,6 +7,7 @@
   sdk: '>=1.12.0 <2.0.0'
 dev_dependencies:
   args: '^0.13.3+1'
+  collection: ^1.2.0
   path: '^1.3.1'
   test: '^0.12.4+1'
   yaml: '^2.1.8'
diff --git a/pkgs/markdown/test/extensions/fenced_code_blocks.unit b/pkgs/markdown/test/extensions/fenced_code_blocks.unit
index ceb1f16..596f49a 100644
--- a/pkgs/markdown/test/extensions/fenced_code_blocks.unit
+++ b/pkgs/markdown/test/extensions/fenced_code_blocks.unit
@@ -12,7 +12,7 @@
 ```
 
 <<<
-<pre class="dart"><code>code
+<pre><code class="language-dart">code
 </code></pre>
 >>> escape HTML characters
 ```
@@ -36,7 +36,7 @@
 ~~~~~
 
 <<<
-<pre class="dart"><code>code
+<pre><code class="language-dart">code
 </code></pre>
 >>> Pandoc style with inner tildes row
 ~~~~~
diff --git a/pkgs/markdown/test/markdown_test.dart b/pkgs/markdown/test/markdown_test.dart
index 6eb9fef..053e481 100644
--- a/pkgs/markdown/test/markdown_test.dart
+++ b/pkgs/markdown/test/markdown_test.dart
@@ -18,30 +18,46 @@
 
   group('Resolver', () {
     Node nyanResolver(String text) => new Text('~=[,,_${text}_,,]:3');
-    validateCore('simple link resolver', '''
+    validateCore(
+        'simple link resolver',
+        '''
 resolve [this] thing
-''', '''
+''',
+        '''
 <p>resolve ~=[,,_this_,,]:3 thing</p>
-''', linkResolver: nyanResolver);
+''',
+        linkResolver: nyanResolver);
 
-    validateCore('simple image resolver', '''
+    validateCore(
+        'simple image resolver',
+        '''
 resolve ![this] thing
-''', '''
+''',
+        '''
 <p>resolve ~=[,,_this_,,]:3 thing</p>
-''', imageLinkResolver: nyanResolver);
+''',
+        imageLinkResolver: nyanResolver);
 
-    validateCore('can resolve link containing inline tags', '''
+    validateCore(
+        'can resolve link containing inline tags',
+        '''
 resolve [*star* _underline_] thing
-''', '''
+''',
+        '''
 <p>resolve ~=[,,_*star* _underline__,,]:3 thing</p>
-''', linkResolver: nyanResolver);
+''',
+        linkResolver: nyanResolver);
   });
 
   group('Custom inline syntax', () {
     var nyanSyntax = <InlineSyntax>[new TextSyntax('nyan', sub: '~=[,,_,,]:3')];
-    validateCore('simple inline syntax', '''
-nyan''', '''<p>~=[,,_,,]:3</p>
-''', inlineSyntaxes: nyanSyntax);
+    validateCore(
+        'simple inline syntax',
+        '''
+nyan''',
+        '''<p>~=[,,_,,]:3</p>
+''',
+        inlineSyntaxes: nyanSyntax);
 
     validateCore('dart custom links', 'links [are<foo>] awesome',
         '<p>links <a>are&lt;foo></a> awesome</p>\n',
@@ -54,50 +70,71 @@
   });
 
   group('Inline only', () {
-    validateCore('simple line', '''
+    validateCore(
+        'simple line',
+        '''
         This would normally create a paragraph.
         ''',
         '''
         This would normally create a paragraph.
-        ''', inlineOnly: true);
-    validateCore('strong and em', '''
+        ''',
+        inlineOnly: true);
+    validateCore(
+        'strong and em',
+        '''
         This would _normally_ create a **paragraph**.
         ''',
         '''
         This would <em>normally</em> create a <strong>paragraph</strong>.
-        ''', inlineOnly: true);
-    validateCore('link', '''
+        ''',
+        inlineOnly: true);
+    validateCore(
+        'link',
+        '''
         This [link](http://www.example.com/) will work normally.
         ''',
         '''
         This <a href="http://www.example.com/">link</a> will work normally.
-        ''', inlineOnly: true);
-    validateCore('references do not work', '''
+        ''',
+        inlineOnly: true);
+    validateCore(
+        'references do not work',
+        '''
         [This][] shouldn't work, though.
         ''',
         '''
         [This][] shouldn't work, though.
-        ''', inlineOnly: true);
-    validateCore('less than and ampersand are escaped', '''
+        ''',
+        inlineOnly: true);
+    validateCore(
+        'less than and ampersand are escaped',
+        '''
         < &
         ''',
         '''
         &lt; &amp;
-        ''', inlineOnly: true);
-    validateCore('keeps newlines', '''
+        ''',
+        inlineOnly: true);
+    validateCore(
+        'keeps newlines',
+        '''
         This paragraph
         continues after a newline.
         ''',
         '''
         This paragraph
         continues after a newline.
-        ''', inlineOnly: true);
-    validateCore('ignores block-level markdown syntax', '''
+        ''',
+        inlineOnly: true);
+    validateCore(
+        'ignores block-level markdown syntax',
+        '''
         1. This will not be an <ol>.
         ''',
         '''
         1. This will not be an <ol>.
-        ''', inlineOnly: true);
+        ''',
+        inlineOnly: true);
   });
 
   testFile('extensions/fenced_code_blocks.unit',
diff --git a/pkgs/markdown/test/original/inline_images.unit b/pkgs/markdown/test/original/inline_images.unit
index a17a8e2..45316b6 100644
--- a/pkgs/markdown/test/original/inline_images.unit
+++ b/pkgs/markdown/test/original/inline_images.unit
@@ -2,19 +2,19 @@
 ![](http://foo.com/foo.png)
 
 <<<
-<p><a href="http://foo.com/foo.png"><img src="http://foo.com/foo.png"></img></a></p>
+<p><img src="http://foo.com/foo.png" /></p>
 >>> alternate text
 ![alternate text](http://foo.com/foo.png)
 
 <<<
-<p><a href="http://foo.com/foo.png"><img alt="alternate text" src="http://foo.com/foo.png"></img></a></p>
+<p><img alt="alternate text" src="http://foo.com/foo.png" /></p>
 >>> title
 ![](http://foo.com/foo.png "optional title")
 
 <<<
-<p><a href="http://foo.com/foo.png" title="optional title"><img src="http://foo.com/foo.png" title="optional title"></img></a></p>
+<p><img src="http://foo.com/foo.png" title="optional title" /></p>
 >>> invalid alt text
 ![`alt`](http://foo.com/foo.png)
 
 <<<
-<p><a href="http://foo.com/foo.png"><img src="http://foo.com/foo.png"></img></a></p>
+<p><img src="http://foo.com/foo.png" /></p>
diff --git a/pkgs/markdown/test/original/inline_links.unit b/pkgs/markdown/test/original/inline_links.unit
index d6e6d77..a63a26e 100644
--- a/pkgs/markdown/test/original/inline_links.unit
+++ b/pkgs/markdown/test/original/inline_links.unit
@@ -13,6 +13,21 @@
 
 <<<
 <p>links <a href="http://foo.com"><em>are</em></a> awesome</p>
+>>> image inside link
+links [![](/are.png)](http://foo.com) awesome
+
+<<<
+<p>links <a href="http://foo.com"><img src="/are.png" /></a> awesome</p>
+>>> image with alt inside link
+links [![my alt](/are.png)](http://foo.com) awesome
+
+<<<
+<p>links <a href="http://foo.com"><img alt="my alt" src="/are.png" /></a> awesome</p>
+>>> image with title inside link
+links [![](/are.png "my title")](http://foo.com) awesome
+
+<<<
+<p>links <a href="http://foo.com"><img src="/are.png" title="my title" /></a> awesome</p>
 >>> no URL
 links [are]() awesome
 
diff --git a/pkgs/markdown/test/original/reference_images.unit b/pkgs/markdown/test/original/reference_images.unit
index 84d1820..4f00072 100644
--- a/pkgs/markdown/test/original/reference_images.unit
+++ b/pkgs/markdown/test/original/reference_images.unit
@@ -3,22 +3,22 @@
 [foo]: http://foo.com/foo.png
 
 <<<
-<p><a href="http://foo.com/foo.png"><img src="http://foo.com/foo.png"></img></a></p>
+<p><img src="http://foo.com/foo.png" /></p>
 >>> alternate text
 ![alternate text][foo]
 [foo]: http://foo.com/foo.png
 
 <<<
-<p><a href="http://foo.com/foo.png"><img alt="alternate text" src="http://foo.com/foo.png"></img></a></p>
+<p><img alt="alternate text" src="http://foo.com/foo.png" /></p>
 >>> title
 ![][foo]
 [foo]: http://foo.com/foo.png "optional title"
 
 <<<
-<p><a href="http://foo.com/foo.png" title="optional title"><img src="http://foo.com/foo.png" title="optional title"></img></a></p>
+<p><img src="http://foo.com/foo.png" title="optional title" /></p>
 >>> invalid alt text
 ![`alt`][foo]
 [foo]: http://foo.com/foo.png "optional title"
 
 <<<
-<p><a href="http://foo.com/foo.png" title="optional title"><img src="http://foo.com/foo.png" title="optional title"></img></a></p>
+<p><img src="http://foo.com/foo.png" title="optional title" /></p>
diff --git a/pkgs/markdown/tool/common_mark_stats.dart b/pkgs/markdown/tool/common_mark_stats.dart
new file mode 100644
index 0000000..f34ca05
--- /dev/null
+++ b/pkgs/markdown/tool/common_mark_stats.dart
@@ -0,0 +1,129 @@
+library markdown.tool.common_mark_stats;
+
+import 'dart:collection';
+import 'dart:convert';
+import 'dart:io';
+import 'dart:mirrors';
+
+import 'package:collection/collection.dart';
+import 'package:markdown/markdown.dart';
+import 'package:path/path.dart' as p;
+
+const _commonMarkTests = 'common_mark_tests.json';
+
+// Locate the "test" directory. Use mirrors so that this works with the test
+// package, which loads this suite into an isolate.
+String get _currentDir => p.dirname(currentMirrorSystem()
+    .findLibrary(#markdown.tool.common_mark_stats)
+    .uri
+    .path);
+
+void main(List<String> args) {
+  var raw = args.any((s) => s == '--raw');
+
+  var sections = loadCommonMarkSections();
+
+  var scores = new SplayTreeMap<String, SplayTreeMap<int, bool>>(
+      compareAsciiLowerCaseNatural);
+
+  sections.forEach((section, examples) {
+    for (var e in examples) {
+      var output = markdownToHtml(e.markdown);
+
+      var nestedMap =
+          scores.putIfAbsent(section, () => new SplayTreeMap<int, bool>());
+
+      nestedMap[e.example] = (output == e.html);
+    }
+  });
+
+  if (raw) {
+    var encoder = const JsonEncoder.withIndent(' ', _convert);
+    try {
+      print(encoder.convert(scores));
+    } on JsonUnsupportedObjectError catch (e) {
+      print(e.cause);
+      print(e.unsupportedObject.runtimeType);
+      rethrow;
+    }
+  } else {
+    _printFriendly(scores);
+  }
+}
+
+_convert(obj) {
+  if (obj is Map) {
+    var map = {};
+    obj.forEach((k, v) {
+      var newKey = k.toString();
+      map[newKey] = v;
+    });
+    return map;
+  }
+  return obj;
+}
+
+void _printFriendly(SplayTreeMap<String, SplayTreeMap<int, bool>> scores) {
+  const countWidth = 4;
+
+  var totalValid = 0;
+  var totalExamples = 0;
+
+  scores.forEach((section, map) {
+    var total = map.values.length;
+    totalExamples += total;
+
+    var sectionValidCount = map.values.where((val) => val).length;
+
+    totalValid += sectionValidCount;
+
+    var pct = (100 * sectionValidCount / total).toStringAsFixed(1).padLeft(5);
+
+    print('${sectionValidCount.toString().padLeft(countWidth)} '
+        'of ${total.toString().padLeft(countWidth)} '
+        '– ${pct}%  $section');
+  });
+
+  var pct = (100 * totalValid / totalExamples).toStringAsFixed(1).padLeft(5);
+
+  print('${totalValid.toString().padLeft(countWidth)} '
+      'of ${totalExamples.toString().padLeft(countWidth)} '
+      '– ${pct}%  TOTAL');
+}
+
+Map<String, List<CommonMarkTestCase>> loadCommonMarkSections() {
+  var testFile = new File(p.join(_currentDir, _commonMarkTests));
+  var testsJson = testFile.readAsStringSync();
+
+  var testArray = JSON.decode(testsJson) as List<Map<String, dynamic>>;
+
+  var sections = new Map<String, List<CommonMarkTestCase>>();
+
+  for (var exampleMap in testArray) {
+    var exampleTest = new CommonMarkTestCase.fromJson(exampleMap);
+
+    var sectionList =
+        sections.putIfAbsent(exampleTest.section, () => <CommonMarkTestCase>[]);
+
+    sectionList.add(exampleTest);
+  }
+
+  return sections;
+}
+
+class CommonMarkTestCase {
+  final String markdown;
+  final String section;
+  final int example;
+  final String html;
+  final int startLine;
+  final int endLine;
+
+  CommonMarkTestCase(this.example, this.section, this.startLine, this.endLine,
+      this.markdown, this.html);
+
+  factory CommonMarkTestCase.fromJson(Map<String, dynamic> json) {
+    return new CommonMarkTestCase(json['example'], json['section'],
+        json['start_line'], json['end_line'], json['markdown'], json['html']);
+  }
+}
diff --git a/pkgs/markdown/tool/common_mark_stats.json b/pkgs/markdown/tool/common_mark_stats.json
new file mode 100644
index 0000000..4ed708d
--- /dev/null
+++ b/pkgs/markdown/tool/common_mark_stats.json
@@ -0,0 +1,667 @@
+{
+ "ATX headings": {
+  "27": true,
+  "28": true,
+  "29": true,
+  "30": false,
+  "31": true,
+  "32": true,
+  "33": true,
+  "34": false,
+  "35": true,
+  "36": false,
+  "37": false,
+  "38": true,
+  "39": false,
+  "40": true,
+  "41": false,
+  "42": false,
+  "43": true,
+  "44": true,
+  "45": false
+ },
+ "Autolinks": {
+  "554": true,
+  "555": false,
+  "556": false,
+  "557": false,
+  "558": false,
+  "559": false,
+  "560": true,
+  "561": false,
+  "562": false,
+  "563": false,
+  "564": false,
+  "565": false,
+  "566": false,
+  "567": false,
+  "568": false,
+  "569": false,
+  "570": false,
+  "571": true,
+  "572": true
+ },
+ "Backslash escapes": {
+  "282": false,
+  "283": true,
+  "284": false,
+  "285": true,
+  "286": true,
+  "287": true,
+  "288": true,
+  "289": true,
+  "290": false,
+  "291": true,
+  "292": false,
+  "293": false,
+  "294": false
+ },
+ "Blank lines": {
+  "184": true
+ },
+ "Block quotes": {
+  "185": false,
+  "186": false,
+  "187": false,
+  "188": true,
+  "189": false,
+  "190": false,
+  "191": false,
+  "192": false,
+  "193": false,
+  "194": false,
+  "195": false,
+  "196": false,
+  "197": false,
+  "198": false,
+  "199": false,
+  "200": false,
+  "201": false,
+  "202": false,
+  "203": false,
+  "204": false,
+  "205": false,
+  "206": false,
+  "207": false,
+  "208": false,
+  "209": false
+ },
+ "Code spans": {
+  "307": true,
+  "308": true,
+  "309": true,
+  "310": true,
+  "311": false,
+  "312": true,
+  "313": true,
+  "314": true,
+  "315": true,
+  "316": false,
+  "317": false,
+  "318": false,
+  "319": false,
+  "320": false,
+  "321": true
+ },
+ "Emphasis and strong emphasis": {
+  "322": true,
+  "323": true,
+  "324": false,
+  "325": false,
+  "326": true,
+  "327": true,
+  "328": true,
+  "329": false,
+  "330": false,
+  "331": true,
+  "332": true,
+  "333": false,
+  "334": false,
+  "335": true,
+  "336": true,
+  "337": false,
+  "338": false,
+  "339": false,
+  "340": false,
+  "341": true,
+  "342": false,
+  "343": true,
+  "344": true,
+  "345": true,
+  "346": false,
+  "347": true,
+  "348": true,
+  "349": true,
+  "350": false,
+  "351": false,
+  "352": true,
+  "353": true,
+  "354": false,
+  "355": false,
+  "356": false,
+  "357": true,
+  "358": true,
+  "359": false,
+  "360": true,
+  "361": true,
+  "362": false,
+  "363": false,
+  "364": false,
+  "365": true,
+  "366": false,
+  "367": true,
+  "368": false,
+  "369": true,
+  "370": true,
+  "371": true,
+  "372": false,
+  "373": true,
+  "374": true,
+  "375": true,
+  "376": true,
+  "377": true,
+  "378": true,
+  "379": false,
+  "380": false,
+  "381": false,
+  "382": true,
+  "383": false,
+  "384": false,
+  "385": true,
+  "386": false,
+  "387": false,
+  "388": true,
+  "389": false,
+  "390": true,
+  "391": true,
+  "392": true,
+  "393": true,
+  "394": false,
+  "395": false,
+  "396": true,
+  "397": false,
+  "398": true,
+  "399": true,
+  "400": false,
+  "401": true,
+  "402": true,
+  "403": false,
+  "404": true,
+  "405": true,
+  "406": true,
+  "407": false,
+  "408": true,
+  "409": true,
+  "410": false,
+  "411": true,
+  "412": false,
+  "413": false,
+  "414": true,
+  "415": true,
+  "416": true,
+  "417": true,
+  "418": true,
+  "419": false,
+  "420": true,
+  "421": true,
+  "422": false,
+  "423": false,
+  "424": false,
+  "425": false,
+  "426": false,
+  "427": false,
+  "428": true,
+  "429": true,
+  "430": true,
+  "431": true,
+  "432": false,
+  "433": false,
+  "434": false,
+  "435": true,
+  "436": false,
+  "437": true,
+  "438": false,
+  "439": false,
+  "440": false,
+  "441": false,
+  "442": false,
+  "443": false,
+  "444": true,
+  "445": true,
+  "446": true,
+  "447": true,
+  "448": true,
+  "449": true,
+  "450": true
+ },
+ "Entity and numeric character references": {
+  "295": false,
+  "296": false,
+  "297": false,
+  "298": false,
+  "299": true,
+  "300": false,
+  "301": true,
+  "302": false,
+  "303": false,
+  "304": false,
+  "305": true,
+  "306": true
+ },
+ "Fenced code blocks": {
+  "84": true,
+  "85": true,
+  "86": true,
+  "87": true,
+  "88": true,
+  "89": true,
+  "90": false,
+  "91": false,
+  "92": false,
+  "93": true,
+  "94": true,
+  "95": false,
+  "96": false,
+  "97": false,
+  "98": true,
+  "99": true,
+  "100": true,
+  "101": false,
+  "102": false,
+  "103": false,
+  "104": true,
+  "105": true,
+  "106": true,
+  "107": true,
+  "108": true,
+  "109": false,
+  "110": false
+ },
+ "Hard line breaks": {
+  "594": true,
+  "595": true,
+  "596": true,
+  "597": false,
+  "598": false,
+  "599": true,
+  "600": true,
+  "601": false,
+  "602": false,
+  "603": false,
+  "604": false,
+  "605": true,
+  "606": false,
+  "607": true,
+  "608": true
+ },
+ "HTML blocks": {
+  "111": true,
+  "112": false,
+  "113": false,
+  "114": false,
+  "115": true,
+  "116": true,
+  "117": true,
+  "118": true,
+  "119": true,
+  "120": true,
+  "121": true,
+  "122": true,
+  "123": true,
+  "124": true,
+  "125": true,
+  "126": true,
+  "127": false,
+  "128": true,
+  "129": false,
+  "130": false,
+  "131": false,
+  "132": false,
+  "133": false,
+  "134": false,
+  "135": false,
+  "136": false,
+  "137": false,
+  "138": false,
+  "139": true,
+  "140": false,
+  "141": false,
+  "142": false,
+  "143": false,
+  "144": false,
+  "145": false,
+  "146": false,
+  "147": true,
+  "148": true,
+  "149": false,
+  "150": true,
+  "151": false,
+  "152": false
+ },
+ "Images": {
+  "532": false,
+  "533": false,
+  "534": false,
+  "535": false,
+  "536": false,
+  "537": false,
+  "538": false,
+  "539": false,
+  "540": false,
+  "541": false,
+  "542": false,
+  "543": false,
+  "544": false,
+  "545": false,
+  "546": false,
+  "547": false,
+  "548": false,
+  "549": false,
+  "550": false,
+  "551": false,
+  "552": true,
+  "553": false
+ },
+ "Indented code blocks": {
+  "72": true,
+  "73": false,
+  "74": false,
+  "75": true,
+  "76": false,
+  "77": true,
+  "78": false,
+  "79": true,
+  "80": false,
+  "81": true,
+  "82": false,
+  "83": true
+ },
+ "Inlines": {
+  "281": true
+ },
+ "Link reference definitions": {
+  "153": false,
+  "154": false,
+  "155": false,
+  "156": false,
+  "157": false,
+  "158": true,
+  "159": false,
+  "160": true,
+  "161": false,
+  "162": false,
+  "163": false,
+  "164": false,
+  "165": false,
+  "166": false,
+  "167": false,
+  "168": false,
+  "169": false,
+  "170": false,
+  "171": false,
+  "172": false,
+  "173": false,
+  "174": false,
+  "175": false
+ },
+ "Links": {
+  "451": true,
+  "452": true,
+  "453": true,
+  "454": true,
+  "455": true,
+  "456": false,
+  "457": true,
+  "458": false,
+  "459": false,
+  "460": true,
+  "461": false,
+  "462": false,
+  "463": true,
+  "464": false,
+  "465": true,
+  "466": false,
+  "467": false,
+  "468": false,
+  "469": false,
+  "470": false,
+  "471": false,
+  "472": false,
+  "473": false,
+  "474": true,
+  "475": true,
+  "476": true,
+  "477": true,
+  "478": true,
+  "479": false,
+  "480": false,
+  "481": false,
+  "482": false,
+  "483": false,
+  "484": false,
+  "485": true,
+  "486": true,
+  "487": true,
+  "488": true,
+  "489": false,
+  "490": true,
+  "491": true,
+  "492": true,
+  "493": false,
+  "494": false,
+  "495": false,
+  "496": false,
+  "497": false,
+  "498": true,
+  "499": true,
+  "500": true,
+  "501": false,
+  "502": true,
+  "503": true,
+  "504": false,
+  "505": false,
+  "506": false,
+  "507": false,
+  "508": false,
+  "509": false,
+  "510": true,
+  "511": true,
+  "512": true,
+  "513": false,
+  "514": true,
+  "515": false,
+  "516": true,
+  "517": true,
+  "518": true,
+  "519": false,
+  "520": false,
+  "521": false,
+  "522": false,
+  "523": false,
+  "524": false,
+  "525": false,
+  "526": true,
+  "527": false,
+  "528": true,
+  "529": false,
+  "530": false,
+  "531": false
+ },
+ "List items": {
+  "210": false,
+  "211": false,
+  "212": false,
+  "213": false,
+  "214": false,
+  "215": false,
+  "216": false,
+  "217": false,
+  "218": true,
+  "219": false,
+  "220": false,
+  "221": false,
+  "222": false,
+  "223": false,
+  "224": false,
+  "225": false,
+  "226": false,
+  "227": true,
+  "228": false,
+  "229": false,
+  "230": true,
+  "231": false,
+  "232": false,
+  "233": false,
+  "234": false,
+  "235": false,
+  "236": false,
+  "237": false,
+  "238": false,
+  "239": false,
+  "240": false,
+  "241": false,
+  "242": false,
+  "243": false,
+  "244": false,
+  "245": true,
+  "246": false,
+  "247": false,
+  "248": false,
+  "249": false,
+  "250": false,
+  "251": false,
+  "252": false,
+  "253": false,
+  "254": false,
+  "255": false,
+  "256": false
+ },
+ "Lists": {
+  "257": false,
+  "258": false,
+  "259": false,
+  "260": false,
+  "261": false,
+  "262": false,
+  "263": false,
+  "264": false,
+  "265": false,
+  "266": false,
+  "267": false,
+  "268": false,
+  "269": false,
+  "270": false,
+  "271": false,
+  "272": false,
+  "273": false,
+  "274": false,
+  "275": false,
+  "276": false,
+  "277": false,
+  "278": false,
+  "279": false,
+  "280": false
+ },
+ "Paragraphs": {
+  "176": true,
+  "177": true,
+  "178": true,
+  "179": false,
+  "180": false,
+  "181": false,
+  "182": true,
+  "183": false
+ },
+ "Precedence": {
+  "7": false
+ },
+ "Raw HTML": {
+  "573": false,
+  "574": false,
+  "575": false,
+  "576": false,
+  "577": true,
+  "578": false,
+  "579": false,
+  "580": false,
+  "581": false,
+  "582": false,
+  "583": true,
+  "584": false,
+  "585": false,
+  "586": false,
+  "587": false,
+  "588": true,
+  "589": true,
+  "590": false,
+  "591": true,
+  "592": true,
+  "593": false
+ },
+ "Setext headings": {
+  "46": true,
+  "47": false,
+  "48": true,
+  "49": false,
+  "50": true,
+  "51": false,
+  "52": false,
+  "53": true,
+  "54": false,
+  "55": true,
+  "56": false,
+  "57": false,
+  "58": false,
+  "59": false,
+  "60": false,
+  "61": true,
+  "62": true,
+  "63": false,
+  "64": false,
+  "65": false,
+  "66": false,
+  "67": false,
+  "68": true,
+  "69": true,
+  "70": true,
+  "71": true
+ },
+ "Soft line breaks": {
+  "609": true,
+  "610": false
+ },
+ "Tabs": {
+  "1": true,
+  "2": false,
+  "3": true,
+  "4": false,
+  "5": false,
+  "6": true
+ },
+ "Textual content": {
+  "611": true,
+  "612": true,
+  "613": true
+ },
+ "Thematic breaks": {
+  "8": false,
+  "9": true,
+  "10": true,
+  "11": true,
+  "12": true,
+  "13": true,
+  "14": false,
+  "15": true,
+  "16": true,
+  "17": true,
+  "18": true,
+  "19": true,
+  "20": false,
+  "21": false,
+  "22": false,
+  "23": true,
+  "24": true,
+  "25": false,
+  "26": false
+ }
+}
diff --git a/pkgs/markdown/tool/common_mark_stats.txt b/pkgs/markdown/tool/common_mark_stats.txt
new file mode 100644
index 0000000..8fdfc1b
--- /dev/null
+++ b/pkgs/markdown/tool/common_mark_stats.txt
@@ -0,0 +1,27 @@
+  11 of   19 –  57.9%  ATX headings
+   4 of   19 –  21.1%  Autolinks
+   7 of   13 –  53.8%  Backslash escapes
+   1 of    1 – 100.0%  Blank lines
+   1 of   25 –   4.0%  Block quotes
+   9 of   15 –  60.0%  Code spans
+  71 of  129 –  55.0%  Emphasis and strong emphasis
+   4 of   12 –  33.3%  Entity and numeric character references
+  16 of   27 –  59.3%  Fenced code blocks
+   8 of   15 –  53.3%  Hard line breaks
+  18 of   42 –  42.9%  HTML blocks
+   1 of   22 –   4.5%  Images
+   6 of   12 –  50.0%  Indented code blocks
+   1 of    1 – 100.0%  Inlines
+   2 of   23 –   8.7%  Link reference definitions
+  35 of   81 –  43.2%  Links
+   4 of   47 –   8.5%  List items
+   0 of   24 –   0.0%  Lists
+   4 of    8 –  50.0%  Paragraphs
+   0 of    1 –   0.0%  Precedence
+   6 of   21 –  28.6%  Raw HTML
+  11 of   26 –  42.3%  Setext headings
+   1 of    2 –  50.0%  Soft line breaks
+   3 of    6 –  50.0%  Tabs
+   3 of    3 – 100.0%  Textual content
+  12 of   19 –  63.2%  Thematic breaks
+ 239 of  613 –  39.0%  TOTAL
diff --git a/pkgs/markdown/tool/common_mark_tests.json b/pkgs/markdown/tool/common_mark_tests.json
new file mode 100644
index 0000000..a3c9512
--- /dev/null
+++ b/pkgs/markdown/tool/common_mark_tests.json
@@ -0,0 +1,4906 @@
+[
+  {
+    "markdown": "\tfoo\tbaz\t\tbim\n",
+    "section": "Tabs",
+    "example": 1,
+    "start_line": 265,
+    "html": "<pre><code>foo\tbaz\t\tbim\n</code></pre>\n",
+    "end_line": 270
+  },
+  {
+    "markdown": "  \tfoo\tbaz\t\tbim\n",
+    "section": "Tabs",
+    "example": 2,
+    "start_line": 273,
+    "html": "<pre><code>foo\tbaz\t\tbim\n</code></pre>\n",
+    "end_line": 278
+  },
+  {
+    "markdown": "    a\ta\n    ὐ\ta\n",
+    "section": "Tabs",
+    "example": 3,
+    "start_line": 281,
+    "html": "<pre><code>a\ta\nὐ\ta\n</code></pre>\n",
+    "end_line": 288
+  },
+  {
+    "markdown": "  - foo\n\n\tbar\n",
+    "section": "Tabs",
+    "example": 4,
+    "start_line": 291,
+    "html": "<ul>\n<li>\n<p>foo</p>\n<p>bar</p>\n</li>\n</ul>\n",
+    "end_line": 302
+  },
+  {
+    "markdown": ">\tfoo\tbar\n",
+    "section": "Tabs",
+    "example": 5,
+    "start_line": 305,
+    "html": "<blockquote>\n<p>foo\tbar</p>\n</blockquote>\n",
+    "end_line": 311
+  },
+  {
+    "markdown": "    foo\n\tbar\n",
+    "section": "Tabs",
+    "example": 6,
+    "start_line": 314,
+    "html": "<pre><code>foo\nbar\n</code></pre>\n",
+    "end_line": 321
+  },
+  {
+    "markdown": "- `one\n- two`\n",
+    "section": "Precedence",
+    "example": 7,
+    "start_line": 345,
+    "html": "<ul>\n<li>`one</li>\n<li>two`</li>\n</ul>\n",
+    "end_line": 353
+  },
+  {
+    "markdown": "***\n---\n___\n",
+    "section": "Thematic breaks",
+    "example": 8,
+    "start_line": 384,
+    "html": "<hr />\n<hr />\n<hr />\n",
+    "end_line": 392
+  },
+  {
+    "markdown": "+++\n",
+    "section": "Thematic breaks",
+    "example": 9,
+    "start_line": 397,
+    "html": "<p>+++</p>\n",
+    "end_line": 401
+  },
+  {
+    "markdown": "===\n",
+    "section": "Thematic breaks",
+    "example": 10,
+    "start_line": 404,
+    "html": "<p>===</p>\n",
+    "end_line": 408
+  },
+  {
+    "markdown": "--\n**\n__\n",
+    "section": "Thematic breaks",
+    "example": 11,
+    "start_line": 413,
+    "html": "<p>--\n**\n__</p>\n",
+    "end_line": 421
+  },
+  {
+    "markdown": " ***\n  ***\n   ***\n",
+    "section": "Thematic breaks",
+    "example": 12,
+    "start_line": 426,
+    "html": "<hr />\n<hr />\n<hr />\n",
+    "end_line": 434
+  },
+  {
+    "markdown": "    ***\n",
+    "section": "Thematic breaks",
+    "example": 13,
+    "start_line": 439,
+    "html": "<pre><code>***\n</code></pre>\n",
+    "end_line": 444
+  },
+  {
+    "markdown": "Foo\n    ***\n",
+    "section": "Thematic breaks",
+    "example": 14,
+    "start_line": 447,
+    "html": "<p>Foo\n***</p>\n",
+    "end_line": 453
+  },
+  {
+    "markdown": "_____________________________________\n",
+    "section": "Thematic breaks",
+    "example": 15,
+    "start_line": 458,
+    "html": "<hr />\n",
+    "end_line": 462
+  },
+  {
+    "markdown": " - - -\n",
+    "section": "Thematic breaks",
+    "example": 16,
+    "start_line": 467,
+    "html": "<hr />\n",
+    "end_line": 471
+  },
+  {
+    "markdown": " **  * ** * ** * **\n",
+    "section": "Thematic breaks",
+    "example": 17,
+    "start_line": 474,
+    "html": "<hr />\n",
+    "end_line": 478
+  },
+  {
+    "markdown": "-     -      -      -\n",
+    "section": "Thematic breaks",
+    "example": 18,
+    "start_line": 481,
+    "html": "<hr />\n",
+    "end_line": 485
+  },
+  {
+    "markdown": "- - - -    \n",
+    "section": "Thematic breaks",
+    "example": 19,
+    "start_line": 490,
+    "html": "<hr />\n",
+    "end_line": 494
+  },
+  {
+    "markdown": "_ _ _ _ a\n\na------\n\n---a---\n",
+    "section": "Thematic breaks",
+    "example": 20,
+    "start_line": 499,
+    "html": "<p>_ _ _ _ a</p>\n<p>a------</p>\n<p>---a---</p>\n",
+    "end_line": 509
+  },
+  {
+    "markdown": " *-*\n",
+    "section": "Thematic breaks",
+    "example": 21,
+    "start_line": 515,
+    "html": "<p><em>-</em></p>\n",
+    "end_line": 519
+  },
+  {
+    "markdown": "- foo\n***\n- bar\n",
+    "section": "Thematic breaks",
+    "example": 22,
+    "start_line": 524,
+    "html": "<ul>\n<li>foo</li>\n</ul>\n<hr />\n<ul>\n<li>bar</li>\n</ul>\n",
+    "end_line": 536
+  },
+  {
+    "markdown": "Foo\n***\nbar\n",
+    "section": "Thematic breaks",
+    "example": 23,
+    "start_line": 541,
+    "html": "<p>Foo</p>\n<hr />\n<p>bar</p>\n",
+    "end_line": 549
+  },
+  {
+    "markdown": "Foo\n---\nbar\n",
+    "section": "Thematic breaks",
+    "example": 24,
+    "start_line": 558,
+    "html": "<h2>Foo</h2>\n<p>bar</p>\n",
+    "end_line": 565
+  },
+  {
+    "markdown": "* Foo\n* * *\n* Bar\n",
+    "section": "Thematic breaks",
+    "example": 25,
+    "start_line": 571,
+    "html": "<ul>\n<li>Foo</li>\n</ul>\n<hr />\n<ul>\n<li>Bar</li>\n</ul>\n",
+    "end_line": 583
+  },
+  {
+    "markdown": "- Foo\n- * * *\n",
+    "section": "Thematic breaks",
+    "example": 26,
+    "start_line": 588,
+    "html": "<ul>\n<li>Foo</li>\n<li>\n<hr />\n</li>\n</ul>\n",
+    "end_line": 598
+  },
+  {
+    "markdown": "# foo\n## foo\n### foo\n#### foo\n##### foo\n###### foo\n",
+    "section": "ATX headings",
+    "example": 27,
+    "start_line": 617,
+    "html": "<h1>foo</h1>\n<h2>foo</h2>\n<h3>foo</h3>\n<h4>foo</h4>\n<h5>foo</h5>\n<h6>foo</h6>\n",
+    "end_line": 631
+  },
+  {
+    "markdown": "####### foo\n",
+    "section": "ATX headings",
+    "example": 28,
+    "start_line": 636,
+    "html": "<p>####### foo</p>\n",
+    "end_line": 640
+  },
+  {
+    "markdown": "#5 bolt\n\n#hashtag\n",
+    "section": "ATX headings",
+    "example": 29,
+    "start_line": 651,
+    "html": "<p>#5 bolt</p>\n<p>#hashtag</p>\n",
+    "end_line": 658
+  },
+  {
+    "markdown": "#\tfoo\n",
+    "section": "ATX headings",
+    "example": 30,
+    "start_line": 663,
+    "html": "<p>#\tfoo</p>\n",
+    "end_line": 667
+  },
+  {
+    "markdown": "\\## foo\n",
+    "section": "ATX headings",
+    "example": 31,
+    "start_line": 672,
+    "html": "<p>## foo</p>\n",
+    "end_line": 676
+  },
+  {
+    "markdown": "# foo *bar* \\*baz\\*\n",
+    "section": "ATX headings",
+    "example": 32,
+    "start_line": 681,
+    "html": "<h1>foo <em>bar</em> *baz*</h1>\n",
+    "end_line": 685
+  },
+  {
+    "markdown": "#                  foo                     \n",
+    "section": "ATX headings",
+    "example": 33,
+    "start_line": 690,
+    "html": "<h1>foo</h1>\n",
+    "end_line": 694
+  },
+  {
+    "markdown": " ### foo\n  ## foo\n   # foo\n",
+    "section": "ATX headings",
+    "example": 34,
+    "start_line": 699,
+    "html": "<h3>foo</h3>\n<h2>foo</h2>\n<h1>foo</h1>\n",
+    "end_line": 707
+  },
+  {
+    "markdown": "    # foo\n",
+    "section": "ATX headings",
+    "example": 35,
+    "start_line": 712,
+    "html": "<pre><code># foo\n</code></pre>\n",
+    "end_line": 717
+  },
+  {
+    "markdown": "foo\n    # bar\n",
+    "section": "ATX headings",
+    "example": 36,
+    "start_line": 720,
+    "html": "<p>foo\n# bar</p>\n",
+    "end_line": 726
+  },
+  {
+    "markdown": "## foo ##\n  ###   bar    ###\n",
+    "section": "ATX headings",
+    "example": 37,
+    "start_line": 731,
+    "html": "<h2>foo</h2>\n<h3>bar</h3>\n",
+    "end_line": 737
+  },
+  {
+    "markdown": "# foo ##################################\n##### foo ##\n",
+    "section": "ATX headings",
+    "example": 38,
+    "start_line": 742,
+    "html": "<h1>foo</h1>\n<h5>foo</h5>\n",
+    "end_line": 748
+  },
+  {
+    "markdown": "### foo ###     \n",
+    "section": "ATX headings",
+    "example": 39,
+    "start_line": 753,
+    "html": "<h3>foo</h3>\n",
+    "end_line": 757
+  },
+  {
+    "markdown": "### foo ### b\n",
+    "section": "ATX headings",
+    "example": 40,
+    "start_line": 764,
+    "html": "<h3>foo ### b</h3>\n",
+    "end_line": 768
+  },
+  {
+    "markdown": "# foo#\n",
+    "section": "ATX headings",
+    "example": 41,
+    "start_line": 773,
+    "html": "<h1>foo#</h1>\n",
+    "end_line": 777
+  },
+  {
+    "markdown": "### foo \\###\n## foo #\\##\n# foo \\#\n",
+    "section": "ATX headings",
+    "example": 42,
+    "start_line": 783,
+    "html": "<h3>foo ###</h3>\n<h2>foo ###</h2>\n<h1>foo #</h1>\n",
+    "end_line": 791
+  },
+  {
+    "markdown": "****\n## foo\n****\n",
+    "section": "ATX headings",
+    "example": 43,
+    "start_line": 797,
+    "html": "<hr />\n<h2>foo</h2>\n<hr />\n",
+    "end_line": 805
+  },
+  {
+    "markdown": "Foo bar\n# baz\nBar foo\n",
+    "section": "ATX headings",
+    "example": 44,
+    "start_line": 808,
+    "html": "<p>Foo bar</p>\n<h1>baz</h1>\n<p>Bar foo</p>\n",
+    "end_line": 816
+  },
+  {
+    "markdown": "## \n#\n### ###\n",
+    "section": "ATX headings",
+    "example": 45,
+    "start_line": 821,
+    "html": "<h2></h2>\n<h1></h1>\n<h3></h3>\n",
+    "end_line": 829
+  },
+  {
+    "markdown": "Foo *bar*\n=========\n\nFoo *bar*\n---------\n",
+    "section": "Setext headings",
+    "example": 46,
+    "start_line": 864,
+    "html": "<h1>Foo <em>bar</em></h1>\n<h2>Foo <em>bar</em></h2>\n",
+    "end_line": 873
+  },
+  {
+    "markdown": "Foo *bar\nbaz*\n====\n",
+    "section": "Setext headings",
+    "example": 47,
+    "start_line": 878,
+    "html": "<h1>Foo <em>bar\nbaz</em></h1>\n",
+    "end_line": 885
+  },
+  {
+    "markdown": "Foo\n-------------------------\n\nFoo\n=\n",
+    "section": "Setext headings",
+    "example": 48,
+    "start_line": 890,
+    "html": "<h2>Foo</h2>\n<h1>Foo</h1>\n",
+    "end_line": 899
+  },
+  {
+    "markdown": "   Foo\n---\n\n  Foo\n-----\n\n  Foo\n  ===\n",
+    "section": "Setext headings",
+    "example": 49,
+    "start_line": 905,
+    "html": "<h2>Foo</h2>\n<h2>Foo</h2>\n<h1>Foo</h1>\n",
+    "end_line": 918
+  },
+  {
+    "markdown": "    Foo\n    ---\n\n    Foo\n---\n",
+    "section": "Setext headings",
+    "example": 50,
+    "start_line": 923,
+    "html": "<pre><code>Foo\n---\n\nFoo\n</code></pre>\n<hr />\n",
+    "end_line": 936
+  },
+  {
+    "markdown": "Foo\n   ----      \n",
+    "section": "Setext headings",
+    "example": 51,
+    "start_line": 942,
+    "html": "<h2>Foo</h2>\n",
+    "end_line": 947
+  },
+  {
+    "markdown": "Foo\n    ---\n",
+    "section": "Setext headings",
+    "example": 52,
+    "start_line": 952,
+    "html": "<p>Foo\n---</p>\n",
+    "end_line": 958
+  },
+  {
+    "markdown": "Foo\n= =\n\nFoo\n--- -\n",
+    "section": "Setext headings",
+    "example": 53,
+    "start_line": 963,
+    "html": "<p>Foo\n= =</p>\n<p>Foo</p>\n<hr />\n",
+    "end_line": 974
+  },
+  {
+    "markdown": "Foo  \n-----\n",
+    "section": "Setext headings",
+    "example": 54,
+    "start_line": 979,
+    "html": "<h2>Foo</h2>\n",
+    "end_line": 984
+  },
+  {
+    "markdown": "Foo\\\n----\n",
+    "section": "Setext headings",
+    "example": 55,
+    "start_line": 989,
+    "html": "<h2>Foo\\</h2>\n",
+    "end_line": 994
+  },
+  {
+    "markdown": "`Foo\n----\n`\n\n<a title=\"a lot\n---\nof dashes\"/>\n",
+    "section": "Setext headings",
+    "example": 56,
+    "start_line": 1000,
+    "html": "<h2>`Foo</h2>\n<p>`</p>\n<h2>&lt;a title=&quot;a lot</h2>\n<p>of dashes&quot;/&gt;</p>\n",
+    "end_line": 1013
+  },
+  {
+    "markdown": "> Foo\n---\n",
+    "section": "Setext headings",
+    "example": 57,
+    "start_line": 1019,
+    "html": "<blockquote>\n<p>Foo</p>\n</blockquote>\n<hr />\n",
+    "end_line": 1027
+  },
+  {
+    "markdown": "> foo\nbar\n===\n",
+    "section": "Setext headings",
+    "example": 58,
+    "start_line": 1030,
+    "html": "<blockquote>\n<p>foo\nbar\n===</p>\n</blockquote>\n",
+    "end_line": 1040
+  },
+  {
+    "markdown": "- Foo\n---\n",
+    "section": "Setext headings",
+    "example": 59,
+    "start_line": 1043,
+    "html": "<ul>\n<li>Foo</li>\n</ul>\n<hr />\n",
+    "end_line": 1051
+  },
+  {
+    "markdown": "Foo\nBar\n---\n",
+    "section": "Setext headings",
+    "example": 60,
+    "start_line": 1058,
+    "html": "<h2>Foo\nBar</h2>\n",
+    "end_line": 1065
+  },
+  {
+    "markdown": "---\nFoo\n---\nBar\n---\nBaz\n",
+    "section": "Setext headings",
+    "example": 61,
+    "start_line": 1071,
+    "html": "<hr />\n<h2>Foo</h2>\n<h2>Bar</h2>\n<p>Baz</p>\n",
+    "end_line": 1083
+  },
+  {
+    "markdown": "\n====\n",
+    "section": "Setext headings",
+    "example": 62,
+    "start_line": 1088,
+    "html": "<p>====</p>\n",
+    "end_line": 1093
+  },
+  {
+    "markdown": "---\n---\n",
+    "section": "Setext headings",
+    "example": 63,
+    "start_line": 1100,
+    "html": "<hr />\n<hr />\n",
+    "end_line": 1106
+  },
+  {
+    "markdown": "- foo\n-----\n",
+    "section": "Setext headings",
+    "example": 64,
+    "start_line": 1109,
+    "html": "<ul>\n<li>foo</li>\n</ul>\n<hr />\n",
+    "end_line": 1117
+  },
+  {
+    "markdown": "    foo\n---\n",
+    "section": "Setext headings",
+    "example": 65,
+    "start_line": 1120,
+    "html": "<pre><code>foo\n</code></pre>\n<hr />\n",
+    "end_line": 1127
+  },
+  {
+    "markdown": "> foo\n-----\n",
+    "section": "Setext headings",
+    "example": 66,
+    "start_line": 1130,
+    "html": "<blockquote>\n<p>foo</p>\n</blockquote>\n<hr />\n",
+    "end_line": 1138
+  },
+  {
+    "markdown": "\\> foo\n------\n",
+    "section": "Setext headings",
+    "example": 67,
+    "start_line": 1144,
+    "html": "<h2>&gt; foo</h2>\n",
+    "end_line": 1149
+  },
+  {
+    "markdown": "Foo\n\nbar\n---\nbaz\n",
+    "section": "Setext headings",
+    "example": 68,
+    "start_line": 1175,
+    "html": "<p>Foo</p>\n<h2>bar</h2>\n<p>baz</p>\n",
+    "end_line": 1185
+  },
+  {
+    "markdown": "Foo\nbar\n\n---\n\nbaz\n",
+    "section": "Setext headings",
+    "example": 69,
+    "start_line": 1191,
+    "html": "<p>Foo\nbar</p>\n<hr />\n<p>baz</p>\n",
+    "end_line": 1203
+  },
+  {
+    "markdown": "Foo\nbar\n* * *\nbaz\n",
+    "section": "Setext headings",
+    "example": 70,
+    "start_line": 1209,
+    "html": "<p>Foo\nbar</p>\n<hr />\n<p>baz</p>\n",
+    "end_line": 1219
+  },
+  {
+    "markdown": "Foo\nbar\n\\---\nbaz\n",
+    "section": "Setext headings",
+    "example": 71,
+    "start_line": 1224,
+    "html": "<p>Foo\nbar\n---\nbaz</p>\n",
+    "end_line": 1234
+  },
+  {
+    "markdown": "    a simple\n      indented code block\n",
+    "section": "Indented code blocks",
+    "example": 72,
+    "start_line": 1252,
+    "html": "<pre><code>a simple\n  indented code block\n</code></pre>\n",
+    "end_line": 1259
+  },
+  {
+    "markdown": "  - foo\n\n    bar\n",
+    "section": "Indented code blocks",
+    "example": 73,
+    "start_line": 1266,
+    "html": "<ul>\n<li>\n<p>foo</p>\n<p>bar</p>\n</li>\n</ul>\n",
+    "end_line": 1277
+  },
+  {
+    "markdown": "1.  foo\n\n    - bar\n",
+    "section": "Indented code blocks",
+    "example": 74,
+    "start_line": 1280,
+    "html": "<ol>\n<li>\n<p>foo</p>\n<ul>\n<li>bar</li>\n</ul>\n</li>\n</ol>\n",
+    "end_line": 1293
+  },
+  {
+    "markdown": "    <a/>\n    *hi*\n\n    - one\n",
+    "section": "Indented code blocks",
+    "example": 75,
+    "start_line": 1300,
+    "html": "<pre><code>&lt;a/&gt;\n*hi*\n\n- one\n</code></pre>\n",
+    "end_line": 1311
+  },
+  {
+    "markdown": "    chunk1\n\n    chunk2\n  \n \n \n    chunk3\n",
+    "section": "Indented code blocks",
+    "example": 76,
+    "start_line": 1316,
+    "html": "<pre><code>chunk1\n\nchunk2\n\n\n\nchunk3\n</code></pre>\n",
+    "end_line": 1333
+  },
+  {
+    "markdown": "    chunk1\n      \n      chunk2\n",
+    "section": "Indented code blocks",
+    "example": 77,
+    "start_line": 1339,
+    "html": "<pre><code>chunk1\n  \n  chunk2\n</code></pre>\n",
+    "end_line": 1348
+  },
+  {
+    "markdown": "Foo\n    bar\n\n",
+    "section": "Indented code blocks",
+    "example": 78,
+    "start_line": 1354,
+    "html": "<p>Foo\nbar</p>\n",
+    "end_line": 1361
+  },
+  {
+    "markdown": "    foo\nbar\n",
+    "section": "Indented code blocks",
+    "example": 79,
+    "start_line": 1368,
+    "html": "<pre><code>foo\n</code></pre>\n<p>bar</p>\n",
+    "end_line": 1375
+  },
+  {
+    "markdown": "# Heading\n    foo\nHeading\n------\n    foo\n----\n",
+    "section": "Indented code blocks",
+    "example": 80,
+    "start_line": 1381,
+    "html": "<h1>Heading</h1>\n<pre><code>foo\n</code></pre>\n<h2>Heading</h2>\n<pre><code>foo\n</code></pre>\n<hr />\n",
+    "end_line": 1396
+  },
+  {
+    "markdown": "        foo\n    bar\n",
+    "section": "Indented code blocks",
+    "example": 81,
+    "start_line": 1401,
+    "html": "<pre><code>    foo\nbar\n</code></pre>\n",
+    "end_line": 1408
+  },
+  {
+    "markdown": "\n    \n    foo\n    \n\n",
+    "section": "Indented code blocks",
+    "example": 82,
+    "start_line": 1414,
+    "html": "<pre><code>foo\n</code></pre>\n",
+    "end_line": 1423
+  },
+  {
+    "markdown": "    foo  \n",
+    "section": "Indented code blocks",
+    "example": 83,
+    "start_line": 1428,
+    "html": "<pre><code>foo  \n</code></pre>\n",
+    "end_line": 1433
+  },
+  {
+    "markdown": "```\n<\n >\n```\n",
+    "section": "Fenced code blocks",
+    "example": 84,
+    "start_line": 1483,
+    "html": "<pre><code>&lt;\n &gt;\n</code></pre>\n",
+    "end_line": 1492
+  },
+  {
+    "markdown": "~~~\n<\n >\n~~~\n",
+    "section": "Fenced code blocks",
+    "example": 85,
+    "start_line": 1497,
+    "html": "<pre><code>&lt;\n &gt;\n</code></pre>\n",
+    "end_line": 1506
+  },
+  {
+    "markdown": "```\naaa\n~~~\n```\n",
+    "section": "Fenced code blocks",
+    "example": 86,
+    "start_line": 1512,
+    "html": "<pre><code>aaa\n~~~\n</code></pre>\n",
+    "end_line": 1521
+  },
+  {
+    "markdown": "~~~\naaa\n```\n~~~\n",
+    "section": "Fenced code blocks",
+    "example": 87,
+    "start_line": 1524,
+    "html": "<pre><code>aaa\n```\n</code></pre>\n",
+    "end_line": 1533
+  },
+  {
+    "markdown": "````\naaa\n```\n``````\n",
+    "section": "Fenced code blocks",
+    "example": 88,
+    "start_line": 1538,
+    "html": "<pre><code>aaa\n```\n</code></pre>\n",
+    "end_line": 1547
+  },
+  {
+    "markdown": "~~~~\naaa\n~~~\n~~~~\n",
+    "section": "Fenced code blocks",
+    "example": 89,
+    "start_line": 1550,
+    "html": "<pre><code>aaa\n~~~\n</code></pre>\n",
+    "end_line": 1559
+  },
+  {
+    "markdown": "```\n",
+    "section": "Fenced code blocks",
+    "example": 90,
+    "start_line": 1565,
+    "html": "<pre><code></code></pre>\n",
+    "end_line": 1569
+  },
+  {
+    "markdown": "`````\n\n```\naaa\n",
+    "section": "Fenced code blocks",
+    "example": 91,
+    "start_line": 1572,
+    "html": "<pre><code>\n```\naaa\n</code></pre>\n",
+    "end_line": 1582
+  },
+  {
+    "markdown": "> ```\n> aaa\n\nbbb\n",
+    "section": "Fenced code blocks",
+    "example": 92,
+    "start_line": 1585,
+    "html": "<blockquote>\n<pre><code>aaa\n</code></pre>\n</blockquote>\n<p>bbb</p>\n",
+    "end_line": 1596
+  },
+  {
+    "markdown": "```\n\n  \n```\n",
+    "section": "Fenced code blocks",
+    "example": 93,
+    "start_line": 1601,
+    "html": "<pre><code>\n  \n</code></pre>\n",
+    "end_line": 1610
+  },
+  {
+    "markdown": "```\n```\n",
+    "section": "Fenced code blocks",
+    "example": 94,
+    "start_line": 1615,
+    "html": "<pre><code></code></pre>\n",
+    "end_line": 1620
+  },
+  {
+    "markdown": " ```\n aaa\naaa\n```\n",
+    "section": "Fenced code blocks",
+    "example": 95,
+    "start_line": 1627,
+    "html": "<pre><code>aaa\naaa\n</code></pre>\n",
+    "end_line": 1636
+  },
+  {
+    "markdown": "  ```\naaa\n  aaa\naaa\n  ```\n",
+    "section": "Fenced code blocks",
+    "example": 96,
+    "start_line": 1639,
+    "html": "<pre><code>aaa\naaa\naaa\n</code></pre>\n",
+    "end_line": 1650
+  },
+  {
+    "markdown": "   ```\n   aaa\n    aaa\n  aaa\n   ```\n",
+    "section": "Fenced code blocks",
+    "example": 97,
+    "start_line": 1653,
+    "html": "<pre><code>aaa\n aaa\naaa\n</code></pre>\n",
+    "end_line": 1664
+  },
+  {
+    "markdown": "    ```\n    aaa\n    ```\n",
+    "section": "Fenced code blocks",
+    "example": 98,
+    "start_line": 1669,
+    "html": "<pre><code>```\naaa\n```\n</code></pre>\n",
+    "end_line": 1678
+  },
+  {
+    "markdown": "```\naaa\n  ```\n",
+    "section": "Fenced code blocks",
+    "example": 99,
+    "start_line": 1684,
+    "html": "<pre><code>aaa\n</code></pre>\n",
+    "end_line": 1691
+  },
+  {
+    "markdown": "   ```\naaa\n  ```\n",
+    "section": "Fenced code blocks",
+    "example": 100,
+    "start_line": 1694,
+    "html": "<pre><code>aaa\n</code></pre>\n",
+    "end_line": 1701
+  },
+  {
+    "markdown": "```\naaa\n    ```\n",
+    "section": "Fenced code blocks",
+    "example": 101,
+    "start_line": 1706,
+    "html": "<pre><code>aaa\n    ```\n</code></pre>\n",
+    "end_line": 1714
+  },
+  {
+    "markdown": "``` ```\naaa\n",
+    "section": "Fenced code blocks",
+    "example": 102,
+    "start_line": 1720,
+    "html": "<p><code></code>\naaa</p>\n",
+    "end_line": 1726
+  },
+  {
+    "markdown": "~~~~~~\naaa\n~~~ ~~\n",
+    "section": "Fenced code blocks",
+    "example": 103,
+    "start_line": 1729,
+    "html": "<pre><code>aaa\n~~~ ~~\n</code></pre>\n",
+    "end_line": 1737
+  },
+  {
+    "markdown": "foo\n```\nbar\n```\nbaz\n",
+    "section": "Fenced code blocks",
+    "example": 104,
+    "start_line": 1743,
+    "html": "<p>foo</p>\n<pre><code>bar\n</code></pre>\n<p>baz</p>\n",
+    "end_line": 1754
+  },
+  {
+    "markdown": "foo\n---\n~~~\nbar\n~~~\n# baz\n",
+    "section": "Fenced code blocks",
+    "example": 105,
+    "start_line": 1760,
+    "html": "<h2>foo</h2>\n<pre><code>bar\n</code></pre>\n<h1>baz</h1>\n",
+    "end_line": 1772
+  },
+  {
+    "markdown": "```ruby\ndef foo(x)\n  return 3\nend\n```\n",
+    "section": "Fenced code blocks",
+    "example": 106,
+    "start_line": 1780,
+    "html": "<pre><code class=\"language-ruby\">def foo(x)\n  return 3\nend\n</code></pre>\n",
+    "end_line": 1791
+  },
+  {
+    "markdown": "~~~~    ruby startline=3 $%@#$\ndef foo(x)\n  return 3\nend\n~~~~~~~\n",
+    "section": "Fenced code blocks",
+    "example": 107,
+    "start_line": 1794,
+    "html": "<pre><code class=\"language-ruby\">def foo(x)\n  return 3\nend\n</code></pre>\n",
+    "end_line": 1805
+  },
+  {
+    "markdown": "````;\n````\n",
+    "section": "Fenced code blocks",
+    "example": 108,
+    "start_line": 1808,
+    "html": "<pre><code class=\"language-;\"></code></pre>\n",
+    "end_line": 1813
+  },
+  {
+    "markdown": "``` aa ```\nfoo\n",
+    "section": "Fenced code blocks",
+    "example": 109,
+    "start_line": 1818,
+    "html": "<p><code>aa</code>\nfoo</p>\n",
+    "end_line": 1824
+  },
+  {
+    "markdown": "```\n``` aaa\n```\n",
+    "section": "Fenced code blocks",
+    "example": 110,
+    "start_line": 1829,
+    "html": "<pre><code>``` aaa\n</code></pre>\n",
+    "end_line": 1836
+  },
+  {
+    "markdown": "<table>\n  <tr>\n    <td>\n           hi\n    </td>\n  </tr>\n</table>\n\nokay.\n",
+    "section": "HTML blocks",
+    "example": 111,
+    "start_line": 1903,
+    "html": "<table>\n  <tr>\n    <td>\n           hi\n    </td>\n  </tr>\n</table>\n<p>okay.</p>\n",
+    "end_line": 1922
+  },
+  {
+    "markdown": " <div>\n  *hello*\n         <foo><a>\n",
+    "section": "HTML blocks",
+    "example": 112,
+    "start_line": 1925,
+    "html": " <div>\n  *hello*\n         <foo><a>\n",
+    "end_line": 1933
+  },
+  {
+    "markdown": "</div>\n*foo*\n",
+    "section": "HTML blocks",
+    "example": 113,
+    "start_line": 1938,
+    "html": "</div>\n*foo*\n",
+    "end_line": 1944
+  },
+  {
+    "markdown": "<DIV CLASS=\"foo\">\n\n*Markdown*\n\n</DIV>\n",
+    "section": "HTML blocks",
+    "example": 114,
+    "start_line": 1949,
+    "html": "<DIV CLASS=\"foo\">\n<p><em>Markdown</em></p>\n</DIV>\n",
+    "end_line": 1959
+  },
+  {
+    "markdown": "<div id=\"foo\"\n  class=\"bar\">\n</div>\n",
+    "section": "HTML blocks",
+    "example": 115,
+    "start_line": 1965,
+    "html": "<div id=\"foo\"\n  class=\"bar\">\n</div>\n",
+    "end_line": 1973
+  },
+  {
+    "markdown": "<div id=\"foo\" class=\"bar\n  baz\">\n</div>\n",
+    "section": "HTML blocks",
+    "example": 116,
+    "start_line": 1976,
+    "html": "<div id=\"foo\" class=\"bar\n  baz\">\n</div>\n",
+    "end_line": 1984
+  },
+  {
+    "markdown": "<div>\n*foo*\n\n*bar*\n",
+    "section": "HTML blocks",
+    "example": 117,
+    "start_line": 1988,
+    "html": "<div>\n*foo*\n<p><em>bar</em></p>\n",
+    "end_line": 1997
+  },
+  {
+    "markdown": "<div id=\"foo\"\n*hi*\n",
+    "section": "HTML blocks",
+    "example": 118,
+    "start_line": 2004,
+    "html": "<div id=\"foo\"\n*hi*\n",
+    "end_line": 2010
+  },
+  {
+    "markdown": "<div class\nfoo\n",
+    "section": "HTML blocks",
+    "example": 119,
+    "start_line": 2013,
+    "html": "<div class\nfoo\n",
+    "end_line": 2019
+  },
+  {
+    "markdown": "<div *???-&&&-<---\n*foo*\n",
+    "section": "HTML blocks",
+    "example": 120,
+    "start_line": 2025,
+    "html": "<div *???-&&&-<---\n*foo*\n",
+    "end_line": 2031
+  },
+  {
+    "markdown": "<div><a href=\"bar\">*foo*</a></div>\n",
+    "section": "HTML blocks",
+    "example": 121,
+    "start_line": 2037,
+    "html": "<div><a href=\"bar\">*foo*</a></div>\n",
+    "end_line": 2041
+  },
+  {
+    "markdown": "<table><tr><td>\nfoo\n</td></tr></table>\n",
+    "section": "HTML blocks",
+    "example": 122,
+    "start_line": 2044,
+    "html": "<table><tr><td>\nfoo\n</td></tr></table>\n",
+    "end_line": 2052
+  },
+  {
+    "markdown": "<div></div>\n``` c\nint x = 33;\n```\n",
+    "section": "HTML blocks",
+    "example": 123,
+    "start_line": 2061,
+    "html": "<div></div>\n``` c\nint x = 33;\n```\n",
+    "end_line": 2071
+  },
+  {
+    "markdown": "<a href=\"foo\">\n*bar*\n</a>\n",
+    "section": "HTML blocks",
+    "example": 124,
+    "start_line": 2078,
+    "html": "<a href=\"foo\">\n*bar*\n</a>\n",
+    "end_line": 2086
+  },
+  {
+    "markdown": "<Warning>\n*bar*\n</Warning>\n",
+    "section": "HTML blocks",
+    "example": 125,
+    "start_line": 2091,
+    "html": "<Warning>\n*bar*\n</Warning>\n",
+    "end_line": 2099
+  },
+  {
+    "markdown": "<i class=\"foo\">\n*bar*\n</i>\n",
+    "section": "HTML blocks",
+    "example": 126,
+    "start_line": 2102,
+    "html": "<i class=\"foo\">\n*bar*\n</i>\n",
+    "end_line": 2110
+  },
+  {
+    "markdown": "</ins>\n*bar*\n",
+    "section": "HTML blocks",
+    "example": 127,
+    "start_line": 2113,
+    "html": "</ins>\n*bar*\n",
+    "end_line": 2119
+  },
+  {
+    "markdown": "<del>\n*foo*\n</del>\n",
+    "section": "HTML blocks",
+    "example": 128,
+    "start_line": 2128,
+    "html": "<del>\n*foo*\n</del>\n",
+    "end_line": 2136
+  },
+  {
+    "markdown": "<del>\n\n*foo*\n\n</del>\n",
+    "section": "HTML blocks",
+    "example": 129,
+    "start_line": 2143,
+    "html": "<del>\n<p><em>foo</em></p>\n</del>\n",
+    "end_line": 2153
+  },
+  {
+    "markdown": "<del>*foo*</del>\n",
+    "section": "HTML blocks",
+    "example": 130,
+    "start_line": 2161,
+    "html": "<p><del><em>foo</em></del></p>\n",
+    "end_line": 2165
+  },
+  {
+    "markdown": "<pre language=\"haskell\"><code>\nimport Text.HTML.TagSoup\n\nmain :: IO ()\nmain = print $ parseTags tags\n</code></pre>\n",
+    "section": "HTML blocks",
+    "example": 131,
+    "start_line": 2177,
+    "html": "<pre language=\"haskell\"><code>\nimport Text.HTML.TagSoup\n\nmain :: IO ()\nmain = print $ parseTags tags\n</code></pre>\n",
+    "end_line": 2191
+  },
+  {
+    "markdown": "<script type=\"text/javascript\">\n// JavaScript example\n\ndocument.getElementById(\"demo\").innerHTML = \"Hello JavaScript!\";\n</script>\n",
+    "section": "HTML blocks",
+    "example": 132,
+    "start_line": 2196,
+    "html": "<script type=\"text/javascript\">\n// JavaScript example\n\ndocument.getElementById(\"demo\").innerHTML = \"Hello JavaScript!\";\n</script>\n",
+    "end_line": 2208
+  },
+  {
+    "markdown": "<style\n  type=\"text/css\">\nh1 {color:red;}\n\np {color:blue;}\n</style>\n",
+    "section": "HTML blocks",
+    "example": 133,
+    "start_line": 2213,
+    "html": "<style\n  type=\"text/css\">\nh1 {color:red;}\n\np {color:blue;}\n</style>\n",
+    "end_line": 2227
+  },
+  {
+    "markdown": "<style\n  type=\"text/css\">\n\nfoo\n",
+    "section": "HTML blocks",
+    "example": 134,
+    "start_line": 2234,
+    "html": "<style\n  type=\"text/css\">\n\nfoo\n",
+    "end_line": 2244
+  },
+  {
+    "markdown": "> <div>\n> foo\n\nbar\n",
+    "section": "HTML blocks",
+    "example": 135,
+    "start_line": 2247,
+    "html": "<blockquote>\n<div>\nfoo\n</blockquote>\n<p>bar</p>\n",
+    "end_line": 2258
+  },
+  {
+    "markdown": "- <div>\n- foo\n",
+    "section": "HTML blocks",
+    "example": 136,
+    "start_line": 2261,
+    "html": "<ul>\n<li>\n<div>\n</li>\n<li>foo</li>\n</ul>\n",
+    "end_line": 2271
+  },
+  {
+    "markdown": "<style>p{color:red;}</style>\n*foo*\n",
+    "section": "HTML blocks",
+    "example": 137,
+    "start_line": 2276,
+    "html": "<style>p{color:red;}</style>\n<p><em>foo</em></p>\n",
+    "end_line": 2282
+  },
+  {
+    "markdown": "<!-- foo -->*bar*\n*baz*\n",
+    "section": "HTML blocks",
+    "example": 138,
+    "start_line": 2285,
+    "html": "<!-- foo -->*bar*\n<p><em>baz</em></p>\n",
+    "end_line": 2291
+  },
+  {
+    "markdown": "<script>\nfoo\n</script>1. *bar*\n",
+    "section": "HTML blocks",
+    "example": 139,
+    "start_line": 2297,
+    "html": "<script>\nfoo\n</script>1. *bar*\n",
+    "end_line": 2305
+  },
+  {
+    "markdown": "<!-- Foo\n\nbar\n   baz -->\n",
+    "section": "HTML blocks",
+    "example": 140,
+    "start_line": 2310,
+    "html": "<!-- Foo\n\nbar\n   baz -->\n",
+    "end_line": 2320
+  },
+  {
+    "markdown": "<?php\n\n  echo '>';\n\n?>\n",
+    "section": "HTML blocks",
+    "example": 141,
+    "start_line": 2326,
+    "html": "<?php\n\n  echo '>';\n\n?>\n",
+    "end_line": 2338
+  },
+  {
+    "markdown": "<!DOCTYPE html>\n",
+    "section": "HTML blocks",
+    "example": 142,
+    "start_line": 2343,
+    "html": "<!DOCTYPE html>\n",
+    "end_line": 2347
+  },
+  {
+    "markdown": "<![CDATA[\nfunction matchwo(a,b)\n{\n  if (a < b && a < 0) then {\n    return 1;\n\n  } else {\n\n    return 0;\n  }\n}\n]]>\n",
+    "section": "HTML blocks",
+    "example": 143,
+    "start_line": 2352,
+    "html": "<![CDATA[\nfunction matchwo(a,b)\n{\n  if (a < b && a < 0) then {\n    return 1;\n\n  } else {\n\n    return 0;\n  }\n}\n]]>\n",
+    "end_line": 2378
+  },
+  {
+    "markdown": "  <!-- foo -->\n\n    <!-- foo -->\n",
+    "section": "HTML blocks",
+    "example": 144,
+    "start_line": 2383,
+    "html": "  <!-- foo -->\n<pre><code>&lt;!-- foo --&gt;\n</code></pre>\n",
+    "end_line": 2391
+  },
+  {
+    "markdown": "  <div>\n\n    <div>\n",
+    "section": "HTML blocks",
+    "example": 145,
+    "start_line": 2394,
+    "html": "  <div>\n<pre><code>&lt;div&gt;\n</code></pre>\n",
+    "end_line": 2402
+  },
+  {
+    "markdown": "Foo\n<div>\nbar\n</div>\n",
+    "section": "HTML blocks",
+    "example": 146,
+    "start_line": 2408,
+    "html": "<p>Foo</p>\n<div>\nbar\n</div>\n",
+    "end_line": 2418
+  },
+  {
+    "markdown": "<div>\nbar\n</div>\n*foo*\n",
+    "section": "HTML blocks",
+    "example": 147,
+    "start_line": 2424,
+    "html": "<div>\nbar\n</div>\n*foo*\n",
+    "end_line": 2434
+  },
+  {
+    "markdown": "Foo\n<a href=\"bar\">\nbaz\n",
+    "section": "HTML blocks",
+    "example": 148,
+    "start_line": 2439,
+    "html": "<p>Foo\n<a href=\"bar\">\nbaz</p>\n",
+    "end_line": 2447
+  },
+  {
+    "markdown": "<div>\n\n*Emphasized* text.\n\n</div>\n",
+    "section": "HTML blocks",
+    "example": 149,
+    "start_line": 2480,
+    "html": "<div>\n<p><em>Emphasized</em> text.</p>\n</div>\n",
+    "end_line": 2490
+  },
+  {
+    "markdown": "<div>\n*Emphasized* text.\n</div>\n",
+    "section": "HTML blocks",
+    "example": 150,
+    "start_line": 2493,
+    "html": "<div>\n*Emphasized* text.\n</div>\n",
+    "end_line": 2501
+  },
+  {
+    "markdown": "<table>\n\n<tr>\n\n<td>\nHi\n</td>\n\n</tr>\n\n</table>\n",
+    "section": "HTML blocks",
+    "example": 151,
+    "start_line": 2515,
+    "html": "<table>\n<tr>\n<td>\nHi\n</td>\n</tr>\n</table>\n",
+    "end_line": 2535
+  },
+  {
+    "markdown": "<table>\n\n  <tr>\n\n    <td>\n      Hi\n    </td>\n\n  </tr>\n\n</table>\n",
+    "section": "HTML blocks",
+    "example": 152,
+    "start_line": 2542,
+    "html": "<table>\n  <tr>\n<pre><code>&lt;td&gt;\n  Hi\n&lt;/td&gt;\n</code></pre>\n  </tr>\n</table>\n",
+    "end_line": 2563
+  },
+  {
+    "markdown": "[foo]: /url \"title\"\n\n[foo]\n",
+    "section": "Link reference definitions",
+    "example": 153,
+    "start_line": 2590,
+    "html": "<p><a href=\"/url\" title=\"title\">foo</a></p>\n",
+    "end_line": 2596
+  },
+  {
+    "markdown": "   [foo]: \n      /url  \n           'the title'  \n\n[foo]\n",
+    "section": "Link reference definitions",
+    "example": 154,
+    "start_line": 2599,
+    "html": "<p><a href=\"/url\" title=\"the title\">foo</a></p>\n",
+    "end_line": 2607
+  },
+  {
+    "markdown": "[Foo*bar\\]]:my_(url) 'title (with parens)'\n\n[Foo*bar\\]]\n",
+    "section": "Link reference definitions",
+    "example": 155,
+    "start_line": 2610,
+    "html": "<p><a href=\"my_(url)\" title=\"title (with parens)\">Foo*bar]</a></p>\n",
+    "end_line": 2616
+  },
+  {
+    "markdown": "[Foo bar]:\n<my%20url>\n'title'\n\n[Foo bar]\n",
+    "section": "Link reference definitions",
+    "example": 156,
+    "start_line": 2619,
+    "html": "<p><a href=\"my%20url\" title=\"title\">Foo bar</a></p>\n",
+    "end_line": 2627
+  },
+  {
+    "markdown": "[foo]: /url '\ntitle\nline1\nline2\n'\n\n[foo]\n",
+    "section": "Link reference definitions",
+    "example": 157,
+    "start_line": 2632,
+    "html": "<p><a href=\"/url\" title=\"\ntitle\nline1\nline2\n\">foo</a></p>\n",
+    "end_line": 2646
+  },
+  {
+    "markdown": "[foo]: /url 'title\n\nwith blank line'\n\n[foo]\n",
+    "section": "Link reference definitions",
+    "example": 158,
+    "start_line": 2651,
+    "html": "<p>[foo]: /url 'title</p>\n<p>with blank line'</p>\n<p>[foo]</p>\n",
+    "end_line": 2661
+  },
+  {
+    "markdown": "[foo]:\n/url\n\n[foo]\n",
+    "section": "Link reference definitions",
+    "example": 159,
+    "start_line": 2666,
+    "html": "<p><a href=\"/url\">foo</a></p>\n",
+    "end_line": 2673
+  },
+  {
+    "markdown": "[foo]:\n\n[foo]\n",
+    "section": "Link reference definitions",
+    "example": 160,
+    "start_line": 2678,
+    "html": "<p>[foo]:</p>\n<p>[foo]</p>\n",
+    "end_line": 2685
+  },
+  {
+    "markdown": "[foo]: /url\\bar\\*baz \"foo\\\"bar\\baz\"\n\n[foo]\n",
+    "section": "Link reference definitions",
+    "example": 161,
+    "start_line": 2691,
+    "html": "<p><a href=\"/url%5Cbar*baz\" title=\"foo&quot;bar\\baz\">foo</a></p>\n",
+    "end_line": 2697
+  },
+  {
+    "markdown": "[foo]\n\n[foo]: url\n",
+    "section": "Link reference definitions",
+    "example": 162,
+    "start_line": 2702,
+    "html": "<p><a href=\"url\">foo</a></p>\n",
+    "end_line": 2708
+  },
+  {
+    "markdown": "[foo]\n\n[foo]: first\n[foo]: second\n",
+    "section": "Link reference definitions",
+    "example": 163,
+    "start_line": 2714,
+    "html": "<p><a href=\"first\">foo</a></p>\n",
+    "end_line": 2721
+  },
+  {
+    "markdown": "[FOO]: /url\n\n[Foo]\n",
+    "section": "Link reference definitions",
+    "example": 164,
+    "start_line": 2727,
+    "html": "<p><a href=\"/url\">Foo</a></p>\n",
+    "end_line": 2733
+  },
+  {
+    "markdown": "[ΑΓΩ]: /φου\n\n[αγω]\n",
+    "section": "Link reference definitions",
+    "example": 165,
+    "start_line": 2736,
+    "html": "<p><a href=\"/%CF%86%CE%BF%CF%85\">αγω</a></p>\n",
+    "end_line": 2742
+  },
+  {
+    "markdown": "[foo]: /url\n",
+    "section": "Link reference definitions",
+    "example": 166,
+    "start_line": 2748,
+    "html": "",
+    "end_line": 2751
+  },
+  {
+    "markdown": "[\nfoo\n]: /url\nbar\n",
+    "section": "Link reference definitions",
+    "example": 167,
+    "start_line": 2756,
+    "html": "<p>bar</p>\n",
+    "end_line": 2763
+  },
+  {
+    "markdown": "[foo]: /url \"title\" ok\n",
+    "section": "Link reference definitions",
+    "example": 168,
+    "start_line": 2769,
+    "html": "<p>[foo]: /url &quot;title&quot; ok</p>\n",
+    "end_line": 2773
+  },
+  {
+    "markdown": "[foo]: /url\n\"title\" ok\n",
+    "section": "Link reference definitions",
+    "example": 169,
+    "start_line": 2778,
+    "html": "<p>&quot;title&quot; ok</p>\n",
+    "end_line": 2783
+  },
+  {
+    "markdown": "    [foo]: /url \"title\"\n\n[foo]\n",
+    "section": "Link reference definitions",
+    "example": 170,
+    "start_line": 2789,
+    "html": "<pre><code>[foo]: /url &quot;title&quot;\n</code></pre>\n<p>[foo]</p>\n",
+    "end_line": 2797
+  },
+  {
+    "markdown": "```\n[foo]: /url\n```\n\n[foo]\n",
+    "section": "Link reference definitions",
+    "example": 171,
+    "start_line": 2803,
+    "html": "<pre><code>[foo]: /url\n</code></pre>\n<p>[foo]</p>\n",
+    "end_line": 2813
+  },
+  {
+    "markdown": "Foo\n[bar]: /baz\n\n[bar]\n",
+    "section": "Link reference definitions",
+    "example": 172,
+    "start_line": 2818,
+    "html": "<p>Foo\n[bar]: /baz</p>\n<p>[bar]</p>\n",
+    "end_line": 2827
+  },
+  {
+    "markdown": "# [Foo]\n[foo]: /url\n> bar\n",
+    "section": "Link reference definitions",
+    "example": 173,
+    "start_line": 2833,
+    "html": "<h1><a href=\"/url\">Foo</a></h1>\n<blockquote>\n<p>bar</p>\n</blockquote>\n",
+    "end_line": 2842
+  },
+  {
+    "markdown": "[foo]: /foo-url \"foo\"\n[bar]: /bar-url\n  \"bar\"\n[baz]: /baz-url\n\n[foo],\n[bar],\n[baz]\n",
+    "section": "Link reference definitions",
+    "example": 174,
+    "start_line": 2848,
+    "html": "<p><a href=\"/foo-url\" title=\"foo\">foo</a>,\n<a href=\"/bar-url\" title=\"bar\">bar</a>,\n<a href=\"/baz-url\">baz</a></p>\n",
+    "end_line": 2861
+  },
+  {
+    "markdown": "[foo]\n\n> [foo]: /url\n",
+    "section": "Link reference definitions",
+    "example": 175,
+    "start_line": 2869,
+    "html": "<p><a href=\"/url\">foo</a></p>\n<blockquote>\n</blockquote>\n",
+    "end_line": 2877
+  },
+  {
+    "markdown": "aaa\n\nbbb\n",
+    "section": "Paragraphs",
+    "example": 176,
+    "start_line": 2892,
+    "html": "<p>aaa</p>\n<p>bbb</p>\n",
+    "end_line": 2899
+  },
+  {
+    "markdown": "aaa\nbbb\n\nccc\nddd\n",
+    "section": "Paragraphs",
+    "example": 177,
+    "start_line": 2904,
+    "html": "<p>aaa\nbbb</p>\n<p>ccc\nddd</p>\n",
+    "end_line": 2915
+  },
+  {
+    "markdown": "aaa\n\n\nbbb\n",
+    "section": "Paragraphs",
+    "example": 178,
+    "start_line": 2920,
+    "html": "<p>aaa</p>\n<p>bbb</p>\n",
+    "end_line": 2928
+  },
+  {
+    "markdown": "  aaa\n bbb\n",
+    "section": "Paragraphs",
+    "example": 179,
+    "start_line": 2933,
+    "html": "<p>aaa\nbbb</p>\n",
+    "end_line": 2939
+  },
+  {
+    "markdown": "aaa\n             bbb\n                                       ccc\n",
+    "section": "Paragraphs",
+    "example": 180,
+    "start_line": 2945,
+    "html": "<p>aaa\nbbb\nccc</p>\n",
+    "end_line": 2953
+  },
+  {
+    "markdown": "   aaa\nbbb\n",
+    "section": "Paragraphs",
+    "example": 181,
+    "start_line": 2959,
+    "html": "<p>aaa\nbbb</p>\n",
+    "end_line": 2965
+  },
+  {
+    "markdown": "    aaa\nbbb\n",
+    "section": "Paragraphs",
+    "example": 182,
+    "start_line": 2968,
+    "html": "<pre><code>aaa\n</code></pre>\n<p>bbb</p>\n",
+    "end_line": 2975
+  },
+  {
+    "markdown": "aaa     \nbbb     \n",
+    "section": "Paragraphs",
+    "example": 183,
+    "start_line": 2982,
+    "html": "<p>aaa<br />\nbbb</p>\n",
+    "end_line": 2988
+  },
+  {
+    "markdown": "  \n\naaa\n  \n\n# aaa\n\n  \n",
+    "section": "Blank lines",
+    "example": 184,
+    "start_line": 2999,
+    "html": "<p>aaa</p>\n<h1>aaa</h1>\n",
+    "end_line": 3011
+  },
+  {
+    "markdown": "> # Foo\n> bar\n> baz\n",
+    "section": "Block quotes",
+    "example": 185,
+    "start_line": 3065,
+    "html": "<blockquote>\n<h1>Foo</h1>\n<p>bar\nbaz</p>\n</blockquote>\n",
+    "end_line": 3075
+  },
+  {
+    "markdown": "># Foo\n>bar\n> baz\n",
+    "section": "Block quotes",
+    "example": 186,
+    "start_line": 3080,
+    "html": "<blockquote>\n<h1>Foo</h1>\n<p>bar\nbaz</p>\n</blockquote>\n",
+    "end_line": 3090
+  },
+  {
+    "markdown": "   > # Foo\n   > bar\n > baz\n",
+    "section": "Block quotes",
+    "example": 187,
+    "start_line": 3095,
+    "html": "<blockquote>\n<h1>Foo</h1>\n<p>bar\nbaz</p>\n</blockquote>\n",
+    "end_line": 3105
+  },
+  {
+    "markdown": "    > # Foo\n    > bar\n    > baz\n",
+    "section": "Block quotes",
+    "example": 188,
+    "start_line": 3110,
+    "html": "<pre><code>&gt; # Foo\n&gt; bar\n&gt; baz\n</code></pre>\n",
+    "end_line": 3119
+  },
+  {
+    "markdown": "> # Foo\n> bar\nbaz\n",
+    "section": "Block quotes",
+    "example": 189,
+    "start_line": 3125,
+    "html": "<blockquote>\n<h1>Foo</h1>\n<p>bar\nbaz</p>\n</blockquote>\n",
+    "end_line": 3135
+  },
+  {
+    "markdown": "> bar\nbaz\n> foo\n",
+    "section": "Block quotes",
+    "example": 190,
+    "start_line": 3141,
+    "html": "<blockquote>\n<p>bar\nbaz\nfoo</p>\n</blockquote>\n",
+    "end_line": 3151
+  },
+  {
+    "markdown": "> foo\n---\n",
+    "section": "Block quotes",
+    "example": 191,
+    "start_line": 3165,
+    "html": "<blockquote>\n<p>foo</p>\n</blockquote>\n<hr />\n",
+    "end_line": 3173
+  },
+  {
+    "markdown": "> - foo\n- bar\n",
+    "section": "Block quotes",
+    "example": 192,
+    "start_line": 3185,
+    "html": "<blockquote>\n<ul>\n<li>foo</li>\n</ul>\n</blockquote>\n<ul>\n<li>bar</li>\n</ul>\n",
+    "end_line": 3197
+  },
+  {
+    "markdown": ">     foo\n    bar\n",
+    "section": "Block quotes",
+    "example": 193,
+    "start_line": 3203,
+    "html": "<blockquote>\n<pre><code>foo\n</code></pre>\n</blockquote>\n<pre><code>bar\n</code></pre>\n",
+    "end_line": 3213
+  },
+  {
+    "markdown": "> ```\nfoo\n```\n",
+    "section": "Block quotes",
+    "example": 194,
+    "start_line": 3216,
+    "html": "<blockquote>\n<pre><code></code></pre>\n</blockquote>\n<p>foo</p>\n<pre><code></code></pre>\n",
+    "end_line": 3226
+  },
+  {
+    "markdown": "> foo\n    - bar\n",
+    "section": "Block quotes",
+    "example": 195,
+    "start_line": 3232,
+    "html": "<blockquote>\n<p>foo\n- bar</p>\n</blockquote>\n",
+    "end_line": 3240
+  },
+  {
+    "markdown": ">\n",
+    "section": "Block quotes",
+    "example": 196,
+    "start_line": 3256,
+    "html": "<blockquote>\n</blockquote>\n",
+    "end_line": 3261
+  },
+  {
+    "markdown": ">\n>  \n> \n",
+    "section": "Block quotes",
+    "example": 197,
+    "start_line": 3264,
+    "html": "<blockquote>\n</blockquote>\n",
+    "end_line": 3271
+  },
+  {
+    "markdown": ">\n> foo\n>  \n",
+    "section": "Block quotes",
+    "example": 198,
+    "start_line": 3276,
+    "html": "<blockquote>\n<p>foo</p>\n</blockquote>\n",
+    "end_line": 3284
+  },
+  {
+    "markdown": "> foo\n\n> bar\n",
+    "section": "Block quotes",
+    "example": 199,
+    "start_line": 3289,
+    "html": "<blockquote>\n<p>foo</p>\n</blockquote>\n<blockquote>\n<p>bar</p>\n</blockquote>\n",
+    "end_line": 3300
+  },
+  {
+    "markdown": "> foo\n> bar\n",
+    "section": "Block quotes",
+    "example": 200,
+    "start_line": 3311,
+    "html": "<blockquote>\n<p>foo\nbar</p>\n</blockquote>\n",
+    "end_line": 3319
+  },
+  {
+    "markdown": "> foo\n>\n> bar\n",
+    "section": "Block quotes",
+    "example": 201,
+    "start_line": 3324,
+    "html": "<blockquote>\n<p>foo</p>\n<p>bar</p>\n</blockquote>\n",
+    "end_line": 3333
+  },
+  {
+    "markdown": "foo\n> bar\n",
+    "section": "Block quotes",
+    "example": 202,
+    "start_line": 3338,
+    "html": "<p>foo</p>\n<blockquote>\n<p>bar</p>\n</blockquote>\n",
+    "end_line": 3346
+  },
+  {
+    "markdown": "> aaa\n***\n> bbb\n",
+    "section": "Block quotes",
+    "example": 203,
+    "start_line": 3352,
+    "html": "<blockquote>\n<p>aaa</p>\n</blockquote>\n<hr />\n<blockquote>\n<p>bbb</p>\n</blockquote>\n",
+    "end_line": 3364
+  },
+  {
+    "markdown": "> bar\nbaz\n",
+    "section": "Block quotes",
+    "example": 204,
+    "start_line": 3370,
+    "html": "<blockquote>\n<p>bar\nbaz</p>\n</blockquote>\n",
+    "end_line": 3378
+  },
+  {
+    "markdown": "> bar\n\nbaz\n",
+    "section": "Block quotes",
+    "example": 205,
+    "start_line": 3381,
+    "html": "<blockquote>\n<p>bar</p>\n</blockquote>\n<p>baz</p>\n",
+    "end_line": 3390
+  },
+  {
+    "markdown": "> bar\n>\nbaz\n",
+    "section": "Block quotes",
+    "example": 206,
+    "start_line": 3393,
+    "html": "<blockquote>\n<p>bar</p>\n</blockquote>\n<p>baz</p>\n",
+    "end_line": 3402
+  },
+  {
+    "markdown": "> > > foo\nbar\n",
+    "section": "Block quotes",
+    "example": 207,
+    "start_line": 3409,
+    "html": "<blockquote>\n<blockquote>\n<blockquote>\n<p>foo\nbar</p>\n</blockquote>\n</blockquote>\n</blockquote>\n",
+    "end_line": 3421
+  },
+  {
+    "markdown": ">>> foo\n> bar\n>>baz\n",
+    "section": "Block quotes",
+    "example": 208,
+    "start_line": 3424,
+    "html": "<blockquote>\n<blockquote>\n<blockquote>\n<p>foo\nbar\nbaz</p>\n</blockquote>\n</blockquote>\n</blockquote>\n",
+    "end_line": 3438
+  },
+  {
+    "markdown": ">     code\n\n>    not code\n",
+    "section": "Block quotes",
+    "example": 209,
+    "start_line": 3446,
+    "html": "<blockquote>\n<pre><code>code\n</code></pre>\n</blockquote>\n<blockquote>\n<p>not code</p>\n</blockquote>\n",
+    "end_line": 3458
+  },
+  {
+    "markdown": "A paragraph\nwith two lines.\n\n    indented code\n\n> A block quote.\n",
+    "section": "List items",
+    "example": 210,
+    "start_line": 3491,
+    "html": "<p>A paragraph\nwith two lines.</p>\n<pre><code>indented code\n</code></pre>\n<blockquote>\n<p>A block quote.</p>\n</blockquote>\n",
+    "end_line": 3506
+  },
+  {
+    "markdown": "1.  A paragraph\n    with two lines.\n\n        indented code\n\n    > A block quote.\n",
+    "section": "List items",
+    "example": 211,
+    "start_line": 3513,
+    "html": "<ol>\n<li>\n<p>A paragraph\nwith two lines.</p>\n<pre><code>indented code\n</code></pre>\n<blockquote>\n<p>A block quote.</p>\n</blockquote>\n</li>\n</ol>\n",
+    "end_line": 3532
+  },
+  {
+    "markdown": "- one\n\n two\n",
+    "section": "List items",
+    "example": 212,
+    "start_line": 3546,
+    "html": "<ul>\n<li>one</li>\n</ul>\n<p>two</p>\n",
+    "end_line": 3555
+  },
+  {
+    "markdown": "- one\n\n  two\n",
+    "section": "List items",
+    "example": 213,
+    "start_line": 3558,
+    "html": "<ul>\n<li>\n<p>one</p>\n<p>two</p>\n</li>\n</ul>\n",
+    "end_line": 3569
+  },
+  {
+    "markdown": " -    one\n\n     two\n",
+    "section": "List items",
+    "example": 214,
+    "start_line": 3572,
+    "html": "<ul>\n<li>one</li>\n</ul>\n<pre><code> two\n</code></pre>\n",
+    "end_line": 3582
+  },
+  {
+    "markdown": " -    one\n\n      two\n",
+    "section": "List items",
+    "example": 215,
+    "start_line": 3585,
+    "html": "<ul>\n<li>\n<p>one</p>\n<p>two</p>\n</li>\n</ul>\n",
+    "end_line": 3596
+  },
+  {
+    "markdown": "   > > 1.  one\n>>\n>>     two\n",
+    "section": "List items",
+    "example": 216,
+    "start_line": 3607,
+    "html": "<blockquote>\n<blockquote>\n<ol>\n<li>\n<p>one</p>\n<p>two</p>\n</li>\n</ol>\n</blockquote>\n</blockquote>\n",
+    "end_line": 3622
+  },
+  {
+    "markdown": ">>- one\n>>\n  >  > two\n",
+    "section": "List items",
+    "example": 217,
+    "start_line": 3634,
+    "html": "<blockquote>\n<blockquote>\n<ul>\n<li>one</li>\n</ul>\n<p>two</p>\n</blockquote>\n</blockquote>\n",
+    "end_line": 3647
+  },
+  {
+    "markdown": "-one\n\n2.two\n",
+    "section": "List items",
+    "example": 218,
+    "start_line": 3653,
+    "html": "<p>-one</p>\n<p>2.two</p>\n",
+    "end_line": 3660
+  },
+  {
+    "markdown": "- foo\n\n  bar\n\n- foo\n\n\n  bar\n\n- ```\n  foo\n\n\n  bar\n  ```\n\n- baz\n\n  + ```\n    foo\n\n\n    bar\n    ```\n",
+    "section": "List items",
+    "example": 219,
+    "start_line": 3667,
+    "html": "<ul>\n<li>\n<p>foo</p>\n<p>bar</p>\n</li>\n<li>\n<p>foo</p>\n</li>\n</ul>\n<p>bar</p>\n<ul>\n<li>\n<pre><code>foo\n\n\nbar\n</code></pre>\n</li>\n<li>\n<p>baz</p>\n<ul>\n<li>\n<pre><code>foo\n\n\nbar\n</code></pre>\n</li>\n</ul>\n</li>\n</ul>\n",
+    "end_line": 3724
+  },
+  {
+    "markdown": "1.  foo\n\n    ```\n    bar\n    ```\n\n    baz\n\n    > bam\n",
+    "section": "List items",
+    "example": 220,
+    "start_line": 3729,
+    "html": "<ol>\n<li>\n<p>foo</p>\n<pre><code>bar\n</code></pre>\n<p>baz</p>\n<blockquote>\n<p>bam</p>\n</blockquote>\n</li>\n</ol>\n",
+    "end_line": 3751
+  },
+  {
+    "markdown": "- Foo\n\n      bar\n\n      baz\n",
+    "section": "List items",
+    "example": 221,
+    "start_line": 3759,
+    "html": "<ul>\n<li>\n<p>Foo</p>\n<pre><code>bar\n\nbaz\n</code></pre>\n</li>\n</ul>\n",
+    "end_line": 3775
+  },
+  {
+    "markdown": "- Foo\n\n      bar\n\n\n      baz\n",
+    "section": "List items",
+    "example": 222,
+    "start_line": 3778,
+    "html": "<ul>\n<li>\n<p>Foo</p>\n<pre><code>bar\n</code></pre>\n</li>\n</ul>\n<pre><code>  baz\n</code></pre>\n",
+    "end_line": 3795
+  },
+  {
+    "markdown": "123456789. ok\n",
+    "section": "List items",
+    "example": 223,
+    "start_line": 3800,
+    "html": "<ol start=\"123456789\">\n<li>ok</li>\n</ol>\n",
+    "end_line": 3806
+  },
+  {
+    "markdown": "1234567890. not ok\n",
+    "section": "List items",
+    "example": 224,
+    "start_line": 3809,
+    "html": "<p>1234567890. not ok</p>\n",
+    "end_line": 3813
+  },
+  {
+    "markdown": "0. ok\n",
+    "section": "List items",
+    "example": 225,
+    "start_line": 3818,
+    "html": "<ol start=\"0\">\n<li>ok</li>\n</ol>\n",
+    "end_line": 3824
+  },
+  {
+    "markdown": "003. ok\n",
+    "section": "List items",
+    "example": 226,
+    "start_line": 3827,
+    "html": "<ol start=\"3\">\n<li>ok</li>\n</ol>\n",
+    "end_line": 3833
+  },
+  {
+    "markdown": "-1. not ok\n",
+    "section": "List items",
+    "example": 227,
+    "start_line": 3838,
+    "html": "<p>-1. not ok</p>\n",
+    "end_line": 3842
+  },
+  {
+    "markdown": "- foo\n\n      bar\n",
+    "section": "List items",
+    "example": 228,
+    "start_line": 3862,
+    "html": "<ul>\n<li>\n<p>foo</p>\n<pre><code>bar\n</code></pre>\n</li>\n</ul>\n",
+    "end_line": 3874
+  },
+  {
+    "markdown": "  10.  foo\n\n           bar\n",
+    "section": "List items",
+    "example": 229,
+    "start_line": 3879,
+    "html": "<ol start=\"10\">\n<li>\n<p>foo</p>\n<pre><code>bar\n</code></pre>\n</li>\n</ol>\n",
+    "end_line": 3891
+  },
+  {
+    "markdown": "    indented code\n\nparagraph\n\n    more code\n",
+    "section": "List items",
+    "example": 230,
+    "start_line": 3898,
+    "html": "<pre><code>indented code\n</code></pre>\n<p>paragraph</p>\n<pre><code>more code\n</code></pre>\n",
+    "end_line": 3910
+  },
+  {
+    "markdown": "1.     indented code\n\n   paragraph\n\n       more code\n",
+    "section": "List items",
+    "example": 231,
+    "start_line": 3913,
+    "html": "<ol>\n<li>\n<pre><code>indented code\n</code></pre>\n<p>paragraph</p>\n<pre><code>more code\n</code></pre>\n</li>\n</ol>\n",
+    "end_line": 3929
+  },
+  {
+    "markdown": "1.      indented code\n\n   paragraph\n\n       more code\n",
+    "section": "List items",
+    "example": 232,
+    "start_line": 3935,
+    "html": "<ol>\n<li>\n<pre><code> indented code\n</code></pre>\n<p>paragraph</p>\n<pre><code>more code\n</code></pre>\n</li>\n</ol>\n",
+    "end_line": 3951
+  },
+  {
+    "markdown": "   foo\n\nbar\n",
+    "section": "List items",
+    "example": 233,
+    "start_line": 3962,
+    "html": "<p>foo</p>\n<p>bar</p>\n",
+    "end_line": 3969
+  },
+  {
+    "markdown": "-    foo\n\n  bar\n",
+    "section": "List items",
+    "example": 234,
+    "start_line": 3972,
+    "html": "<ul>\n<li>foo</li>\n</ul>\n<p>bar</p>\n",
+    "end_line": 3981
+  },
+  {
+    "markdown": "-  foo\n\n   bar\n",
+    "section": "List items",
+    "example": 235,
+    "start_line": 3989,
+    "html": "<ul>\n<li>\n<p>foo</p>\n<p>bar</p>\n</li>\n</ul>\n",
+    "end_line": 4000
+  },
+  {
+    "markdown": "-\n  foo\n-\n  ```\n  bar\n  ```\n-\n      baz\n",
+    "section": "List items",
+    "example": 236,
+    "start_line": 4017,
+    "html": "<ul>\n<li>foo</li>\n<li>\n<pre><code>bar\n</code></pre>\n</li>\n<li>\n<pre><code>baz\n</code></pre>\n</li>\n</ul>\n",
+    "end_line": 4038
+  },
+  {
+    "markdown": "-\n\n  foo\n",
+    "section": "List items",
+    "example": 237,
+    "start_line": 4045,
+    "html": "<ul>\n<li></li>\n</ul>\n<p>foo</p>\n",
+    "end_line": 4054
+  },
+  {
+    "markdown": "- foo\n-\n- bar\n",
+    "section": "List items",
+    "example": 238,
+    "start_line": 4059,
+    "html": "<ul>\n<li>foo</li>\n<li></li>\n<li>bar</li>\n</ul>\n",
+    "end_line": 4069
+  },
+  {
+    "markdown": "- foo\n-   \n- bar\n",
+    "section": "List items",
+    "example": 239,
+    "start_line": 4074,
+    "html": "<ul>\n<li>foo</li>\n<li></li>\n<li>bar</li>\n</ul>\n",
+    "end_line": 4084
+  },
+  {
+    "markdown": "1. foo\n2.\n3. bar\n",
+    "section": "List items",
+    "example": 240,
+    "start_line": 4089,
+    "html": "<ol>\n<li>foo</li>\n<li></li>\n<li>bar</li>\n</ol>\n",
+    "end_line": 4099
+  },
+  {
+    "markdown": "*\n",
+    "section": "List items",
+    "example": 241,
+    "start_line": 4104,
+    "html": "<ul>\n<li></li>\n</ul>\n",
+    "end_line": 4110
+  },
+  {
+    "markdown": " 1.  A paragraph\n     with two lines.\n\n         indented code\n\n     > A block quote.\n",
+    "section": "List items",
+    "example": 242,
+    "start_line": 4122,
+    "html": "<ol>\n<li>\n<p>A paragraph\nwith two lines.</p>\n<pre><code>indented code\n</code></pre>\n<blockquote>\n<p>A block quote.</p>\n</blockquote>\n</li>\n</ol>\n",
+    "end_line": 4141
+  },
+  {
+    "markdown": "  1.  A paragraph\n      with two lines.\n\n          indented code\n\n      > A block quote.\n",
+    "section": "List items",
+    "example": 243,
+    "start_line": 4146,
+    "html": "<ol>\n<li>\n<p>A paragraph\nwith two lines.</p>\n<pre><code>indented code\n</code></pre>\n<blockquote>\n<p>A block quote.</p>\n</blockquote>\n</li>\n</ol>\n",
+    "end_line": 4165
+  },
+  {
+    "markdown": "   1.  A paragraph\n       with two lines.\n\n           indented code\n\n       > A block quote.\n",
+    "section": "List items",
+    "example": 244,
+    "start_line": 4170,
+    "html": "<ol>\n<li>\n<p>A paragraph\nwith two lines.</p>\n<pre><code>indented code\n</code></pre>\n<blockquote>\n<p>A block quote.</p>\n</blockquote>\n</li>\n</ol>\n",
+    "end_line": 4189
+  },
+  {
+    "markdown": "    1.  A paragraph\n        with two lines.\n\n            indented code\n\n        > A block quote.\n",
+    "section": "List items",
+    "example": 245,
+    "start_line": 4194,
+    "html": "<pre><code>1.  A paragraph\n    with two lines.\n\n        indented code\n\n    &gt; A block quote.\n</code></pre>\n",
+    "end_line": 4209
+  },
+  {
+    "markdown": "  1.  A paragraph\nwith two lines.\n\n          indented code\n\n      > A block quote.\n",
+    "section": "List items",
+    "example": 246,
+    "start_line": 4224,
+    "html": "<ol>\n<li>\n<p>A paragraph\nwith two lines.</p>\n<pre><code>indented code\n</code></pre>\n<blockquote>\n<p>A block quote.</p>\n</blockquote>\n</li>\n</ol>\n",
+    "end_line": 4243
+  },
+  {
+    "markdown": "  1.  A paragraph\n    with two lines.\n",
+    "section": "List items",
+    "example": 247,
+    "start_line": 4248,
+    "html": "<ol>\n<li>A paragraph\nwith two lines.</li>\n</ol>\n",
+    "end_line": 4256
+  },
+  {
+    "markdown": "> 1. > Blockquote\ncontinued here.\n",
+    "section": "List items",
+    "example": 248,
+    "start_line": 4261,
+    "html": "<blockquote>\n<ol>\n<li>\n<blockquote>\n<p>Blockquote\ncontinued here.</p>\n</blockquote>\n</li>\n</ol>\n</blockquote>\n",
+    "end_line": 4275
+  },
+  {
+    "markdown": "> 1. > Blockquote\n> continued here.\n",
+    "section": "List items",
+    "example": 249,
+    "start_line": 4278,
+    "html": "<blockquote>\n<ol>\n<li>\n<blockquote>\n<p>Blockquote\ncontinued here.</p>\n</blockquote>\n</li>\n</ol>\n</blockquote>\n",
+    "end_line": 4292
+  },
+  {
+    "markdown": "- foo\n  - bar\n    - baz\n",
+    "section": "List items",
+    "example": 250,
+    "start_line": 4305,
+    "html": "<ul>\n<li>foo\n<ul>\n<li>bar\n<ul>\n<li>baz</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n",
+    "end_line": 4321
+  },
+  {
+    "markdown": "- foo\n - bar\n  - baz\n",
+    "section": "List items",
+    "example": 251,
+    "start_line": 4326,
+    "html": "<ul>\n<li>foo</li>\n<li>bar</li>\n<li>baz</li>\n</ul>\n",
+    "end_line": 4336
+  },
+  {
+    "markdown": "10) foo\n    - bar\n",
+    "section": "List items",
+    "example": 252,
+    "start_line": 4341,
+    "html": "<ol start=\"10\">\n<li>foo\n<ul>\n<li>bar</li>\n</ul>\n</li>\n</ol>\n",
+    "end_line": 4352
+  },
+  {
+    "markdown": "10) foo\n   - bar\n",
+    "section": "List items",
+    "example": 253,
+    "start_line": 4357,
+    "html": "<ol start=\"10\">\n<li>foo</li>\n</ol>\n<ul>\n<li>bar</li>\n</ul>\n",
+    "end_line": 4367
+  },
+  {
+    "markdown": "- - foo\n",
+    "section": "List items",
+    "example": 254,
+    "start_line": 4372,
+    "html": "<ul>\n<li>\n<ul>\n<li>foo</li>\n</ul>\n</li>\n</ul>\n",
+    "end_line": 4382
+  },
+  {
+    "markdown": "1. - 2. foo\n",
+    "section": "List items",
+    "example": 255,
+    "start_line": 4385,
+    "html": "<ol>\n<li>\n<ul>\n<li>\n<ol start=\"2\">\n<li>foo</li>\n</ol>\n</li>\n</ul>\n</li>\n</ol>\n",
+    "end_line": 4399
+  },
+  {
+    "markdown": "- # Foo\n- Bar\n  ---\n  baz\n",
+    "section": "List items",
+    "example": 256,
+    "start_line": 4404,
+    "html": "<ul>\n<li>\n<h1>Foo</h1>\n</li>\n<li>\n<h2>Bar</h2>\nbaz</li>\n</ul>\n",
+    "end_line": 4418
+  },
+  {
+    "markdown": "- foo\n- bar\n+ baz\n",
+    "section": "Lists",
+    "example": 257,
+    "start_line": 4641,
+    "html": "<ul>\n<li>foo</li>\n<li>bar</li>\n</ul>\n<ul>\n<li>baz</li>\n</ul>\n",
+    "end_line": 4653
+  },
+  {
+    "markdown": "1. foo\n2. bar\n3) baz\n",
+    "section": "Lists",
+    "example": 258,
+    "start_line": 4656,
+    "html": "<ol>\n<li>foo</li>\n<li>bar</li>\n</ol>\n<ol start=\"3\">\n<li>baz</li>\n</ol>\n",
+    "end_line": 4668
+  },
+  {
+    "markdown": "Foo\n- bar\n- baz\n",
+    "section": "Lists",
+    "example": 259,
+    "start_line": 4675,
+    "html": "<p>Foo</p>\n<ul>\n<li>bar</li>\n<li>baz</li>\n</ul>\n",
+    "end_line": 4685
+  },
+  {
+    "markdown": "The number of windows in my house is\n14.  The number of doors is 6.\n",
+    "section": "Lists",
+    "example": 260,
+    "start_line": 4691,
+    "html": "<p>The number of windows in my house is</p>\n<ol start=\"14\">\n<li>The number of doors is 6.</li>\n</ol>\n",
+    "end_line": 4699
+  },
+  {
+    "markdown": "- foo\n\n- bar\n\n\n- baz\n",
+    "section": "Lists",
+    "example": 261,
+    "start_line": 4757,
+    "html": "<ul>\n<li>\n<p>foo</p>\n</li>\n<li>\n<p>bar</p>\n</li>\n</ul>\n<ul>\n<li>baz</li>\n</ul>\n",
+    "end_line": 4776
+  },
+  {
+    "markdown": "- foo\n\n\n  bar\n- baz\n",
+    "section": "Lists",
+    "example": 262,
+    "start_line": 4783,
+    "html": "<ul>\n<li>foo</li>\n</ul>\n<p>bar</p>\n<ul>\n<li>baz</li>\n</ul>\n",
+    "end_line": 4797
+  },
+  {
+    "markdown": "- foo\n  - bar\n    - baz\n\n\n      bim\n",
+    "section": "Lists",
+    "example": 263,
+    "start_line": 4802,
+    "html": "<ul>\n<li>foo\n<ul>\n<li>bar\n<ul>\n<li>baz</li>\n</ul>\n</li>\n</ul>\n</li>\n</ul>\n<pre><code>  bim\n</code></pre>\n",
+    "end_line": 4823
+  },
+  {
+    "markdown": "- foo\n- bar\n\n\n- baz\n- bim\n",
+    "section": "Lists",
+    "example": 264,
+    "start_line": 4831,
+    "html": "<ul>\n<li>foo</li>\n<li>bar</li>\n</ul>\n<ul>\n<li>baz</li>\n<li>bim</li>\n</ul>\n",
+    "end_line": 4847
+  },
+  {
+    "markdown": "-   foo\n\n    notcode\n\n-   foo\n\n\n    code\n",
+    "section": "Lists",
+    "example": 265,
+    "start_line": 4850,
+    "html": "<ul>\n<li>\n<p>foo</p>\n<p>notcode</p>\n</li>\n<li>\n<p>foo</p>\n</li>\n</ul>\n<pre><code>code\n</code></pre>\n",
+    "end_line": 4871
+  },
+  {
+    "markdown": "- a\n - b\n  - c\n   - d\n    - e\n   - f\n  - g\n - h\n- i\n",
+    "section": "Lists",
+    "example": 266,
+    "start_line": 4879,
+    "html": "<ul>\n<li>a</li>\n<li>b</li>\n<li>c</li>\n<li>d</li>\n<li>e</li>\n<li>f</li>\n<li>g</li>\n<li>h</li>\n<li>i</li>\n</ul>\n",
+    "end_line": 4901
+  },
+  {
+    "markdown": "1. a\n\n  2. b\n\n    3. c\n",
+    "section": "Lists",
+    "example": 267,
+    "start_line": 4904,
+    "html": "<ol>\n<li>\n<p>a</p>\n</li>\n<li>\n<p>b</p>\n</li>\n<li>\n<p>c</p>\n</li>\n</ol>\n",
+    "end_line": 4922
+  },
+  {
+    "markdown": "- a\n- b\n\n- c\n",
+    "section": "Lists",
+    "example": 268,
+    "start_line": 4928,
+    "html": "<ul>\n<li>\n<p>a</p>\n</li>\n<li>\n<p>b</p>\n</li>\n<li>\n<p>c</p>\n</li>\n</ul>\n",
+    "end_line": 4945
+  },
+  {
+    "markdown": "* a\n*\n\n* c\n",
+    "section": "Lists",
+    "example": 269,
+    "start_line": 4950,
+    "html": "<ul>\n<li>\n<p>a</p>\n</li>\n<li></li>\n<li>\n<p>c</p>\n</li>\n</ul>\n",
+    "end_line": 4965
+  },
+  {
+    "markdown": "- a\n- b\n\n  c\n- d\n",
+    "section": "Lists",
+    "example": 270,
+    "start_line": 4972,
+    "html": "<ul>\n<li>\n<p>a</p>\n</li>\n<li>\n<p>b</p>\n<p>c</p>\n</li>\n<li>\n<p>d</p>\n</li>\n</ul>\n",
+    "end_line": 4991
+  },
+  {
+    "markdown": "- a\n- b\n\n  [ref]: /url\n- d\n",
+    "section": "Lists",
+    "example": 271,
+    "start_line": 4994,
+    "html": "<ul>\n<li>\n<p>a</p>\n</li>\n<li>\n<p>b</p>\n</li>\n<li>\n<p>d</p>\n</li>\n</ul>\n",
+    "end_line": 5012
+  },
+  {
+    "markdown": "- a\n- ```\n  b\n\n\n  ```\n- c\n",
+    "section": "Lists",
+    "example": 272,
+    "start_line": 5017,
+    "html": "<ul>\n<li>a</li>\n<li>\n<pre><code>b\n\n\n</code></pre>\n</li>\n<li>c</li>\n</ul>\n",
+    "end_line": 5036
+  },
+  {
+    "markdown": "- a\n  - b\n\n    c\n- d\n",
+    "section": "Lists",
+    "example": 273,
+    "start_line": 5043,
+    "html": "<ul>\n<li>a\n<ul>\n<li>\n<p>b</p>\n<p>c</p>\n</li>\n</ul>\n</li>\n<li>d</li>\n</ul>\n",
+    "end_line": 5061
+  },
+  {
+    "markdown": "* a\n  > b\n  >\n* c\n",
+    "section": "Lists",
+    "example": 274,
+    "start_line": 5067,
+    "html": "<ul>\n<li>a\n<blockquote>\n<p>b</p>\n</blockquote>\n</li>\n<li>c</li>\n</ul>\n",
+    "end_line": 5081
+  },
+  {
+    "markdown": "- a\n  > b\n  ```\n  c\n  ```\n- d\n",
+    "section": "Lists",
+    "example": 275,
+    "start_line": 5087,
+    "html": "<ul>\n<li>a\n<blockquote>\n<p>b</p>\n</blockquote>\n<pre><code>c\n</code></pre>\n</li>\n<li>d</li>\n</ul>\n",
+    "end_line": 5105
+  },
+  {
+    "markdown": "- a\n",
+    "section": "Lists",
+    "example": 276,
+    "start_line": 5110,
+    "html": "<ul>\n<li>a</li>\n</ul>\n",
+    "end_line": 5116
+  },
+  {
+    "markdown": "- a\n  - b\n",
+    "section": "Lists",
+    "example": 277,
+    "start_line": 5119,
+    "html": "<ul>\n<li>a\n<ul>\n<li>b</li>\n</ul>\n</li>\n</ul>\n",
+    "end_line": 5130
+  },
+  {
+    "markdown": "1. ```\n   foo\n   ```\n\n   bar\n",
+    "section": "Lists",
+    "example": 278,
+    "start_line": 5136,
+    "html": "<ol>\n<li>\n<pre><code>foo\n</code></pre>\n<p>bar</p>\n</li>\n</ol>\n",
+    "end_line": 5150
+  },
+  {
+    "markdown": "* foo\n  * bar\n\n  baz\n",
+    "section": "Lists",
+    "example": 279,
+    "start_line": 5155,
+    "html": "<ul>\n<li>\n<p>foo</p>\n<ul>\n<li>bar</li>\n</ul>\n<p>baz</p>\n</li>\n</ul>\n",
+    "end_line": 5170
+  },
+  {
+    "markdown": "- a\n  - b\n  - c\n\n- d\n  - e\n  - f\n",
+    "section": "Lists",
+    "example": 280,
+    "start_line": 5173,
+    "html": "<ul>\n<li>\n<p>a</p>\n<ul>\n<li>b</li>\n<li>c</li>\n</ul>\n</li>\n<li>\n<p>d</p>\n<ul>\n<li>e</li>\n<li>f</li>\n</ul>\n</li>\n</ul>\n",
+    "end_line": 5198
+  },
+  {
+    "markdown": "`hi`lo`\n",
+    "section": "Inlines",
+    "example": 281,
+    "start_line": 5207,
+    "html": "<p><code>hi</code>lo`</p>\n",
+    "end_line": 5211
+  },
+  {
+    "markdown": "\\!\\\"\\#\\$\\%\\&\\'\\(\\)\\*\\+\\,\\-\\.\\/\\:\\;\\<\\=\\>\\?\\@\\[\\\\\\]\\^\\_\\`\\{\\|\\}\\~\n",
+    "section": "Backslash escapes",
+    "example": 282,
+    "start_line": 5221,
+    "html": "<p>!&quot;#$%&amp;'()*+,-./:;&lt;=&gt;?@[\\]^_`{|}~</p>\n",
+    "end_line": 5225
+  },
+  {
+    "markdown": "\\\t\\A\\a\\ \\3\\φ\\«\n",
+    "section": "Backslash escapes",
+    "example": 283,
+    "start_line": 5231,
+    "html": "<p>\\\t\\A\\a\\ \\3\\φ\\«</p>\n",
+    "end_line": 5235
+  },
+  {
+    "markdown": "\\*not emphasized*\n\\<br/> not a tag\n\\[not a link](/foo)\n\\`not code`\n1\\. not a list\n\\* not a list\n\\# not a heading\n\\[foo]: /url \"not a reference\"\n",
+    "section": "Backslash escapes",
+    "example": 284,
+    "start_line": 5241,
+    "html": "<p>*not emphasized*\n&lt;br/&gt; not a tag\n[not a link](/foo)\n`not code`\n1. not a list\n* not a list\n# not a heading\n[foo]: /url &quot;not a reference&quot;</p>\n",
+    "end_line": 5259
+  },
+  {
+    "markdown": "\\\\*emphasis*\n",
+    "section": "Backslash escapes",
+    "example": 285,
+    "start_line": 5264,
+    "html": "<p>\\<em>emphasis</em></p>\n",
+    "end_line": 5268
+  },
+  {
+    "markdown": "foo\\\nbar\n",
+    "section": "Backslash escapes",
+    "example": 286,
+    "start_line": 5273,
+    "html": "<p>foo<br />\nbar</p>\n",
+    "end_line": 5279
+  },
+  {
+    "markdown": "`` \\[\\` ``\n",
+    "section": "Backslash escapes",
+    "example": 287,
+    "start_line": 5285,
+    "html": "<p><code>\\[\\`</code></p>\n",
+    "end_line": 5289
+  },
+  {
+    "markdown": "    \\[\\]\n",
+    "section": "Backslash escapes",
+    "example": 288,
+    "start_line": 5292,
+    "html": "<pre><code>\\[\\]\n</code></pre>\n",
+    "end_line": 5297
+  },
+  {
+    "markdown": "~~~\n\\[\\]\n~~~\n",
+    "section": "Backslash escapes",
+    "example": 289,
+    "start_line": 5300,
+    "html": "<pre><code>\\[\\]\n</code></pre>\n",
+    "end_line": 5307
+  },
+  {
+    "markdown": "<http://example.com?find=\\*>\n",
+    "section": "Backslash escapes",
+    "example": 290,
+    "start_line": 5310,
+    "html": "<p><a href=\"http://example.com?find=%5C*\">http://example.com?find=\\*</a></p>\n",
+    "end_line": 5314
+  },
+  {
+    "markdown": "<a href=\"/bar\\/)\">\n",
+    "section": "Backslash escapes",
+    "example": 291,
+    "start_line": 5317,
+    "html": "<a href=\"/bar\\/)\">\n",
+    "end_line": 5321
+  },
+  {
+    "markdown": "[foo](/bar\\* \"ti\\*tle\")\n",
+    "section": "Backslash escapes",
+    "example": 292,
+    "start_line": 5327,
+    "html": "<p><a href=\"/bar*\" title=\"ti*tle\">foo</a></p>\n",
+    "end_line": 5331
+  },
+  {
+    "markdown": "[foo]\n\n[foo]: /bar\\* \"ti\\*tle\"\n",
+    "section": "Backslash escapes",
+    "example": 293,
+    "start_line": 5334,
+    "html": "<p><a href=\"/bar*\" title=\"ti*tle\">foo</a></p>\n",
+    "end_line": 5340
+  },
+  {
+    "markdown": "``` foo\\+bar\nfoo\n```\n",
+    "section": "Backslash escapes",
+    "example": 294,
+    "start_line": 5343,
+    "html": "<pre><code class=\"language-foo+bar\">foo\n</code></pre>\n",
+    "end_line": 5350
+  },
+  {
+    "markdown": "&nbsp; &amp; &copy; &AElig; &Dcaron;\n&frac34; &HilbertSpace; &DifferentialD;\n&ClockwiseContourIntegral; &ngE;\n",
+    "section": "Entity and numeric character references",
+    "example": 295,
+    "start_line": 5370,
+    "html": "<p>  &amp; © Æ Ď\n¾ ℋ ⅆ\n∲ ≧̸</p>\n",
+    "end_line": 5378
+  },
+  {
+    "markdown": "&#35; &#1234; &#992; &#98765432; &#0;\n",
+    "section": "Entity and numeric character references",
+    "example": 296,
+    "start_line": 5389,
+    "html": "<p># Ӓ Ϡ � �</p>\n",
+    "end_line": 5393
+  },
+  {
+    "markdown": "&#X22; &#XD06; &#xcab;\n",
+    "section": "Entity and numeric character references",
+    "example": 297,
+    "start_line": 5402,
+    "html": "<p>&quot; ആ ಫ</p>\n",
+    "end_line": 5406
+  },
+  {
+    "markdown": "&nbsp &x; &#; &#x;\n&ThisIsNotDefined; &hi?;\n",
+    "section": "Entity and numeric character references",
+    "example": 298,
+    "start_line": 5411,
+    "html": "<p>&amp;nbsp &amp;x; &amp;#; &amp;#x;\n&amp;ThisIsNotDefined; &amp;hi?;</p>\n",
+    "end_line": 5417
+  },
+  {
+    "markdown": "&copy\n",
+    "section": "Entity and numeric character references",
+    "example": 299,
+    "start_line": 5424,
+    "html": "<p>&amp;copy</p>\n",
+    "end_line": 5428
+  },
+  {
+    "markdown": "&MadeUpEntity;\n",
+    "section": "Entity and numeric character references",
+    "example": 300,
+    "start_line": 5434,
+    "html": "<p>&amp;MadeUpEntity;</p>\n",
+    "end_line": 5438
+  },
+  {
+    "markdown": "<a href=\"&ouml;&ouml;.html\">\n",
+    "section": "Entity and numeric character references",
+    "example": 301,
+    "start_line": 5445,
+    "html": "<a href=\"&ouml;&ouml;.html\">\n",
+    "end_line": 5449
+  },
+  {
+    "markdown": "[foo](/f&ouml;&ouml; \"f&ouml;&ouml;\")\n",
+    "section": "Entity and numeric character references",
+    "example": 302,
+    "start_line": 5452,
+    "html": "<p><a href=\"/f%C3%B6%C3%B6\" title=\"föö\">foo</a></p>\n",
+    "end_line": 5456
+  },
+  {
+    "markdown": "[foo]\n\n[foo]: /f&ouml;&ouml; \"f&ouml;&ouml;\"\n",
+    "section": "Entity and numeric character references",
+    "example": 303,
+    "start_line": 5459,
+    "html": "<p><a href=\"/f%C3%B6%C3%B6\" title=\"föö\">foo</a></p>\n",
+    "end_line": 5465
+  },
+  {
+    "markdown": "``` f&ouml;&ouml;\nfoo\n```\n",
+    "section": "Entity and numeric character references",
+    "example": 304,
+    "start_line": 5468,
+    "html": "<pre><code class=\"language-föö\">foo\n</code></pre>\n",
+    "end_line": 5475
+  },
+  {
+    "markdown": "`f&ouml;&ouml;`\n",
+    "section": "Entity and numeric character references",
+    "example": 305,
+    "start_line": 5481,
+    "html": "<p><code>f&amp;ouml;&amp;ouml;</code></p>\n",
+    "end_line": 5485
+  },
+  {
+    "markdown": "    f&ouml;f&ouml;\n",
+    "section": "Entity and numeric character references",
+    "example": 306,
+    "start_line": 5488,
+    "html": "<pre><code>f&amp;ouml;f&amp;ouml;\n</code></pre>\n",
+    "end_line": 5493
+  },
+  {
+    "markdown": "`foo`\n",
+    "section": "Code spans",
+    "example": 307,
+    "start_line": 5510,
+    "html": "<p><code>foo</code></p>\n",
+    "end_line": 5514
+  },
+  {
+    "markdown": "`` foo ` bar  ``\n",
+    "section": "Code spans",
+    "example": 308,
+    "start_line": 5520,
+    "html": "<p><code>foo ` bar</code></p>\n",
+    "end_line": 5524
+  },
+  {
+    "markdown": "` `` `\n",
+    "section": "Code spans",
+    "example": 309,
+    "start_line": 5530,
+    "html": "<p><code>``</code></p>\n",
+    "end_line": 5534
+  },
+  {
+    "markdown": "``\nfoo\n``\n",
+    "section": "Code spans",
+    "example": 310,
+    "start_line": 5539,
+    "html": "<p><code>foo</code></p>\n",
+    "end_line": 5545
+  },
+  {
+    "markdown": "`foo   bar\n  baz`\n",
+    "section": "Code spans",
+    "example": 311,
+    "start_line": 5551,
+    "html": "<p><code>foo bar baz</code></p>\n",
+    "end_line": 5556
+  },
+  {
+    "markdown": "`foo `` bar`\n",
+    "section": "Code spans",
+    "example": 312,
+    "start_line": 5572,
+    "html": "<p><code>foo `` bar</code></p>\n",
+    "end_line": 5576
+  },
+  {
+    "markdown": "`foo\\`bar`\n",
+    "section": "Code spans",
+    "example": 313,
+    "start_line": 5582,
+    "html": "<p><code>foo\\</code>bar`</p>\n",
+    "end_line": 5586
+  },
+  {
+    "markdown": "*foo`*`\n",
+    "section": "Code spans",
+    "example": 314,
+    "start_line": 5598,
+    "html": "<p>*foo<code>*</code></p>\n",
+    "end_line": 5602
+  },
+  {
+    "markdown": "[not a `link](/foo`)\n",
+    "section": "Code spans",
+    "example": 315,
+    "start_line": 5607,
+    "html": "<p>[not a <code>link](/foo</code>)</p>\n",
+    "end_line": 5611
+  },
+  {
+    "markdown": "`<a href=\"`\">`\n",
+    "section": "Code spans",
+    "example": 316,
+    "start_line": 5617,
+    "html": "<p><code>&lt;a href=&quot;</code>&quot;&gt;`</p>\n",
+    "end_line": 5621
+  },
+  {
+    "markdown": "<a href=\"`\">`\n",
+    "section": "Code spans",
+    "example": 317,
+    "start_line": 5626,
+    "html": "<p><a href=\"`\">`</p>\n",
+    "end_line": 5630
+  },
+  {
+    "markdown": "`<http://foo.bar.`baz>`\n",
+    "section": "Code spans",
+    "example": 318,
+    "start_line": 5635,
+    "html": "<p><code>&lt;http://foo.bar.</code>baz&gt;`</p>\n",
+    "end_line": 5639
+  },
+  {
+    "markdown": "<http://foo.bar.`baz>`\n",
+    "section": "Code spans",
+    "example": 319,
+    "start_line": 5644,
+    "html": "<p><a href=\"http://foo.bar.%60baz\">http://foo.bar.`baz</a>`</p>\n",
+    "end_line": 5648
+  },
+  {
+    "markdown": "```foo``\n",
+    "section": "Code spans",
+    "example": 320,
+    "start_line": 5654,
+    "html": "<p>```foo``</p>\n",
+    "end_line": 5658
+  },
+  {
+    "markdown": "`foo\n",
+    "section": "Code spans",
+    "example": 321,
+    "start_line": 5661,
+    "html": "<p>`foo</p>\n",
+    "end_line": 5665
+  },
+  {
+    "markdown": "*foo bar*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 322,
+    "start_line": 5871,
+    "html": "<p><em>foo bar</em></p>\n",
+    "end_line": 5875
+  },
+  {
+    "markdown": "a * foo bar*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 323,
+    "start_line": 5881,
+    "html": "<p>a * foo bar*</p>\n",
+    "end_line": 5885
+  },
+  {
+    "markdown": "a*\"foo\"*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 324,
+    "start_line": 5892,
+    "html": "<p>a*&quot;foo&quot;*</p>\n",
+    "end_line": 5896
+  },
+  {
+    "markdown": "* a *\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 325,
+    "start_line": 5901,
+    "html": "<p>* a *</p>\n",
+    "end_line": 5905
+  },
+  {
+    "markdown": "foo*bar*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 326,
+    "start_line": 5910,
+    "html": "<p>foo<em>bar</em></p>\n",
+    "end_line": 5914
+  },
+  {
+    "markdown": "5*6*78\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 327,
+    "start_line": 5917,
+    "html": "<p>5<em>6</em>78</p>\n",
+    "end_line": 5921
+  },
+  {
+    "markdown": "_foo bar_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 328,
+    "start_line": 5926,
+    "html": "<p><em>foo bar</em></p>\n",
+    "end_line": 5930
+  },
+  {
+    "markdown": "_ foo bar_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 329,
+    "start_line": 5936,
+    "html": "<p>_ foo bar_</p>\n",
+    "end_line": 5940
+  },
+  {
+    "markdown": "a_\"foo\"_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 330,
+    "start_line": 5946,
+    "html": "<p>a_&quot;foo&quot;_</p>\n",
+    "end_line": 5950
+  },
+  {
+    "markdown": "foo_bar_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 331,
+    "start_line": 5955,
+    "html": "<p>foo_bar_</p>\n",
+    "end_line": 5959
+  },
+  {
+    "markdown": "5_6_78\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 332,
+    "start_line": 5962,
+    "html": "<p>5_6_78</p>\n",
+    "end_line": 5966
+  },
+  {
+    "markdown": "пристаням_стремятся_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 333,
+    "start_line": 5969,
+    "html": "<p>пристаням_стремятся_</p>\n",
+    "end_line": 5973
+  },
+  {
+    "markdown": "aa_\"bb\"_cc\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 334,
+    "start_line": 5979,
+    "html": "<p>aa_&quot;bb&quot;_cc</p>\n",
+    "end_line": 5983
+  },
+  {
+    "markdown": "foo-_(bar)_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 335,
+    "start_line": 5990,
+    "html": "<p>foo-<em>(bar)</em></p>\n",
+    "end_line": 5994
+  },
+  {
+    "markdown": "_foo*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 336,
+    "start_line": 6002,
+    "html": "<p>_foo*</p>\n",
+    "end_line": 6006
+  },
+  {
+    "markdown": "*foo bar *\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 337,
+    "start_line": 6012,
+    "html": "<p>*foo bar *</p>\n",
+    "end_line": 6016
+  },
+  {
+    "markdown": "*foo bar\n*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 338,
+    "start_line": 6021,
+    "html": "<p>*foo bar</p>\n<ul>\n<li></li>\n</ul>\n",
+    "end_line": 6029
+  },
+  {
+    "markdown": "*(*foo)\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 339,
+    "start_line": 6036,
+    "html": "<p>*(*foo)</p>\n",
+    "end_line": 6040
+  },
+  {
+    "markdown": "*(*foo*)*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 340,
+    "start_line": 6046,
+    "html": "<p><em>(<em>foo</em>)</em></p>\n",
+    "end_line": 6050
+  },
+  {
+    "markdown": "*foo*bar\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 341,
+    "start_line": 6055,
+    "html": "<p><em>foo</em>bar</p>\n",
+    "end_line": 6059
+  },
+  {
+    "markdown": "_foo bar _\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 342,
+    "start_line": 6068,
+    "html": "<p>_foo bar _</p>\n",
+    "end_line": 6072
+  },
+  {
+    "markdown": "_(_foo)\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 343,
+    "start_line": 6078,
+    "html": "<p>_(_foo)</p>\n",
+    "end_line": 6082
+  },
+  {
+    "markdown": "_(_foo_)_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 344,
+    "start_line": 6087,
+    "html": "<p><em>(<em>foo</em>)</em></p>\n",
+    "end_line": 6091
+  },
+  {
+    "markdown": "_foo_bar\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 345,
+    "start_line": 6096,
+    "html": "<p>_foo_bar</p>\n",
+    "end_line": 6100
+  },
+  {
+    "markdown": "_пристаням_стремятся\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 346,
+    "start_line": 6103,
+    "html": "<p>_пристаням_стремятся</p>\n",
+    "end_line": 6107
+  },
+  {
+    "markdown": "_foo_bar_baz_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 347,
+    "start_line": 6110,
+    "html": "<p><em>foo_bar_baz</em></p>\n",
+    "end_line": 6114
+  },
+  {
+    "markdown": "_(bar)_.\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 348,
+    "start_line": 6121,
+    "html": "<p><em>(bar)</em>.</p>\n",
+    "end_line": 6125
+  },
+  {
+    "markdown": "**foo bar**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 349,
+    "start_line": 6130,
+    "html": "<p><strong>foo bar</strong></p>\n",
+    "end_line": 6134
+  },
+  {
+    "markdown": "** foo bar**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 350,
+    "start_line": 6140,
+    "html": "<p>** foo bar**</p>\n",
+    "end_line": 6144
+  },
+  {
+    "markdown": "a**\"foo\"**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 351,
+    "start_line": 6151,
+    "html": "<p>a**&quot;foo&quot;**</p>\n",
+    "end_line": 6155
+  },
+  {
+    "markdown": "foo**bar**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 352,
+    "start_line": 6160,
+    "html": "<p>foo<strong>bar</strong></p>\n",
+    "end_line": 6164
+  },
+  {
+    "markdown": "__foo bar__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 353,
+    "start_line": 6169,
+    "html": "<p><strong>foo bar</strong></p>\n",
+    "end_line": 6173
+  },
+  {
+    "markdown": "__ foo bar__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 354,
+    "start_line": 6179,
+    "html": "<p>__ foo bar__</p>\n",
+    "end_line": 6183
+  },
+  {
+    "markdown": "__\nfoo bar__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 355,
+    "start_line": 6187,
+    "html": "<p>__\nfoo bar__</p>\n",
+    "end_line": 6193
+  },
+  {
+    "markdown": "a__\"foo\"__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 356,
+    "start_line": 6199,
+    "html": "<p>a__&quot;foo&quot;__</p>\n",
+    "end_line": 6203
+  },
+  {
+    "markdown": "foo__bar__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 357,
+    "start_line": 6208,
+    "html": "<p>foo__bar__</p>\n",
+    "end_line": 6212
+  },
+  {
+    "markdown": "5__6__78\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 358,
+    "start_line": 6215,
+    "html": "<p>5__6__78</p>\n",
+    "end_line": 6219
+  },
+  {
+    "markdown": "пристаням__стремятся__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 359,
+    "start_line": 6222,
+    "html": "<p>пристаням__стремятся__</p>\n",
+    "end_line": 6226
+  },
+  {
+    "markdown": "__foo, __bar__, baz__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 360,
+    "start_line": 6229,
+    "html": "<p><strong>foo, <strong>bar</strong>, baz</strong></p>\n",
+    "end_line": 6233
+  },
+  {
+    "markdown": "foo-__(bar)__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 361,
+    "start_line": 6240,
+    "html": "<p>foo-<strong>(bar)</strong></p>\n",
+    "end_line": 6244
+  },
+  {
+    "markdown": "**foo bar **\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 362,
+    "start_line": 6253,
+    "html": "<p>**foo bar **</p>\n",
+    "end_line": 6257
+  },
+  {
+    "markdown": "**(**foo)\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 363,
+    "start_line": 6266,
+    "html": "<p>**(**foo)</p>\n",
+    "end_line": 6270
+  },
+  {
+    "markdown": "*(**foo**)*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 364,
+    "start_line": 6276,
+    "html": "<p><em>(<strong>foo</strong>)</em></p>\n",
+    "end_line": 6280
+  },
+  {
+    "markdown": "**Gomphocarpus (*Gomphocarpus physocarpus*, syn.\n*Asclepias physocarpa*)**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 365,
+    "start_line": 6283,
+    "html": "<p><strong>Gomphocarpus (<em>Gomphocarpus physocarpus</em>, syn.\n<em>Asclepias physocarpa</em>)</strong></p>\n",
+    "end_line": 6289
+  },
+  {
+    "markdown": "**foo \"*bar*\" foo**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 366,
+    "start_line": 6292,
+    "html": "<p><strong>foo &quot;<em>bar</em>&quot; foo</strong></p>\n",
+    "end_line": 6296
+  },
+  {
+    "markdown": "**foo**bar\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 367,
+    "start_line": 6301,
+    "html": "<p><strong>foo</strong>bar</p>\n",
+    "end_line": 6305
+  },
+  {
+    "markdown": "__foo bar __\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 368,
+    "start_line": 6313,
+    "html": "<p>__foo bar __</p>\n",
+    "end_line": 6317
+  },
+  {
+    "markdown": "__(__foo)\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 369,
+    "start_line": 6323,
+    "html": "<p>__(__foo)</p>\n",
+    "end_line": 6327
+  },
+  {
+    "markdown": "_(__foo__)_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 370,
+    "start_line": 6333,
+    "html": "<p><em>(<strong>foo</strong>)</em></p>\n",
+    "end_line": 6337
+  },
+  {
+    "markdown": "__foo__bar\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 371,
+    "start_line": 6342,
+    "html": "<p>__foo__bar</p>\n",
+    "end_line": 6346
+  },
+  {
+    "markdown": "__пристаням__стремятся\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 372,
+    "start_line": 6349,
+    "html": "<p>__пристаням__стремятся</p>\n",
+    "end_line": 6353
+  },
+  {
+    "markdown": "__foo__bar__baz__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 373,
+    "start_line": 6356,
+    "html": "<p><strong>foo__bar__baz</strong></p>\n",
+    "end_line": 6360
+  },
+  {
+    "markdown": "__(bar)__.\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 374,
+    "start_line": 6367,
+    "html": "<p><strong>(bar)</strong>.</p>\n",
+    "end_line": 6371
+  },
+  {
+    "markdown": "*foo [bar](/url)*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 375,
+    "start_line": 6379,
+    "html": "<p><em>foo <a href=\"/url\">bar</a></em></p>\n",
+    "end_line": 6383
+  },
+  {
+    "markdown": "*foo\nbar*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 376,
+    "start_line": 6386,
+    "html": "<p><em>foo\nbar</em></p>\n",
+    "end_line": 6392
+  },
+  {
+    "markdown": "_foo __bar__ baz_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 377,
+    "start_line": 6398,
+    "html": "<p><em>foo <strong>bar</strong> baz</em></p>\n",
+    "end_line": 6402
+  },
+  {
+    "markdown": "_foo _bar_ baz_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 378,
+    "start_line": 6405,
+    "html": "<p><em>foo <em>bar</em> baz</em></p>\n",
+    "end_line": 6409
+  },
+  {
+    "markdown": "__foo_ bar_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 379,
+    "start_line": 6412,
+    "html": "<p><em><em>foo</em> bar</em></p>\n",
+    "end_line": 6416
+  },
+  {
+    "markdown": "*foo *bar**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 380,
+    "start_line": 6419,
+    "html": "<p><em>foo <em>bar</em></em></p>\n",
+    "end_line": 6423
+  },
+  {
+    "markdown": "*foo **bar** baz*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 381,
+    "start_line": 6426,
+    "html": "<p><em>foo <strong>bar</strong> baz</em></p>\n",
+    "end_line": 6430
+  },
+  {
+    "markdown": "*foo**bar**baz*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 382,
+    "start_line": 6435,
+    "html": "<p><em>foo</em><em>bar</em><em>baz</em></p>\n",
+    "end_line": 6439
+  },
+  {
+    "markdown": "***foo** bar*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 383,
+    "start_line": 6445,
+    "html": "<p><em><strong>foo</strong> bar</em></p>\n",
+    "end_line": 6449
+  },
+  {
+    "markdown": "*foo **bar***\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 384,
+    "start_line": 6452,
+    "html": "<p><em>foo <strong>bar</strong></em></p>\n",
+    "end_line": 6456
+  },
+  {
+    "markdown": "*foo**bar***\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 385,
+    "start_line": 6463,
+    "html": "<p><em>foo</em><em>bar</em>**</p>\n",
+    "end_line": 6467
+  },
+  {
+    "markdown": "*foo **bar *baz* bim** bop*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 386,
+    "start_line": 6473,
+    "html": "<p><em>foo <strong>bar <em>baz</em> bim</strong> bop</em></p>\n",
+    "end_line": 6477
+  },
+  {
+    "markdown": "*foo [*bar*](/url)*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 387,
+    "start_line": 6480,
+    "html": "<p><em>foo <a href=\"/url\"><em>bar</em></a></em></p>\n",
+    "end_line": 6484
+  },
+  {
+    "markdown": "** is not an empty emphasis\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 388,
+    "start_line": 6489,
+    "html": "<p>** is not an empty emphasis</p>\n",
+    "end_line": 6493
+  },
+  {
+    "markdown": "**** is not an empty strong emphasis\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 389,
+    "start_line": 6496,
+    "html": "<p>**** is not an empty strong emphasis</p>\n",
+    "end_line": 6500
+  },
+  {
+    "markdown": "**foo [bar](/url)**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 390,
+    "start_line": 6509,
+    "html": "<p><strong>foo <a href=\"/url\">bar</a></strong></p>\n",
+    "end_line": 6513
+  },
+  {
+    "markdown": "**foo\nbar**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 391,
+    "start_line": 6516,
+    "html": "<p><strong>foo\nbar</strong></p>\n",
+    "end_line": 6522
+  },
+  {
+    "markdown": "__foo _bar_ baz__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 392,
+    "start_line": 6528,
+    "html": "<p><strong>foo <em>bar</em> baz</strong></p>\n",
+    "end_line": 6532
+  },
+  {
+    "markdown": "__foo __bar__ baz__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 393,
+    "start_line": 6535,
+    "html": "<p><strong>foo <strong>bar</strong> baz</strong></p>\n",
+    "end_line": 6539
+  },
+  {
+    "markdown": "____foo__ bar__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 394,
+    "start_line": 6542,
+    "html": "<p><strong><strong>foo</strong> bar</strong></p>\n",
+    "end_line": 6546
+  },
+  {
+    "markdown": "**foo **bar****\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 395,
+    "start_line": 6549,
+    "html": "<p><strong>foo <strong>bar</strong></strong></p>\n",
+    "end_line": 6553
+  },
+  {
+    "markdown": "**foo *bar* baz**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 396,
+    "start_line": 6556,
+    "html": "<p><strong>foo <em>bar</em> baz</strong></p>\n",
+    "end_line": 6560
+  },
+  {
+    "markdown": "**foo*bar*baz**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 397,
+    "start_line": 6565,
+    "html": "<p><em><em>foo</em>bar</em>baz**</p>\n",
+    "end_line": 6569
+  },
+  {
+    "markdown": "***foo* bar**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 398,
+    "start_line": 6575,
+    "html": "<p><strong><em>foo</em> bar</strong></p>\n",
+    "end_line": 6579
+  },
+  {
+    "markdown": "**foo *bar***\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 399,
+    "start_line": 6582,
+    "html": "<p><strong>foo <em>bar</em></strong></p>\n",
+    "end_line": 6586
+  },
+  {
+    "markdown": "**foo *bar **baz**\nbim* bop**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 400,
+    "start_line": 6591,
+    "html": "<p><strong>foo <em>bar <strong>baz</strong>\nbim</em> bop</strong></p>\n",
+    "end_line": 6597
+  },
+  {
+    "markdown": "**foo [*bar*](/url)**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 401,
+    "start_line": 6600,
+    "html": "<p><strong>foo <a href=\"/url\"><em>bar</em></a></strong></p>\n",
+    "end_line": 6604
+  },
+  {
+    "markdown": "__ is not an empty emphasis\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 402,
+    "start_line": 6609,
+    "html": "<p>__ is not an empty emphasis</p>\n",
+    "end_line": 6613
+  },
+  {
+    "markdown": "____ is not an empty strong emphasis\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 403,
+    "start_line": 6616,
+    "html": "<p>____ is not an empty strong emphasis</p>\n",
+    "end_line": 6620
+  },
+  {
+    "markdown": "foo ***\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 404,
+    "start_line": 6626,
+    "html": "<p>foo ***</p>\n",
+    "end_line": 6630
+  },
+  {
+    "markdown": "foo *\\**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 405,
+    "start_line": 6633,
+    "html": "<p>foo <em>*</em></p>\n",
+    "end_line": 6637
+  },
+  {
+    "markdown": "foo *_*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 406,
+    "start_line": 6640,
+    "html": "<p>foo <em>_</em></p>\n",
+    "end_line": 6644
+  },
+  {
+    "markdown": "foo *****\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 407,
+    "start_line": 6647,
+    "html": "<p>foo *****</p>\n",
+    "end_line": 6651
+  },
+  {
+    "markdown": "foo **\\***\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 408,
+    "start_line": 6654,
+    "html": "<p>foo <strong>*</strong></p>\n",
+    "end_line": 6658
+  },
+  {
+    "markdown": "foo **_**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 409,
+    "start_line": 6661,
+    "html": "<p>foo <strong>_</strong></p>\n",
+    "end_line": 6665
+  },
+  {
+    "markdown": "**foo*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 410,
+    "start_line": 6672,
+    "html": "<p>*<em>foo</em></p>\n",
+    "end_line": 6676
+  },
+  {
+    "markdown": "*foo**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 411,
+    "start_line": 6679,
+    "html": "<p><em>foo</em>*</p>\n",
+    "end_line": 6683
+  },
+  {
+    "markdown": "***foo**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 412,
+    "start_line": 6686,
+    "html": "<p>*<strong>foo</strong></p>\n",
+    "end_line": 6690
+  },
+  {
+    "markdown": "****foo*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 413,
+    "start_line": 6693,
+    "html": "<p>***<em>foo</em></p>\n",
+    "end_line": 6697
+  },
+  {
+    "markdown": "**foo***\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 414,
+    "start_line": 6700,
+    "html": "<p><strong>foo</strong>*</p>\n",
+    "end_line": 6704
+  },
+  {
+    "markdown": "*foo****\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 415,
+    "start_line": 6707,
+    "html": "<p><em>foo</em>***</p>\n",
+    "end_line": 6711
+  },
+  {
+    "markdown": "foo ___\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 416,
+    "start_line": 6717,
+    "html": "<p>foo ___</p>\n",
+    "end_line": 6721
+  },
+  {
+    "markdown": "foo _\\__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 417,
+    "start_line": 6724,
+    "html": "<p>foo <em>_</em></p>\n",
+    "end_line": 6728
+  },
+  {
+    "markdown": "foo _*_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 418,
+    "start_line": 6731,
+    "html": "<p>foo <em>*</em></p>\n",
+    "end_line": 6735
+  },
+  {
+    "markdown": "foo _____\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 419,
+    "start_line": 6738,
+    "html": "<p>foo _____</p>\n",
+    "end_line": 6742
+  },
+  {
+    "markdown": "foo __\\___\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 420,
+    "start_line": 6745,
+    "html": "<p>foo <strong>_</strong></p>\n",
+    "end_line": 6749
+  },
+  {
+    "markdown": "foo __*__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 421,
+    "start_line": 6752,
+    "html": "<p>foo <strong>*</strong></p>\n",
+    "end_line": 6756
+  },
+  {
+    "markdown": "__foo_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 422,
+    "start_line": 6759,
+    "html": "<p>_<em>foo</em></p>\n",
+    "end_line": 6763
+  },
+  {
+    "markdown": "_foo__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 423,
+    "start_line": 6770,
+    "html": "<p><em>foo</em>_</p>\n",
+    "end_line": 6774
+  },
+  {
+    "markdown": "___foo__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 424,
+    "start_line": 6777,
+    "html": "<p>_<strong>foo</strong></p>\n",
+    "end_line": 6781
+  },
+  {
+    "markdown": "____foo_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 425,
+    "start_line": 6784,
+    "html": "<p>___<em>foo</em></p>\n",
+    "end_line": 6788
+  },
+  {
+    "markdown": "__foo___\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 426,
+    "start_line": 6791,
+    "html": "<p><strong>foo</strong>_</p>\n",
+    "end_line": 6795
+  },
+  {
+    "markdown": "_foo____\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 427,
+    "start_line": 6798,
+    "html": "<p><em>foo</em>___</p>\n",
+    "end_line": 6802
+  },
+  {
+    "markdown": "**foo**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 428,
+    "start_line": 6808,
+    "html": "<p><strong>foo</strong></p>\n",
+    "end_line": 6812
+  },
+  {
+    "markdown": "*_foo_*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 429,
+    "start_line": 6815,
+    "html": "<p><em><em>foo</em></em></p>\n",
+    "end_line": 6819
+  },
+  {
+    "markdown": "__foo__\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 430,
+    "start_line": 6822,
+    "html": "<p><strong>foo</strong></p>\n",
+    "end_line": 6826
+  },
+  {
+    "markdown": "_*foo*_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 431,
+    "start_line": 6829,
+    "html": "<p><em><em>foo</em></em></p>\n",
+    "end_line": 6833
+  },
+  {
+    "markdown": "****foo****\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 432,
+    "start_line": 6839,
+    "html": "<p><strong><strong>foo</strong></strong></p>\n",
+    "end_line": 6843
+  },
+  {
+    "markdown": "____foo____\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 433,
+    "start_line": 6846,
+    "html": "<p><strong><strong>foo</strong></strong></p>\n",
+    "end_line": 6850
+  },
+  {
+    "markdown": "******foo******\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 434,
+    "start_line": 6857,
+    "html": "<p><strong><strong><strong>foo</strong></strong></strong></p>\n",
+    "end_line": 6861
+  },
+  {
+    "markdown": "***foo***\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 435,
+    "start_line": 6866,
+    "html": "<p><strong><em>foo</em></strong></p>\n",
+    "end_line": 6870
+  },
+  {
+    "markdown": "_____foo_____\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 436,
+    "start_line": 6873,
+    "html": "<p><strong><strong><em>foo</em></strong></strong></p>\n",
+    "end_line": 6877
+  },
+  {
+    "markdown": "*foo _bar* baz_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 437,
+    "start_line": 6882,
+    "html": "<p><em>foo _bar</em> baz_</p>\n",
+    "end_line": 6886
+  },
+  {
+    "markdown": "**foo*bar**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 438,
+    "start_line": 6889,
+    "html": "<p><em><em>foo</em>bar</em>*</p>\n",
+    "end_line": 6893
+  },
+  {
+    "markdown": "*foo __bar *baz bim__ bam*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 439,
+    "start_line": 6896,
+    "html": "<p><em>foo <strong>bar *baz bim</strong> bam</em></p>\n",
+    "end_line": 6900
+  },
+  {
+    "markdown": "**foo **bar baz**\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 440,
+    "start_line": 6905,
+    "html": "<p>**foo <strong>bar baz</strong></p>\n",
+    "end_line": 6909
+  },
+  {
+    "markdown": "*foo *bar baz*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 441,
+    "start_line": 6912,
+    "html": "<p>*foo <em>bar baz</em></p>\n",
+    "end_line": 6916
+  },
+  {
+    "markdown": "*[bar*](/url)\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 442,
+    "start_line": 6921,
+    "html": "<p>*<a href=\"/url\">bar*</a></p>\n",
+    "end_line": 6925
+  },
+  {
+    "markdown": "_foo [bar_](/url)\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 443,
+    "start_line": 6928,
+    "html": "<p>_foo <a href=\"/url\">bar_</a></p>\n",
+    "end_line": 6932
+  },
+  {
+    "markdown": "*<img src=\"foo\" title=\"*\"/>\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 444,
+    "start_line": 6935,
+    "html": "<p>*<img src=\"foo\" title=\"*\"/></p>\n",
+    "end_line": 6939
+  },
+  {
+    "markdown": "**<a href=\"**\">\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 445,
+    "start_line": 6942,
+    "html": "<p>**<a href=\"**\"></p>\n",
+    "end_line": 6946
+  },
+  {
+    "markdown": "__<a href=\"__\">\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 446,
+    "start_line": 6949,
+    "html": "<p>__<a href=\"__\"></p>\n",
+    "end_line": 6953
+  },
+  {
+    "markdown": "*a `*`*\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 447,
+    "start_line": 6956,
+    "html": "<p><em>a <code>*</code></em></p>\n",
+    "end_line": 6960
+  },
+  {
+    "markdown": "_a `_`_\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 448,
+    "start_line": 6963,
+    "html": "<p><em>a <code>_</code></em></p>\n",
+    "end_line": 6967
+  },
+  {
+    "markdown": "**a<http://foo.bar/?q=**>\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 449,
+    "start_line": 6970,
+    "html": "<p>**a<a href=\"http://foo.bar/?q=**\">http://foo.bar/?q=**</a></p>\n",
+    "end_line": 6974
+  },
+  {
+    "markdown": "__a<http://foo.bar/?q=__>\n",
+    "section": "Emphasis and strong emphasis",
+    "example": 450,
+    "start_line": 6977,
+    "html": "<p>__a<a href=\"http://foo.bar/?q=__\">http://foo.bar/?q=__</a></p>\n",
+    "end_line": 6981
+  },
+  {
+    "markdown": "[link](/uri \"title\")\n",
+    "section": "Links",
+    "example": 451,
+    "start_line": 7057,
+    "html": "<p><a href=\"/uri\" title=\"title\">link</a></p>\n",
+    "end_line": 7061
+  },
+  {
+    "markdown": "[link](/uri)\n",
+    "section": "Links",
+    "example": 452,
+    "start_line": 7066,
+    "html": "<p><a href=\"/uri\">link</a></p>\n",
+    "end_line": 7070
+  },
+  {
+    "markdown": "[link]()\n",
+    "section": "Links",
+    "example": 453,
+    "start_line": 7075,
+    "html": "<p><a href=\"\">link</a></p>\n",
+    "end_line": 7079
+  },
+  {
+    "markdown": "[link](<>)\n",
+    "section": "Links",
+    "example": 454,
+    "start_line": 7082,
+    "html": "<p><a href=\"\">link</a></p>\n",
+    "end_line": 7086
+  },
+  {
+    "markdown": "[link](/my uri)\n",
+    "section": "Links",
+    "example": 455,
+    "start_line": 7092,
+    "html": "<p>[link](/my uri)</p>\n",
+    "end_line": 7096
+  },
+  {
+    "markdown": "[link](</my uri>)\n",
+    "section": "Links",
+    "example": 456,
+    "start_line": 7099,
+    "html": "<p>[link](&lt;/my uri&gt;)</p>\n",
+    "end_line": 7103
+  },
+  {
+    "markdown": "[link](foo\nbar)\n",
+    "section": "Links",
+    "example": 457,
+    "start_line": 7106,
+    "html": "<p>[link](foo\nbar)</p>\n",
+    "end_line": 7112
+  },
+  {
+    "markdown": "[link](<foo\nbar>)\n",
+    "section": "Links",
+    "example": 458,
+    "start_line": 7115,
+    "html": "<p>[link](<foo\nbar>)</p>\n",
+    "end_line": 7121
+  },
+  {
+    "markdown": "[link](\\(foo\\))\n",
+    "section": "Links",
+    "example": 459,
+    "start_line": 7125,
+    "html": "<p><a href=\"(foo)\">link</a></p>\n",
+    "end_line": 7129
+  },
+  {
+    "markdown": "[link]((foo)and(bar))\n",
+    "section": "Links",
+    "example": 460,
+    "start_line": 7133,
+    "html": "<p><a href=\"(foo)and(bar)\">link</a></p>\n",
+    "end_line": 7137
+  },
+  {
+    "markdown": "[link](foo(and(bar)))\n",
+    "section": "Links",
+    "example": 461,
+    "start_line": 7142,
+    "html": "<p>[link](foo(and(bar)))</p>\n",
+    "end_line": 7146
+  },
+  {
+    "markdown": "[link](foo(and\\(bar\\)))\n",
+    "section": "Links",
+    "example": 462,
+    "start_line": 7149,
+    "html": "<p><a href=\"foo(and(bar))\">link</a></p>\n",
+    "end_line": 7153
+  },
+  {
+    "markdown": "[link](<foo(and(bar))>)\n",
+    "section": "Links",
+    "example": 463,
+    "start_line": 7156,
+    "html": "<p><a href=\"foo(and(bar))\">link</a></p>\n",
+    "end_line": 7160
+  },
+  {
+    "markdown": "[link](foo\\)\\:)\n",
+    "section": "Links",
+    "example": 464,
+    "start_line": 7166,
+    "html": "<p><a href=\"foo):\">link</a></p>\n",
+    "end_line": 7170
+  },
+  {
+    "markdown": "[link](#fragment)\n\n[link](http://example.com#fragment)\n\n[link](http://example.com?foo=3#frag)\n",
+    "section": "Links",
+    "example": 465,
+    "start_line": 7175,
+    "html": "<p><a href=\"#fragment\">link</a></p>\n<p><a href=\"http://example.com#fragment\">link</a></p>\n<p><a href=\"http://example.com?foo=3#frag\">link</a></p>\n",
+    "end_line": 7185
+  },
+  {
+    "markdown": "[link](foo\\bar)\n",
+    "section": "Links",
+    "example": 466,
+    "start_line": 7191,
+    "html": "<p><a href=\"foo%5Cbar\">link</a></p>\n",
+    "end_line": 7195
+  },
+  {
+    "markdown": "[link](foo%20b&auml;)\n",
+    "section": "Links",
+    "example": 467,
+    "start_line": 7207,
+    "html": "<p><a href=\"foo%20b%C3%A4\">link</a></p>\n",
+    "end_line": 7211
+  },
+  {
+    "markdown": "[link](\"title\")\n",
+    "section": "Links",
+    "example": 468,
+    "start_line": 7218,
+    "html": "<p><a href=\"%22title%22\">link</a></p>\n",
+    "end_line": 7222
+  },
+  {
+    "markdown": "[link](/url \"title\")\n[link](/url 'title')\n[link](/url (title))\n",
+    "section": "Links",
+    "example": 469,
+    "start_line": 7227,
+    "html": "<p><a href=\"/url\" title=\"title\">link</a>\n<a href=\"/url\" title=\"title\">link</a>\n<a href=\"/url\" title=\"title\">link</a></p>\n",
+    "end_line": 7235
+  },
+  {
+    "markdown": "[link](/url \"title \\\"&quot;\")\n",
+    "section": "Links",
+    "example": 470,
+    "start_line": 7241,
+    "html": "<p><a href=\"/url\" title=\"title &quot;&quot;\">link</a></p>\n",
+    "end_line": 7245
+  },
+  {
+    "markdown": "[link](/url \"title \"and\" title\")\n",
+    "section": "Links",
+    "example": 471,
+    "start_line": 7250,
+    "html": "<p>[link](/url &quot;title &quot;and&quot; title&quot;)</p>\n",
+    "end_line": 7254
+  },
+  {
+    "markdown": "[link](/url 'title \"and\" title')\n",
+    "section": "Links",
+    "example": 472,
+    "start_line": 7259,
+    "html": "<p><a href=\"/url\" title=\"title &quot;and&quot; title\">link</a></p>\n",
+    "end_line": 7263
+  },
+  {
+    "markdown": "[link](   /uri\n  \"title\"  )\n",
+    "section": "Links",
+    "example": 473,
+    "start_line": 7283,
+    "html": "<p><a href=\"/uri\" title=\"title\">link</a></p>\n",
+    "end_line": 7288
+  },
+  {
+    "markdown": "[link] (/uri)\n",
+    "section": "Links",
+    "example": 474,
+    "start_line": 7294,
+    "html": "<p>[link] (/uri)</p>\n",
+    "end_line": 7298
+  },
+  {
+    "markdown": "[link [foo [bar]]](/uri)\n",
+    "section": "Links",
+    "example": 475,
+    "start_line": 7304,
+    "html": "<p><a href=\"/uri\">link [foo [bar]]</a></p>\n",
+    "end_line": 7308
+  },
+  {
+    "markdown": "[link] bar](/uri)\n",
+    "section": "Links",
+    "example": 476,
+    "start_line": 7311,
+    "html": "<p>[link] bar](/uri)</p>\n",
+    "end_line": 7315
+  },
+  {
+    "markdown": "[link [bar](/uri)\n",
+    "section": "Links",
+    "example": 477,
+    "start_line": 7318,
+    "html": "<p>[link <a href=\"/uri\">bar</a></p>\n",
+    "end_line": 7322
+  },
+  {
+    "markdown": "[link \\[bar](/uri)\n",
+    "section": "Links",
+    "example": 478,
+    "start_line": 7325,
+    "html": "<p><a href=\"/uri\">link [bar</a></p>\n",
+    "end_line": 7329
+  },
+  {
+    "markdown": "[link *foo **bar** `#`*](/uri)\n",
+    "section": "Links",
+    "example": 479,
+    "start_line": 7334,
+    "html": "<p><a href=\"/uri\">link <em>foo <strong>bar</strong> <code>#</code></em></a></p>\n",
+    "end_line": 7338
+  },
+  {
+    "markdown": "[![moon](moon.jpg)](/uri)\n",
+    "section": "Links",
+    "example": 480,
+    "start_line": 7341,
+    "html": "<p><a href=\"/uri\"><img src=\"moon.jpg\" alt=\"moon\" /></a></p>\n",
+    "end_line": 7345
+  },
+  {
+    "markdown": "[foo [bar](/uri)](/uri)\n",
+    "section": "Links",
+    "example": 481,
+    "start_line": 7350,
+    "html": "<p>[foo <a href=\"/uri\">bar</a>](/uri)</p>\n",
+    "end_line": 7354
+  },
+  {
+    "markdown": "[foo *[bar [baz](/uri)](/uri)*](/uri)\n",
+    "section": "Links",
+    "example": 482,
+    "start_line": 7357,
+    "html": "<p>[foo <em>[bar <a href=\"/uri\">baz</a>](/uri)</em>](/uri)</p>\n",
+    "end_line": 7361
+  },
+  {
+    "markdown": "![[[foo](uri1)](uri2)](uri3)\n",
+    "section": "Links",
+    "example": 483,
+    "start_line": 7364,
+    "html": "<p><img src=\"uri3\" alt=\"[foo](uri2)\" /></p>\n",
+    "end_line": 7368
+  },
+  {
+    "markdown": "*[foo*](/uri)\n",
+    "section": "Links",
+    "example": 484,
+    "start_line": 7374,
+    "html": "<p>*<a href=\"/uri\">foo*</a></p>\n",
+    "end_line": 7378
+  },
+  {
+    "markdown": "[foo *bar](baz*)\n",
+    "section": "Links",
+    "example": 485,
+    "start_line": 7381,
+    "html": "<p><a href=\"baz*\">foo *bar</a></p>\n",
+    "end_line": 7385
+  },
+  {
+    "markdown": "*foo [bar* baz]\n",
+    "section": "Links",
+    "example": 486,
+    "start_line": 7391,
+    "html": "<p><em>foo [bar</em> baz]</p>\n",
+    "end_line": 7395
+  },
+  {
+    "markdown": "[foo <bar attr=\"](baz)\">\n",
+    "section": "Links",
+    "example": 487,
+    "start_line": 7401,
+    "html": "<p>[foo <bar attr=\"](baz)\"></p>\n",
+    "end_line": 7405
+  },
+  {
+    "markdown": "[foo`](/uri)`\n",
+    "section": "Links",
+    "example": 488,
+    "start_line": 7408,
+    "html": "<p>[foo<code>](/uri)</code></p>\n",
+    "end_line": 7412
+  },
+  {
+    "markdown": "[foo<http://example.com/?search=](uri)>\n",
+    "section": "Links",
+    "example": 489,
+    "start_line": 7415,
+    "html": "<p>[foo<a href=\"http://example.com/?search=%5D(uri)\">http://example.com/?search=](uri)</a></p>\n",
+    "end_line": 7419
+  },
+  {
+    "markdown": "[foo][bar]\n\n[bar]: /url \"title\"\n",
+    "section": "Links",
+    "example": 490,
+    "start_line": 7450,
+    "html": "<p><a href=\"/url\" title=\"title\">foo</a></p>\n",
+    "end_line": 7456
+  },
+  {
+    "markdown": "[link [foo [bar]]][ref]\n\n[ref]: /uri\n",
+    "section": "Links",
+    "example": 491,
+    "start_line": 7465,
+    "html": "<p><a href=\"/uri\">link [foo [bar]]</a></p>\n",
+    "end_line": 7471
+  },
+  {
+    "markdown": "[link \\[bar][ref]\n\n[ref]: /uri\n",
+    "section": "Links",
+    "example": 492,
+    "start_line": 7474,
+    "html": "<p><a href=\"/uri\">link [bar</a></p>\n",
+    "end_line": 7480
+  },
+  {
+    "markdown": "[link *foo **bar** `#`*][ref]\n\n[ref]: /uri\n",
+    "section": "Links",
+    "example": 493,
+    "start_line": 7485,
+    "html": "<p><a href=\"/uri\">link <em>foo <strong>bar</strong> <code>#</code></em></a></p>\n",
+    "end_line": 7491
+  },
+  {
+    "markdown": "[![moon](moon.jpg)][ref]\n\n[ref]: /uri\n",
+    "section": "Links",
+    "example": 494,
+    "start_line": 7494,
+    "html": "<p><a href=\"/uri\"><img src=\"moon.jpg\" alt=\"moon\" /></a></p>\n",
+    "end_line": 7500
+  },
+  {
+    "markdown": "[foo [bar](/uri)][ref]\n\n[ref]: /uri\n",
+    "section": "Links",
+    "example": 495,
+    "start_line": 7505,
+    "html": "<p>[foo <a href=\"/uri\">bar</a>]<a href=\"/uri\">ref</a></p>\n",
+    "end_line": 7511
+  },
+  {
+    "markdown": "[foo *bar [baz][ref]*][ref]\n\n[ref]: /uri\n",
+    "section": "Links",
+    "example": 496,
+    "start_line": 7514,
+    "html": "<p>[foo <em>bar <a href=\"/uri\">baz</a></em>]<a href=\"/uri\">ref</a></p>\n",
+    "end_line": 7520
+  },
+  {
+    "markdown": "*[foo*][ref]\n\n[ref]: /uri\n",
+    "section": "Links",
+    "example": 497,
+    "start_line": 7529,
+    "html": "<p>*<a href=\"/uri\">foo*</a></p>\n",
+    "end_line": 7535
+  },
+  {
+    "markdown": "[foo *bar][ref]\n\n[ref]: /uri\n",
+    "section": "Links",
+    "example": 498,
+    "start_line": 7538,
+    "html": "<p><a href=\"/uri\">foo *bar</a></p>\n",
+    "end_line": 7544
+  },
+  {
+    "markdown": "[foo <bar attr=\"][ref]\">\n\n[ref]: /uri\n",
+    "section": "Links",
+    "example": 499,
+    "start_line": 7550,
+    "html": "<p>[foo <bar attr=\"][ref]\"></p>\n",
+    "end_line": 7556
+  },
+  {
+    "markdown": "[foo`][ref]`\n\n[ref]: /uri\n",
+    "section": "Links",
+    "example": 500,
+    "start_line": 7559,
+    "html": "<p>[foo<code>][ref]</code></p>\n",
+    "end_line": 7565
+  },
+  {
+    "markdown": "[foo<http://example.com/?search=][ref]>\n\n[ref]: /uri\n",
+    "section": "Links",
+    "example": 501,
+    "start_line": 7568,
+    "html": "<p>[foo<a href=\"http://example.com/?search=%5D%5Bref%5D\">http://example.com/?search=][ref]</a></p>\n",
+    "end_line": 7574
+  },
+  {
+    "markdown": "[foo][BaR]\n\n[bar]: /url \"title\"\n",
+    "section": "Links",
+    "example": 502,
+    "start_line": 7579,
+    "html": "<p><a href=\"/url\" title=\"title\">foo</a></p>\n",
+    "end_line": 7585
+  },
+  {
+    "markdown": "[Толпой][Толпой] is a Russian word.\n\n[ТОЛПОЙ]: /url\n",
+    "section": "Links",
+    "example": 503,
+    "start_line": 7590,
+    "html": "<p><a href=\"/url\">Толпой</a> is a Russian word.</p>\n",
+    "end_line": 7596
+  },
+  {
+    "markdown": "[Foo\n  bar]: /url\n\n[Baz][Foo bar]\n",
+    "section": "Links",
+    "example": 504,
+    "start_line": 7602,
+    "html": "<p><a href=\"/url\">Baz</a></p>\n",
+    "end_line": 7609
+  },
+  {
+    "markdown": "[foo] [bar]\n\n[bar]: /url \"title\"\n",
+    "section": "Links",
+    "example": 505,
+    "start_line": 7615,
+    "html": "<p>[foo] <a href=\"/url\" title=\"title\">bar</a></p>\n",
+    "end_line": 7621
+  },
+  {
+    "markdown": "[foo]\n[bar]\n\n[bar]: /url \"title\"\n",
+    "section": "Links",
+    "example": 506,
+    "start_line": 7624,
+    "html": "<p>[foo]\n<a href=\"/url\" title=\"title\">bar</a></p>\n",
+    "end_line": 7632
+  },
+  {
+    "markdown": "[foo]: /url1\n\n[foo]: /url2\n\n[bar][foo]\n",
+    "section": "Links",
+    "example": 507,
+    "start_line": 7665,
+    "html": "<p><a href=\"/url1\">bar</a></p>\n",
+    "end_line": 7673
+  },
+  {
+    "markdown": "[bar][foo\\!]\n\n[foo!]: /url\n",
+    "section": "Links",
+    "example": 508,
+    "start_line": 7680,
+    "html": "<p>[bar][foo!]</p>\n",
+    "end_line": 7686
+  },
+  {
+    "markdown": "[foo][ref[]\n\n[ref[]: /uri\n",
+    "section": "Links",
+    "example": 509,
+    "start_line": 7692,
+    "html": "<p>[foo][ref[]</p>\n<p>[ref[]: /uri</p>\n",
+    "end_line": 7699
+  },
+  {
+    "markdown": "[foo][ref[bar]]\n\n[ref[bar]]: /uri\n",
+    "section": "Links",
+    "example": 510,
+    "start_line": 7702,
+    "html": "<p>[foo][ref[bar]]</p>\n<p>[ref[bar]]: /uri</p>\n",
+    "end_line": 7709
+  },
+  {
+    "markdown": "[[[foo]]]\n\n[[[foo]]]: /url\n",
+    "section": "Links",
+    "example": 511,
+    "start_line": 7712,
+    "html": "<p>[[[foo]]]</p>\n<p>[[[foo]]]: /url</p>\n",
+    "end_line": 7719
+  },
+  {
+    "markdown": "[foo][ref\\[]\n\n[ref\\[]: /uri\n",
+    "section": "Links",
+    "example": 512,
+    "start_line": 7722,
+    "html": "<p><a href=\"/uri\">foo</a></p>\n",
+    "end_line": 7728
+  },
+  {
+    "markdown": "[bar\\\\]: /uri\n\n[bar\\\\]\n",
+    "section": "Links",
+    "example": 513,
+    "start_line": 7733,
+    "html": "<p><a href=\"/uri\">bar\\</a></p>\n",
+    "end_line": 7739
+  },
+  {
+    "markdown": "[]\n\n[]: /uri\n",
+    "section": "Links",
+    "example": 514,
+    "start_line": 7744,
+    "html": "<p>[]</p>\n<p>[]: /uri</p>\n",
+    "end_line": 7751
+  },
+  {
+    "markdown": "[\n ]\n\n[\n ]: /uri\n",
+    "section": "Links",
+    "example": 515,
+    "start_line": 7754,
+    "html": "<p>[\n]</p>\n<p>[\n]: /uri</p>\n",
+    "end_line": 7765
+  },
+  {
+    "markdown": "[foo][]\n\n[foo]: /url \"title\"\n",
+    "section": "Links",
+    "example": 516,
+    "start_line": 7777,
+    "html": "<p><a href=\"/url\" title=\"title\">foo</a></p>\n",
+    "end_line": 7783
+  },
+  {
+    "markdown": "[*foo* bar][]\n\n[*foo* bar]: /url \"title\"\n",
+    "section": "Links",
+    "example": 517,
+    "start_line": 7786,
+    "html": "<p><a href=\"/url\" title=\"title\"><em>foo</em> bar</a></p>\n",
+    "end_line": 7792
+  },
+  {
+    "markdown": "[Foo][]\n\n[foo]: /url \"title\"\n",
+    "section": "Links",
+    "example": 518,
+    "start_line": 7797,
+    "html": "<p><a href=\"/url\" title=\"title\">Foo</a></p>\n",
+    "end_line": 7803
+  },
+  {
+    "markdown": "[foo] \n[]\n\n[foo]: /url \"title\"\n",
+    "section": "Links",
+    "example": 519,
+    "start_line": 7810,
+    "html": "<p><a href=\"/url\" title=\"title\">foo</a>\n[]</p>\n",
+    "end_line": 7818
+  },
+  {
+    "markdown": "[foo]\n\n[foo]: /url \"title\"\n",
+    "section": "Links",
+    "example": 520,
+    "start_line": 7830,
+    "html": "<p><a href=\"/url\" title=\"title\">foo</a></p>\n",
+    "end_line": 7836
+  },
+  {
+    "markdown": "[*foo* bar]\n\n[*foo* bar]: /url \"title\"\n",
+    "section": "Links",
+    "example": 521,
+    "start_line": 7839,
+    "html": "<p><a href=\"/url\" title=\"title\"><em>foo</em> bar</a></p>\n",
+    "end_line": 7845
+  },
+  {
+    "markdown": "[[*foo* bar]]\n\n[*foo* bar]: /url \"title\"\n",
+    "section": "Links",
+    "example": 522,
+    "start_line": 7848,
+    "html": "<p>[<a href=\"/url\" title=\"title\"><em>foo</em> bar</a>]</p>\n",
+    "end_line": 7854
+  },
+  {
+    "markdown": "[[bar [foo]\n\n[foo]: /url\n",
+    "section": "Links",
+    "example": 523,
+    "start_line": 7857,
+    "html": "<p>[[bar <a href=\"/url\">foo</a></p>\n",
+    "end_line": 7863
+  },
+  {
+    "markdown": "[Foo]\n\n[foo]: /url \"title\"\n",
+    "section": "Links",
+    "example": 524,
+    "start_line": 7868,
+    "html": "<p><a href=\"/url\" title=\"title\">Foo</a></p>\n",
+    "end_line": 7874
+  },
+  {
+    "markdown": "[foo] bar\n\n[foo]: /url\n",
+    "section": "Links",
+    "example": 525,
+    "start_line": 7879,
+    "html": "<p><a href=\"/url\">foo</a> bar</p>\n",
+    "end_line": 7885
+  },
+  {
+    "markdown": "\\[foo]\n\n[foo]: /url \"title\"\n",
+    "section": "Links",
+    "example": 526,
+    "start_line": 7891,
+    "html": "<p>[foo]</p>\n",
+    "end_line": 7897
+  },
+  {
+    "markdown": "[foo*]: /url\n\n*[foo*]\n",
+    "section": "Links",
+    "example": 527,
+    "start_line": 7903,
+    "html": "<p>*<a href=\"/url\">foo*</a></p>\n",
+    "end_line": 7909
+  },
+  {
+    "markdown": "[foo][bar]\n\n[foo]: /url1\n[bar]: /url2\n",
+    "section": "Links",
+    "example": 528,
+    "start_line": 7914,
+    "html": "<p><a href=\"/url2\">foo</a></p>\n",
+    "end_line": 7921
+  },
+  {
+    "markdown": "[foo][bar][baz]\n\n[baz]: /url\n",
+    "section": "Links",
+    "example": 529,
+    "start_line": 7927,
+    "html": "<p>[foo]<a href=\"/url\">bar</a></p>\n",
+    "end_line": 7933
+  },
+  {
+    "markdown": "[foo][bar][baz]\n\n[baz]: /url1\n[bar]: /url2\n",
+    "section": "Links",
+    "example": 530,
+    "start_line": 7939,
+    "html": "<p><a href=\"/url2\">foo</a><a href=\"/url1\">baz</a></p>\n",
+    "end_line": 7946
+  },
+  {
+    "markdown": "[foo][bar][baz]\n\n[baz]: /url1\n[foo]: /url2\n",
+    "section": "Links",
+    "example": 531,
+    "start_line": 7952,
+    "html": "<p>[foo]<a href=\"/url1\">bar</a></p>\n",
+    "end_line": 7959
+  },
+  {
+    "markdown": "![foo](/url \"title\")\n",
+    "section": "Images",
+    "example": 532,
+    "start_line": 7975,
+    "html": "<p><img src=\"/url\" alt=\"foo\" title=\"title\" /></p>\n",
+    "end_line": 7979
+  },
+  {
+    "markdown": "![foo *bar*]\n\n[foo *bar*]: train.jpg \"train & tracks\"\n",
+    "section": "Images",
+    "example": 533,
+    "start_line": 7982,
+    "html": "<p><img src=\"train.jpg\" alt=\"foo bar\" title=\"train &amp; tracks\" /></p>\n",
+    "end_line": 7988
+  },
+  {
+    "markdown": "![foo ![bar](/url)](/url2)\n",
+    "section": "Images",
+    "example": 534,
+    "start_line": 7991,
+    "html": "<p><img src=\"/url2\" alt=\"foo bar\" /></p>\n",
+    "end_line": 7995
+  },
+  {
+    "markdown": "![foo [bar](/url)](/url2)\n",
+    "section": "Images",
+    "example": 535,
+    "start_line": 7998,
+    "html": "<p><img src=\"/url2\" alt=\"foo bar\" /></p>\n",
+    "end_line": 8002
+  },
+  {
+    "markdown": "![foo *bar*][]\n\n[foo *bar*]: train.jpg \"train & tracks\"\n",
+    "section": "Images",
+    "example": 536,
+    "start_line": 8012,
+    "html": "<p><img src=\"train.jpg\" alt=\"foo bar\" title=\"train &amp; tracks\" /></p>\n",
+    "end_line": 8018
+  },
+  {
+    "markdown": "![foo *bar*][foobar]\n\n[FOOBAR]: train.jpg \"train & tracks\"\n",
+    "section": "Images",
+    "example": 537,
+    "start_line": 8021,
+    "html": "<p><img src=\"train.jpg\" alt=\"foo bar\" title=\"train &amp; tracks\" /></p>\n",
+    "end_line": 8027
+  },
+  {
+    "markdown": "![foo](train.jpg)\n",
+    "section": "Images",
+    "example": 538,
+    "start_line": 8030,
+    "html": "<p><img src=\"train.jpg\" alt=\"foo\" /></p>\n",
+    "end_line": 8034
+  },
+  {
+    "markdown": "My ![foo bar](/path/to/train.jpg  \"title\"   )\n",
+    "section": "Images",
+    "example": 539,
+    "start_line": 8037,
+    "html": "<p>My <img src=\"/path/to/train.jpg\" alt=\"foo bar\" title=\"title\" /></p>\n",
+    "end_line": 8041
+  },
+  {
+    "markdown": "![foo](<url>)\n",
+    "section": "Images",
+    "example": 540,
+    "start_line": 8044,
+    "html": "<p><img src=\"url\" alt=\"foo\" /></p>\n",
+    "end_line": 8048
+  },
+  {
+    "markdown": "![](/url)\n",
+    "section": "Images",
+    "example": 541,
+    "start_line": 8051,
+    "html": "<p><img src=\"/url\" alt=\"\" /></p>\n",
+    "end_line": 8055
+  },
+  {
+    "markdown": "![foo][bar]\n\n[bar]: /url\n",
+    "section": "Images",
+    "example": 542,
+    "start_line": 8060,
+    "html": "<p><img src=\"/url\" alt=\"foo\" /></p>\n",
+    "end_line": 8066
+  },
+  {
+    "markdown": "![foo][bar]\n\n[BAR]: /url\n",
+    "section": "Images",
+    "example": 543,
+    "start_line": 8069,
+    "html": "<p><img src=\"/url\" alt=\"foo\" /></p>\n",
+    "end_line": 8075
+  },
+  {
+    "markdown": "![foo][]\n\n[foo]: /url \"title\"\n",
+    "section": "Images",
+    "example": 544,
+    "start_line": 8080,
+    "html": "<p><img src=\"/url\" alt=\"foo\" title=\"title\" /></p>\n",
+    "end_line": 8086
+  },
+  {
+    "markdown": "![*foo* bar][]\n\n[*foo* bar]: /url \"title\"\n",
+    "section": "Images",
+    "example": 545,
+    "start_line": 8089,
+    "html": "<p><img src=\"/url\" alt=\"foo bar\" title=\"title\" /></p>\n",
+    "end_line": 8095
+  },
+  {
+    "markdown": "![Foo][]\n\n[foo]: /url \"title\"\n",
+    "section": "Images",
+    "example": 546,
+    "start_line": 8100,
+    "html": "<p><img src=\"/url\" alt=\"Foo\" title=\"title\" /></p>\n",
+    "end_line": 8106
+  },
+  {
+    "markdown": "![foo] \n[]\n\n[foo]: /url \"title\"\n",
+    "section": "Images",
+    "example": 547,
+    "start_line": 8112,
+    "html": "<p><img src=\"/url\" alt=\"foo\" title=\"title\" />\n[]</p>\n",
+    "end_line": 8120
+  },
+  {
+    "markdown": "![foo]\n\n[foo]: /url \"title\"\n",
+    "section": "Images",
+    "example": 548,
+    "start_line": 8125,
+    "html": "<p><img src=\"/url\" alt=\"foo\" title=\"title\" /></p>\n",
+    "end_line": 8131
+  },
+  {
+    "markdown": "![*foo* bar]\n\n[*foo* bar]: /url \"title\"\n",
+    "section": "Images",
+    "example": 549,
+    "start_line": 8134,
+    "html": "<p><img src=\"/url\" alt=\"foo bar\" title=\"title\" /></p>\n",
+    "end_line": 8140
+  },
+  {
+    "markdown": "![[foo]]\n\n[[foo]]: /url \"title\"\n",
+    "section": "Images",
+    "example": 550,
+    "start_line": 8145,
+    "html": "<p>![[foo]]</p>\n<p>[[foo]]: /url &quot;title&quot;</p>\n",
+    "end_line": 8152
+  },
+  {
+    "markdown": "![Foo]\n\n[foo]: /url \"title\"\n",
+    "section": "Images",
+    "example": 551,
+    "start_line": 8157,
+    "html": "<p><img src=\"/url\" alt=\"Foo\" title=\"title\" /></p>\n",
+    "end_line": 8163
+  },
+  {
+    "markdown": "\\!\\[foo]\n\n[foo]: /url \"title\"\n",
+    "section": "Images",
+    "example": 552,
+    "start_line": 8169,
+    "html": "<p>![foo]</p>\n",
+    "end_line": 8175
+  },
+  {
+    "markdown": "\\![foo]\n\n[foo]: /url \"title\"\n",
+    "section": "Images",
+    "example": 553,
+    "start_line": 8181,
+    "html": "<p>!<a href=\"/url\" title=\"title\">foo</a></p>\n",
+    "end_line": 8187
+  },
+  {
+    "markdown": "<http://foo.bar.baz>\n",
+    "section": "Autolinks",
+    "example": 554,
+    "start_line": 8214,
+    "html": "<p><a href=\"http://foo.bar.baz\">http://foo.bar.baz</a></p>\n",
+    "end_line": 8218
+  },
+  {
+    "markdown": "<http://foo.bar.baz/test?q=hello&id=22&boolean>\n",
+    "section": "Autolinks",
+    "example": 555,
+    "start_line": 8221,
+    "html": "<p><a href=\"http://foo.bar.baz/test?q=hello&amp;id=22&amp;boolean\">http://foo.bar.baz/test?q=hello&amp;id=22&amp;boolean</a></p>\n",
+    "end_line": 8225
+  },
+  {
+    "markdown": "<irc://foo.bar:2233/baz>\n",
+    "section": "Autolinks",
+    "example": 556,
+    "start_line": 8228,
+    "html": "<p><a href=\"irc://foo.bar:2233/baz\">irc://foo.bar:2233/baz</a></p>\n",
+    "end_line": 8232
+  },
+  {
+    "markdown": "<MAILTO:FOO@BAR.BAZ>\n",
+    "section": "Autolinks",
+    "example": 557,
+    "start_line": 8237,
+    "html": "<p><a href=\"MAILTO:FOO@BAR.BAZ\">MAILTO:FOO@BAR.BAZ</a></p>\n",
+    "end_line": 8241
+  },
+  {
+    "markdown": "<a+b+c:d>\n",
+    "section": "Autolinks",
+    "example": 558,
+    "start_line": 8249,
+    "html": "<p><a href=\"a+b+c:d\">a+b+c:d</a></p>\n",
+    "end_line": 8253
+  },
+  {
+    "markdown": "<made-up-scheme://foo,bar>\n",
+    "section": "Autolinks",
+    "example": 559,
+    "start_line": 8256,
+    "html": "<p><a href=\"made-up-scheme://foo,bar\">made-up-scheme://foo,bar</a></p>\n",
+    "end_line": 8260
+  },
+  {
+    "markdown": "<http://../>\n",
+    "section": "Autolinks",
+    "example": 560,
+    "start_line": 8263,
+    "html": "<p><a href=\"http://../\">http://../</a></p>\n",
+    "end_line": 8267
+  },
+  {
+    "markdown": "<localhost:5001/foo>\n",
+    "section": "Autolinks",
+    "example": 561,
+    "start_line": 8270,
+    "html": "<p><a href=\"localhost:5001/foo\">localhost:5001/foo</a></p>\n",
+    "end_line": 8274
+  },
+  {
+    "markdown": "<http://foo.bar/baz bim>\n",
+    "section": "Autolinks",
+    "example": 562,
+    "start_line": 8279,
+    "html": "<p>&lt;http://foo.bar/baz bim&gt;</p>\n",
+    "end_line": 8283
+  },
+  {
+    "markdown": "<http://example.com/\\[\\>\n",
+    "section": "Autolinks",
+    "example": 563,
+    "start_line": 8288,
+    "html": "<p><a href=\"http://example.com/%5C%5B%5C\">http://example.com/\\[\\</a></p>\n",
+    "end_line": 8292
+  },
+  {
+    "markdown": "<foo@bar.example.com>\n",
+    "section": "Autolinks",
+    "example": 564,
+    "start_line": 8310,
+    "html": "<p><a href=\"mailto:foo@bar.example.com\">foo@bar.example.com</a></p>\n",
+    "end_line": 8314
+  },
+  {
+    "markdown": "<foo+special@Bar.baz-bar0.com>\n",
+    "section": "Autolinks",
+    "example": 565,
+    "start_line": 8317,
+    "html": "<p><a href=\"mailto:foo+special@Bar.baz-bar0.com\">foo+special@Bar.baz-bar0.com</a></p>\n",
+    "end_line": 8321
+  },
+  {
+    "markdown": "<foo\\+@bar.example.com>\n",
+    "section": "Autolinks",
+    "example": 566,
+    "start_line": 8326,
+    "html": "<p>&lt;foo+@bar.example.com&gt;</p>\n",
+    "end_line": 8330
+  },
+  {
+    "markdown": "<>\n",
+    "section": "Autolinks",
+    "example": 567,
+    "start_line": 8335,
+    "html": "<p>&lt;&gt;</p>\n",
+    "end_line": 8339
+  },
+  {
+    "markdown": "< http://foo.bar >\n",
+    "section": "Autolinks",
+    "example": 568,
+    "start_line": 8342,
+    "html": "<p>&lt; http://foo.bar &gt;</p>\n",
+    "end_line": 8346
+  },
+  {
+    "markdown": "<m:abc>\n",
+    "section": "Autolinks",
+    "example": 569,
+    "start_line": 8349,
+    "html": "<p>&lt;m:abc&gt;</p>\n",
+    "end_line": 8353
+  },
+  {
+    "markdown": "<foo.bar.baz>\n",
+    "section": "Autolinks",
+    "example": 570,
+    "start_line": 8356,
+    "html": "<p>&lt;foo.bar.baz&gt;</p>\n",
+    "end_line": 8360
+  },
+  {
+    "markdown": "http://example.com\n",
+    "section": "Autolinks",
+    "example": 571,
+    "start_line": 8363,
+    "html": "<p>http://example.com</p>\n",
+    "end_line": 8367
+  },
+  {
+    "markdown": "foo@bar.example.com\n",
+    "section": "Autolinks",
+    "example": 572,
+    "start_line": 8370,
+    "html": "<p>foo@bar.example.com</p>\n",
+    "end_line": 8374
+  },
+  {
+    "markdown": "<a><bab><c2c>\n",
+    "section": "Raw HTML",
+    "example": 573,
+    "start_line": 8452,
+    "html": "<p><a><bab><c2c></p>\n",
+    "end_line": 8456
+  },
+  {
+    "markdown": "<a/><b2/>\n",
+    "section": "Raw HTML",
+    "example": 574,
+    "start_line": 8461,
+    "html": "<p><a/><b2/></p>\n",
+    "end_line": 8465
+  },
+  {
+    "markdown": "<a  /><b2\ndata=\"foo\" >\n",
+    "section": "Raw HTML",
+    "example": 575,
+    "start_line": 8470,
+    "html": "<p><a  /><b2\ndata=\"foo\" ></p>\n",
+    "end_line": 8476
+  },
+  {
+    "markdown": "<a foo=\"bar\" bam = 'baz <em>\"</em>'\n_boolean zoop:33=zoop:33 />\n",
+    "section": "Raw HTML",
+    "example": 576,
+    "start_line": 8481,
+    "html": "<p><a foo=\"bar\" bam = 'baz <em>\"</em>'\n_boolean zoop:33=zoop:33 /></p>\n",
+    "end_line": 8487
+  },
+  {
+    "markdown": "Foo <responsive-image src=\"foo.jpg\" />\n",
+    "section": "Raw HTML",
+    "example": 577,
+    "start_line": 8492,
+    "html": "<p>Foo <responsive-image src=\"foo.jpg\" /></p>\n",
+    "end_line": 8496
+  },
+  {
+    "markdown": "<33> <__>\n",
+    "section": "Raw HTML",
+    "example": 578,
+    "start_line": 8501,
+    "html": "<p>&lt;33&gt; &lt;__&gt;</p>\n",
+    "end_line": 8505
+  },
+  {
+    "markdown": "<a h*#ref=\"hi\">\n",
+    "section": "Raw HTML",
+    "example": 579,
+    "start_line": 8510,
+    "html": "<p>&lt;a h*#ref=&quot;hi&quot;&gt;</p>\n",
+    "end_line": 8514
+  },
+  {
+    "markdown": "<a href=\"hi'> <a href=hi'>\n",
+    "section": "Raw HTML",
+    "example": 580,
+    "start_line": 8519,
+    "html": "<p>&lt;a href=&quot;hi'&gt; &lt;a href=hi'&gt;</p>\n",
+    "end_line": 8523
+  },
+  {
+    "markdown": "< a><\nfoo><bar/ >\n",
+    "section": "Raw HTML",
+    "example": 581,
+    "start_line": 8528,
+    "html": "<p>&lt; a&gt;&lt;\nfoo&gt;&lt;bar/ &gt;</p>\n",
+    "end_line": 8534
+  },
+  {
+    "markdown": "<a href='bar'title=title>\n",
+    "section": "Raw HTML",
+    "example": 582,
+    "start_line": 8539,
+    "html": "<p>&lt;a href='bar'title=title&gt;</p>\n",
+    "end_line": 8543
+  },
+  {
+    "markdown": "</a></foo >\n",
+    "section": "Raw HTML",
+    "example": 583,
+    "start_line": 8548,
+    "html": "<p></a></foo ></p>\n",
+    "end_line": 8552
+  },
+  {
+    "markdown": "</a href=\"foo\">\n",
+    "section": "Raw HTML",
+    "example": 584,
+    "start_line": 8557,
+    "html": "<p>&lt;/a href=&quot;foo&quot;&gt;</p>\n",
+    "end_line": 8561
+  },
+  {
+    "markdown": "foo <!-- this is a\ncomment - with hyphen -->\n",
+    "section": "Raw HTML",
+    "example": 585,
+    "start_line": 8566,
+    "html": "<p>foo <!-- this is a\ncomment - with hyphen --></p>\n",
+    "end_line": 8572
+  },
+  {
+    "markdown": "foo <!-- not a comment -- two hyphens -->\n",
+    "section": "Raw HTML",
+    "example": 586,
+    "start_line": 8575,
+    "html": "<p>foo &lt;!-- not a comment -- two hyphens --&gt;</p>\n",
+    "end_line": 8579
+  },
+  {
+    "markdown": "foo <!--> foo -->\n\nfoo <!-- foo--->\n",
+    "section": "Raw HTML",
+    "example": 587,
+    "start_line": 8584,
+    "html": "<p>foo &lt;!--&gt; foo --&gt;</p>\n<p>foo &lt;!-- foo---&gt;</p>\n",
+    "end_line": 8591
+  },
+  {
+    "markdown": "foo <?php echo $a; ?>\n",
+    "section": "Raw HTML",
+    "example": 588,
+    "start_line": 8596,
+    "html": "<p>foo <?php echo $a; ?></p>\n",
+    "end_line": 8600
+  },
+  {
+    "markdown": "foo <!ELEMENT br EMPTY>\n",
+    "section": "Raw HTML",
+    "example": 589,
+    "start_line": 8605,
+    "html": "<p>foo <!ELEMENT br EMPTY></p>\n",
+    "end_line": 8609
+  },
+  {
+    "markdown": "foo <![CDATA[>&<]]>\n",
+    "section": "Raw HTML",
+    "example": 590,
+    "start_line": 8614,
+    "html": "<p>foo <![CDATA[>&<]]></p>\n",
+    "end_line": 8618
+  },
+  {
+    "markdown": "foo <a href=\"&ouml;\">\n",
+    "section": "Raw HTML",
+    "example": 591,
+    "start_line": 8624,
+    "html": "<p>foo <a href=\"&ouml;\"></p>\n",
+    "end_line": 8628
+  },
+  {
+    "markdown": "foo <a href=\"\\*\">\n",
+    "section": "Raw HTML",
+    "example": 592,
+    "start_line": 8633,
+    "html": "<p>foo <a href=\"\\*\"></p>\n",
+    "end_line": 8637
+  },
+  {
+    "markdown": "<a href=\"\\\"\">\n",
+    "section": "Raw HTML",
+    "example": 593,
+    "start_line": 8640,
+    "html": "<p>&lt;a href=&quot;&quot;&quot;&gt;</p>\n",
+    "end_line": 8644
+  },
+  {
+    "markdown": "foo  \nbaz\n",
+    "section": "Hard line breaks",
+    "example": 594,
+    "start_line": 8654,
+    "html": "<p>foo<br />\nbaz</p>\n",
+    "end_line": 8660
+  },
+  {
+    "markdown": "foo\\\nbaz\n",
+    "section": "Hard line breaks",
+    "example": 595,
+    "start_line": 8666,
+    "html": "<p>foo<br />\nbaz</p>\n",
+    "end_line": 8672
+  },
+  {
+    "markdown": "foo       \nbaz\n",
+    "section": "Hard line breaks",
+    "example": 596,
+    "start_line": 8677,
+    "html": "<p>foo<br />\nbaz</p>\n",
+    "end_line": 8683
+  },
+  {
+    "markdown": "foo  \n     bar\n",
+    "section": "Hard line breaks",
+    "example": 597,
+    "start_line": 8688,
+    "html": "<p>foo<br />\nbar</p>\n",
+    "end_line": 8694
+  },
+  {
+    "markdown": "foo\\\n     bar\n",
+    "section": "Hard line breaks",
+    "example": 598,
+    "start_line": 8697,
+    "html": "<p>foo<br />\nbar</p>\n",
+    "end_line": 8703
+  },
+  {
+    "markdown": "*foo  \nbar*\n",
+    "section": "Hard line breaks",
+    "example": 599,
+    "start_line": 8709,
+    "html": "<p><em>foo<br />\nbar</em></p>\n",
+    "end_line": 8715
+  },
+  {
+    "markdown": "*foo\\\nbar*\n",
+    "section": "Hard line breaks",
+    "example": 600,
+    "start_line": 8718,
+    "html": "<p><em>foo<br />\nbar</em></p>\n",
+    "end_line": 8724
+  },
+  {
+    "markdown": "`code  \nspan`\n",
+    "section": "Hard line breaks",
+    "example": 601,
+    "start_line": 8729,
+    "html": "<p><code>code span</code></p>\n",
+    "end_line": 8734
+  },
+  {
+    "markdown": "`code\\\nspan`\n",
+    "section": "Hard line breaks",
+    "example": 602,
+    "start_line": 8737,
+    "html": "<p><code>code\\ span</code></p>\n",
+    "end_line": 8742
+  },
+  {
+    "markdown": "<a href=\"foo  \nbar\">\n",
+    "section": "Hard line breaks",
+    "example": 603,
+    "start_line": 8747,
+    "html": "<p><a href=\"foo  \nbar\"></p>\n",
+    "end_line": 8753
+  },
+  {
+    "markdown": "<a href=\"foo\\\nbar\">\n",
+    "section": "Hard line breaks",
+    "example": 604,
+    "start_line": 8756,
+    "html": "<p><a href=\"foo\\\nbar\"></p>\n",
+    "end_line": 8762
+  },
+  {
+    "markdown": "foo\\\n",
+    "section": "Hard line breaks",
+    "example": 605,
+    "start_line": 8769,
+    "html": "<p>foo\\</p>\n",
+    "end_line": 8773
+  },
+  {
+    "markdown": "foo  \n",
+    "section": "Hard line breaks",
+    "example": 606,
+    "start_line": 8776,
+    "html": "<p>foo</p>\n",
+    "end_line": 8780
+  },
+  {
+    "markdown": "### foo\\\n",
+    "section": "Hard line breaks",
+    "example": 607,
+    "start_line": 8783,
+    "html": "<h3>foo\\</h3>\n",
+    "end_line": 8787
+  },
+  {
+    "markdown": "### foo  \n",
+    "section": "Hard line breaks",
+    "example": 608,
+    "start_line": 8790,
+    "html": "<h3>foo</h3>\n",
+    "end_line": 8794
+  },
+  {
+    "markdown": "foo\nbaz\n",
+    "section": "Soft line breaks",
+    "example": 609,
+    "start_line": 8805,
+    "html": "<p>foo\nbaz</p>\n",
+    "end_line": 8811
+  },
+  {
+    "markdown": "foo \n baz\n",
+    "section": "Soft line breaks",
+    "example": 610,
+    "start_line": 8817,
+    "html": "<p>foo\nbaz</p>\n",
+    "end_line": 8823
+  },
+  {
+    "markdown": "hello $.;'there\n",
+    "section": "Textual content",
+    "example": 611,
+    "start_line": 8837,
+    "html": "<p>hello $.;'there</p>\n",
+    "end_line": 8841
+  },
+  {
+    "markdown": "Foo χρῆν\n",
+    "section": "Textual content",
+    "example": 612,
+    "start_line": 8844,
+    "html": "<p>Foo χρῆν</p>\n",
+    "end_line": 8848
+  },
+  {
+    "markdown": "Multiple     spaces\n",
+    "section": "Textual content",
+    "example": 613,
+    "start_line": 8853,
+    "html": "<p>Multiple     spaces</p>\n",
+    "end_line": 8857
+  }
+]
\ No newline at end of file