basic 29bold italic 22character entity 13comment 13external link 19heading 38horizontal divider 18invalid character 3link 35list 83magic word 15mix 20nowiki 14paragraph break 9parameter 35preformatted block 17redirect 41table 104tag 48template 42

basic


Output {
    nodes: [],
    warnings: [],
}

Output {
    nodes: [],
    warnings: [],
}
⭾⏎

Output {
    nodes: [],
    warnings: [],
}
⭾·alpha

Output {
    nodes: [
        Text {
            end: 7,
            start: 2,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
alpha

Output {
    nodes: [
        Text {
            end: 6,
            start: 1,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}


Output {
    nodes: [],
    warnings: [],
}


Output {
    nodes: [],
    warnings: [],
}



alpha

Output {
    nodes: [
        Text {
            end: 8,
            start: 3,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 2,
            message: RepeatedEmptyLine,
            start: 1,
        },
        Warning {
            end: 3,
            message: RepeatedEmptyLine,
            start: 2,
        },
    ],
}


alpha

Output {
    nodes: [
        Text {
            end: 7,
            start: 2,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 2,
            message: RepeatedEmptyLine,
            start: 1,
        },
    ],
}


alpha


Output {
    nodes: [
        Text {
            end: 7,
            start: 2,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 2,
            message: RepeatedEmptyLine,
            start: 1,
        },
    ],
}

·⏎
alpha

Output {
    nodes: [
        Text {
            end: 8,
            start: 3,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 3,
            message: RepeatedEmptyLine,
            start: 2,
        },
    ],
}

alpha

Output {
    nodes: [
        Text {
            end: 6,
            start: 1,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}

alpha

Output {
    nodes: [
        Text {
            end: 6,
            start: 1,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
·

Output {
    nodes: [],
    warnings: [],
}
·⏎

alpha

Output {
    nodes: [
        Text {
            end: 8,
            start: 3,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 3,
            message: RepeatedEmptyLine,
            start: 2,
        },
    ],
}
·⏎
alpha

Output {
    nodes: [
        Text {
            end: 7,
            start: 2,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
··

Output {
    nodes: [],
    warnings: [],
}
alpha

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
alpha

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
alpha

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
alpha

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
alpha


Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
alpha



Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 8,
            message: RepeatedEmptyLine,
            start: 7,
        },
    ],
}
alpha

·

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
alpha
·

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
alpha
·⏎

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
alpha
beta

Output {
    nodes: [
        Text {
            end: 10,
            start: 0,
            value: Text {
                text: "alpha\nbeta",
            },
        },
    ],
    warnings: [],
}
alpha·

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
alpha·⏎

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}

bold italic

'

Output {
    nodes: [
        Text {
            end: 1,
            start: 0,
            value: Text {
                text: "'",
            },
        },
    ],
    warnings: [],
}
''

Output {
    nodes: [
        Italic {
            end: 2,
            start: 0,
        },
    ],
    warnings: [],
}
'''

Output {
    nodes: [
        Bold {
            end: 3,
            start: 0,
        },
    ],
    warnings: [],
}
''''

Output {
    nodes: [
        Bold {
            end: 3,
            start: 0,
        },
        Text {
            end: 4,
            start: 3,
            value: Text {
                text: "'",
            },
        },
    ],
    warnings: [],
}
'''''

Output {
    nodes: [
        BoldItalic {
            end: 5,
            start: 0,
        },
    ],
    warnings: [],
}
''''''

Output {
    nodes: [
        BoldItalic {
            end: 5,
            start: 0,
        },
        Text {
            end: 6,
            start: 5,
            value: Text {
                text: "'",
            },
        },
    ],
    warnings: [],
}
'''''''

Output {
    nodes: [
        BoldItalic {
            end: 5,
            start: 0,
        },
        Text {
            end: 7,
            start: 5,
            value: Text {
                text: "''",
            },
        },
    ],
    warnings: [],
}
''''''''

Output {
    nodes: [
        BoldItalic {
            end: 5,
            start: 0,
        },
        Text {
            end: 8,
            start: 5,
            value: Text {
                text: "'''",
            },
        },
    ],
    warnings: [],
}
'''alpha

Output {
    nodes: [
        Bold {
            end: 3,
            start: 0,
        },
        Text {
            end: 8,
            start: 3,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
'''alpha''

Output {
    nodes: [
        Bold {
            end: 3,
            start: 0,
        },
        Text {
            end: 8,
            start: 3,
            value: Text {
                text: "alpha",
            },
        },
        Italic {
            end: 10,
            start: 8,
        },
    ],
    warnings: [],
}
'''alpha'''

Output {
    nodes: [
        Bold {
            end: 3,
            start: 0,
        },
        Text {
            end: 8,
            start: 3,
            value: Text {
                text: "alpha",
            },
        },
        Bold {
            end: 11,
            start: 8,
        },
    ],
    warnings: [],
}
''alpha

Output {
    nodes: [
        Italic {
            end: 2,
            start: 0,
        },
        Text {
            end: 7,
            start: 2,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
''alpha''

Output {
    nodes: [
        Italic {
            end: 2,
            start: 0,
        },
        Text {
            end: 7,
            start: 2,
            value: Text {
                text: "alpha",
            },
        },
        Italic {
            end: 9,
            start: 7,
        },
    ],
    warnings: [],
}
''alpha'''

Output {
    nodes: [
        Italic {
            end: 2,
            start: 0,
        },
        Text {
            end: 7,
            start: 2,
            value: Text {
                text: "alpha",
            },
        },
        Bold {
            end: 10,
            start: 7,
        },
    ],
    warnings: [],
}
alpha''

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Italic {
            end: 7,
            start: 5,
        },
    ],
    warnings: [],
}
alpha'''

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Bold {
            end: 8,
            start: 5,
        },
    ],
    warnings: [],
}
alpha'''beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Bold {
            end: 8,
            start: 5,
        },
        Text {
            end: 12,
            start: 8,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
alpha'''beta'''gamma

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Bold {
            end: 8,
            start: 5,
        },
        Text {
            end: 12,
            start: 8,
            value: Text {
                text: "beta",
            },
        },
        Bold {
            end: 15,
            start: 12,
        },
        Text {
            end: 20,
            start: 15,
            value: Text {
                text: "gamma",
            },
        },
    ],
    warnings: [],
}
alpha'''beta''gamma

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Bold {
            end: 8,
            start: 5,
        },
        Text {
            end: 12,
            start: 8,
            value: Text {
                text: "beta",
            },
        },
        Italic {
            end: 14,
            start: 12,
        },
        Text {
            end: 19,
            start: 14,
            value: Text {
                text: "gamma",
            },
        },
    ],
    warnings: [],
}
alpha''beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Italic {
            end: 7,
            start: 5,
        },
        Text {
            end: 11,
            start: 7,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
alpha''beta'''gamma

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Italic {
            end: 7,
            start: 5,
        },
        Text {
            end: 11,
            start: 7,
            value: Text {
                text: "beta",
            },
        },
        Bold {
            end: 14,
            start: 11,
        },
        Text {
            end: 19,
            start: 14,
            value: Text {
                text: "gamma",
            },
        },
    ],
    warnings: [],
}
alpha''beta''gamma

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Italic {
            end: 7,
            start: 5,
        },
        Text {
            end: 11,
            start: 7,
            value: Text {
                text: "beta",
            },
        },
        Italic {
            end: 13,
            start: 11,
        },
        Text {
            end: 18,
            start: 13,
            value: Text {
                text: "gamma",
            },
        },
    ],
    warnings: [],
}

character entity

≪

Output {
    nodes: [
        Text {
            end: 4,
            start: 0,
            value: Text {
                text: "≪",
            },
        },
    ],
    warnings: [],
}
Ö

Output {
    nodes: [
        CharacterEntity {
            character: 'Ö',
            end: 6,
            start: 0,
        },
    ],
    warnings: [],
}
&lt

Output {
    nodes: [
        Text {
            end: 3,
            start: 0,
            value: Text {
                text: "&lt",
            },
        },
    ],
    warnings: [],
}
&ltö

Output {
    nodes: [
        Text {
            end: 3,
            start: 0,
            value: Text {
                text: "&lt",
            },
        },
        CharacterEntity {
            character: 'ö',
            end: 9,
            start: 3,
        },
    ],
    warnings: [],
}
<

Output {
    nodes: [
        CharacterEntity {
            character: '<',
            end: 4,
            start: 0,
        },
    ],
    warnings: [],
}
&lt;·alpha

Output {
    nodes: [
        CharacterEntity {
            character: '<',
            end: 4,
            start: 0,
        },
        Text {
            end: 10,
            start: 4,
            value: Text {
                text: " alpha",
            },
        },
    ],
    warnings: [],
}
&lt;&ouml;

Output {
    nodes: [
        CharacterEntity {
            character: '<',
            end: 4,
            start: 0,
        },
        CharacterEntity {
            character: 'ö',
            end: 10,
            start: 4,
        },
    ],
    warnings: [],
}
&lt;alpha

Output {
    nodes: [
        CharacterEntity {
            character: '<',
            end: 4,
            start: 0,
        },
        Text {
            end: 9,
            start: 4,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
&ouml;

Output {
    nodes: [
        CharacterEntity {
            character: 'ö',
            end: 6,
            start: 0,
        },
    ],
    warnings: [],
}
alpha·&lt;

Output {
    nodes: [
        Text {
            end: 6,
            start: 0,
            value: Text {
                text: "alpha ",
            },
        },
        CharacterEntity {
            character: '<',
            end: 10,
            start: 6,
        },
    ],
    warnings: [],
}
alpha·&lt;·beta

Output {
    nodes: [
        Text {
            end: 6,
            start: 0,
            value: Text {
                text: "alpha ",
            },
        },
        CharacterEntity {
            character: '<',
            end: 10,
            start: 6,
        },
        Text {
            end: 15,
            start: 10,
            value: Text {
                text: " beta",
            },
        },
    ],
    warnings: [],
}
alpha&lt;

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        CharacterEntity {
            character: '<',
            end: 9,
            start: 5,
        },
    ],
    warnings: [],
}
alpha&lt;beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        CharacterEntity {
            character: '<',
            end: 9,
            start: 5,
        },
        Text {
            end: 13,
            start: 9,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}

comment

<!--

Output {
    nodes: [
        Comment {
            end: 4,
            start: 0,
        },
    ],
    warnings: [],
}
<!---->

Output {
    nodes: [
        Comment {
            end: 7,
            start: 0,
        },
    ],
    warnings: [],
}
<!---->beta

Output {
    nodes: [
        Comment {
            end: 7,
            start: 0,
        },
        Text {
            end: 11,
            start: 7,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
<!--->beta

Output {
    nodes: [
        Comment {
            end: 10,
            start: 0,
        },
    ],
    warnings: [],
}
<!--<!--alpha-->-->beta

Output {
    nodes: [
        Comment {
            end: 16,
            start: 0,
        },
        Text {
            end: 23,
            start: 16,
            value: Text {
                text: "-->beta",
            },
        },
    ],
    warnings: [],
}
<!--alpha-->

Output {
    nodes: [
        Comment {
            end: 12,
            start: 0,
        },
    ],
    warnings: [],
}
<!--alpha-->·beta

Output {
    nodes: [
        Comment {
            end: 12,
            start: 0,
        },
        Text {
            end: 17,
            start: 12,
            value: Text {
                text: " beta",
            },
        },
    ],
    warnings: [],
}
<!--alpha--><!--beta

Output {
    nodes: [
        Comment {
            end: 12,
            start: 0,
        },
        Comment {
            end: 20,
            start: 12,
        },
    ],
    warnings: [],
}
<!--alpha--><!--beta-->

Output {
    nodes: [
        Comment {
            end: 12,
            start: 0,
        },
        Comment {
            end: 23,
            start: 12,
        },
    ],
    warnings: [],
}
<!--alpha-->beta

Output {
    nodes: [
        Comment {
            end: 12,
            start: 0,
        },
        Text {
            end: 16,
            start: 12,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
<!-<!--alpha-->beta

Output {
    nodes: [
        Text {
            end: 3,
            start: 0,
            value: Text {
                text: "<!-",
            },
        },
        Comment {
            end: 15,
            start: 3,
        },
        Text {
            end: 19,
            start: 15,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 14,
            message: UnrecognizedTagName,
            start: 1,
        },
    ],
}
alpha·<!--beta

Output {
    nodes: [
        Text {
            end: 6,
            start: 0,
            value: Text {
                text: "alpha ",
            },
        },
        Comment {
            end: 14,
            start: 6,
        },
    ],
    warnings: [],
}
alpha<!--beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Comment {
            end: 13,
            start: 5,
        },
    ],
    warnings: [],
}

external link

[//alpha

Output {
    nodes: [
        Text {
            end: 8,
            start: 0,
            value: Text {
                text: "[//alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 8,
            message: InvalidLinkSyntax,
            start: 0,
        },
    ],
}
[//alpha·beta
gamma]

Output {
    nodes: [
        Text {
            end: 20,
            start: 0,
            value: Text {
                text: "[//alpha beta\ngamma]",
            },
        },
    ],
    warnings: [
        Warning {
            end: 13,
            message: InvalidLinkSyntax,
            start: 0,
        },
    ],
}
[//alpha·beta]

Output {
    nodes: [
        ExternalLink {
            end: 14,
            nodes: [
                Text {
                    end: 13,
                    start: 1,
                    value: Text {
                        text: "//alpha beta",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
[//alpha]

Output {
    nodes: [
        ExternalLink {
            end: 9,
            nodes: [
                Text {
                    end: 8,
                    start: 1,
                    value: Text {
                        text: "//alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
[//alpha]·beta

Output {
    nodes: [
        ExternalLink {
            end: 9,
            nodes: [
                Text {
                    end: 8,
                    start: 1,
                    value: Text {
                        text: "//alpha",
                    },
                },
            ],
            start: 0,
        },
        Text {
            end: 14,
            start: 9,
            value: Text {
                text: " beta",
            },
        },
    ],
    warnings: [],
}
[//alpha]beta

Output {
    nodes: [
        ExternalLink {
            end: 9,
            nodes: [
                Text {
                    end: 8,
                    start: 1,
                    value: Text {
                        text: "//alpha",
                    },
                },
            ],
            start: 0,
        },
        Text {
            end: 13,
            start: 9,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
[HTTP://alpha]

Output {
    nodes: [
        ExternalLink {
            end: 14,
            nodes: [
                Text {
                    end: 13,
                    start: 1,
                    value: Text {
                        text: "HTTP://alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
[Http://alpha]

Output {
    nodes: [
        ExternalLink {
            end: 14,
            nodes: [
                Text {
                    end: 13,
                    start: 1,
                    value: Text {
                        text: "Http://alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
[alpha://beta]

Output {
    nodes: [
        Text {
            end: 14,
            start: 0,
            value: Text {
                text: "[alpha://beta]",
            },
        },
    ],
    warnings: [],
}
[hTtP://alpha]

Output {
    nodes: [
        ExternalLink {
            end: 14,
            nodes: [
                Text {
                    end: 13,
                    start: 1,
                    value: Text {
                        text: "hTtP://alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
[http://alpha]

Output {
    nodes: [
        ExternalLink {
            end: 14,
            nodes: [
                Text {
                    end: 13,
                    start: 1,
                    value: Text {
                        text: "http://alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
[http:/alpha]

Output {
    nodes: [
        Text {
            end: 13,
            start: 0,
            value: Text {
                text: "[http:/alpha]",
            },
        },
    ],
    warnings: [],
}
[http:alpha]

Output {
    nodes: [
        Text {
            end: 12,
            start: 0,
            value: Text {
                text: "[http:alpha]",
            },
        },
    ],
    warnings: [],
}
[https://alpha]

Output {
    nodes: [
        ExternalLink {
            end: 15,
            nodes: [
                Text {
                    end: 14,
                    start: 1,
                    value: Text {
                        text: "https://alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
[sip:alpha]

Output {
    nodes: [
        ExternalLink {
            end: 11,
            nodes: [
                Text {
                    end: 10,
                    start: 1,
                    value: Text {
                        text: "sip:alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
alpha·[//beta]

Output {
    nodes: [
        Text {
            end: 6,
            start: 0,
            value: Text {
                text: "alpha ",
            },
        },
        ExternalLink {
            end: 14,
            nodes: [
                Text {
                    end: 13,
                    start: 7,
                    value: Text {
                        text: "//beta",
                    },
                },
            ],
            start: 6,
        },
    ],
    warnings: [],
}
alpha·[//beta]·gamma

Output {
    nodes: [
        Text {
            end: 6,
            start: 0,
            value: Text {
                text: "alpha ",
            },
        },
        ExternalLink {
            end: 14,
            nodes: [
                Text {
                    end: 13,
                    start: 7,
                    value: Text {
                        text: "//beta",
                    },
                },
            ],
            start: 6,
        },
        Text {
            end: 20,
            start: 14,
            value: Text {
                text: " gamma",
            },
        },
    ],
    warnings: [],
}
alpha[//beta]

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        ExternalLink {
            end: 13,
            nodes: [
                Text {
                    end: 12,
                    start: 6,
                    value: Text {
                        text: "//beta",
                    },
                },
            ],
            start: 5,
        },
    ],
    warnings: [],
}
alpha[//beta]gamma

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        ExternalLink {
            end: 13,
            nodes: [
                Text {
                    end: 12,
                    start: 6,
                    value: Text {
                        text: "//beta",
                    },
                },
            ],
            start: 5,
        },
        Text {
            end: 18,
            start: 13,
            value: Text {
                text: "gamma",
            },
        },
    ],
    warnings: [],
}

heading

=

Output {
    nodes: [
        Text {
            end: 1,
            start: 0,
            value: Text {
                text: "=",
            },
        },
    ],
    warnings: [
        Warning {
            end: 1,
            message: InvalidHeadingSyntaxRewinding,
            start: 0,
        },
    ],
}
=·=

Output {
    nodes: [
        Heading {
            end: 3,
            level: 1,
            nodes: [],
            start: 0,
        },
    ],
    warnings: [],
}
=·alpha·=

Output {
    nodes: [
        Heading {
            end: 9,
            level: 1,
            nodes: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
=''=

Output {
    nodes: [
        Heading {
            end: 4,
            level: 1,
            nodes: [
                Italic {
                    end: 3,
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
==

Output {
    nodes: [
        Text {
            end: 2,
            start: 0,
            value: Text {
                text: "==",
            },
        },
    ],
    warnings: [
        Warning {
            end: 2,
            message: InvalidHeadingSyntaxRewinding,
            start: 0,
        },
    ],
}
==·''=

Output {
    nodes: [
        Heading {
            end: 6,
            level: 1,
            nodes: [
                Text {
                    end: 3,
                    start: 1,
                    value: Text {
                        text: "= ",
                    },
                },
                Italic {
                    end: 5,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 6,
            message: UnexpectedHeadingLevelCorrecting,
            start: 0,
        },
    ],
}
==·alpha''=

Output {
    nodes: [
        Heading {
            end: 11,
            level: 1,
            nodes: [
                Text {
                    end: 8,
                    start: 1,
                    value: Text {
                        text: "= alpha",
                    },
                },
                Italic {
                    end: 10,
                    start: 8,
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 11,
            message: UnexpectedHeadingLevelCorrecting,
            start: 0,
        },
    ],
}
==''=

Output {
    nodes: [
        Heading {
            end: 5,
            level: 1,
            nodes: [
                Text {
                    end: 2,
                    start: 1,
                    value: Text {
                        text: "=",
                    },
                },
                Italic {
                    end: 4,
                    start: 2,
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 5,
            message: UnexpectedHeadingLevelCorrecting,
            start: 0,
        },
    ],
}
===

Output {
    nodes: [
        Heading {
            end: 3,
            level: 1,
            nodes: [
                Text {
                    end: 2,
                    start: 1,
                    value: Text {
                        text: "=",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 3,
            message: UnexpectedHeadingLevelCorrecting,
            start: 0,
        },
    ],
}
====

Output {
    nodes: [
        Heading {
            end: 4,
            level: 1,
            nodes: [
                Text {
                    end: 3,
                    start: 1,
                    value: Text {
                        text: "==",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 4,
            message: UnexpectedHeadingLevelCorrecting,
            start: 0,
        },
    ],
}
=====

Output {
    nodes: [
        Heading {
            end: 5,
            level: 2,
            nodes: [
                Text {
                    end: 3,
                    start: 2,
                    value: Text {
                        text: "=",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 5,
            message: UnexpectedHeadingLevelCorrecting,
            start: 0,
        },
    ],
}
======

Output {
    nodes: [
        Heading {
            end: 6,
            level: 2,
            nodes: [
                Text {
                    end: 4,
                    start: 2,
                    value: Text {
                        text: "==",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 6,
            message: UnexpectedHeadingLevelCorrecting,
            start: 0,
        },
    ],
}
========alpha========

Output {
    nodes: [
        Heading {
            end: 21,
            level: 6,
            nodes: [
                Text {
                    end: 15,
                    start: 6,
                    value: Text {
                        text: "==alpha==",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
=======alpha======

Output {
    nodes: [
        Heading {
            end: 18,
            level: 6,
            nodes: [
                Text {
                    end: 12,
                    start: 6,
                    value: Text {
                        text: "=alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
=======alpha=======

Output {
    nodes: [
        Heading {
            end: 19,
            level: 6,
            nodes: [
                Text {
                    end: 13,
                    start: 6,
                    value: Text {
                        text: "=alpha=",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
======alpha======

Output {
    nodes: [
        Heading {
            end: 17,
            level: 6,
            nodes: [
                Text {
                    end: 11,
                    start: 6,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
=====alpha=====

Output {
    nodes: [
        Heading {
            end: 15,
            level: 5,
            nodes: [
                Text {
                    end: 10,
                    start: 5,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
====alpha====

Output {
    nodes: [
        Heading {
            end: 13,
            level: 4,
            nodes: [
                Text {
                    end: 9,
                    start: 4,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
===alpha===

Output {
    nodes: [
        Heading {
            end: 11,
            level: 3,
            nodes: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
==alpha''=

Output {
    nodes: [
        Heading {
            end: 10,
            level: 1,
            nodes: [
                Text {
                    end: 7,
                    start: 1,
                    value: Text {
                        text: "=alpha",
                    },
                },
                Italic {
                    end: 9,
                    start: 7,
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 10,
            message: UnexpectedHeadingLevelCorrecting,
            start: 0,
        },
    ],
}
==alpha=

Output {
    nodes: [
        Heading {
            end: 8,
            level: 1,
            nodes: [
                Text {
                    end: 7,
                    start: 1,
                    value: Text {
                        text: "=alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 8,
            message: UnexpectedHeadingLevelCorrecting,
            start: 0,
        },
    ],
}
==alpha==

Output {
    nodes: [
        Heading {
            end: 9,
            level: 2,
            nodes: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
=alpha

Output {
    nodes: [
        Text {
            end: 6,
            start: 0,
            value: Text {
                text: "=alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 6,
            message: InvalidHeadingSyntaxRewinding,
            start: 0,
        },
    ],
}
=alpha
beta=

Output {
    nodes: [
        Text {
            end: 12,
            start: 0,
            value: Text {
                text: "=alpha\nbeta=",
            },
        },
    ],
    warnings: [
        Warning {
            end: 6,
            message: InvalidHeadingSyntaxRewinding,
            start: 0,
        },
    ],
}
=alpha=

Output {
    nodes: [
        Heading {
            end: 7,
            level: 1,
            nodes: [
                Text {
                    end: 6,
                    start: 1,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
=alpha=


beta

Output {
    nodes: [
        Heading {
            end: 7,
            level: 1,
            nodes: [
                Text {
                    end: 6,
                    start: 1,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
        Text {
            end: 14,
            start: 10,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 10,
            message: RepeatedEmptyLine,
            start: 9,
        },
    ],
}
=alpha=

=beta=

Output {
    nodes: [
        Heading {
            end: 7,
            level: 1,
            nodes: [
                Text {
                    end: 6,
                    start: 1,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
        Heading {
            end: 15,
            level: 1,
            nodes: [
                Text {
                    end: 14,
                    start: 10,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 9,
        },
    ],
    warnings: [],
}
=alpha=

beta

Output {
    nodes: [
        Heading {
            end: 7,
            level: 1,
            nodes: [
                Text {
                    end: 6,
                    start: 1,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
        Text {
            end: 13,
            start: 9,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
=alpha=
=beta=

Output {
    nodes: [
        Heading {
            end: 7,
            level: 1,
            nodes: [
                Text {
                    end: 6,
                    start: 1,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
        Heading {
            end: 14,
            level: 1,
            nodes: [
                Text {
                    end: 13,
                    start: 9,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 8,
        },
    ],
    warnings: [],
}
=alpha=
beta

Output {
    nodes: [
        Heading {
            end: 7,
            level: 1,
            nodes: [
                Text {
                    end: 6,
                    start: 1,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
        Text {
            end: 12,
            start: 8,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
=alpha=·⏎
beta

Output {
    nodes: [
        Heading {
            end: 7,
            level: 1,
            nodes: [
                Text {
                    end: 6,
                    start: 1,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
        Text {
            end: 13,
            start: 9,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
=alpha==

Output {
    nodes: [
        Heading {
            end: 8,
            level: 1,
            nodes: [
                Text {
                    end: 7,
                    start: 1,
                    value: Text {
                        text: "alpha=",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
alpha⭾⏎
=beta=

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Heading {
            end: 13,
            level: 1,
            nodes: [
                Text {
                    end: 12,
                    start: 8,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 7,
        },
    ],
    warnings: [],
}
alpha

=beta=

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Heading {
            end: 13,
            level: 1,
            nodes: [
                Text {
                    end: 12,
                    start: 8,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 7,
        },
    ],
    warnings: [],
}
alpha

=beta=

gamma

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Heading {
            end: 13,
            level: 1,
            nodes: [
                Text {
                    end: 12,
                    start: 8,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 7,
        },
        Text {
            end: 20,
            start: 15,
            value: Text {
                text: "gamma",
            },
        },
    ],
    warnings: [],
}
alpha
=beta=

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Heading {
            end: 12,
            level: 1,
            nodes: [
                Text {
                    end: 11,
                    start: 7,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 6,
        },
    ],
    warnings: [],
}
alpha
=beta=
gamma

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Heading {
            end: 12,
            level: 1,
            nodes: [
                Text {
                    end: 11,
                    start: 7,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 6,
        },
        Text {
            end: 18,
            start: 13,
            value: Text {
                text: "gamma",
            },
        },
    ],
    warnings: [],
}
alpha·⏎
=beta=

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Heading {
            end: 13,
            level: 1,
            nodes: [
                Text {
                    end: 12,
                    start: 8,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 7,
        },
    ],
    warnings: [],
}

horizontal divider

----

Output {
    nodes: [
        HorizontalDivider {
            end: 4,
            start: 0,
        },
    ],
    warnings: [],
}
----⭾⏎
alpha

Output {
    nodes: [
        HorizontalDivider {
            end: 4,
            start: 0,
        },
        Text {
            end: 11,
            start: 6,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
----


----

Output {
    nodes: [
        HorizontalDivider {
            end: 4,
            start: 0,
        },
        HorizontalDivider {
            end: 11,
            start: 7,
        },
    ],
    warnings: [
        Warning {
            end: 7,
            message: RepeatedEmptyLine,
            start: 6,
        },
    ],
}
----


alpha

Output {
    nodes: [
        HorizontalDivider {
            end: 4,
            start: 0,
        },
        Text {
            end: 12,
            start: 7,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 7,
            message: RepeatedEmptyLine,
            start: 6,
        },
    ],
}
----

----

Output {
    nodes: [
        HorizontalDivider {
            end: 4,
            start: 0,
        },
        HorizontalDivider {
            end: 10,
            start: 6,
        },
    ],
    warnings: [],
}
----

alpha

Output {
    nodes: [
        HorizontalDivider {
            end: 4,
            start: 0,
        },
        Text {
            end: 11,
            start: 6,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
----
----

Output {
    nodes: [
        HorizontalDivider {
            end: 4,
            start: 0,
        },
        HorizontalDivider {
            end: 9,
            start: 5,
        },
    ],
    warnings: [],
}
----
alpha

Output {
    nodes: [
        HorizontalDivider {
            end: 4,
            start: 0,
        },
        Text {
            end: 10,
            start: 5,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
----·⏎
alpha

Output {
    nodes: [
        HorizontalDivider {
            end: 4,
            start: 0,
        },
        Text {
            end: 11,
            start: 6,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
-----

Output {
    nodes: [
        HorizontalDivider {
            end: 5,
            start: 0,
        },
    ],
    warnings: [],
}
------

Output {
    nodes: [
        HorizontalDivider {
            end: 6,
            start: 0,
        },
    ],
    warnings: [],
}
----alpha

Output {
    nodes: [
        HorizontalDivider {
            end: 4,
            start: 0,
        },
        Text {
            end: 9,
            start: 4,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
alpha⭾⏎
----

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        HorizontalDivider {
            end: 11,
            start: 7,
        },
    ],
    warnings: [],
}
alpha


----

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        HorizontalDivider {
            end: 12,
            start: 8,
        },
    ],
    warnings: [
        Warning {
            end: 8,
            message: RepeatedEmptyLine,
            start: 7,
        },
    ],
}
alpha

----

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        HorizontalDivider {
            end: 11,
            start: 7,
        },
    ],
    warnings: [],
}
alpha
·⏎
----

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        HorizontalDivider {
            end: 12,
            start: 8,
        },
    ],
    warnings: [],
}
alpha
----

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        HorizontalDivider {
            end: 10,
            start: 6,
        },
    ],
    warnings: [],
}
alpha·⏎
----

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        HorizontalDivider {
            end: 11,
            start: 7,
        },
    ],
    warnings: [],
}

invalid character


Output {
    nodes: [
        Text {
            end: 1,
            start: 0,
            value: Text {
                text: "\0",
            },
        },
    ],
    warnings: [
        Warning {
            end: 1,
            message: InvalidCharacter,
            start: 0,
        },
    ],
}

Output {
    nodes: [
        Text {
            end: 1,
            start: 0,
            value: Text {
                text: "\r",
            },
        },
    ],
    warnings: [
        Warning {
            end: 1,
            message: InvalidCharacter,
            start: 0,
        },
    ],
}


Output {
    nodes: [
        Text {
            end: 1,
            start: 0,
            value: Text {
                text: "\u{7f}",
            },
        },
    ],
    warnings: [
        Warning {
            end: 1,
            message: InvalidCharacter,
            start: 0,
        },
    ],
}

link

[[FILE:alpha]]

Output {
    nodes: [
        Image {
            end: 14,
            start: 0,
            target: Text {
                text: "FILE:alpha",
            },
            text: [],
        },
    ],
    warnings: [],
}
[[File:alpha]]

Output {
    nodes: [
        Image {
            end: 14,
            start: 0,
            target: Text {
                text: "File:alpha",
            },
            text: [],
        },
    ],
    warnings: [],
}
[[alpha

Output {
    nodes: [
        Text {
            end: 7,
            start: 0,
            value: Text {
                text: "[[alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 7,
            message: InvalidLinkSyntax,
            start: 0,
        },
    ],
}
[[alpha:beta]]

Output {
    nodes: [
        Link {
            end: 14,
            start: 0,
            target: Text {
                text: "alpha:beta",
            },
            text: [
                Text {
                    end: 12,
                    start: 2,
                    value: Text {
                        text: "alpha:beta",
                    },
                },
            ],
        },
    ],
    warnings: [],
}
[[alpha:beta]]gamma

Output {
    nodes: [
        Link {
            end: 19,
            start: 0,
            target: Text {
                text: "alpha:beta",
            },
            text: [
                Text {
                    end: 12,
                    start: 2,
                    value: Text {
                        text: "alpha:beta",
                    },
                },
                Text {
                    end: 19,
                    start: 14,
                    value: Text {
                        text: "gamma",
                    },
                },
            ],
        },
    ],
    warnings: [],
}
[[alpha]]

Output {
    nodes: [
        Link {
            end: 9,
            start: 0,
            target: Text {
                text: "alpha",
            },
            text: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
        },
    ],
    warnings: [],
}
[[alpha]]·beta

Output {
    nodes: [
        Link {
            end: 9,
            start: 0,
            target: Text {
                text: "alpha",
            },
            text: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
        },
        Text {
            end: 14,
            start: 9,
            value: Text {
                text: " beta",
            },
        },
    ],
    warnings: [],
}
[[alpha]]beta

Output {
    nodes: [
        Link {
            end: 13,
            start: 0,
            target: Text {
                text: "alpha",
            },
            text: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
                Text {
                    end: 13,
                    start: 9,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
        },
    ],
    warnings: [],
}
[[alpha]]beta·gamma

Output {
    nodes: [
        Link {
            end: 13,
            start: 0,
            target: Text {
                text: "alpha",
            },
            text: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
                Text {
                    end: 13,
                    start: 9,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
        },
        Text {
            end: 19,
            start: 13,
            value: Text {
                text: " gamma",
            },
        },
    ],
    warnings: [],
}
[[alpha]]ü

Output {
    nodes: [
        Link {
            end: 9,
            start: 0,
            target: Text {
                text: "alpha",
            },
            text: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
        },
        Text {
            end: 11,
            start: 9,
            value: Text {
                text: "ü",
            },
        },
    ],
    warnings: [],
}
[[alpha|

Output {
    nodes: [
        Text {
            end: 8,
            start: 0,
            value: Text {
                text: "[[alpha|",
            },
        },
    ],
    warnings: [
        Warning {
            end: 9,
            message: MissingEndTagRewinding,
            start: 0,
        },
    ],
}
[[alpha|[beta]gamma]]

Output {
    nodes: [
        Link {
            end: 21,
            start: 0,
            target: Text {
                text: "alpha",
            },
            text: [
                Text {
                    end: 19,
                    start: 8,
                    value: Text {
                        text: "[beta]gamma",
                    },
                },
            ],
        },
    ],
    warnings: [],
}
[[alpha|]]

Output {
    nodes: [
        Link {
            end: 10,
            start: 0,
            target: Text {
                text: "alpha",
            },
            text: [],
        },
    ],
    warnings: [],
}
[[alpha|beta

Output {
    nodes: [
        Text {
            end: 12,
            start: 0,
            value: Text {
                text: "[[alpha|beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 13,
            message: MissingEndTagRewinding,
            start: 0,
        },
    ],
}
[[alpha|beta
gamma]]

Output {
    nodes: [
        Link {
            end: 20,
            start: 0,
            target: Text {
                text: "alpha",
            },
            text: [
                Text {
                    end: 18,
                    start: 8,
                    value: Text {
                        text: "beta\ngamma",
                    },
                },
            ],
        },
    ],
    warnings: [],
}
[[alpha|beta[[gamma]]]]

Output {
    nodes: [
        Text {
            end: 12,
            start: 0,
            value: Text {
                text: "[[alpha|beta",
            },
        },
        Link {
            end: 21,
            start: 12,
            target: Text {
                text: "gamma",
            },
            text: [
                Text {
                    end: 19,
                    start: 14,
                    value: Text {
                        text: "gamma",
                    },
                },
            ],
        },
        Text {
            end: 23,
            start: 21,
            value: Text {
                text: "]]",
            },
        },
    ],
    warnings: [
        Warning {
            end: 12,
            message: InvalidLinkSyntax,
            start: 0,
        },
    ],
}
[[alpha|beta]]

Output {
    nodes: [
        Link {
            end: 14,
            start: 0,
            target: Text {
                text: "alpha",
            },
            text: [
                Text {
                    end: 12,
                    start: 8,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
        },
    ],
    warnings: [],
}
[[alpha|beta]]gamma

Output {
    nodes: [
        Link {
            end: 19,
            start: 0,
            target: Text {
                text: "alpha",
            },
            text: [
                Text {
                    end: 12,
                    start: 8,
                    value: Text {
                        text: "beta",
                    },
                },
                Text {
                    end: 19,
                    start: 14,
                    value: Text {
                        text: "gamma",
                    },
                },
            ],
        },
        Text {
            end: 19,
            start: 14,
            value: Text {
                text: "gamma",
            },
        },
    ],
    warnings: [],
}
[[category:alpha]]

Output {
    nodes: [
        Category {
            end: 18,
            ordinal: [],
            start: 0,
            target: Text {
                text: "category:alpha",
            },
        },
    ],
    warnings: [],
}
[[category:alpha]]beta

Output {
    nodes: [
        Category {
            end: 18,
            ordinal: [],
            start: 0,
            target: Text {
                text: "category:alpha",
            },
        },
        Text {
            end: 22,
            start: 18,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
[[category:alpha|beta]]

Output {
    nodes: [
        Category {
            end: 23,
            ordinal: [
                Text {
                    end: 21,
                    start: 17,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 0,
            target: Text {
                text: "category:alpha",
            },
        },
    ],
    warnings: [],
}
[[file:alpha]]

Output {
    nodes: [
        Image {
            end: 14,
            start: 0,
            target: Text {
                text: "file:alpha",
            },
            text: [],
        },
    ],
    warnings: [],
}
[[file:alpha]]beta

Output {
    nodes: [
        Image {
            end: 14,
            start: 0,
            target: Text {
                text: "file:alpha",
            },
            text: [],
        },
        Text {
            end: 18,
            start: 14,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
[[file:alpha|[[beta]]]]

Output {
    nodes: [
        Image {
            end: 23,
            start: 0,
            target: Text {
                text: "file:alpha",
            },
            text: [
                Link {
                    end: 21,
                    start: 13,
                    target: Text {
                        text: "beta",
                    },
                    text: [
                        Text {
                            end: 19,
                            start: 15,
                            value: Text {
                                text: "beta",
                            },
                        },
                    ],
                },
            ],
        },
    ],
    warnings: [],
}
[[file:alpha|[[beta]]gamma]]

Output {
    nodes: [
        Image {
            end: 28,
            start: 0,
            target: Text {
                text: "file:alpha",
            },
            text: [
                Link {
                    end: 26,
                    start: 13,
                    target: Text {
                        text: "beta",
                    },
                    text: [
                        Text {
                            end: 19,
                            start: 15,
                            value: Text {
                                text: "beta",
                            },
                        },
                        Text {
                            end: 26,
                            start: 21,
                            value: Text {
                                text: "gamma",
                            },
                        },
                    ],
                },
            ],
        },
    ],
    warnings: [],
}
[[file:alpha|]]

Output {
    nodes: [
        Image {
            end: 15,
            start: 0,
            target: Text {
                text: "file:alpha",
            },
            text: [],
        },
    ],
    warnings: [],
}
[[file:alpha|beta[[gamma]]]]

Output {
    nodes: [
        Image {
            end: 28,
            start: 0,
            target: Text {
                text: "file:alpha",
            },
            text: [
                Text {
                    end: 17,
                    start: 13,
                    value: Text {
                        text: "beta",
                    },
                },
                Link {
                    end: 26,
                    start: 17,
                    target: Text {
                        text: "gamma",
                    },
                    text: [
                        Text {
                            end: 24,
                            start: 19,
                            value: Text {
                                text: "gamma",
                            },
                        },
                    ],
                },
            ],
        },
    ],
    warnings: [],
}
[[file:alpha|beta]]

Output {
    nodes: [
        Image {
            end: 19,
            start: 0,
            target: Text {
                text: "file:alpha",
            },
            text: [
                Text {
                    end: 17,
                    start: 13,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
        },
    ],
    warnings: [],
}
[[file:alpha|beta]]gamma

Output {
    nodes: [
        Image {
            end: 19,
            start: 0,
            target: Text {
                text: "file:alpha",
            },
            text: [
                Text {
                    end: 17,
                    start: 13,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
        },
        Text {
            end: 24,
            start: 19,
            value: Text {
                text: "gamma",
            },
        },
    ],
    warnings: [],
}
[[image:alpha]]

Output {
    nodes: [
        Image {
            end: 15,
            start: 0,
            target: Text {
                text: "image:alpha",
            },
            text: [],
        },
    ],
    warnings: [],
}
[[|]]

Output {
    nodes: [
        Link {
            end: 5,
            start: 0,
            target: Text {
                text: "",
            },
            text: [],
        },
    ],
    warnings: [],
}
[[|alpha]]

Output {
    nodes: [
        Link {
            end: 10,
            start: 0,
            target: Text {
                text: "",
            },
            text: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
        },
    ],
    warnings: [],
}
alpha·[[beta]]

Output {
    nodes: [
        Text {
            end: 6,
            start: 0,
            value: Text {
                text: "alpha ",
            },
        },
        Link {
            end: 14,
            start: 6,
            target: Text {
                text: "beta",
            },
            text: [
                Text {
                    end: 12,
                    start: 8,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
        },
    ],
    warnings: [],
}
alpha[[beta]]

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Link {
            end: 13,
            start: 5,
            target: Text {
                text: "beta",
            },
            text: [
                Text {
                    end: 11,
                    start: 7,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
        },
    ],
    warnings: [],
}
alpha[[beta]]gamma

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Link {
            end: 18,
            start: 5,
            target: Text {
                text: "beta",
            },
            text: [
                Text {
                    end: 11,
                    start: 7,
                    value: Text {
                        text: "beta",
                    },
                },
                Text {
                    end: 18,
                    start: 13,
                    value: Text {
                        text: "gamma",
                    },
                },
            ],
        },
    ],
    warnings: [],
}

list

#

Output {
    nodes: [
        OrderedList {
            end: 1,
            items: [
                ListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
#


alpha

Output {
    nodes: [
        OrderedList {
            end: 1,
            items: [
                ListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                },
            ],
            start: 0,
        },
        Text {
            end: 9,
            start: 4,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 4,
            message: RepeatedEmptyLine,
            start: 3,
        },
    ],
}
#

alpha

Output {
    nodes: [
        OrderedList {
            end: 1,
            items: [
                ListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                },
            ],
            start: 0,
        },
        Text {
            end: 8,
            start: 3,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
#
#

Output {
    nodes: [
        OrderedList {
            end: 3,
            items: [
                ListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                },
                ListItem {
                    end: 3,
                    nodes: [],
                    start: 2,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
#
##

Output {
    nodes: [
        OrderedList {
            end: 4,
            items: [
                ListItem {
                    end: 4,
                    nodes: [
                        OrderedList {
                            end: 4,
                            items: [
                                ListItem {
                                    end: 4,
                                    nodes: [],
                                    start: 4,
                                },
                            ],
                            start: 3,
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
#
##
#

Output {
    nodes: [
        OrderedList {
            end: 6,
            items: [
                ListItem {
                    end: 4,
                    nodes: [
                        OrderedList {
                            end: 4,
                            items: [
                                ListItem {
                                    end: 4,
                                    nodes: [],
                                    start: 4,
                                },
                            ],
                            start: 3,
                        },
                    ],
                    start: 1,
                },
                ListItem {
                    end: 6,
                    nodes: [],
                    start: 5,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
#
*

Output {
    nodes: [
        OrderedList {
            end: 1,
            items: [
                ListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                },
            ],
            start: 0,
        },
        UnorderedList {
            end: 3,
            items: [
                ListItem {
                    end: 3,
                    nodes: [],
                    start: 3,
                },
            ],
            start: 2,
        },
    ],
    warnings: [],
}
#
:

Output {
    nodes: [
        OrderedList {
            end: 1,
            items: [
                ListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                },
            ],
            start: 0,
        },
        DefinitionList {
            end: 3,
            items: [
                DefinitionListItem {
                    end: 3,
                    nodes: [],
                    start: 3,
                    type_: Details,
                },
            ],
            start: 2,
        },
    ],
    warnings: [],
}
#
;

Output {
    nodes: [
        OrderedList {
            end: 1,
            items: [
                ListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                },
            ],
            start: 0,
        },
        DefinitionList {
            end: 3,
            items: [
                DefinitionListItem {
                    end: 3,
                    nodes: [],
                    start: 3,
                    type_: Term,
                },
            ],
            start: 2,
        },
    ],
    warnings: [],
}
#
alpha

Output {
    nodes: [
        OrderedList {
            end: 1,
            items: [
                ListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                },
            ],
            start: 0,
        },
        Text {
            end: 7,
            start: 2,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
#·alpha

Output {
    nodes: [
        OrderedList {
            end: 7,
            items: [
                ListItem {
                    end: 7,
                    nodes: [
                        Text {
                            end: 7,
                            start: 2,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
##

Output {
    nodes: [
        OrderedList {
            end: 2,
            items: [
                ListItem {
                    end: 2,
                    nodes: [
                        OrderedList {
                            end: 2,
                            items: [
                                ListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
##
#

Output {
    nodes: [
        OrderedList {
            end: 4,
            items: [
                ListItem {
                    end: 2,
                    nodes: [
                        OrderedList {
                            end: 2,
                            items: [
                                ListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                },
                ListItem {
                    end: 4,
                    nodes: [],
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
##
#
##

Output {
    nodes: [
        OrderedList {
            end: 7,
            items: [
                ListItem {
                    end: 2,
                    nodes: [
                        OrderedList {
                            end: 2,
                            items: [
                                ListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                },
                ListItem {
                    end: 7,
                    nodes: [
                        OrderedList {
                            end: 7,
                            items: [
                                ListItem {
                                    end: 7,
                                    nodes: [],
                                    start: 7,
                                },
                            ],
                            start: 6,
                        },
                    ],
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
##
##

Output {
    nodes: [
        OrderedList {
            end: 5,
            items: [
                ListItem {
                    end: 5,
                    nodes: [
                        OrderedList {
                            end: 5,
                            items: [
                                ListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                },
                                ListItem {
                                    end: 5,
                                    nodes: [],
                                    start: 4,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
#=alpha=

Output {
    nodes: [
        OrderedList {
            end: 8,
            items: [
                ListItem {
                    end: 8,
                    nodes: [
                        Text {
                            end: 8,
                            start: 1,
                            value: Text {
                                text: "=alpha=",
                            },
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
#alpha

Output {
    nodes: [
        OrderedList {
            end: 6,
            items: [
                ListItem {
                    end: 6,
                    nodes: [
                        Text {
                            end: 6,
                            start: 1,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
#alpha
#beta

Output {
    nodes: [
        OrderedList {
            end: 12,
            items: [
                ListItem {
                    end: 6,
                    nodes: [
                        Text {
                            end: 6,
                            start: 1,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    start: 1,
                },
                ListItem {
                    end: 12,
                    nodes: [
                        Text {
                            end: 12,
                            start: 8,
                            value: Text {
                                text: "beta",
                            },
                        },
                    ],
                    start: 7,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
*

Output {
    nodes: [
        UnorderedList {
            end: 1,
            items: [
                ListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
*

alpha

Output {
    nodes: [
        UnorderedList {
            end: 1,
            items: [
                ListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                },
            ],
            start: 0,
        },
        Text {
            end: 8,
            start: 3,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
*
#

Output {
    nodes: [
        UnorderedList {
            end: 1,
            items: [
                ListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                },
            ],
            start: 0,
        },
        OrderedList {
            end: 3,
            items: [
                ListItem {
                    end: 3,
                    nodes: [],
                    start: 3,
                },
            ],
            start: 2,
        },
    ],
    warnings: [],
}
*
*

Output {
    nodes: [
        UnorderedList {
            end: 3,
            items: [
                ListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                },
                ListItem {
                    end: 3,
                    nodes: [],
                    start: 2,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
*
**

Output {
    nodes: [
        UnorderedList {
            end: 4,
            items: [
                ListItem {
                    end: 4,
                    nodes: [
                        UnorderedList {
                            end: 4,
                            items: [
                                ListItem {
                                    end: 4,
                                    nodes: [],
                                    start: 4,
                                },
                            ],
                            start: 3,
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
*
**
*

Output {
    nodes: [
        UnorderedList {
            end: 6,
            items: [
                ListItem {
                    end: 4,
                    nodes: [
                        UnorderedList {
                            end: 4,
                            items: [
                                ListItem {
                                    end: 4,
                                    nodes: [],
                                    start: 4,
                                },
                            ],
                            start: 3,
                        },
                    ],
                    start: 1,
                },
                ListItem {
                    end: 6,
                    nodes: [],
                    start: 5,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
*
:

Output {
    nodes: [
        UnorderedList {
            end: 1,
            items: [
                ListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                },
            ],
            start: 0,
        },
        DefinitionList {
            end: 3,
            items: [
                DefinitionListItem {
                    end: 3,
                    nodes: [],
                    start: 3,
                    type_: Details,
                },
            ],
            start: 2,
        },
    ],
    warnings: [],
}
*
;

Output {
    nodes: [
        UnorderedList {
            end: 1,
            items: [
                ListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                },
            ],
            start: 0,
        },
        DefinitionList {
            end: 3,
            items: [
                DefinitionListItem {
                    end: 3,
                    nodes: [],
                    start: 3,
                    type_: Term,
                },
            ],
            start: 2,
        },
    ],
    warnings: [],
}
*
alpha

Output {
    nodes: [
        UnorderedList {
            end: 1,
            items: [
                ListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                },
            ],
            start: 0,
        },
        Text {
            end: 7,
            start: 2,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
*·alpha

Output {
    nodes: [
        UnorderedList {
            end: 7,
            items: [
                ListItem {
                    end: 7,
                    nodes: [
                        Text {
                            end: 7,
                            start: 2,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
*·alpha
*·beta

Output {
    nodes: [
        UnorderedList {
            end: 14,
            items: [
                ListItem {
                    end: 7,
                    nodes: [
                        Text {
                            end: 7,
                            start: 2,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    start: 1,
                },
                ListItem {
                    end: 14,
                    nodes: [
                        Text {
                            end: 14,
                            start: 10,
                            value: Text {
                                text: "beta",
                            },
                        },
                    ],
                    start: 8,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
**

Output {
    nodes: [
        UnorderedList {
            end: 2,
            items: [
                ListItem {
                    end: 2,
                    nodes: [
                        UnorderedList {
                            end: 2,
                            items: [
                                ListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
**
*

Output {
    nodes: [
        UnorderedList {
            end: 4,
            items: [
                ListItem {
                    end: 2,
                    nodes: [
                        UnorderedList {
                            end: 2,
                            items: [
                                ListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                },
                ListItem {
                    end: 4,
                    nodes: [],
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
**
*
**

Output {
    nodes: [
        UnorderedList {
            end: 7,
            items: [
                ListItem {
                    end: 2,
                    nodes: [
                        UnorderedList {
                            end: 2,
                            items: [
                                ListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                },
                ListItem {
                    end: 7,
                    nodes: [
                        UnorderedList {
                            end: 7,
                            items: [
                                ListItem {
                                    end: 7,
                                    nodes: [],
                                    start: 7,
                                },
                            ],
                            start: 6,
                        },
                    ],
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
**
**

Output {
    nodes: [
        UnorderedList {
            end: 5,
            items: [
                ListItem {
                    end: 5,
                    nodes: [
                        UnorderedList {
                            end: 5,
                            items: [
                                ListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                },
                                ListItem {
                                    end: 5,
                                    nodes: [],
                                    start: 4,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
*;
*;

Output {
    nodes: [
        UnorderedList {
            end: 5,
            items: [
                ListItem {
                    end: 5,
                    nodes: [
                        DefinitionList {
                            end: 5,
                            items: [
                                DefinitionListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                    type_: Term,
                                },
                                DefinitionListItem {
                                    end: 5,
                                    nodes: [],
                                    start: 4,
                                    type_: Term,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
*;
*;*

Output {
    nodes: [
        UnorderedList {
            end: 6,
            items: [
                ListItem {
                    end: 6,
                    nodes: [
                        DefinitionList {
                            end: 2,
                            items: [
                                DefinitionListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                    type_: Term,
                                },
                            ],
                            start: 1,
                        },
                        DefinitionList {
                            end: 6,
                            items: [
                                DefinitionListItem {
                                    end: 6,
                                    nodes: [
                                        UnorderedList {
                                            end: 6,
                                            items: [
                                                ListItem {
                                                    end: 6,
                                                    nodes: [],
                                                    start: 6,
                                                },
                                            ],
                                            start: 5,
                                        },
                                    ],
                                    start: 5,
                                    type_: Term,
                                },
                            ],
                            start: 4,
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 4,
            message: DefinitionTermContinuation,
            start: 3,
        },
    ],
}
*;*
*;

Output {
    nodes: [
        UnorderedList {
            end: 6,
            items: [
                ListItem {
                    end: 6,
                    nodes: [
                        DefinitionList {
                            end: 3,
                            items: [
                                DefinitionListItem {
                                    end: 3,
                                    nodes: [
                                        UnorderedList {
                                            end: 3,
                                            items: [
                                                ListItem {
                                                    end: 3,
                                                    nodes: [],
                                                    start: 3,
                                                },
                                            ],
                                            start: 2,
                                        },
                                    ],
                                    start: 2,
                                    type_: Term,
                                },
                            ],
                            start: 1,
                        },
                        DefinitionList {
                            end: 6,
                            items: [
                                DefinitionListItem {
                                    end: 6,
                                    nodes: [],
                                    start: 6,
                                    type_: Term,
                                },
                            ],
                            start: 5,
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 5,
            message: DefinitionTermContinuation,
            start: 4,
        },
    ],
}
*;*
*;#

Output {
    nodes: [
        UnorderedList {
            end: 7,
            items: [
                ListItem {
                    end: 7,
                    nodes: [
                        DefinitionList {
                            end: 3,
                            items: [
                                DefinitionListItem {
                                    end: 3,
                                    nodes: [
                                        UnorderedList {
                                            end: 3,
                                            items: [
                                                ListItem {
                                                    end: 3,
                                                    nodes: [],
                                                    start: 3,
                                                },
                                            ],
                                            start: 2,
                                        },
                                    ],
                                    start: 2,
                                    type_: Term,
                                },
                            ],
                            start: 1,
                        },
                        DefinitionList {
                            end: 7,
                            items: [
                                DefinitionListItem {
                                    end: 7,
                                    nodes: [
                                        OrderedList {
                                            end: 7,
                                            items: [
                                                ListItem {
                                                    end: 7,
                                                    nodes: [],
                                                    start: 7,
                                                },
                                            ],
                                            start: 6,
                                        },
                                    ],
                                    start: 6,
                                    type_: Term,
                                },
                            ],
                            start: 5,
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 5,
            message: DefinitionTermContinuation,
            start: 4,
        },
    ],
}
*=alpha=

Output {
    nodes: [
        UnorderedList {
            end: 8,
            items: [
                ListItem {
                    end: 8,
                    nodes: [
                        Text {
                            end: 8,
                            start: 1,
                            value: Text {
                                text: "=alpha=",
                            },
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
*alpha

Output {
    nodes: [
        UnorderedList {
            end: 6,
            items: [
                ListItem {
                    end: 6,
                    nodes: [
                        Text {
                            end: 6,
                            start: 1,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
*alpha
*beta

Output {
    nodes: [
        UnorderedList {
            end: 12,
            items: [
                ListItem {
                    end: 6,
                    nodes: [
                        Text {
                            end: 6,
                            start: 1,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    start: 1,
                },
                ListItem {
                    end: 12,
                    nodes: [
                        Text {
                            end: 12,
                            start: 8,
                            value: Text {
                                text: "beta",
                            },
                        },
                    ],
                    start: 7,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
:

Output {
    nodes: [
        DefinitionList {
            end: 1,
            items: [
                DefinitionListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                    type_: Details,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
:

alpha

Output {
    nodes: [
        DefinitionList {
            end: 1,
            items: [
                DefinitionListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                    type_: Details,
                },
            ],
            start: 0,
        },
        Text {
            end: 8,
            start: 3,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
:
#

Output {
    nodes: [
        DefinitionList {
            end: 1,
            items: [
                DefinitionListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                    type_: Details,
                },
            ],
            start: 0,
        },
        OrderedList {
            end: 3,
            items: [
                ListItem {
                    end: 3,
                    nodes: [],
                    start: 3,
                },
            ],
            start: 2,
        },
    ],
    warnings: [],
}
:
*

Output {
    nodes: [
        DefinitionList {
            end: 1,
            items: [
                DefinitionListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                    type_: Details,
                },
            ],
            start: 0,
        },
        UnorderedList {
            end: 3,
            items: [
                ListItem {
                    end: 3,
                    nodes: [],
                    start: 3,
                },
            ],
            start: 2,
        },
    ],
    warnings: [],
}
:
:

Output {
    nodes: [
        DefinitionList {
            end: 3,
            items: [
                DefinitionListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                    type_: Details,
                },
                DefinitionListItem {
                    end: 3,
                    nodes: [],
                    start: 2,
                    type_: Details,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
:
::

Output {
    nodes: [
        DefinitionList {
            end: 4,
            items: [
                DefinitionListItem {
                    end: 4,
                    nodes: [
                        DefinitionList {
                            end: 4,
                            items: [
                                DefinitionListItem {
                                    end: 4,
                                    nodes: [],
                                    start: 4,
                                    type_: Details,
                                },
                            ],
                            start: 3,
                        },
                    ],
                    start: 1,
                    type_: Details,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
:
::
:

Output {
    nodes: [
        DefinitionList {
            end: 6,
            items: [
                DefinitionListItem {
                    end: 4,
                    nodes: [
                        DefinitionList {
                            end: 4,
                            items: [
                                DefinitionListItem {
                                    end: 4,
                                    nodes: [],
                                    start: 4,
                                    type_: Details,
                                },
                            ],
                            start: 3,
                        },
                    ],
                    start: 1,
                    type_: Details,
                },
                DefinitionListItem {
                    end: 6,
                    nodes: [],
                    start: 5,
                    type_: Details,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
:
;

Output {
    nodes: [
        DefinitionList {
            end: 3,
            items: [
                DefinitionListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                    type_: Details,
                },
                DefinitionListItem {
                    end: 3,
                    nodes: [],
                    start: 2,
                    type_: Term,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
:
alpha

Output {
    nodes: [
        DefinitionList {
            end: 1,
            items: [
                DefinitionListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                    type_: Details,
                },
            ],
            start: 0,
        },
        Text {
            end: 7,
            start: 2,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
:·alpha

Output {
    nodes: [
        DefinitionList {
            end: 7,
            items: [
                DefinitionListItem {
                    end: 7,
                    nodes: [
                        Text {
                            end: 7,
                            start: 2,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    start: 1,
                    type_: Details,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
::

Output {
    nodes: [
        DefinitionList {
            end: 2,
            items: [
                DefinitionListItem {
                    end: 2,
                    nodes: [
                        DefinitionList {
                            end: 2,
                            items: [
                                DefinitionListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                    type_: Details,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                    type_: Details,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
::
:

Output {
    nodes: [
        DefinitionList {
            end: 4,
            items: [
                DefinitionListItem {
                    end: 2,
                    nodes: [
                        DefinitionList {
                            end: 2,
                            items: [
                                DefinitionListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                    type_: Details,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                    type_: Details,
                },
                DefinitionListItem {
                    end: 4,
                    nodes: [],
                    start: 3,
                    type_: Details,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
::
:
::

Output {
    nodes: [
        DefinitionList {
            end: 7,
            items: [
                DefinitionListItem {
                    end: 2,
                    nodes: [
                        DefinitionList {
                            end: 2,
                            items: [
                                DefinitionListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                    type_: Details,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                    type_: Details,
                },
                DefinitionListItem {
                    end: 7,
                    nodes: [
                        DefinitionList {
                            end: 7,
                            items: [
                                DefinitionListItem {
                                    end: 7,
                                    nodes: [],
                                    start: 7,
                                    type_: Details,
                                },
                            ],
                            start: 6,
                        },
                    ],
                    start: 3,
                    type_: Details,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
::
::

Output {
    nodes: [
        DefinitionList {
            end: 5,
            items: [
                DefinitionListItem {
                    end: 5,
                    nodes: [
                        DefinitionList {
                            end: 5,
                            items: [
                                DefinitionListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                    type_: Details,
                                },
                                DefinitionListItem {
                                    end: 5,
                                    nodes: [],
                                    start: 4,
                                    type_: Details,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                    type_: Details,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
:=alpha=

Output {
    nodes: [
        DefinitionList {
            end: 8,
            items: [
                DefinitionListItem {
                    end: 8,
                    nodes: [
                        Text {
                            end: 8,
                            start: 1,
                            value: Text {
                                text: "=alpha=",
                            },
                        },
                    ],
                    start: 1,
                    type_: Details,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
:alpha

Output {
    nodes: [
        DefinitionList {
            end: 6,
            items: [
                DefinitionListItem {
                    end: 6,
                    nodes: [
                        Text {
                            end: 6,
                            start: 1,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    start: 1,
                    type_: Details,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
:alpha
beta

Output {
    nodes: [
        DefinitionList {
            end: 6,
            items: [
                DefinitionListItem {
                    end: 6,
                    nodes: [
                        Text {
                            end: 6,
                            start: 1,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    start: 1,
                    type_: Details,
                },
            ],
            start: 0,
        },
        Text {
            end: 11,
            start: 7,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
;

Output {
    nodes: [
        DefinitionList {
            end: 1,
            items: [
                DefinitionListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                    type_: Term,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
;

alpha

Output {
    nodes: [
        DefinitionList {
            end: 1,
            items: [
                DefinitionListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                    type_: Term,
                },
            ],
            start: 0,
        },
        Text {
            end: 8,
            start: 3,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
;
#

Output {
    nodes: [
        DefinitionList {
            end: 1,
            items: [
                DefinitionListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                    type_: Term,
                },
            ],
            start: 0,
        },
        OrderedList {
            end: 3,
            items: [
                ListItem {
                    end: 3,
                    nodes: [],
                    start: 3,
                },
            ],
            start: 2,
        },
    ],
    warnings: [],
}
;
*

Output {
    nodes: [
        DefinitionList {
            end: 1,
            items: [
                DefinitionListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                    type_: Term,
                },
            ],
            start: 0,
        },
        UnorderedList {
            end: 3,
            items: [
                ListItem {
                    end: 3,
                    nodes: [],
                    start: 3,
                },
            ],
            start: 2,
        },
    ],
    warnings: [],
}
;
:

Output {
    nodes: [
        DefinitionList {
            end: 3,
            items: [
                DefinitionListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                    type_: Term,
                },
                DefinitionListItem {
                    end: 3,
                    nodes: [],
                    start: 2,
                    type_: Details,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
;
;;

Output {
    nodes: [
        DefinitionList {
            end: 1,
            items: [
                DefinitionListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                    type_: Term,
                },
            ],
            start: 0,
        },
        DefinitionList {
            end: 4,
            items: [
                DefinitionListItem {
                    end: 4,
                    nodes: [
                        DefinitionList {
                            end: 4,
                            items: [
                                DefinitionListItem {
                                    end: 4,
                                    nodes: [],
                                    start: 4,
                                    type_: Term,
                                },
                            ],
                            start: 3,
                        },
                    ],
                    start: 3,
                    type_: Term,
                },
            ],
            start: 2,
        },
    ],
    warnings: [
        Warning {
            end: 2,
            message: DefinitionTermContinuation,
            start: 1,
        },
    ],
}
;
;;
;

Output {
    nodes: [
        DefinitionList {
            end: 1,
            items: [
                DefinitionListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                    type_: Term,
                },
            ],
            start: 0,
        },
        DefinitionList {
            end: 4,
            items: [
                DefinitionListItem {
                    end: 4,
                    nodes: [
                        DefinitionList {
                            end: 4,
                            items: [
                                DefinitionListItem {
                                    end: 4,
                                    nodes: [],
                                    start: 4,
                                    type_: Term,
                                },
                            ],
                            start: 3,
                        },
                    ],
                    start: 3,
                    type_: Term,
                },
            ],
            start: 2,
        },
        DefinitionList {
            end: 6,
            items: [
                DefinitionListItem {
                    end: 6,
                    nodes: [],
                    start: 6,
                    type_: Term,
                },
            ],
            start: 5,
        },
    ],
    warnings: [
        Warning {
            end: 2,
            message: DefinitionTermContinuation,
            start: 1,
        },
        Warning {
            end: 5,
            message: DefinitionTermContinuation,
            start: 4,
        },
    ],
}
;
alpha

Output {
    nodes: [
        DefinitionList {
            end: 1,
            items: [
                DefinitionListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                    type_: Term,
                },
            ],
            start: 0,
        },
        Text {
            end: 7,
            start: 2,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
;·alpha

Output {
    nodes: [
        DefinitionList {
            end: 7,
            items: [
                DefinitionListItem {
                    end: 7,
                    nodes: [
                        Text {
                            end: 7,
                            start: 2,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    start: 1,
                    type_: Term,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
;;

Output {
    nodes: [
        DefinitionList {
            end: 2,
            items: [
                DefinitionListItem {
                    end: 2,
                    nodes: [
                        DefinitionList {
                            end: 2,
                            items: [
                                DefinitionListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                    type_: Term,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                    type_: Term,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
;;
;

Output {
    nodes: [
        DefinitionList {
            end: 2,
            items: [
                DefinitionListItem {
                    end: 2,
                    nodes: [
                        DefinitionList {
                            end: 2,
                            items: [
                                DefinitionListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                    type_: Term,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                    type_: Term,
                },
            ],
            start: 0,
        },
        DefinitionList {
            end: 4,
            items: [
                DefinitionListItem {
                    end: 4,
                    nodes: [],
                    start: 4,
                    type_: Term,
                },
            ],
            start: 3,
        },
    ],
    warnings: [
        Warning {
            end: 3,
            message: DefinitionTermContinuation,
            start: 2,
        },
    ],
}
;;
;
;;

Output {
    nodes: [
        DefinitionList {
            end: 2,
            items: [
                DefinitionListItem {
                    end: 2,
                    nodes: [
                        DefinitionList {
                            end: 2,
                            items: [
                                DefinitionListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                    type_: Term,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                    type_: Term,
                },
            ],
            start: 0,
        },
        DefinitionList {
            end: 4,
            items: [
                DefinitionListItem {
                    end: 4,
                    nodes: [],
                    start: 4,
                    type_: Term,
                },
            ],
            start: 3,
        },
        DefinitionList {
            end: 7,
            items: [
                DefinitionListItem {
                    end: 7,
                    nodes: [
                        DefinitionList {
                            end: 7,
                            items: [
                                DefinitionListItem {
                                    end: 7,
                                    nodes: [],
                                    start: 7,
                                    type_: Term,
                                },
                            ],
                            start: 6,
                        },
                    ],
                    start: 6,
                    type_: Term,
                },
            ],
            start: 5,
        },
    ],
    warnings: [
        Warning {
            end: 3,
            message: DefinitionTermContinuation,
            start: 2,
        },
        Warning {
            end: 5,
            message: DefinitionTermContinuation,
            start: 4,
        },
    ],
}
;;
;;

Output {
    nodes: [
        DefinitionList {
            end: 5,
            items: [
                DefinitionListItem {
                    end: 5,
                    nodes: [
                        DefinitionList {
                            end: 5,
                            items: [
                                DefinitionListItem {
                                    end: 2,
                                    nodes: [],
                                    start: 2,
                                    type_: Term,
                                },
                                DefinitionListItem {
                                    end: 5,
                                    nodes: [],
                                    start: 4,
                                    type_: Term,
                                },
                            ],
                            start: 1,
                        },
                    ],
                    start: 1,
                    type_: Term,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
;=alpha=

Output {
    nodes: [
        DefinitionList {
            end: 8,
            items: [
                DefinitionListItem {
                    end: 8,
                    nodes: [
                        Text {
                            end: 8,
                            start: 1,
                            value: Text {
                                text: "=alpha=",
                            },
                        },
                    ],
                    start: 1,
                    type_: Term,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
;alpha

Output {
    nodes: [
        DefinitionList {
            end: 6,
            items: [
                DefinitionListItem {
                    end: 6,
                    nodes: [
                        Text {
                            end: 6,
                            start: 1,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    start: 1,
                    type_: Term,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
;alpha
beta

Output {
    nodes: [
        DefinitionList {
            end: 6,
            items: [
                DefinitionListItem {
                    end: 6,
                    nodes: [
                        Text {
                            end: 6,
                            start: 1,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    start: 1,
                    type_: Term,
                },
            ],
            start: 0,
        },
        Text {
            end: 11,
            start: 7,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
alpha⭾⏎
#

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        OrderedList {
            end: 8,
            items: [
                ListItem {
                    end: 8,
                    nodes: [],
                    start: 8,
                },
            ],
            start: 7,
        },
    ],
    warnings: [],
}
alpha
#

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        OrderedList {
            end: 7,
            items: [
                ListItem {
                    end: 7,
                    nodes: [],
                    start: 7,
                },
            ],
            start: 6,
        },
    ],
    warnings: [],
}
alpha
#
beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        OrderedList {
            end: 7,
            items: [
                ListItem {
                    end: 7,
                    nodes: [],
                    start: 7,
                },
            ],
            start: 6,
        },
        Text {
            end: 12,
            start: 8,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
alpha
*

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        UnorderedList {
            end: 7,
            items: [
                ListItem {
                    end: 7,
                    nodes: [],
                    start: 7,
                },
            ],
            start: 6,
        },
    ],
    warnings: [],
}
alpha
*
beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        UnorderedList {
            end: 7,
            items: [
                ListItem {
                    end: 7,
                    nodes: [],
                    start: 7,
                },
            ],
            start: 6,
        },
        Text {
            end: 12,
            start: 8,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
alpha
:

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        DefinitionList {
            end: 7,
            items: [
                DefinitionListItem {
                    end: 7,
                    nodes: [],
                    start: 7,
                    type_: Details,
                },
            ],
            start: 6,
        },
    ],
    warnings: [],
}
alpha
:
beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        DefinitionList {
            end: 7,
            items: [
                DefinitionListItem {
                    end: 7,
                    nodes: [],
                    start: 7,
                    type_: Details,
                },
            ],
            start: 6,
        },
        Text {
            end: 12,
            start: 8,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
alpha
;

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        DefinitionList {
            end: 7,
            items: [
                DefinitionListItem {
                    end: 7,
                    nodes: [],
                    start: 7,
                    type_: Term,
                },
            ],
            start: 6,
        },
    ],
    warnings: [],
}
alpha
;
beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        DefinitionList {
            end: 7,
            items: [
                DefinitionListItem {
                    end: 7,
                    nodes: [],
                    start: 7,
                    type_: Term,
                },
            ],
            start: 6,
        },
        Text {
            end: 12,
            start: 8,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
alpha·⏎
#

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        OrderedList {
            end: 8,
            items: [
                ListItem {
                    end: 8,
                    nodes: [],
                    start: 8,
                },
            ],
            start: 7,
        },
    ],
    warnings: [],
}

magic word

__ALPHA__

Output {
    nodes: [
        Text {
            end: 9,
            start: 0,
            value: Text {
                text: "__ALPHA__",
            },
        },
    ],
    warnings: [],
}
__NOTC__·__TOC__

Output {
    nodes: [
        MagicWord {
            end: 8,
            start: 0,
        },
        Text {
            end: 9,
            start: 8,
            value: Text {
                text: " ",
            },
        },
        MagicWord {
            end: 16,
            start: 9,
        },
    ],
    warnings: [],
}
__NOTC___TOC__

Output {
    nodes: [
        MagicWord {
            end: 8,
            start: 0,
        },
        Text {
            end: 14,
            start: 8,
            value: Text {
                text: "_TOC__",
            },
        },
    ],
    warnings: [],
}
__NOTC____TOC__

Output {
    nodes: [
        MagicWord {
            end: 8,
            start: 0,
        },
        MagicWord {
            end: 15,
            start: 8,
        },
    ],
    warnings: [],
}
__TOC_

Output {
    nodes: [
        Text {
            end: 6,
            start: 0,
            value: Text {
                text: "__TOC_",
            },
        },
    ],
    warnings: [],
}
__TOC__

Output {
    nodes: [
        MagicWord {
            end: 7,
            start: 0,
        },
    ],
    warnings: [],
}
__TOC__·alpha

Output {
    nodes: [
        MagicWord {
            end: 7,
            start: 0,
        },
        Text {
            end: 13,
            start: 7,
            value: Text {
                text: " alpha",
            },
        },
    ],
    warnings: [],
}
__TOC__alpha

Output {
    nodes: [
        MagicWord {
            end: 7,
            start: 0,
        },
        Text {
            end: 12,
            start: 7,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
__ToC__

Output {
    nodes: [
        MagicWord {
            end: 7,
            start: 0,
        },
    ],
    warnings: [],
}
__tOc__

Output {
    nodes: [
        MagicWord {
            end: 7,
            start: 0,
        },
    ],
    warnings: [],
}
__toc__

Output {
    nodes: [
        MagicWord {
            end: 7,
            start: 0,
        },
    ],
    warnings: [],
}
alpha·__TOC__

Output {
    nodes: [
        Text {
            end: 6,
            start: 0,
            value: Text {
                text: "alpha ",
            },
        },
        MagicWord {
            end: 13,
            start: 6,
        },
    ],
    warnings: [],
}
alpha·__TOC__·beta

Output {
    nodes: [
        Text {
            end: 6,
            start: 0,
            value: Text {
                text: "alpha ",
            },
        },
        MagicWord {
            end: 13,
            start: 6,
        },
        Text {
            end: 18,
            start: 13,
            value: Text {
                text: " beta",
            },
        },
    ],
    warnings: [],
}
alpha__TOC__

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        MagicWord {
            end: 12,
            start: 5,
        },
    ],
    warnings: [],
}
alpha__TOC__beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        MagicWord {
            end: 12,
            start: 5,
        },
        Text {
            end: 16,
            start: 12,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}

mix

·alpha
·{|
·beta
·|}
·gamma

Output {
    nodes: [
        Preformatted {
            end: 7,
            nodes: [
                Text {
                    end: 6,
                    start: 1,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 1,
        },
        Text {
            end: 16,
            start: 12,
            value: Text {
                text: "beta",
            },
        },
        Table {
            attributes: [],
            captions: [],
            end: 20,
            rows: [],
            start: 8,
        },
        Preformatted {
            end: 28,
            nodes: [
                Text {
                    end: 27,
                    start: 22,
                    value: Text {
                        text: "gamma",
                    },
                },
            ],
            start: 22,
        },
    ],
    warnings: [
        Warning {
            end: 16,
            message: StrayTextInTable,
            start: 12,
        },
    ],
}
·alpha
·{|
|}

Output {
    nodes: [
        Preformatted {
            end: 7,
            nodes: [
                Text {
                    end: 6,
                    start: 1,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 1,
        },
        Table {
            attributes: [],
            captions: [],
            end: 13,
            rows: [],
            start: 8,
        },
    ],
    warnings: [],
}
·alpha
·|}

Output {
    nodes: [
        Preformatted {
            end: 11,
            nodes: [
                Text {
                    end: 7,
                    start: 1,
                    value: Text {
                        text: "alpha\n",
                    },
                },
                Text {
                    end: 10,
                    start: 8,
                    value: Text {
                        text: "|}",
                    },
                },
            ],
            start: 1,
        },
    ],
    warnings: [],
}
·alpha
·|}
·beta

Output {
    nodes: [
        Preformatted {
            end: 17,
            nodes: [
                Text {
                    end: 7,
                    start: 1,
                    value: Text {
                        text: "alpha\n",
                    },
                },
                Text {
                    end: 11,
                    start: 8,
                    value: Text {
                        text: "|}\n",
                    },
                },
                Text {
                    end: 16,
                    start: 12,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 1,
        },
    ],
    warnings: [],
}
·{|
·alpha
·|}

Output {
    nodes: [
        Text {
            end: 10,
            start: 5,
            value: Text {
                text: "alpha",
            },
        },
        Table {
            attributes: [],
            captions: [],
            end: 14,
            rows: [],
            start: 1,
        },
    ],
    warnings: [
        Warning {
            end: 10,
            message: StrayTextInTable,
            start: 5,
        },
    ],
}
·{|
·alpha
|}

Output {
    nodes: [
        Text {
            end: 10,
            start: 5,
            value: Text {
                text: "alpha",
            },
        },
        Table {
            attributes: [],
            captions: [],
            end: 13,
            rows: [],
            start: 1,
        },
    ],
    warnings: [
        Warning {
            end: 10,
            message: StrayTextInTable,
            start: 5,
        },
    ],
}
*
··alpha
*

Output {
    nodes: [
        UnorderedList {
            end: 1,
            items: [
                ListItem {
                    end: 1,
                    nodes: [],
                    start: 1,
                },
            ],
            start: 0,
        },
        Preformatted {
            end: 10,
            nodes: [
                Text {
                    end: 9,
                    start: 3,
                    value: Text {
                        text: " alpha",
                    },
                },
            ],
            start: 4,
        },
        UnorderedList {
            end: 11,
            items: [
                ListItem {
                    end: 11,
                    nodes: [],
                    start: 11,
                },
            ],
            start: 10,
        },
    ],
    warnings: [],
}
----⭾⏎
*

Output {
    nodes: [
        HorizontalDivider {
            end: 4,
            start: 0,
        },
        UnorderedList {
            end: 7,
            items: [
                ListItem {
                    end: 7,
                    nodes: [],
                    start: 7,
                },
            ],
            start: 6,
        },
    ],
    warnings: [],
}
----

*

Output {
    nodes: [
        HorizontalDivider {
            end: 4,
            start: 0,
        },
        UnorderedList {
            end: 7,
            items: [
                ListItem {
                    end: 7,
                    nodes: [],
                    start: 7,
                },
            ],
            start: 6,
        },
    ],
    warnings: [],
}
----
*

Output {
    nodes: [
        HorizontalDivider {
            end: 4,
            start: 0,
        },
        UnorderedList {
            end: 6,
            items: [
                ListItem {
                    end: 6,
                    nodes: [],
                    start: 6,
                },
            ],
            start: 5,
        },
    ],
    warnings: [],
}
----·⏎
*

Output {
    nodes: [
        HorizontalDivider {
            end: 4,
            start: 0,
        },
        UnorderedList {
            end: 7,
            items: [
                ListItem {
                    end: 7,
                    nodes: [],
                    start: 7,
                },
            ],
            start: 6,
        },
    ],
    warnings: [],
}
<ref><!--

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "<ref>",
            },
        },
        Comment {
            end: 9,
            start: 5,
        },
    ],
    warnings: [
        Warning {
            end: 10,
            message: MissingEndTagRewinding,
            start: 0,
        },
    ],
}
=alpha=

----

Output {
    nodes: [
        Heading {
            end: 7,
            level: 1,
            nodes: [
                Text {
                    end: 6,
                    start: 1,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
        HorizontalDivider {
            end: 13,
            start: 9,
        },
    ],
    warnings: [],
}
=alpha=
----

Output {
    nodes: [
        Heading {
            end: 7,
            level: 1,
            nodes: [
                Text {
                    end: 6,
                    start: 1,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
        HorizontalDivider {
            end: 12,
            start: 8,
        },
    ],
    warnings: [],
}
{{alpha|<!--

Output {
    nodes: [
        Text {
            end: 8,
            start: 0,
            value: Text {
                text: "{{alpha|",
            },
        },
        Comment {
            end: 12,
            start: 8,
        },
    ],
    warnings: [
        Warning {
            end: 13,
            message: MissingEndTagRewinding,
            start: 0,
        },
    ],
}
{|
·alpha
·|}

Output {
    nodes: [
        Text {
            end: 9,
            start: 4,
            value: Text {
                text: "alpha",
            },
        },
        Table {
            attributes: [],
            captions: [],
            end: 13,
            rows: [],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 9,
            message: StrayTextInTable,
            start: 4,
        },
    ],
}
{|
·alpha
|}

Output {
    nodes: [
        Text {
            end: 9,
            start: 4,
            value: Text {
                text: "alpha",
            },
        },
        Table {
            attributes: [],
            captions: [],
            end: 12,
            rows: [],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 9,
            message: StrayTextInTable,
            start: 4,
        },
    ],
}
{|
|}⭾⏎
*

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 5,
            rows: [],
            start: 0,
        },
        UnorderedList {
            end: 8,
            items: [
                ListItem {
                    end: 8,
                    nodes: [],
                    start: 8,
                },
            ],
            start: 7,
        },
    ],
    warnings: [],
}
{|
|}
*

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 5,
            rows: [],
            start: 0,
        },
        UnorderedList {
            end: 7,
            items: [
                ListItem {
                    end: 7,
                    nodes: [],
                    start: 7,
                },
            ],
            start: 6,
        },
    ],
    warnings: [],
}
{|
|}·⏎
*

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 5,
            rows: [],
            start: 0,
        },
        UnorderedList {
            end: 8,
            items: [
                ListItem {
                    end: 8,
                    nodes: [],
                    start: 8,
                },
            ],
            start: 7,
        },
    ],
    warnings: [],
}

nowiki

<MATH>''</MATH>

Output {
    nodes: [
        Tag {
            end: 15,
            name: Text {
                text: "math",
            },
            nodes: [
                Text {
                    end: 8,
                    start: 6,
                    value: Text {
                        text: "''",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<NOWIKI>''</NOWIKI>

Output {
    nodes: [
        Tag {
            end: 19,
            name: Text {
                text: "nowiki",
            },
            nodes: [
                Text {
                    end: 10,
                    start: 8,
                    value: Text {
                        text: "''",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<mAtH>''</MaTh>

Output {
    nodes: [
        Tag {
            end: 15,
            name: Text {
                text: "math",
            },
            nodes: [
                Text {
                    end: 8,
                    start: 6,
                    value: Text {
                        text: "''",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<math>''</math>

Output {
    nodes: [
        Tag {
            end: 15,
            name: Text {
                text: "math",
            },
            nodes: [
                Text {
                    end: 8,
                    start: 6,
                    value: Text {
                        text: "''",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<math>''alpha

Output {
    nodes: [
        Text {
            end: 6,
            start: 0,
            value: Text {
                text: "<math>",
            },
        },
        Italic {
            end: 8,
            start: 6,
        },
        Text {
            end: 13,
            start: 8,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 6,
            message: MissingEndTagRewinding,
            start: 0,
        },
    ],
}
<nOwIkI>''</NoWiKi>

Output {
    nodes: [
        Tag {
            end: 19,
            name: Text {
                text: "nowiki",
            },
            nodes: [
                Text {
                    end: 10,
                    start: 8,
                    value: Text {
                        text: "''",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<nowiki>
*alpha
</nowiki>

Output {
    nodes: [
        Tag {
            end: 25,
            name: Text {
                text: "nowiki",
            },
            nodes: [
                Text {
                    end: 16,
                    start: 8,
                    value: Text {
                        text: "\n*alpha\n",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<nowiki>
=alpha=
</nowiki>

Output {
    nodes: [
        Tag {
            end: 26,
            name: Text {
                text: "nowiki",
            },
            nodes: [
                Text {
                    end: 17,
                    start: 8,
                    value: Text {
                        text: "\n=alpha=\n",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<nowiki>''</nowiki>

Output {
    nodes: [
        Tag {
            end: 19,
            name: Text {
                text: "nowiki",
            },
            nodes: [
                Text {
                    end: 10,
                    start: 8,
                    value: Text {
                        text: "''",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<nowiki>''alpha

Output {
    nodes: [
        Text {
            end: 8,
            start: 0,
            value: Text {
                text: "<nowiki>",
            },
        },
        Italic {
            end: 10,
            start: 8,
        },
        Text {
            end: 15,
            start: 10,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 8,
            message: MissingEndTagRewinding,
            start: 0,
        },
    ],
}
<nowiki><!--·alpha·--></nowiki>

Output {
    nodes: [
        Tag {
            end: 31,
            name: Text {
                text: "nowiki",
            },
            nodes: [
                Text {
                    end: 22,
                    start: 8,
                    value: Text {
                        text: "<!-- alpha -->",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<nowiki>{{</nowiki>

Output {
    nodes: [
        Tag {
            end: 19,
            name: Text {
                text: "nowiki",
            },
            nodes: [
                Text {
                    end: 10,
                    start: 8,
                    value: Text {
                        text: "{{",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<nowiki>{{alpha}}</nowiki>

Output {
    nodes: [
        Tag {
            end: 26,
            name: Text {
                text: "nowiki",
            },
            nodes: [
                Text {
                    end: 17,
                    start: 8,
                    value: Text {
                        text: "{{alpha}}",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<nowiki>}}</nowiki>

Output {
    nodes: [
        Tag {
            end: 19,
            name: Text {
                text: "nowiki",
            },
            nodes: [
                Text {
                    end: 10,
                    start: 8,
                    value: Text {
                        text: "}}",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}

paragraph break

alpha⭾⏎

beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        ParagraphBreak {
            end: 8,
            start: 6,
        },
        Text {
            end: 12,
            start: 8,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
alpha
⭾⏎
beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        ParagraphBreak {
            end: 8,
            start: 5,
        },
        Text {
            end: 12,
            start: 8,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
alpha

⭾·beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        ParagraphBreak {
            end: 9,
            start: 5,
        },
        Text {
            end: 13,
            start: 9,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
alpha

beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        ParagraphBreak {
            end: 8,
            start: 5,
        },
        Text {
            end: 12,
            start: 8,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
alpha



beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        ParagraphBreak {
            end: 9,
            start: 5,
        },
        Text {
            end: 13,
            start: 9,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 8,
            message: RepeatedEmptyLine,
            start: 7,
        },
        Warning {
            end: 9,
            message: RepeatedEmptyLine,
            start: 8,
        },
    ],
}
alpha


beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        ParagraphBreak {
            end: 8,
            start: 5,
        },
        Text {
            end: 12,
            start: 8,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 8,
            message: RepeatedEmptyLine,
            start: 7,
        },
    ],
}
alpha

beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        ParagraphBreak {
            end: 7,
            start: 5,
        },
        Text {
            end: 11,
            start: 7,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
alpha
·⏎
beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        ParagraphBreak {
            end: 8,
            start: 5,
        },
        Text {
            end: 12,
            start: 8,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
alpha·⏎

beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        ParagraphBreak {
            end: 8,
            start: 6,
        },
        Text {
            end: 12,
            start: 8,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}

parameter

{{{

Output {
    nodes: [
        Text {
            end: 3,
            start: 0,
            value: Text {
                text: "{{{",
            },
        },
    ],
    warnings: [
        Warning {
            end: 4,
            message: MissingEndTagRewinding,
            start: 0,
        },
        Warning {
            end: 4,
            message: MissingEndTagRewinding,
            start: 1,
        },
    ],
}
{{{alpha}}}

Output {
    nodes: [
        Parameter {
            default: None,
            end: 9,
            name: [
                Text {
                    end: 9,
                    start: 4,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{
alpha}}}

Output {
    nodes: [
        Parameter {
            default: None,
            end: 9,
            name: [
                Text {
                    end: 9,
                    start: 4,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{''}}}

Output {
    nodes: [
        Parameter {
            default: None,
            end: 5,
            name: [
                Italic {
                    end: 5,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{alpha|beta}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 14,
                        start: 10,
                        value: Text {
                            text: "beta",
                        },
                    },
                ],
            ),
            end: 14,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{alpha}}}

Output {
    nodes: [
        Parameter {
            default: None,
            end: 9,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{alpha
|beta}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 14,
                        start: 10,
                        value: Text {
                            text: "beta",
                        },
                    },
                ],
            ),
            end: 14,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{alpha
}}}

Output {
    nodes: [
        Parameter {
            default: None,
            end: 9,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{alpha·|beta}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 14,
                        start: 10,
                        value: Text {
                            text: "beta",
                        },
                    },
                ],
            ),
            end: 14,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{alpha·}}}

Output {
    nodes: [
        Parameter {
            default: None,
            end: 9,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{alpha|

Output {
    nodes: [
        Text {
            end: 9,
            start: 0,
            value: Text {
                text: "{{{alpha|",
            },
        },
    ],
    warnings: [
        Warning {
            end: 10,
            message: MissingEndTagRewinding,
            start: 0,
        },
        Warning {
            end: 10,
            message: MissingEndTagRewinding,
            start: 1,
        },
    ],
}
{{{alpha|beta}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 14,
                        start: 9,
                        value: Text {
                            text: "\tbeta",
                        },
                    },
                ],
            ),
            end: 14,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{alpha||}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 10,
                        start: 9,
                        value: Text {
                            text: "\t",
                        },
                    },
                ],
            ),
            end: 11,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 11,
            message: UselessTextInParameter,
            start: 10,
        },
    ],
}
{{{alpha|}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 10,
                        start: 9,
                        value: Text {
                            text: "\t",
                        },
                    },
                ],
            ),
            end: 10,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{alpha|
beta}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 14,
                        start: 9,
                        value: Text {
                            text: "\nbeta",
                        },
                    },
                ],
            ),
            end: 14,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{alpha|
|}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 10,
                        start: 9,
                        value: Text {
                            text: "\n",
                        },
                    },
                ],
            ),
            end: 11,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 11,
            message: UselessTextInParameter,
            start: 10,
        },
    ],
}
{{{alpha|
}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 10,
                        start: 9,
                        value: Text {
                            text: "\n",
                        },
                    },
                ],
            ),
            end: 10,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{alpha|·beta|}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 14,
                        start: 9,
                        value: Text {
                            text: " beta",
                        },
                    },
                ],
            ),
            end: 15,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 15,
            message: UselessTextInParameter,
            start: 14,
        },
    ],
}
{{{alpha|·|}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 10,
                        start: 9,
                        value: Text {
                            text: " ",
                        },
                    },
                ],
            ),
            end: 11,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 11,
            message: UselessTextInParameter,
            start: 10,
        },
    ],
}
{{{alpha|·}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 10,
                        start: 9,
                        value: Text {
                            text: " ",
                        },
                    },
                ],
            ),
            end: 10,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{alpha|beta|}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 14,
                        start: 9,
                        value: Text {
                            text: "beta\t",
                        },
                    },
                ],
            ),
            end: 15,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 15,
            message: UselessTextInParameter,
            start: 14,
        },
    ],
}
{{{alpha|beta
|}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 14,
                        start: 9,
                        value: Text {
                            text: "beta\n",
                        },
                    },
                ],
            ),
            end: 15,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 15,
            message: UselessTextInParameter,
            start: 14,
        },
    ],
}
{{{alpha|beta·|}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 14,
                        start: 9,
                        value: Text {
                            text: "beta ",
                        },
                    },
                ],
            ),
            end: 15,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 15,
            message: UselessTextInParameter,
            start: 14,
        },
    ],
}
{{{alpha|beta|

Output {
    nodes: [
        Text {
            end: 14,
            start: 0,
            value: Text {
                text: "{{{alpha|beta|",
            },
        },
    ],
    warnings: [
        Warning {
            end: 14,
            message: UselessTextInParameter,
            start: 13,
        },
        Warning {
            end: 15,
            message: MissingEndTagRewinding,
            start: 0,
        },
        Warning {
            end: 15,
            message: MissingEndTagRewinding,
            start: 1,
        },
    ],
}
{{{alpha|beta|
}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 13,
                        start: 9,
                        value: Text {
                            text: "beta",
                        },
                    },
                ],
            ),
            end: 15,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 14,
            message: UselessTextInParameter,
            start: 13,
        },
    ],
}
{{{alpha|beta|gamma}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 13,
                        start: 9,
                        value: Text {
                            text: "beta",
                        },
                    },
                ],
            ),
            end: 19,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 14,
            message: UselessTextInParameter,
            start: 13,
        },
    ],
}
{{{alpha|beta|}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 13,
                        start: 9,
                        value: Text {
                            text: "beta",
                        },
                    },
                ],
            ),
            end: 14,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 14,
            message: UselessTextInParameter,
            start: 13,
        },
    ],
}
{{{alpha|beta}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Text {
                        end: 13,
                        start: 9,
                        value: Text {
                            text: "beta",
                        },
                    },
                ],
            ),
            end: 13,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{alpha|}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [],
            ),
            end: 9,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{alpha}}}

Output {
    nodes: [
        Parameter {
            default: None,
            end: 8,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{{|''}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [
                    Italic {
                        end: 6,
                        start: 4,
                    },
                ],
            ),
            end: 6,
            name: [],
            start: 0,
        },
    ],
    warnings: [],
}
{{{||}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [],
            ),
            end: 5,
            name: [],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 5,
            message: UselessTextInParameter,
            start: 4,
        },
    ],
}
{{{|}}}

Output {
    nodes: [
        Parameter {
            default: Some(
                [],
            ),
            end: 4,
            name: [],
            start: 0,
        },
    ],
    warnings: [],
}
{{{}}}

Output {
    nodes: [
        Parameter {
            default: None,
            end: 3,
            name: [],
            start: 0,
        },
    ],
    warnings: [],
}
}}}

Output {
    nodes: [
        Text {
            end: 3,
            start: 0,
            value: Text {
                text: "}}}",
            },
        },
    ],
    warnings: [
        Warning {
            end: 2,
            message: UnexpectedEndTag,
            start: 0,
        },
    ],
}

preformatted block

··alpha

Output {
    nodes: [
        Preformatted {
            end: 8,
            nodes: [
                Text {
                    end: 7,
                    start: 1,
                    value: Text {
                        text: " alpha",
                    },
                },
            ],
            start: 2,
        },
    ],
    warnings: [],
}
·alpha

Output {
    nodes: [
        Preformatted {
            end: 7,
            nodes: [
                Text {
                    end: 6,
                    start: 1,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 1,
        },
    ],
    warnings: [],
}
·alpha


beta

Output {
    nodes: [
        Preformatted {
            end: 7,
            nodes: [
                Text {
                    end: 6,
                    start: 1,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 1,
        },
        Text {
            end: 13,
            start: 9,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 9,
            message: RepeatedEmptyLine,
            start: 8,
        },
    ],
}
·alpha

beta

Output {
    nodes: [
        Preformatted {
            end: 7,
            nodes: [
                Text {
                    end: 6,
                    start: 1,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 1,
        },
        Text {
            end: 12,
            start: 8,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
·alpha
·beta

Output {
    nodes: [
        Preformatted {
            end: 13,
            nodes: [
                Text {
                    end: 7,
                    start: 1,
                    value: Text {
                        text: "alpha\n",
                    },
                },
                Text {
                    end: 12,
                    start: 8,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 1,
        },
    ],
    warnings: [],
}
·alpha
·beta
·gamma

Output {
    nodes: [
        Preformatted {
            end: 20,
            nodes: [
                Text {
                    end: 7,
                    start: 1,
                    value: Text {
                        text: "alpha\n",
                    },
                },
                Text {
                    end: 13,
                    start: 8,
                    value: Text {
                        text: "beta\n",
                    },
                },
                Text {
                    end: 19,
                    start: 14,
                    value: Text {
                        text: "gamma",
                    },
                },
            ],
            start: 1,
        },
    ],
    warnings: [],
}
·alpha
·beta
gamma

Output {
    nodes: [
        Preformatted {
            end: 13,
            nodes: [
                Text {
                    end: 7,
                    start: 1,
                    value: Text {
                        text: "alpha\n",
                    },
                },
                Text {
                    end: 12,
                    start: 8,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 1,
        },
        Text {
            end: 18,
            start: 13,
            value: Text {
                text: "gamma",
            },
        },
    ],
    warnings: [],
}
·alpha
beta

Output {
    nodes: [
        Preformatted {
            end: 7,
            nodes: [
                Text {
                    end: 6,
                    start: 1,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 1,
        },
        Text {
            end: 11,
            start: 7,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
·alpha
beta
·gamma

Output {
    nodes: [
        Preformatted {
            end: 7,
            nodes: [
                Text {
                    end: 6,
                    start: 1,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 1,
        },
        Text {
            end: 11,
            start: 7,
            value: Text {
                text: "beta",
            },
        },
        Preformatted {
            end: 19,
            nodes: [
                Text {
                    end: 18,
                    start: 13,
                    value: Text {
                        text: "gamma",
                    },
                },
            ],
            start: 13,
        },
    ],
    warnings: [],
}
alpha⭾⏎
·beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Preformatted {
            end: 13,
            nodes: [
                Text {
                    end: 12,
                    start: 8,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 8,
        },
    ],
    warnings: [],
}
alpha

·beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Preformatted {
            end: 13,
            nodes: [
                Text {
                    end: 12,
                    start: 8,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 8,
        },
    ],
    warnings: [],
}
alpha
·⏎
·beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Preformatted {
            end: 14,
            nodes: [
                Text {
                    end: 13,
                    start: 9,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 9,
        },
    ],
    warnings: [],
}
alpha
·=beta=
gamma

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Preformatted {
            end: 14,
            nodes: [
                Text {
                    end: 13,
                    start: 7,
                    value: Text {
                        text: "=beta=",
                    },
                },
            ],
            start: 7,
        },
        Text {
            end: 19,
            start: 14,
            value: Text {
                text: "gamma",
            },
        },
    ],
    warnings: [],
}
alpha
·beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Preformatted {
            end: 12,
            nodes: [
                Text {
                    end: 11,
                    start: 7,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 7,
        },
    ],
    warnings: [],
}
alpha
·beta
·gamma

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Preformatted {
            end: 19,
            nodes: [
                Text {
                    end: 12,
                    start: 7,
                    value: Text {
                        text: "beta\n",
                    },
                },
                Text {
                    end: 18,
                    start: 13,
                    value: Text {
                        text: "gamma",
                    },
                },
            ],
            start: 7,
        },
    ],
    warnings: [],
}
alpha
·beta
gamma

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Preformatted {
            end: 12,
            nodes: [
                Text {
                    end: 11,
                    start: 7,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 7,
        },
        Text {
            end: 17,
            start: 12,
            value: Text {
                text: "gamma",
            },
        },
    ],
    warnings: [],
}
alpha·⏎
·beta

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Preformatted {
            end: 13,
            nodes: [
                Text {
                    end: 12,
                    start: 8,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            start: 8,
        },
    ],
    warnings: [],
}

redirect

#REDIRECT[[alpha]]

Output {
    nodes: [
        Text {
            end: 10,
            start: 1,
            value: Text {
                text: "#REDIRECT",
            },
        },
        Link {
            end: 19,
            start: 10,
            target: Text {
                text: "alpha",
            },
            text: [
                Text {
                    end: 17,
                    start: 12,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
        },
    ],
    warnings: [],
}


#REDIRECT[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 20,
            target: Text {
                text: "alpha",
            },
            start: 2,
        },
    ],
    warnings: [
        Warning {
            end: 2,
            message: RepeatedEmptyLine,
            start: 1,
        },
    ],
}

·#REDIRECT[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 20,
            target: Text {
                text: "alpha",
            },
            start: 2,
        },
    ],
    warnings: [],
}

#REDIRECT··[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 21,
            target: Text {
                text: "alpha",
            },
            start: 1,
        },
    ],
    warnings: [],
}
·⏎
#REDIRECT[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 20,
            target: Text {
                text: "alpha",
            },
            start: 2,
        },
    ],
    warnings: [],
}
··#REDIRECT[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 20,
            target: Text {
                text: "alpha",
            },
            start: 2,
        },
    ],
    warnings: [],
}
·#REDIRECT[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 19,
            target: Text {
                text: "alpha",
            },
            start: 1,
        },
    ],
    warnings: [],
}
#REDIRECT:[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 20,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 19,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT

[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 20,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT
·[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 20,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT
:
[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 21,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT
:[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 20,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT
[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 19,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT·⏎
[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 20,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT··[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 20,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT·:·[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 21,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT·:[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 20,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT·[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 19,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT:[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 20,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT:
[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 20,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT:·[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 20,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT:[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 19,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 18,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#REDIRECT[[alpha]]

beta

Output {
    nodes: [
        Redirect {
            end: 18,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
        Text {
            end: 24,
            start: 20,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 24,
            message: TextAfterRedirect,
            start: 0,
        },
    ],
}
#REDIRECT[[alpha]]
·beta

Output {
    nodes: [
        Redirect {
            end: 18,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
        Text {
            end: 24,
            start: 20,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 24,
            message: TextAfterRedirect,
            start: 0,
        },
    ],
}
#REDIRECT[[alpha]]
beta

Output {
    nodes: [
        Redirect {
            end: 18,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
        Text {
            end: 23,
            start: 19,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 23,
            message: TextAfterRedirect,
            start: 0,
        },
    ],
}
#REDIRECT[[alpha]]·⏎
beta

Output {
    nodes: [
        Redirect {
            end: 18,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
        Text {
            end: 24,
            start: 20,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 24,
            message: TextAfterRedirect,
            start: 0,
        },
    ],
}
#REDIRECT[[alpha]]··beta

Output {
    nodes: [
        Redirect {
            end: 18,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
        Text {
            end: 24,
            start: 20,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 24,
            message: TextAfterRedirect,
            start: 0,
        },
    ],
}
#REDIRECT[[alpha]]·beta

Output {
    nodes: [
        Redirect {
            end: 18,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
        Text {
            end: 23,
            start: 19,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 23,
            message: TextAfterRedirect,
            start: 0,
        },
    ],
}
#REDIRECT[[alpha]]''beta

Output {
    nodes: [
        Redirect {
            end: 18,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
        Italic {
            end: 20,
            start: 18,
        },
        Text {
            end: 24,
            start: 20,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 24,
            message: TextAfterRedirect,
            start: 0,
        },
    ],
}
#REDIRECT[[alpha]]beta

Output {
    nodes: [
        Redirect {
            end: 18,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
        Text {
            end: 22,
            start: 18,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 22,
            message: TextAfterRedirect,
            start: 0,
        },
    ],
}
#REDIRECT[[alpha|]]

Output {
    nodes: [
        Redirect {
            end: 19,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 17,
            message: UselessTextInRedirect,
            start: 16,
        },
    ],
}
#REDIRECT[[alpha|]]beta

Output {
    nodes: [
        Redirect {
            end: 19,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
        Text {
            end: 23,
            start: 19,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 17,
            message: UselessTextInRedirect,
            start: 16,
        },
        Warning {
            end: 23,
            message: TextAfterRedirect,
            start: 0,
        },
    ],
}
#REDIRECT[[alpha|beta
gamma]]

Output {
    nodes: [
        OrderedList {
            end: 29,
            items: [
                ListItem {
                    end: 29,
                    nodes: [
                        Text {
                            end: 9,
                            start: 1,
                            value: Text {
                                text: "REDIRECT",
                            },
                        },
                        Link {
                            end: 29,
                            start: 9,
                            target: Text {
                                text: "alpha",
                            },
                            text: [
                                Text {
                                    end: 27,
                                    start: 17,
                                    value: Text {
                                        text: "beta\ngamma",
                                    },
                                },
                            ],
                        },
                    ],
                    start: 1,
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 17,
            message: UselessTextInRedirect,
            start: 16,
        },
    ],
}
#REDIRECT[[alpha|beta]]

Output {
    nodes: [
        Redirect {
            end: 23,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 17,
            message: UselessTextInRedirect,
            start: 16,
        },
    ],
}
#REDIRECT[[alpha|beta]]=gamma=

Output {
    nodes: [
        Redirect {
            end: 23,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
        Heading {
            end: 30,
            level: 1,
            nodes: [
                Text {
                    end: 29,
                    start: 24,
                    value: Text {
                        text: "gamma",
                    },
                },
            ],
            start: 23,
        },
    ],
    warnings: [
        Warning {
            end: 17,
            message: UselessTextInRedirect,
            start: 16,
        },
        Warning {
            end: 30,
            message: TextAfterRedirect,
            start: 0,
        },
    ],
}
#REDIRECT[[alpha|beta]]gamma

Output {
    nodes: [
        Redirect {
            end: 23,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
        Text {
            end: 28,
            start: 23,
            value: Text {
                text: "gamma",
            },
        },
    ],
    warnings: [
        Warning {
            end: 17,
            message: UselessTextInRedirect,
            start: 16,
        },
        Warning {
            end: 28,
            message: TextAfterRedirect,
            start: 0,
        },
    ],
}
#ReDiReCt[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 18,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#rEdIrEcT[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 18,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}
#redirect[[alpha]]

Output {
    nodes: [
        Redirect {
            end: 18,
            target: Text {
                text: "alpha",
            },
            start: 0,
        },
    ],
    warnings: [],
}

table

·{|
·|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 7,
            rows: [],
            start: 1,
        },
    ],
    warnings: [],
}
·{|
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 6,
            rows: [],
            start: 1,
        },
    ],
    warnings: [],
}
alpha
{|
beta
|}

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Text {
            end: 13,
            start: 9,
            value: Text {
                text: "beta",
            },
        },
        Table {
            attributes: [],
            captions: [],
            end: 16,
            rows: [],
            start: 6,
        },
    ],
    warnings: [
        Warning {
            end: 13,
            message: StrayTextInTable,
            start: 9,
        },
    ],
}
{|

Output {
    nodes: [
        Text {
            end: 2,
            start: 0,
            value: Text {
                text: "{|",
            },
        },
    ],
    warnings: [
        Warning {
            end: 3,
            message: MissingEndTagRewinding,
            start: 0,
        },
    ],
}
{|
·|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 6,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!
·alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 14,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                ParagraphBreak {
                                    end: 5,
                                    start: 4,
                                },
                                Preformatted {
                                    end: 12,
                                    nodes: [
                                        Text {
                                            end: 11,
                                            start: 6,
                                            value: Text {
                                                text: "alpha",
                                            },
                                        },
                                    ],
                                    start: 6,
                                },
                            ],
                            end: 11,
                            start: 5,
                            type_: Heading,
                        },
                    ],
                    end: 11,
                    start: 5,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!
!
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 9,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 4,
                            start: 3,
                            type_: Heading,
                        },
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 6,
                            start: 5,
                            type_: Heading,
                        },
                    ],
                    end: 6,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!
alpha

beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 19,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                ParagraphBreak {
                                    end: 5,
                                    start: 4,
                                },
                                Text {
                                    end: 10,
                                    start: 5,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                                ParagraphBreak {
                                    end: 12,
                                    start: 10,
                                },
                                Text {
                                    end: 16,
                                    start: 12,
                                    value: Text {
                                        text: "beta",
                                    },
                                },
                            ],
                            end: 16,
                            start: 5,
                            type_: Heading,
                        },
                    ],
                    end: 16,
                    start: 5,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!
alpha

|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 14,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                ParagraphBreak {
                                    end: 5,
                                    start: 4,
                                },
                                Text {
                                    end: 10,
                                    start: 5,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                            ],
                            end: 10,
                            start: 5,
                            type_: Heading,
                        },
                    ],
                    end: 10,
                    start: 5,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!
alpha
beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 18,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                ParagraphBreak {
                                    end: 5,
                                    start: 4,
                                },
                                Text {
                                    end: 15,
                                    start: 5,
                                    value: Text {
                                        text: "alpha\nbeta",
                                    },
                                },
                            ],
                            end: 15,
                            start: 5,
                            type_: Heading,
                        },
                    ],
                    end: 15,
                    start: 5,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!
alpha·⏎
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 14,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                ParagraphBreak {
                                    end: 5,
                                    start: 4,
                                },
                                Text {
                                    end: 10,
                                    start: 5,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                            ],
                            end: 11,
                            start: 5,
                            type_: Heading,
                        },
                    ],
                    end: 11,
                    start: 5,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!
|
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 9,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 4,
                            start: 3,
                            type_: Heading,
                        },
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 6,
                            start: 5,
                            type_: Ordinary,
                        },
                    ],
                    end: 6,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!
|-
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 10,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 4,
                            start: 3,
                            type_: Heading,
                        },
                    ],
                    end: 4,
                    start: 3,
                },
                TableRow {
                    attributes: [],
                    cells: [],
                    end: 7,
                    start: 5,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 7,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 4,
                            start: 3,
                            type_: Heading,
                        },
                    ],
                    end: 4,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!·alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 13,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 10,
                                    start: 5,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                            ],
                            end: 10,
                            start: 3,
                            type_: Heading,
                        },
                    ],
                    end: 10,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!!
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 8,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 5,
                                    start: 4,
                                    value: Text {
                                        text: "!",
                                    },
                                },
                            ],
                            end: 5,
                            start: 3,
                            type_: Heading,
                        },
                    ],
                    end: 5,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!!!
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 9,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 4,
                            start: 3,
                            type_: Heading,
                        },
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 6,
                            start: 4,
                            type_: Heading,
                        },
                    ],
                    end: 6,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!!!!
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 10,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 4,
                            start: 3,
                            type_: Heading,
                        },
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 7,
                                    start: 6,
                                    value: Text {
                                        text: "!",
                                    },
                                },
                            ],
                            end: 7,
                            start: 4,
                            type_: Heading,
                        },
                    ],
                    end: 7,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!!!|
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 10,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 4,
                            start: 3,
                            type_: Heading,
                        },
                        TableCell {
                            attributes: Some(
                                [],
                            ),
                            content: [],
                            end: 7,
                            start: 4,
                            type_: Heading,
                        },
                    ],
                    end: 7,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!alpha

beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 18,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 9,
                                    start: 4,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                                ParagraphBreak {
                                    end: 11,
                                    start: 9,
                                },
                                Text {
                                    end: 15,
                                    start: 11,
                                    value: Text {
                                        text: "beta",
                                    },
                                },
                            ],
                            end: 15,
                            start: 11,
                            type_: Heading,
                        },
                    ],
                    end: 15,
                    start: 11,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!alpha
beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 17,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 9,
                                    start: 4,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                                ParagraphBreak {
                                    end: 10,
                                    start: 9,
                                },
                                Text {
                                    end: 14,
                                    start: 10,
                                    value: Text {
                                        text: "beta",
                                    },
                                },
                            ],
                            end: 14,
                            start: 10,
                            type_: Heading,
                        },
                    ],
                    end: 14,
                    start: 10,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!alpha
beta|gamma
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 23,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 9,
                                    start: 4,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                                ParagraphBreak {
                                    end: 10,
                                    start: 9,
                                },
                                Text {
                                    end: 20,
                                    start: 10,
                                    value: Text {
                                        text: "beta|gamma",
                                    },
                                },
                            ],
                            end: 20,
                            start: 10,
                            type_: Heading,
                        },
                    ],
                    end: 20,
                    start: 10,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 12,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 9,
                                    start: 4,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                            ],
                            end: 9,
                            start: 3,
                            type_: Heading,
                        },
                    ],
                    end: 9,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!alpha!!beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 18,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 9,
                                    start: 4,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                            ],
                            end: 9,
                            start: 3,
                            type_: Heading,
                        },
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 15,
                                    start: 11,
                                    value: Text {
                                        text: "beta",
                                    },
                                },
                            ],
                            end: 15,
                            start: 9,
                            type_: Heading,
                        },
                    ],
                    end: 15,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!alpha!beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 17,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 14,
                                    start: 4,
                                    value: Text {
                                        text: "alpha!beta",
                                    },
                                },
                            ],
                            end: 14,
                            start: 3,
                            type_: Heading,
                        },
                    ],
                    end: 14,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!alpha|beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 17,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: Some(
                                [
                                    Text {
                                        end: 9,
                                        start: 4,
                                        value: Text {
                                            text: "alpha",
                                        },
                                    },
                                ],
                            ),
                            content: [
                                Text {
                                    end: 14,
                                    start: 10,
                                    value: Text {
                                        text: "beta",
                                    },
                                },
                            ],
                            end: 14,
                            start: 3,
                            type_: Heading,
                        },
                    ],
                    end: 14,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!alpha||beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 18,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 9,
                                    start: 4,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                            ],
                            end: 9,
                            start: 3,
                            type_: Heading,
                        },
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 15,
                                    start: 11,
                                    value: Text {
                                        text: "beta",
                                    },
                                },
                            ],
                            end: 15,
                            start: 9,
                            type_: Heading,
                        },
                    ],
                    end: 15,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!|
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 8,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: Some(
                                [],
                            ),
                            content: [],
                            end: 5,
                            start: 3,
                            type_: Heading,
                        },
                    ],
                    end: 5,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!|!!
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 10,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: Some(
                                [],
                            ),
                            content: [],
                            end: 5,
                            start: 3,
                            type_: Heading,
                        },
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 7,
                            start: 5,
                            type_: Heading,
                        },
                    ],
                    end: 7,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!|alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 13,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: Some(
                                [],
                            ),
                            content: [
                                Text {
                                    end: 10,
                                    start: 5,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                            ],
                            end: 10,
                            start: 3,
                            type_: Heading,
                        },
                    ],
                    end: 10,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!|alpha|beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 18,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: Some(
                                [],
                            ),
                            content: [
                                Text {
                                    end: 15,
                                    start: 5,
                                    value: Text {
                                        text: "alpha|beta",
                                    },
                                },
                            ],
                            end: 15,
                            start: 3,
                            type_: Heading,
                        },
                    ],
                    end: 15,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!||
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 9,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 4,
                            start: 3,
                            type_: Heading,
                        },
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 6,
                            start: 4,
                            type_: Heading,
                        },
                    ],
                    end: 6,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!||alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 14,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 4,
                            start: 3,
                            type_: Heading,
                        },
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 11,
                                    start: 6,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                            ],
                            end: 11,
                            start: 4,
                            type_: Heading,
                        },
                    ],
                    end: 11,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
!|||
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 10,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 4,
                            start: 3,
                            type_: Heading,
                        },
                        TableCell {
                            attributes: Some(
                                [],
                            ),
                            content: [],
                            end: 7,
                            start: 4,
                            type_: Heading,
                        },
                    ],
                    end: 7,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
*alpha
|}

Output {
    nodes: [
        UnorderedList {
            end: 9,
            items: [
                ListItem {
                    end: 9,
                    nodes: [
                        Text {
                            end: 9,
                            start: 4,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    start: 4,
                },
            ],
            start: 3,
        },
        Table {
            attributes: [],
            captions: [],
            end: 12,
            rows: [],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 9,
            message: StrayTextInTable,
            start: 3,
        },
    ],
}
{|
=alpha=
|}

Output {
    nodes: [
        Heading {
            end: 10,
            level: 1,
            nodes: [
                Text {
                    end: 9,
                    start: 4,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 3,
        },
        Table {
            attributes: [],
            captions: [],
            end: 13,
            rows: [],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 10,
            message: StrayTextInTable,
            start: 3,
        },
    ],
}
{|
alpha
|}

Output {
    nodes: [
        Text {
            end: 8,
            start: 3,
            value: Text {
                text: "alpha",
            },
        },
        Table {
            attributes: [],
            captions: [],
            end: 11,
            rows: [],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 8,
            message: StrayTextInTable,
            start: 3,
        },
    ],
}
{|
|

Output {
    nodes: [
        Text {
            end: 4,
            start: 0,
            value: Text {
                text: "{|\n|",
            },
        },
    ],
    warnings: [
        Warning {
            end: 5,
            message: MissingEndTagRewinding,
            start: 0,
        },
    ],
}
{|
|
·alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 14,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                ParagraphBreak {
                                    end: 5,
                                    start: 4,
                                },
                                Preformatted {
                                    end: 12,
                                    nodes: [
                                        Text {
                                            end: 11,
                                            start: 6,
                                            value: Text {
                                                text: "alpha",
                                            },
                                        },
                                    ],
                                    start: 6,
                                },
                            ],
                            end: 11,
                            start: 5,
                            type_: Ordinary,
                        },
                    ],
                    end: 11,
                    start: 5,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|
!
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 9,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 4,
                            start: 3,
                            type_: Ordinary,
                        },
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 6,
                            start: 5,
                            type_: Heading,
                        },
                    ],
                    end: 6,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|
*alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 14,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                ParagraphBreak {
                                    end: 5,
                                    start: 4,
                                },
                                UnorderedList {
                                    end: 11,
                                    items: [
                                        ListItem {
                                            end: 11,
                                            nodes: [
                                                Text {
                                                    end: 11,
                                                    start: 6,
                                                    value: Text {
                                                        text: "alpha",
                                                    },
                                                },
                                            ],
                                            start: 6,
                                        },
                                    ],
                                    start: 5,
                                },
                            ],
                            end: 11,
                            start: 5,
                            type_: Ordinary,
                        },
                    ],
                    end: 11,
                    start: 5,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|
=alpha=
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 15,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                ParagraphBreak {
                                    end: 5,
                                    start: 4,
                                },
                                Heading {
                                    end: 12,
                                    level: 1,
                                    nodes: [
                                        Text {
                                            end: 11,
                                            start: 6,
                                            value: Text {
                                                text: "alpha",
                                            },
                                        },
                                    ],
                                    start: 5,
                                },
                            ],
                            end: 12,
                            start: 5,
                            type_: Ordinary,
                        },
                    ],
                    end: 12,
                    start: 5,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|
alpha

beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 19,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                ParagraphBreak {
                                    end: 5,
                                    start: 4,
                                },
                                Text {
                                    end: 10,
                                    start: 5,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                                ParagraphBreak {
                                    end: 12,
                                    start: 10,
                                },
                                Text {
                                    end: 16,
                                    start: 12,
                                    value: Text {
                                        text: "beta",
                                    },
                                },
                            ],
                            end: 16,
                            start: 5,
                            type_: Ordinary,
                        },
                    ],
                    end: 16,
                    start: 5,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|
alpha

|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 14,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                ParagraphBreak {
                                    end: 5,
                                    start: 4,
                                },
                                Text {
                                    end: 10,
                                    start: 5,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                            ],
                            end: 10,
                            start: 5,
                            type_: Ordinary,
                        },
                    ],
                    end: 10,
                    start: 5,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|
alpha
beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 18,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                ParagraphBreak {
                                    end: 5,
                                    start: 4,
                                },
                                Text {
                                    end: 15,
                                    start: 5,
                                    value: Text {
                                        text: "alpha\nbeta",
                                    },
                                },
                            ],
                            end: 15,
                            start: 5,
                            type_: Ordinary,
                        },
                    ],
                    end: 15,
                    start: 5,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|
alpha·⏎
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 14,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                ParagraphBreak {
                                    end: 5,
                                    start: 4,
                                },
                                Text {
                                    end: 10,
                                    start: 5,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                            ],
                            end: 11,
                            start: 5,
                            type_: Ordinary,
                        },
                    ],
                    end: 11,
                    start: 5,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|
|
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 9,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 4,
                            start: 3,
                            type_: Ordinary,
                        },
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 6,
                            start: 5,
                            type_: Ordinary,
                        },
                    ],
                    end: 6,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|
|-
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 10,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 4,
                            start: 3,
                            type_: Ordinary,
                        },
                    ],
                    end: 4,
                    start: 3,
                },
                TableRow {
                    attributes: [],
                    cells: [],
                    end: 7,
                    start: 5,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 7,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 4,
                            start: 3,
                            type_: Ordinary,
                        },
                    ],
                    end: 4,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|·alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 13,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 10,
                                    start: 5,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                            ],
                            end: 10,
                            start: 3,
                            type_: Ordinary,
                        },
                    ],
                    end: 10,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+
·alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [
                        Text {
                            end: 12,
                            start: 7,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    end: 12,
                    start: 3,
                },
            ],
            end: 15,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+
*alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [
                        UnorderedList {
                            end: 12,
                            items: [
                                ListItem {
                                    end: 12,
                                    nodes: [
                                        Text {
                                            end: 12,
                                            start: 7,
                                            value: Text {
                                                text: "alpha",
                                            },
                                        },
                                    ],
                                    start: 7,
                                },
                            ],
                            start: 6,
                        },
                    ],
                    end: 12,
                    start: 3,
                },
            ],
            end: 15,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+
=alpha=
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [
                        Heading {
                            end: 13,
                            level: 1,
                            nodes: [
                                Text {
                                    end: 12,
                                    start: 7,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                            ],
                            start: 6,
                        },
                    ],
                    end: 13,
                    start: 3,
                },
            ],
            end: 16,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+
alpha

beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [
                        Text {
                            end: 17,
                            start: 6,
                            value: Text {
                                text: "alpha\n\nbeta",
                            },
                        },
                    ],
                    end: 17,
                    start: 3,
                },
            ],
            end: 20,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+
alpha
beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [
                        Text {
                            end: 16,
                            start: 6,
                            value: Text {
                                text: "alpha\nbeta",
                            },
                        },
                    ],
                    end: 16,
                    start: 3,
                },
            ],
            end: 19,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+
alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [
                        Text {
                            end: 11,
                            start: 6,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    end: 11,
                    start: 3,
                },
            ],
            end: 14,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+
|+
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [],
                    end: 5,
                    start: 3,
                },
                TableCaption {
                    attributes: None,
                    content: [],
                    end: 8,
                    start: 6,
                },
            ],
            end: 11,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [],
                    end: 5,
                    start: 3,
                },
            ],
            end: 8,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+·alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [
                        Text {
                            end: 11,
                            start: 6,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    end: 11,
                    start: 3,
                },
            ],
            end: 14,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+!!
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [
                        Text {
                            end: 7,
                            start: 5,
                            value: Text {
                                text: "!!",
                            },
                        },
                    ],
                    end: 7,
                    start: 3,
                },
            ],
            end: 10,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+alpha

beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [
                        Text {
                            end: 16,
                            start: 5,
                            value: Text {
                                text: "alpha\n\nbeta",
                            },
                        },
                    ],
                    end: 16,
                    start: 3,
                },
            ],
            end: 19,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+alpha
beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [
                        Text {
                            end: 15,
                            start: 5,
                            value: Text {
                                text: "alpha\nbeta",
                            },
                        },
                    ],
                    end: 15,
                    start: 3,
                },
            ],
            end: 18,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [
                        Text {
                            end: 10,
                            start: 5,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    end: 10,
                    start: 3,
                },
            ],
            end: 13,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+alpha·⏎
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [
                        Text {
                            end: 10,
                            start: 5,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    end: 11,
                    start: 3,
                },
            ],
            end: 14,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+|
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: Some(
                        [],
                    ),
                    content: [],
                    end: 6,
                    start: 3,
                },
            ],
            end: 9,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+|alpha|
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: Some(
                        [],
                    ),
                    content: [
                        Text {
                            end: 12,
                            start: 6,
                            value: Text {
                                text: "alpha|",
                            },
                        },
                    ],
                    end: 12,
                    start: 3,
                },
            ],
            end: 15,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+|alpha|beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: Some(
                        [],
                    ),
                    content: [
                        Text {
                            end: 16,
                            start: 6,
                            value: Text {
                                text: "alpha|beta",
                            },
                        },
                    ],
                    end: 16,
                    start: 3,
                },
            ],
            end: 19,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+||
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [],
                    end: 5,
                    start: 3,
                },
                TableCaption {
                    attributes: None,
                    content: [],
                    end: 7,
                    start: 5,
                },
            ],
            end: 10,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+||alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [],
                    end: 5,
                    start: 3,
                },
                TableCaption {
                    attributes: None,
                    content: [
                        Text {
                            end: 12,
                            start: 7,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    end: 12,
                    start: 5,
                },
            ],
            end: 15,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|+|||
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [
                TableCaption {
                    attributes: None,
                    content: [],
                    end: 5,
                    start: 3,
                },
                TableCaption {
                    attributes: Some(
                        [],
                    ),
                    content: [],
                    end: 8,
                    start: 5,
                },
            ],
            end: 11,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|-
·alpha
|}

Output {
    nodes: [
        Text {
            end: 12,
            start: 7,
            value: Text {
                text: "alpha",
            },
        },
        Table {
            attributes: [],
            captions: [],
            end: 15,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [],
                    end: 5,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 12,
            message: StrayTextInTable,
            start: 7,
        },
    ],
}
{|
|-
!
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 10,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 7,
                            start: 6,
                            type_: Heading,
                        },
                    ],
                    end: 7,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|-
*alpha
|}

Output {
    nodes: [
        UnorderedList {
            end: 12,
            items: [
                ListItem {
                    end: 12,
                    nodes: [
                        Text {
                            end: 12,
                            start: 7,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    start: 7,
                },
            ],
            start: 6,
        },
        Table {
            attributes: [],
            captions: [],
            end: 15,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [],
                    end: 5,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 12,
            message: StrayTextInTable,
            start: 6,
        },
    ],
}
{|
|-
=alpha=
|}

Output {
    nodes: [
        Heading {
            end: 13,
            level: 1,
            nodes: [
                Text {
                    end: 12,
                    start: 7,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 6,
        },
        Table {
            attributes: [],
            captions: [],
            end: 16,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [],
                    end: 5,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 13,
            message: StrayTextInTable,
            start: 6,
        },
    ],
}
{|
|-
alpha
|}

Output {
    nodes: [
        Text {
            end: 11,
            start: 6,
            value: Text {
                text: "alpha",
            },
        },
        Table {
            attributes: [],
            captions: [],
            end: 14,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [],
                    end: 5,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 11,
            message: StrayTextInTable,
            start: 6,
        },
    ],
}
{|
|-
|
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 10,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 7,
                            start: 6,
                            type_: Ordinary,
                        },
                    ],
                    end: 7,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|-
|-
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 11,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [],
                    end: 5,
                    start: 3,
                },
                TableRow {
                    attributes: [],
                    cells: [],
                    end: 8,
                    start: 6,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|-
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 8,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [],
                    end: 5,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|-·alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 14,
            rows: [
                TableRow {
                    attributes: [
                        Text {
                            end: 11,
                            start: 6,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    cells: [],
                    end: 11,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|-alpha

|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 14,
            rows: [
                TableRow {
                    attributes: [
                        Text {
                            end: 10,
                            start: 5,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    cells: [],
                    end: 10,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|-alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 13,
            rows: [
                TableRow {
                    attributes: [
                        Text {
                            end: 10,
                            start: 5,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    cells: [],
                    end: 10,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|-alpha·⏎
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 14,
            rows: [
                TableRow {
                    attributes: [
                        Text {
                            end: 10,
                            start: 5,
                            value: Text {
                                text: "alpha",
                            },
                        },
                    ],
                    cells: [],
                    end: 11,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|alpha

beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 18,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 9,
                                    start: 4,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                                ParagraphBreak {
                                    end: 11,
                                    start: 9,
                                },
                                Text {
                                    end: 15,
                                    start: 11,
                                    value: Text {
                                        text: "beta",
                                    },
                                },
                            ],
                            end: 15,
                            start: 11,
                            type_: Ordinary,
                        },
                    ],
                    end: 15,
                    start: 11,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|alpha
beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 17,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 9,
                                    start: 4,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                                ParagraphBreak {
                                    end: 10,
                                    start: 9,
                                },
                                Text {
                                    end: 14,
                                    start: 10,
                                    value: Text {
                                        text: "beta",
                                    },
                                },
                            ],
                            end: 14,
                            start: 10,
                            type_: Ordinary,
                        },
                    ],
                    end: 14,
                    start: 10,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|alpha
beta|gamma
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 23,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 9,
                                    start: 4,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                                ParagraphBreak {
                                    end: 10,
                                    start: 9,
                                },
                                Text {
                                    end: 20,
                                    start: 10,
                                    value: Text {
                                        text: "beta|gamma",
                                    },
                                },
                            ],
                            end: 20,
                            start: 10,
                            type_: Ordinary,
                        },
                    ],
                    end: 20,
                    start: 10,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 12,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 9,
                                    start: 4,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                            ],
                            end: 9,
                            start: 3,
                            type_: Ordinary,
                        },
                    ],
                    end: 9,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|alpha!!beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 18,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 15,
                                    start: 4,
                                    value: Text {
                                        text: "alpha!!beta",
                                    },
                                },
                            ],
                            end: 15,
                            start: 3,
                            type_: Ordinary,
                        },
                    ],
                    end: 15,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|alpha!beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 17,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 14,
                                    start: 4,
                                    value: Text {
                                        text: "alpha!beta",
                                    },
                                },
                            ],
                            end: 14,
                            start: 3,
                            type_: Ordinary,
                        },
                    ],
                    end: 14,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|alpha|
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 13,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: Some(
                                [
                                    Text {
                                        end: 9,
                                        start: 4,
                                        value: Text {
                                            text: "alpha",
                                        },
                                    },
                                ],
                            ),
                            content: [],
                            end: 10,
                            start: 3,
                            type_: Ordinary,
                        },
                    ],
                    end: 10,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|alpha|beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 17,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: Some(
                                [
                                    Text {
                                        end: 9,
                                        start: 4,
                                        value: Text {
                                            text: "alpha",
                                        },
                                    },
                                ],
                            ),
                            content: [
                                Text {
                                    end: 14,
                                    start: 10,
                                    value: Text {
                                        text: "beta",
                                    },
                                },
                            ],
                            end: 14,
                            start: 3,
                            type_: Ordinary,
                        },
                    ],
                    end: 14,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|alpha||beta
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 18,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 9,
                                    start: 4,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                            ],
                            end: 9,
                            start: 3,
                            type_: Ordinary,
                        },
                        TableCell {
                            attributes: None,
                            content: [
                                Text {
                                    end: 15,
                                    start: 11,
                                    value: Text {
                                        text: "beta",
                                    },
                                },
                            ],
                            end: 15,
                            start: 9,
                            type_: Ordinary,
                        },
                    ],
                    end: 15,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
||
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 8,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: Some(
                                [],
                            ),
                            content: [],
                            end: 5,
                            start: 3,
                            type_: Ordinary,
                        },
                    ],
                    end: 5,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
||alpha
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 13,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: Some(
                                [],
                            ),
                            content: [
                                Text {
                                    end: 10,
                                    start: 5,
                                    value: Text {
                                        text: "alpha",
                                    },
                                },
                            ],
                            end: 10,
                            start: 3,
                            type_: Ordinary,
                        },
                    ],
                    end: 10,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|||
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 9,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 4,
                            start: 3,
                            type_: Ordinary,
                        },
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 6,
                            start: 4,
                            type_: Ordinary,
                        },
                    ],
                    end: 6,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
||||
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 10,
            rows: [
                TableRow {
                    attributes: [],
                    cells: [
                        TableCell {
                            attributes: None,
                            content: [],
                            end: 4,
                            start: 3,
                            type_: Ordinary,
                        },
                        TableCell {
                            attributes: Some(
                                [],
                            ),
                            content: [],
                            end: 7,
                            start: 4,
                            type_: Ordinary,
                        },
                    ],
                    end: 7,
                    start: 3,
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|}

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 5,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}
{|
|}⭾⏎
alpha

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 5,
            rows: [],
            start: 0,
        },
        Text {
            end: 12,
            start: 7,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
{|
|}


alpha

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 5,
            rows: [],
            start: 0,
        },
        Text {
            end: 13,
            start: 8,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 8,
            message: RepeatedEmptyLine,
            start: 7,
        },
    ],
}
{|
|}

alpha

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 5,
            rows: [],
            start: 0,
        },
        Text {
            end: 12,
            start: 7,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
{|
|}
alpha

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 5,
            rows: [],
            start: 0,
        },
        Text {
            end: 11,
            start: 6,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
{|
|}·⏎
alpha

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 5,
            rows: [],
            start: 0,
        },
        Text {
            end: 12,
            start: 7,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
{|
|}alpha

Output {
    nodes: [
        Table {
            attributes: [],
            captions: [],
            end: 5,
            rows: [],
            start: 0,
        },
        Text {
            end: 10,
            start: 5,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
{|alpha
beta
|}

Output {
    nodes: [
        Text {
            end: 12,
            start: 8,
            value: Text {
                text: "beta",
            },
        },
        Table {
            attributes: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            captions: [],
            end: 15,
            rows: [],
            start: 0,
        },
    ],
    warnings: [
        Warning {
            end: 12,
            message: StrayTextInTable,
            start: 8,
        },
    ],
}
{|alpha
|}

Output {
    nodes: [
        Table {
            attributes: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            captions: [],
            end: 10,
            rows: [],
            start: 0,
        },
    ],
    warnings: [],
}

tag

</BR>

Output {
    nodes: [
        EndTag {
            end: 5,
            name: Text {
                text: "br",
            },
            start: 0,
        },
    ],
    warnings: [],
}
</Br>

Output {
    nodes: [
        EndTag {
            end: 5,
            name: Text {
                text: "br",
            },
            start: 0,
        },
    ],
    warnings: [],
}
</alpha

Output {
    nodes: [
        Text {
            end: 7,
            start: 0,
            value: Text {
                text: "</alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 7,
            message: UnrecognizedTagName,
            start: 2,
        },
    ],
}
</alpha>

Output {
    nodes: [
        Text {
            end: 8,
            start: 0,
            value: Text {
                text: "</alpha>",
            },
        },
    ],
    warnings: [
        Warning {
            end: 7,
            message: UnrecognizedTagName,
            start: 2,
        },
    ],
}
</b

Output {
    nodes: [
        Text {
            end: 3,
            start: 0,
            value: Text {
                text: "</b",
            },
        },
    ],
    warnings: [
        Warning {
            end: 3,
            message: InvalidTagSyntax,
            start: 2,
        },
    ],
}
</b·alpha>

Output {
    nodes: [
        EndTag {
            end: 10,
            name: Text {
                text: "b",
            },
            start: 0,
        },
    ],
    warnings: [],
}
</b·alpha>beta

Output {
    nodes: [
        EndTag {
            end: 10,
            name: Text {
                text: "b",
            },
            start: 0,
        },
        Text {
            end: 14,
            start: 10,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
</b</b>

Output {
    nodes: [
        Text {
            end: 3,
            start: 0,
            value: Text {
                text: "</b",
            },
        },
        EndTag {
            end: 7,
            name: Text {
                text: "b",
            },
            start: 3,
        },
    ],
    warnings: [],
}
</b<b>

Output {
    nodes: [
        Text {
            end: 3,
            start: 0,
            value: Text {
                text: "</b",
            },
        },
        StartTag {
            end: 6,
            name: Text {
                text: "b",
            },
            start: 3,
        },
    ],
    warnings: [],
}
</b>

Output {
    nodes: [
        EndTag {
            end: 4,
            name: Text {
                text: "b",
            },
            start: 0,
        },
    ],
    warnings: [],
}
</b>·alpha

Output {
    nodes: [
        EndTag {
            end: 4,
            name: Text {
                text: "b",
            },
            start: 0,
        },
        Text {
            end: 10,
            start: 4,
            value: Text {
                text: " alpha",
            },
        },
    ],
    warnings: [],
}
</b>alpha

Output {
    nodes: [
        EndTag {
            end: 4,
            name: Text {
                text: "b",
            },
            start: 0,
        },
        Text {
            end: 9,
            start: 4,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
</br>

Output {
    nodes: [
        EndTag {
            end: 6,
            name: Text {
                text: "br",
            },
            start: 0,
        },
    ],
    warnings: [],
}
</br
>

Output {
    nodes: [
        EndTag {
            end: 6,
            name: Text {
                text: "br",
            },
            start: 0,
        },
    ],
    warnings: [],
}
</br·>

Output {
    nodes: [
        EndTag {
            end: 6,
            name: Text {
                text: "br",
            },
            start: 0,
        },
    ],
    warnings: [],
}
</br>

Output {
    nodes: [
        EndTag {
            end: 5,
            name: Text {
                text: "br",
            },
            start: 0,
        },
    ],
    warnings: [],
}
</ref

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "</ref",
            },
        },
    ],
    warnings: [
        Warning {
            end: 5,
            message: InvalidTagSyntax,
            start: 0,
        },
    ],
}
<BR>

Output {
    nodes: [
        StartTag {
            end: 4,
            name: Text {
                text: "br",
            },
            start: 0,
        },
    ],
    warnings: [],
}
<Br>

Output {
    nodes: [
        StartTag {
            end: 4,
            name: Text {
                text: "br",
            },
            start: 0,
        },
    ],
    warnings: [],
}
<alpha

Output {
    nodes: [
        Text {
            end: 6,
            start: 0,
            value: Text {
                text: "<alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 6,
            message: UnrecognizedTagName,
            start: 1,
        },
    ],
}
<alpha>

Output {
    nodes: [
        Text {
            end: 7,
            start: 0,
            value: Text {
                text: "<alpha>",
            },
        },
    ],
    warnings: [
        Warning {
            end: 6,
            message: UnrecognizedTagName,
            start: 1,
        },
    ],
}
<b

Output {
    nodes: [
        Text {
            end: 2,
            start: 0,
            value: Text {
                text: "<b",
            },
        },
    ],
    warnings: [
        Warning {
            end: 2,
            message: InvalidTagSyntax,
            start: 1,
        },
    ],
}
<b·alpha>

Output {
    nodes: [
        StartTag {
            end: 9,
            name: Text {
                text: "b",
            },
            start: 0,
        },
    ],
    warnings: [],
}
<b·alpha>beta

Output {
    nodes: [
        StartTag {
            end: 9,
            name: Text {
                text: "b",
            },
            start: 0,
        },
        Text {
            end: 13,
            start: 9,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
<b</b>

Output {
    nodes: [
        Text {
            end: 2,
            start: 0,
            value: Text {
                text: "<b",
            },
        },
        EndTag {
            end: 6,
            name: Text {
                text: "b",
            },
            start: 2,
        },
    ],
    warnings: [
        Warning {
            end: 3,
            message: UnrecognizedTagName,
            start: 1,
        },
    ],
}
<b<b>

Output {
    nodes: [
        Text {
            end: 2,
            start: 0,
            value: Text {
                text: "<b",
            },
        },
        StartTag {
            end: 5,
            name: Text {
                text: "b",
            },
            start: 2,
        },
    ],
    warnings: [
        Warning {
            end: 4,
            message: UnrecognizedTagName,
            start: 1,
        },
    ],
}
<b>

Output {
    nodes: [
        StartTag {
            end: 3,
            name: Text {
                text: "b",
            },
            start: 0,
        },
    ],
    warnings: [],
}
<b>·alpha

Output {
    nodes: [
        StartTag {
            end: 3,
            name: Text {
                text: "b",
            },
            start: 0,
        },
        Text {
            end: 9,
            start: 3,
            value: Text {
                text: " alpha",
            },
        },
    ],
    warnings: [],
}
<b>alpha

Output {
    nodes: [
        StartTag {
            end: 3,
            name: Text {
                text: "b",
            },
            start: 0,
        },
        Text {
            end: 8,
            start: 3,
            value: Text {
                text: "alpha",
            },
        },
    ],
    warnings: [],
}
<br>

Output {
    nodes: [
        StartTag {
            end: 5,
            name: Text {
                text: "br",
            },
            start: 0,
        },
    ],
    warnings: [],
}
<br
>

Output {
    nodes: [
        StartTag {
            end: 5,
            name: Text {
                text: "br",
            },
            start: 0,
        },
    ],
    warnings: [],
}
<br·>

Output {
    nodes: [
        StartTag {
            end: 5,
            name: Text {
                text: "br",
            },
            start: 0,
        },
    ],
    warnings: [],
}
<br>

Output {
    nodes: [
        StartTag {
            end: 4,
            name: Text {
                text: "br",
            },
            start: 0,
        },
    ],
    warnings: [],
}
<r<ref>alpha</ref>beta

Output {
    nodes: [
        Text {
            end: 2,
            start: 0,
            value: Text {
                text: "<r",
            },
        },
        Tag {
            end: 18,
            name: Text {
                text: "ref",
            },
            nodes: [
                Text {
                    end: 12,
                    start: 7,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 2,
        },
        Text {
            end: 22,
            start: 18,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 6,
            message: UnrecognizedTagName,
            start: 1,
        },
    ],
}
<ref

Output {
    nodes: [
        Text {
            end: 4,
            start: 0,
            value: Text {
                text: "<ref",
            },
        },
    ],
    warnings: [
        Warning {
            end: 4,
            message: InvalidTagSyntax,
            start: 1,
        },
    ],
}
<ref·/>

Output {
    nodes: [
        Tag {
            end: 7,
            name: Text {
                text: "ref",
            },
            nodes: [],
            start: 0,
        },
    ],
    warnings: [],
}
<ref·>

Output {
    nodes: [
        Text {
            end: 6,
            start: 0,
            value: Text {
                text: "<ref >",
            },
        },
    ],
    warnings: [
        Warning {
            end: 7,
            message: MissingEndTagRewinding,
            start: 0,
        },
    ],
}
<ref/>

Output {
    nodes: [
        Tag {
            end: 6,
            name: Text {
                text: "ref",
            },
            nodes: [],
            start: 0,
        },
    ],
    warnings: [],
}
<ref>

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "<ref>",
            },
        },
    ],
    warnings: [
        Warning {
            end: 6,
            message: MissingEndTagRewinding,
            start: 0,
        },
    ],
}
<ref>alpha</ref>

Output {
    nodes: [
        Tag {
            end: 17,
            name: Text {
                text: "ref",
            },
            nodes: [
                Text {
                    end: 11,
                    start: 5,
                    value: Text {
                        text: "\talpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<ref>
alpha</ref>

Output {
    nodes: [
        Tag {
            end: 17,
            name: Text {
                text: "ref",
            },
            nodes: [
                Text {
                    end: 11,
                    start: 5,
                    value: Text {
                        text: "\nalpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<ref>·alpha</ref>

Output {
    nodes: [
        Tag {
            end: 17,
            name: Text {
                text: "ref",
            },
            nodes: [
                Text {
                    end: 11,
                    start: 5,
                    value: Text {
                        text: " alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<ref></ref>

Output {
    nodes: [
        Tag {
            end: 11,
            name: Text {
                text: "ref",
            },
            nodes: [],
            start: 0,
        },
    ],
    warnings: [],
}
<ref>alpha</ref>

Output {
    nodes: [
        Tag {
            end: 17,
            name: Text {
                text: "ref",
            },
            nodes: [
                Text {
                    end: 11,
                    start: 5,
                    value: Text {
                        text: "alpha\t",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<ref>alpha
</ref>

Output {
    nodes: [
        Tag {
            end: 17,
            name: Text {
                text: "ref",
            },
            nodes: [
                Text {
                    end: 11,
                    start: 5,
                    value: Text {
                        text: "alpha\n",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<ref>alpha·</ref>

Output {
    nodes: [
        Tag {
            end: 17,
            name: Text {
                text: "ref",
            },
            nodes: [
                Text {
                    end: 11,
                    start: 5,
                    value: Text {
                        text: "alpha ",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
<ref>alpha</ref>

Output {
    nodes: [
        Tag {
            end: 16,
            name: Text {
                text: "ref",
            },
            nodes: [
                Text {
                    end: 10,
                    start: 5,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
alpha<b>

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        StartTag {
            end: 8,
            name: Text {
                text: "b",
            },
            start: 5,
        },
    ],
    warnings: [],
}

template

alpha·{{beta}}

Output {
    nodes: [
        Text {
            end: 6,
            start: 0,
            value: Text {
                text: "alpha ",
            },
        },
        Template {
            end: 14,
            name: [
                Text {
                    end: 12,
                    start: 8,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            parameters: [],
            start: 6,
        },
    ],
    warnings: [],
}
alpha·{{beta}}·gamma

Output {
    nodes: [
        Text {
            end: 6,
            start: 0,
            value: Text {
                text: "alpha ",
            },
        },
        Template {
            end: 14,
            name: [
                Text {
                    end: 12,
                    start: 8,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            parameters: [],
            start: 6,
        },
        Text {
            end: 20,
            start: 14,
            value: Text {
                text: " gamma",
            },
        },
    ],
    warnings: [],
}
alpha{{beta}}

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Template {
            end: 13,
            name: [
                Text {
                    end: 11,
                    start: 7,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            parameters: [],
            start: 5,
        },
    ],
    warnings: [],
}
alpha{{beta}}gamma

Output {
    nodes: [
        Text {
            end: 5,
            start: 0,
            value: Text {
                text: "alpha",
            },
        },
        Template {
            end: 13,
            name: [
                Text {
                    end: 11,
                    start: 7,
                    value: Text {
                        text: "beta",
                    },
                },
            ],
            parameters: [],
            start: 5,
        },
        Text {
            end: 18,
            start: 13,
            value: Text {
                text: "gamma",
            },
        },
    ],
    warnings: [],
}
{{
alpha}}

Output {
    nodes: [
        Template {
            end: 10,
            name: [
                Text {
                    end: 8,
                    start: 3,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [],
            start: 0,
        },
    ],
    warnings: [],
}
{{''}}

Output {
    nodes: [
        Template {
            end: 6,
            name: [
                Italic {
                    end: 4,
                    start: 2,
                },
            ],
            parameters: [],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha

Output {
    nodes: [
        Text {
            end: 7,
            start: 0,
            value: Text {
                text: "{{alpha",
            },
        },
    ],
    warnings: [
        Warning {
            end: 8,
            message: MissingEndTagRewinding,
            start: 0,
        },
    ],
}
{{alpha
|beta}}

Output {
    nodes: [
        Template {
            end: 15,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 13,
                    name: None,
                    start: 9,
                    value: [
                        Text {
                            end: 13,
                            start: 9,
                            value: Text {
                                text: "beta",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha
|}}

Output {
    nodes: [
        Template {
            end: 11,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 9,
                    name: None,
                    start: 9,
                    value: [],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha
}}

Output {
    nodes: [
        Template {
            end: 10,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|

Output {
    nodes: [
        Text {
            end: 8,
            start: 0,
            value: Text {
                text: "{{alpha|",
            },
        },
    ],
    warnings: [
        Warning {
            end: 9,
            message: MissingEndTagRewinding,
            start: 0,
        },
    ],
}
{{alpha|
beta}}

Output {
    nodes: [
        Template {
            end: 15,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 13,
                    name: None,
                    start: 9,
                    value: [
                        Text {
                            end: 13,
                            start: 9,
                            value: Text {
                                text: "beta",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|
}}

Output {
    nodes: [
        Template {
            end: 11,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 8,
                    name: None,
                    start: 9,
                    value: [],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|·beta}}

Output {
    nodes: [
        Template {
            end: 15,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 13,
                    name: None,
                    start: 9,
                    value: [
                        Text {
                            end: 13,
                            start: 9,
                            value: Text {
                                text: "beta",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|''}}

Output {
    nodes: [
        Template {
            end: 12,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 10,
                    name: None,
                    start: 8,
                    value: [
                        Italic {
                            end: 10,
                            start: 8,
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta

Output {
    nodes: [
        Text {
            end: 12,
            start: 0,
            value: Text {
                text: "{{alpha|beta",
            },
        },
    ],
    warnings: [
        Warning {
            end: 13,
            message: MissingEndTagRewinding,
            start: 0,
        },
    ],
}
{{alpha|beta
=gamma}}

Output {
    nodes: [
        Template {
            end: 21,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 19,
                    name: Some(
                        [
                            Text {
                                end: 12,
                                start: 8,
                                value: Text {
                                    text: "beta",
                                },
                            },
                        ],
                    ),
                    start: 8,
                    value: [
                        Text {
                            end: 19,
                            start: 14,
                            value: Text {
                                text: "gamma",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta
}}

Output {
    nodes: [
        Template {
            end: 15,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 12,
                    name: None,
                    start: 8,
                    value: [
                        Text {
                            end: 12,
                            start: 8,
                            value: Text {
                                text: "beta",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta·=gamma}}

Output {
    nodes: [
        Template {
            end: 21,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 19,
                    name: Some(
                        [
                            Text {
                                end: 12,
                                start: 8,
                                value: Text {
                                    text: "beta",
                                },
                            },
                        ],
                    ),
                    start: 8,
                    value: [
                        Text {
                            end: 19,
                            start: 14,
                            value: Text {
                                text: "gamma",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta·}}

Output {
    nodes: [
        Template {
            end: 15,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 12,
                    name: None,
                    start: 8,
                    value: [
                        Text {
                            end: 12,
                            start: 8,
                            value: Text {
                                text: "beta",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta=
gamma}}

Output {
    nodes: [
        Template {
            end: 21,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 19,
                    name: Some(
                        [
                            Text {
                                end: 12,
                                start: 8,
                                value: Text {
                                    text: "beta",
                                },
                            },
                        ],
                    ),
                    start: 8,
                    value: [
                        Text {
                            end: 19,
                            start: 14,
                            value: Text {
                                text: "gamma",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta=·gamma}}

Output {
    nodes: [
        Template {
            end: 21,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 19,
                    name: Some(
                        [
                            Text {
                                end: 12,
                                start: 8,
                                value: Text {
                                    text: "beta",
                                },
                            },
                        ],
                    ),
                    start: 8,
                    value: [
                        Text {
                            end: 19,
                            start: 14,
                            value: Text {
                                text: "gamma",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta=gamma
}}

Output {
    nodes: [
        Template {
            end: 21,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 18,
                    name: Some(
                        [
                            Text {
                                end: 12,
                                start: 8,
                                value: Text {
                                    text: "beta",
                                },
                            },
                        ],
                    ),
                    start: 8,
                    value: [
                        Text {
                            end: 18,
                            start: 13,
                            value: Text {
                                text: "gamma",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta=gamma·}}

Output {
    nodes: [
        Template {
            end: 21,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 18,
                    name: Some(
                        [
                            Text {
                                end: 12,
                                start: 8,
                                value: Text {
                                    text: "beta",
                                },
                            },
                        ],
                    ),
                    start: 8,
                    value: [
                        Text {
                            end: 18,
                            start: 13,
                            value: Text {
                                text: "gamma",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta=gamma=delta}}

Output {
    nodes: [
        Template {
            end: 26,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 24,
                    name: Some(
                        [
                            Text {
                                end: 12,
                                start: 8,
                                value: Text {
                                    text: "beta",
                                },
                            },
                        ],
                    ),
                    start: 8,
                    value: [
                        Text {
                            end: 24,
                            start: 13,
                            value: Text {
                                text: "gamma=delta",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta=gamma|delta=epsilon}}

Output {
    nodes: [
        Template {
            end: 34,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 18,
                    name: Some(
                        [
                            Text {
                                end: 12,
                                start: 8,
                                value: Text {
                                    text: "beta",
                                },
                            },
                        ],
                    ),
                    start: 8,
                    value: [
                        Text {
                            end: 18,
                            start: 13,
                            value: Text {
                                text: "gamma",
                            },
                        },
                    ],
                },
                Parameter {
                    end: 32,
                    name: Some(
                        [
                            Text {
                                end: 24,
                                start: 19,
                                value: Text {
                                    text: "delta",
                                },
                            },
                        ],
                    ),
                    start: 19,
                    value: [
                        Text {
                            end: 32,
                            start: 25,
                            value: Text {
                                text: "epsilon",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta=gamma|delta}}

Output {
    nodes: [
        Template {
            end: 26,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 18,
                    name: Some(
                        [
                            Text {
                                end: 12,
                                start: 8,
                                value: Text {
                                    text: "beta",
                                },
                            },
                        ],
                    ),
                    start: 8,
                    value: [
                        Text {
                            end: 18,
                            start: 13,
                            value: Text {
                                text: "gamma",
                            },
                        },
                    ],
                },
                Parameter {
                    end: 24,
                    name: None,
                    start: 19,
                    value: [
                        Text {
                            end: 24,
                            start: 19,
                            value: Text {
                                text: "delta",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta=gamma}}

Output {
    nodes: [
        Template {
            end: 20,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 18,
                    name: Some(
                        [
                            Text {
                                end: 12,
                                start: 8,
                                value: Text {
                                    text: "beta",
                                },
                            },
                        ],
                    ),
                    start: 8,
                    value: [
                        Text {
                            end: 18,
                            start: 13,
                            value: Text {
                                text: "gamma",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta=}}

Output {
    nodes: [
        Template {
            end: 15,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 13,
                    name: Some(
                        [
                            Text {
                                end: 12,
                                start: 8,
                                value: Text {
                                    text: "beta",
                                },
                            },
                        ],
                    ),
                    start: 8,
                    value: [],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta|gamma=delta}}

Output {
    nodes: [
        Template {
            end: 26,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 12,
                    name: None,
                    start: 8,
                    value: [
                        Text {
                            end: 12,
                            start: 8,
                            value: Text {
                                text: "beta",
                            },
                        },
                    ],
                },
                Parameter {
                    end: 24,
                    name: Some(
                        [
                            Text {
                                end: 18,
                                start: 13,
                                value: Text {
                                    text: "gamma",
                                },
                            },
                        ],
                    ),
                    start: 13,
                    value: [
                        Text {
                            end: 24,
                            start: 19,
                            value: Text {
                                text: "delta",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta|gamma}}

Output {
    nodes: [
        Template {
            end: 20,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 12,
                    name: None,
                    start: 8,
                    value: [
                        Text {
                            end: 12,
                            start: 8,
                            value: Text {
                                text: "beta",
                            },
                        },
                    ],
                },
                Parameter {
                    end: 18,
                    name: None,
                    start: 13,
                    value: [
                        Text {
                            end: 18,
                            start: 13,
                            value: Text {
                                text: "gamma",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta}

Output {
    nodes: [
        Text {
            end: 13,
            start: 0,
            value: Text {
                text: "{{alpha|beta}",
            },
        },
    ],
    warnings: [
        Warning {
            end: 14,
            message: MissingEndTagRewinding,
            start: 0,
        },
    ],
}
{{alpha|beta}}

Output {
    nodes: [
        Template {
            end: 14,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 12,
                    name: None,
                    start: 8,
                    value: [
                        Text {
                            end: 12,
                            start: 8,
                            value: Text {
                                text: "beta",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha|beta}}·gamma

Output {
    nodes: [
        Template {
            end: 14,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 12,
                    name: None,
                    start: 8,
                    value: [
                        Text {
                            end: 12,
                            start: 8,
                            value: Text {
                                text: "beta",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
        Text {
            end: 20,
            start: 14,
            value: Text {
                text: " gamma",
            },
        },
    ],
    warnings: [],
}
{{alpha|beta}}gamma

Output {
    nodes: [
        Template {
            end: 14,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 12,
                    name: None,
                    start: 8,
                    value: [
                        Text {
                            end: 12,
                            start: 8,
                            value: Text {
                                text: "beta",
                            },
                        },
                    ],
                },
            ],
            start: 0,
        },
        Text {
            end: 19,
            start: 14,
            value: Text {
                text: "gamma",
            },
        },
    ],
    warnings: [],
}
{{alpha|}

Output {
    nodes: [
        Text {
            end: 9,
            start: 0,
            value: Text {
                text: "{{alpha|}",
            },
        },
    ],
    warnings: [
        Warning {
            end: 10,
            message: MissingEndTagRewinding,
            start: 0,
        },
    ],
}
{{alpha|}}

Output {
    nodes: [
        Template {
            end: 10,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [
                Parameter {
                    end: 8,
                    name: None,
                    start: 8,
                    value: [],
                },
            ],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha}

Output {
    nodes: [
        Text {
            end: 8,
            start: 0,
            value: Text {
                text: "{{alpha}",
            },
        },
    ],
    warnings: [
        Warning {
            end: 9,
            message: MissingEndTagRewinding,
            start: 0,
        },
    ],
}
{{alpha}}

Output {
    nodes: [
        Template {
            end: 9,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [],
            start: 0,
        },
    ],
    warnings: [],
}
{{alpha}}·beta

Output {
    nodes: [
        Template {
            end: 9,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [],
            start: 0,
        },
        Text {
            end: 14,
            start: 9,
            value: Text {
                text: " beta",
            },
        },
    ],
    warnings: [],
}
{{alpha}}beta

Output {
    nodes: [
        Template {
            end: 9,
            name: [
                Text {
                    end: 7,
                    start: 2,
                    value: Text {
                        text: "alpha",
                    },
                },
            ],
            parameters: [],
            start: 0,
        },
        Text {
            end: 13,
            start: 9,
            value: Text {
                text: "beta",
            },
        },
    ],
    warnings: [],
}
}}

Output {
    nodes: [
        Text {
            end: 2,
            start: 0,
            value: Text {
                text: "}}",
            },
        },
    ],
    warnings: [
        Warning {
            end: 2,
            message: UnexpectedEndTag,
            start: 0,
        },
    ],
}