@ ProgramNode (location: (1,0)-(1,13))
├── locals: []
└── statements:
    @ StatementsNode (location: (1,0)-(1,13))
    └── body: (length: 1)
        └── @ ArrayNode (location: (1,0)-(1,13))
            ├── flags: ∅
            ├── elements: (length: 3)
            │   ├── @ ImaginaryNode (location: (1,1)-(1,3))
            │   │   └── numeric:
            │   │       @ IntegerNode (location: (1,1)-(1,2))
            │   │       └── flags: decimal
            │   ├── @ RationalNode (location: (1,5)-(1,7))
            │   │   └── numeric:
            │   │       @ IntegerNode (location: (1,5)-(1,6))
            │   │       └── flags: decimal
            │   └── @ ImaginaryNode (location: (1,9)-(1,12))
            │       └── numeric:
            │           @ RationalNode (location: (1,9)-(1,11))
            │           └── numeric:
            │               @ IntegerNode (location: (1,9)-(1,10))
            │               └── flags: decimal
            ├── opening_loc: (1,0)-(1,1) = "["
            └── closing_loc: (1,12)-(1,13) = "]"
