ASTNode { kind: Statements( [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "{{ message }}", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 1, children: [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "/", ), }, ASTNode { kind: StyledSpan( StyleNode { kind: Strong, children: [ ASTNode { kind: Value( Null, ), }, ], }, ), }, ], }, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "Markdown parser, done right. 100% CommonMark support, extensions, syntax plugins & high speed", ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "master", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "Add file", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: TextSpan( "Latest commit", ), }, ], }, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "1b204ef", ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: TextSpan( "Git stats", ), }, ], }, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: TextSpan( "Files", ), }, ], }, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "Failed to load latest commit information.", ), }, ASTNode { kind: TextSpan( "Type", ), }, ASTNode { kind: TextSpan( "Name", ), }, ASTNode { kind: TextSpan( "Latest commit message", ), }, ASTNode { kind: TextSpan( "Commit time", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: TextSpan( "README.md", ), }, ], }, ), }, ASTNode { kind: Header( Header { level: 1, children: [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "markdown-it", ), }, ], }, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: StyledSpan( StyleNode { kind: Strong, children: [ ASTNode { kind: Value( Null, ), }, ], }, ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: StyledSpan( StyleNode { kind: Strong, children: [ ASTNode { kind: TextSpan( "Table of content", ), }, ], }, ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "Install", ), }, ], }, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: StyledSpan( StyleNode { kind: Strong, children: [ ASTNode { kind: TextSpan( "node.js", ), }, ], }, ), }, ASTNode { kind: TextSpan( ":", ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: StyledSpan( StyleNode { kind: Strong, children: [ ASTNode { kind: TextSpan( "browser (CDN):", ), }, ], }, ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "Usage examples", ), }, ], }, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "See also:", ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 3, children: [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "Simple", ), }, ], }, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "Single line rendering, without paragraph wrap:", ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 3, children: [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "Init with presets and options", ), }, ], }, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "(*) presets define combinations of active rules and options. Can be", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( ", ", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "or", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "(if skipped). See", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "for more details.", ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 3, children: [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "Plugins load", ), }, ], }, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 3, children: [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "Syntax highlighting", ), }, ], }, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "Apply syntax highlighting to fenced code blocks with the", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "option:", ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "Or with full wrapper override (if you need assign class to", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "):", ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 3, children: [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "Linkify", ), }, ], }, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "uses", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( ". To\n configure linkify-it, access the linkify instance through", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( ":\n ", ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "API", ), }, ], }, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: StyledSpan( StyleNode { kind: Strong, children: [ ASTNode { kind: Value( Null, ), }, ], }, ), }, ], ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "If you are going to write plugins - take a look at", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( ".\n ", ), }, ], ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "Syntax extensions", ), }, ], }, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "Embedded (enabled by default):", ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "Via plugins:", ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 3, children: [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "Manage rules", ), }, ], }, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "By default all rules are enabled, but can be restricted by options. On plugin\n load all its rules are enabled automatically.", ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "You can find all rules in sources:", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( ", ", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( ",\n ", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( ".\n ", ), }, ], ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "Benchmark", ), }, ], }, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "Here is the result of readme parse at MB Pro Retina 2013 (2.4 GHz):", ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: StyledSpan( StyleNode { kind: Strong, children: [ ASTNode { kind: TextSpan( "Note.", ), }, ], }, ), }, ASTNode { kind: TextSpan( "CommonMark version runs with", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "for more \"honest\" compare. Difference is ~ 1.5x.", ), }, ], ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "As you can see,", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "doesn't pay with speed for it's flexibility.\n Slowdown of \"full\" version caused by additional features not available in\n other implementations.", ), }, ], ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "markdown-it for enterprise", ), }, ], }, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "Available as part of the Tidelift Subscription.", ), }, ], ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "The maintainers of", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "and thousands of other packages are working with Tidelift to deliver commercial support and maintenance for the open source dependencies you use to build your applications. Save time, reduce risk, and improve code health, while paying the maintainers of the exact dependencies you use.", ), }, ASTNode { kind: Value( Null, ), }, ], ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "Authors", ), }, ], }, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: StyledSpan( StyleNode { kind: Emphasis, children: [ ASTNode { kind: TextSpan( "markdown-it", ), }, ], }, ), }, ASTNode { kind: TextSpan( "is the result of the decision of the authors who contributed to\n 99% of the", ), }, ASTNode { kind: StyledSpan( StyleNode { kind: Emphasis, children: [ ASTNode { kind: TextSpan( "Remarkable", ), }, ], }, ), }, ASTNode { kind: TextSpan( "code to move to a project with the same authorship but\n new leadership (Vitaly and Alex). It's not a fork.", ), }, ], ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "References / Thanks", ), }, ], }, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "Big thanks to", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "for his work on the\n CommonMark spec and reference implementations. His work saved us a lot of time\n during this project's development.", ), }, ], ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: StyledSpan( StyleNode { kind: Strong, children: [ ASTNode { kind: TextSpan( "Related Links:", ), }, ], }, ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: StyledSpan( StyleNode { kind: Strong, children: [ ASTNode { kind: TextSpan( "Ports", ), }, ], }, ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: TextSpan( "About", ), }, ], }, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "Markdown parser, done right. 100% CommonMark support, extensions, syntax plugins & high speed", ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 3, children: [ ASTNode { kind: TextSpan( "Topics", ), }, ], }, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 3, children: [ ASTNode { kind: TextSpan( "Resources", ), }, ], }, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 3, children: [ ASTNode { kind: TextSpan( "License", ), }, ], }, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: Value( Null, ), }, ], }, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: TextSpan( "Sponsor this project", ), }, ], }, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: Value( Null, ), }, ], }, ), }, ASTNode { kind: TextSpan( "No packages published", ), }, ASTNode { kind: TextSpan( "\n", ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: Value( Null, ), }, ], }, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: Value( Null, ), }, ], }, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Header( Header { level: 2, children: [ ASTNode { kind: TextSpan( "Languages", ), }, ], }, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "You can’t perform that action at this time.", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "You signed in with another tab or window.", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "to refresh your session.", ), }, ASTNode { kind: TextSpan( "You signed out in another tab or window.", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( "to refresh your session.", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "We use", ), }, ASTNode { kind: TextSpan( "optional", ), }, ASTNode { kind: TextSpan( "third-party analytics cookies to understand how you use GitHub.com so we can build better products.", ), }, ASTNode { kind: TextSpan( "Learn more", ), }, ASTNode { kind: TextSpan( ".\n ", ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "We use", ), }, ASTNode { kind: TextSpan( "optional", ), }, ASTNode { kind: TextSpan( "third-party analytics cookies to understand how you use GitHub.com so we can build better products.", ), }, ASTNode { kind: TextSpan( "\n", ), }, ASTNode { kind: TextSpan( "You can always update your selection by clicking", ), }, ASTNode { kind: TextSpan( "Cookie Preferences", ), }, ASTNode { kind: TextSpan( "at the bottom of the page.\n For more information, see our", ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: TextSpan( ".\n ", ), }, ], ), }, ASTNode { kind: Header( Header { level: 5, children: [ ASTNode { kind: TextSpan( "Essential cookies", ), }, ], }, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "We use essential cookies to perform essential website functions, e.g. they're used to log you in.", ), }, ASTNode { kind: Value( Null, ), }, ], ), }, ASTNode { kind: Header( Header { level: 5, children: [ ASTNode { kind: TextSpan( "Always active", ), }, ], }, ), }, ASTNode { kind: Header( Header { level: 5, children: [ ASTNode { kind: TextSpan( "Analytics cookies", ), }, ], }, ), }, ASTNode { kind: Paragraph( [ ASTNode { kind: TextSpan( "We use analytics cookies to understand how you use our websites so we can make them better, e.g. they're used to gather information about the pages you visit and how many clicks you need to accomplish a task.", ), }, ASTNode { kind: Value( Null, ), }, ], ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ASTNode { kind: Value( Null, ), }, ], ), }