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