--- parse tree --- [ Code "test/typ/visualize/line-01.typ" ( line 1 , column 2 ) (Let (BasicBind (Just (Identifier "test"))) (FuncExpr [ NormalParam (Identifier "x") , NormalParam (Identifier "y") ] (Block (CodeBlock [ If [ ( Equals (Ident (Identifier "x")) (Ident (Identifier "y")) , Block (Content [ Text "\9989" ]) ) , ( Literal (Boolean True) , Block (Content [ Text "\10060" , Text "(" , Code "test/typ/visualize/line-01.typ" ( line 1 , column 47 ) (FuncCall (Ident (Identifier "repr")) [ NormalArg (Ident (Identifier "x")) ]) , Space , Text "/" , Text "=" , Space , Code "test/typ/visualize/line-01.typ" ( line 1 , column 59 ) (FuncCall (Ident (Identifier "repr")) [ NormalArg (Ident (Identifier "y")) ]) , Text ")" ]) ) ] ])))) , SoftBreak , Comment , SoftBreak , Code "test/typ/visualize/line-01.typ" ( line 4 , column 2 ) (Set (Ident (Identifier "page")) [ KeyValArg (Identifier "fill") (FuncCall (Ident (Identifier "rgb")) [ NormalArg (Literal (String "0B1026")) ]) ]) , SoftBreak , Code "test/typ/visualize/line-01.typ" ( line 5 , column 2 ) (Set (Ident (Identifier "line")) [ KeyValArg (Identifier "stroke") (Ident (Identifier "white")) ]) , ParBreak , Code "test/typ/visualize/line-01.typ" ( line 7 , column 2 ) (LetFunc (Identifier "star") [ NormalParam (Identifier "size") , SinkParam (Just (Identifier "args")) ] (FuncCall (Ident (Identifier "box")) [ KeyValArg (Identifier "width") (Ident (Identifier "size")) , KeyValArg (Identifier "height") (Ident (Identifier "size")) , BlockArg [ SoftBreak , Code "test/typ/visualize/line-01.typ" ( line 8 , column 4 ) (Set (Ident (Identifier "text")) [ KeyValArg (Identifier "spacing") (Literal (Numeric 0.0 Percent)) ]) , SoftBreak , Code "test/typ/visualize/line-01.typ" ( line 9 , column 4 ) (Set (Ident (Identifier "line")) [ SpreadArg (Ident (Identifier "args")) ]) , SoftBreak , Code "test/typ/visualize/line-01.typ" ( line 10 , column 4 ) (Set (Ident (Identifier "align")) [ NormalArg (Ident (Identifier "left")) ]) , SoftBreak , Code "test/typ/visualize/line-01.typ" ( line 11 , column 4 ) (FuncCall (Ident (Identifier "v")) [ NormalArg (Literal (Numeric 30.0 Percent)) ]) , SoftBreak , Code "test/typ/visualize/line-01.typ" ( line 12 , column 4 ) (FuncCall (Ident (Identifier "place")) [ NormalArg (FuncCall (Ident (Identifier "line")) [ KeyValArg (Identifier "length") (Literal (Numeric 30.0 Percent)) , KeyValArg (Identifier "start") (Array [ Reg (Literal (Numeric 9.0 Percent)) , Reg (Literal (Numeric 2.0 Percent)) ]) ]) ]) , SoftBreak , Code "test/typ/visualize/line-01.typ" ( line 13 , column 4 ) (FuncCall (Ident (Identifier "place")) [ NormalArg (FuncCall (Ident (Identifier "line")) [ KeyValArg (Identifier "length") (Literal (Numeric 30.0 Percent)) , KeyValArg (Identifier "start") (Array [ Reg (Literal (Numeric 38.7 Percent)) , Reg (Literal (Numeric 2.0 Percent)) ]) , KeyValArg (Identifier "angle") (Negated (Literal (Numeric 72.0 Deg))) ]) ]) , SoftBreak , Code "test/typ/visualize/line-01.typ" ( line 14 , column 4 ) (FuncCall (Ident (Identifier "place")) [ NormalArg (FuncCall (Ident (Identifier "line")) [ KeyValArg (Identifier "length") (Literal (Numeric 30.0 Percent)) , KeyValArg (Identifier "start") (Array [ Reg (Literal (Numeric 57.5 Percent)) , Reg (Literal (Numeric 2.0 Percent)) ]) , KeyValArg (Identifier "angle") (Literal (Numeric 252.0 Deg)) ]) ]) , SoftBreak , Code "test/typ/visualize/line-01.typ" ( line 15 , column 4 ) (FuncCall (Ident (Identifier "place")) [ NormalArg (FuncCall (Ident (Identifier "line")) [ KeyValArg (Identifier "length") (Literal (Numeric 30.0 Percent)) , KeyValArg (Identifier "start") (Array [ Reg (Literal (Numeric 57.3 Percent)) , Reg (Literal (Numeric 2.0 Percent)) ]) ]) ]) , SoftBreak , Code "test/typ/visualize/line-01.typ" ( line 16 , column 4 ) (FuncCall (Ident (Identifier "place")) [ NormalArg (FuncCall (Ident (Identifier "line")) [ KeyValArg (Identifier "length") (Negated (Literal (Numeric 30.0 Percent))) , KeyValArg (Identifier "start") (Array [ Reg (Literal (Numeric 88.0 Percent)) , Reg (Literal (Numeric 2.0 Percent)) ]) , KeyValArg (Identifier "angle") (Negated (Literal (Numeric 36.0 Deg))) ]) ]) , SoftBreak , Code "test/typ/visualize/line-01.typ" ( line 17 , column 4 ) (FuncCall (Ident (Identifier "place")) [ NormalArg (FuncCall (Ident (Identifier "line")) [ KeyValArg (Identifier "length") (Literal (Numeric 30.0 Percent)) , KeyValArg (Identifier "start") (Array [ Reg (Literal (Numeric 73.3 Percent)) , Reg (Literal (Numeric 48.0 Percent)) ]) , KeyValArg (Identifier "angle") (Literal (Numeric 252.0 Deg)) ]) ]) , SoftBreak , Code "test/typ/visualize/line-01.typ" ( line 18 , column 4 ) (FuncCall (Ident (Identifier "place")) [ NormalArg (FuncCall (Ident (Identifier "line")) [ KeyValArg (Identifier "length") (Negated (Literal (Numeric 30.0 Percent))) , KeyValArg (Identifier "start") (Array [ Reg (Literal (Numeric 73.5 Percent)) , Reg (Literal (Numeric 48.0 Percent)) ]) , KeyValArg (Identifier "angle") (Literal (Numeric 36.0 Deg)) ]) ]) , SoftBreak , Code "test/typ/visualize/line-01.typ" ( line 19 , column 4 ) (FuncCall (Ident (Identifier "place")) [ NormalArg (FuncCall (Ident (Identifier "line")) [ KeyValArg (Identifier "length") (Literal (Numeric 30.0 Percent)) , KeyValArg (Identifier "start") (Array [ Reg (Literal (Numeric 25.4 Percent)) , Reg (Literal (Numeric 48.0 Percent)) ]) , KeyValArg (Identifier "angle") (Negated (Literal (Numeric 36.0 Deg))) ]) ]) , SoftBreak , Code "test/typ/visualize/line-01.typ" ( line 20 , column 4 ) (FuncCall (Ident (Identifier "place")) [ NormalArg (FuncCall (Ident (Identifier "line")) [ KeyValArg (Identifier "length") (Literal (Numeric 30.0 Percent)) , KeyValArg (Identifier "start") (Array [ Reg (Literal (Numeric 25.6 Percent)) , Reg (Literal (Numeric 48.0 Percent)) ]) , KeyValArg (Identifier "angle") (Negated (Literal (Numeric 72.0 Deg))) ]) ]) , SoftBreak , Code "test/typ/visualize/line-01.typ" ( line 21 , column 4 ) (FuncCall (Ident (Identifier "place")) [ NormalArg (FuncCall (Ident (Identifier "line")) [ KeyValArg (Identifier "length") (Literal (Numeric 32.0 Percent)) , KeyValArg (Identifier "start") (Array [ Reg (Literal (Numeric 8.5 Percent)) , Reg (Literal (Numeric 2.0 Percent)) ]) , KeyValArg (Identifier "angle") (Literal (Numeric 34.0 Deg)) ]) ]) , ParBreak ] ])) , ParBreak , Code "test/typ/visualize/line-01.typ" ( line 24 , column 2 ) (FuncCall (Ident (Identifier "align")) [ NormalArg (Ident (Identifier "center")) , NormalArg (FuncCall (Ident (Identifier "grid")) [ KeyValArg (Identifier "columns") (Literal (Int 3)) , KeyValArg (Identifier "column-gutter") (Literal (Numeric 10.0 Pt)) , SpreadArg (Times (Array [ Reg (FuncCall (Ident (Identifier "star")) [ NormalArg (Literal (Numeric 20.0 Pt)) , KeyValArg (Identifier "stroke") (Literal (Numeric 0.5 Pt)) ]) ]) (Literal (Int 9))) ]) ]) , ParBreak ] --- evaluated --- document(body: { text(body: [ ]), text(body: [ ]), text(body: [ ]), parbreak(), parbreak(), align(alignment: center, body: grid(children: (box(body: { text(body: [ ]), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), v(amount: 30%), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (9%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (38%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: -30%, start: (88%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 36.0deg, length: -30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 34.0deg, length: 32%, start: (8%, 2%), stroke: 0.5pt)), parbreak() }, height: 20.0pt, width: 20.0pt), box(body: { text(body: [ ]), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), v(amount: 30%), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (9%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (38%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: -30%, start: (88%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 36.0deg, length: -30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 34.0deg, length: 32%, start: (8%, 2%), stroke: 0.5pt)), parbreak() }, height: 20.0pt, width: 20.0pt), box(body: { text(body: [ ]), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), v(amount: 30%), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (9%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (38%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: -30%, start: (88%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 36.0deg, length: -30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 34.0deg, length: 32%, start: (8%, 2%), stroke: 0.5pt)), parbreak() }, height: 20.0pt, width: 20.0pt), box(body: { text(body: [ ]), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), v(amount: 30%), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (9%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (38%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: -30%, start: (88%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 36.0deg, length: -30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 34.0deg, length: 32%, start: (8%, 2%), stroke: 0.5pt)), parbreak() }, height: 20.0pt, width: 20.0pt), box(body: { text(body: [ ]), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), v(amount: 30%), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (9%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (38%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: -30%, start: (88%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 36.0deg, length: -30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 34.0deg, length: 32%, start: (8%, 2%), stroke: 0.5pt)), parbreak() }, height: 20.0pt, width: 20.0pt), box(body: { text(body: [ ]), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), v(amount: 30%), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (9%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (38%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: -30%, start: (88%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 36.0deg, length: -30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 34.0deg, length: 32%, start: (8%, 2%), stroke: 0.5pt)), parbreak() }, height: 20.0pt, width: 20.0pt), box(body: { text(body: [ ]), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), v(amount: 30%), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (9%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (38%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: -30%, start: (88%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 36.0deg, length: -30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 34.0deg, length: 32%, start: (8%, 2%), stroke: 0.5pt)), parbreak() }, height: 20.0pt, width: 20.0pt), box(body: { text(body: [ ]), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), v(amount: 30%), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (9%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (38%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: -30%, start: (88%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 36.0deg, length: -30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 34.0deg, length: 32%, start: (8%, 2%), stroke: 0.5pt)), parbreak() }, height: 20.0pt, width: 20.0pt), box(body: { text(body: [ ]), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), text(body: [ ], spacing: 0%), v(amount: 30%), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (9%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (38%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(length: 30%, start: (57%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: -30%, start: (88%, 2%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 252.0deg, length: 30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 36.0deg, length: -30%, start: (73%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -36.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: -72.0deg, length: 30%, start: (25%, 48%), stroke: 0.5pt)), text(body: [ ], spacing: 0%), place(body: line(angle: 34.0deg, length: 32%, start: (8%, 2%), stroke: 0.5pt)), parbreak() }, height: 20.0pt, width: 20.0pt)), column-gutter: 10.0pt, columns: 3)), parbreak() })