--- parse tree ---
[ Comment
, SoftBreak
, Equation
    False
    [ Text "A"
    , Text ","
    , Code
        "typ/math/style-01.typ"
        ( line 2 , column 5 )
        (FuncCall (Ident (Identifier "italic")) [ BlockArg [ Text "A" ] ])
    , Text ","
    , Code
        "typ/math/style-01.typ"
        ( line 2 , column 16 )
        (FuncCall (Ident (Identifier "upright")) [ BlockArg [ Text "A" ] ])
    , Text ","
    , Code
        "typ/math/style-01.typ"
        ( line 2 , column 28 )
        (FuncCall (Ident (Identifier "bold")) [ BlockArg [ Text "A" ] ])
    , Text ","
    , Code
        "typ/math/style-01.typ"
        ( line 2 , column 37 )
        (FuncCall
           (Ident (Identifier "bold"))
           [ BlockArg
               [ Code
                   "typ/math/style-01.typ"
                   ( line 2 , column 42 )
                   (FuncCall (Ident (Identifier "upright")) [ BlockArg [ Text "A" ] ])
               ]
           ])
    , Text ","
    , HardBreak
    , Code
        "typ/math/style-01.typ"
        ( line 3 , column 2 )
        (FuncCall (Ident (Identifier "serif")) [ BlockArg [ Text "A" ] ])
    , Text ","
    , Code
        "typ/math/style-01.typ"
        ( line 3 , column 12 )
        (FuncCall (Ident (Identifier "sans")) [ BlockArg [ Text "A" ] ])
    , Text ","
    , Code
        "typ/math/style-01.typ"
        ( line 3 , column 21 )
        (FuncCall (Ident (Identifier "cal")) [ BlockArg [ Text "A" ] ])
    , Text ","
    , Code
        "typ/math/style-01.typ"
        ( line 3 , column 29 )
        (FuncCall (Ident (Identifier "frak")) [ BlockArg [ Text "A" ] ])
    , Text ","
    , Code
        "typ/math/style-01.typ"
        ( line 3 , column 38 )
        (FuncCall (Ident (Identifier "mono")) [ BlockArg [ Text "A" ] ])
    , Text ","
    , Code
        "typ/math/style-01.typ"
        ( line 3 , column 47 )
        (FuncCall (Ident (Identifier "bb")) [ BlockArg [ Text "A" ] ])
    , Text ","
    , HardBreak
    , Code
        "typ/math/style-01.typ"
        ( line 4 , column 2 )
        (FuncCall
           (Ident (Identifier "italic"))
           [ BlockArg
               [ Code
                   "typ/math/style-01.typ"
                   ( line 4 , column 9 )
                   (Ident (Identifier "diff"))
               ]
           ])
    , Text ","
    , Code
        "typ/math/style-01.typ"
        ( line 4 , column 16 )
        (FuncCall
           (Ident (Identifier "upright"))
           [ BlockArg
               [ Code
                   "typ/math/style-01.typ"
                   ( line 4 , column 24 )
                   (Ident (Identifier "diff"))
               ]
           ])
    , Text ","
    , HardBreak
    , Code
        "typ/math/style-01.typ"
        ( line 5 , column 2 )
        (FuncCall (Ident (Identifier "bb")) [ BlockArg [ Text "hello" ] ])
    , Text "+"
    , Code
        "typ/math/style-01.typ"
        ( line 5 , column 16 )
        (FuncCall
           (Ident (Identifier "bold"))
           [ BlockArg
               [ Code
                   "typ/math/style-01.typ"
                   ( line 5 , column 21 )
                   (FuncCall (Ident (Identifier "cal")) [ BlockArg [ Text "world" ] ])
               ]
           ])
    , Text ","
    , HardBreak
    , Code
        "typ/math/style-01.typ"
        ( line 6 , column 2 )
        (FuncCall
           (FuncCall (Ident (Identifier "mono")) [ BlockArg [ Text "SQRT" ] ])
           [ BlockArg [ Text "x" ] ])
    , Code
        "typ/math/style-01.typ"
        ( line 6 , column 18 )
        (Ident (Identifier "wreath"))
    , Code
        "typ/math/style-01.typ"
        ( line 6 , column 25 )
        (FuncCall
           (Ident (Identifier "mono"))
           [ BlockArg [ Text "123" , Text "+" , Text "456" ] ])
    ]
, ParBreak
]
--- evaluated ---
document(body: { text(body: [
]), 
                 math.equation(block: false, 
                               body: { text(body: [A]), 
                                       text(body: [,]), 
                                       math.italic(body: text(body: [A])), 
                                       text(body: [,]), 
                                       math.upright(body: text(body: [A])), 
                                       text(body: [,]), 
                                       math.bold(body: text(body: [A])), 
                                       text(body: [,]), 
                                       math.bold(body: math.upright(body: text(body: [A]))), 
                                       text(body: [,]), 
                                       linebreak(), 
                                       math.serif(body: text(body: [A])), 
                                       text(body: [,]), 
                                       math.sans(body: text(body: [A])), 
                                       text(body: [,]), 
                                       math.cal(body: text(body: [A])), 
                                       text(body: [,]), 
                                       math.frak(body: text(body: [A])), 
                                       text(body: [,]), 
                                       math.mono(body: text(body: [A])), 
                                       text(body: [,]), 
                                       math.bb(body: text(body: [A])), 
                                       text(body: [,]), 
                                       linebreak(), 
                                       math.italic(body: text(body: [∂])), 
                                       text(body: [,]), 
                                       math.upright(body: text(body: [∂])), 
                                       text(body: [,]), 
                                       linebreak(), 
                                       math.bb(body: text(body: [hello])), 
                                       text(body: [+]), 
                                       math.bold(body: math.cal(body: text(body: [world]))), 
                                       text(body: [,]), 
                                       linebreak(), 
                                       math.mono(body: text(body: [SQRT])), 
                                       text(body: [(]), 
                                       text(body: [x]), 
                                       text(body: [)]), 
                                       text(body: [≀]), 
                                       math.mono(body: { text(body: [123]), 
                                                         text(body: [+]), 
                                                         text(body: [456]) }) }, 
                               numbering: none), 
                 parbreak() })
