@ ProgramNode (location: (0...349))
├── locals: []
└── statements:
    @ StatementsNode (location: (0...349))
    └── body: (length: 47)
        ├── @ GlobalVariableReadNode (location: (0...16))
        │   └── name: :$global_variable
        ├── @ GlobalVariableReadNode (location: (18...20))
        │   └── name: :$_
        ├── @ GlobalVariableReadNode (location: (22...25))
        │   └── name: :$-w
        ├── @ GlobalVariableReadNode (location: (27...37))
        │   └── name: :$LOAD_PATH
        ├── @ GlobalVariableReadNode (location: (39...45))
        │   └── name: :$stdin
        ├── @ GlobalVariableReadNode (location: (47...54))
        │   └── name: :$stdout
        ├── @ GlobalVariableReadNode (location: (56...63))
        │   └── name: :$stderr
        ├── @ GlobalVariableReadNode (location: (65...67))
        │   └── name: :$!
        ├── @ GlobalVariableReadNode (location: (69...71))
        │   └── name: :$?
        ├── @ GlobalVariableReadNode (location: (73...75))
        │   └── name: :$~
        ├── @ BackReferenceReadNode (location: (77...79))
        ├── @ BackReferenceReadNode (location: (81...83))
        ├── @ BackReferenceReadNode (location: (85...87))
        ├── @ BackReferenceReadNode (location: (89...91))
        ├── @ GlobalVariableReadNode (location: (93...95))
        │   └── name: :$:
        ├── @ GlobalVariableReadNode (location: (97...99))
        │   └── name: :$;
        ├── @ GlobalVariableReadNode (location: (101...103))
        │   └── name: :$,
        ├── @ GlobalVariableReadNode (location: (105...111))
        │   └── name: :$DEBUG
        ├── @ GlobalVariableReadNode (location: (113...122))
        │   └── name: :$FILENAME
        ├── @ GlobalVariableReadNode (location: (124...126))
        │   └── name: :$0
        ├── @ GlobalVariableReadNode (location: (128...131))
        │   └── name: :$-0
        ├── @ GlobalVariableReadNode (location: (133...149))
        │   └── name: :$LOADED_FEATURES
        ├── @ GlobalVariableReadNode (location: (151...159))
        │   └── name: :$VERBOSE
        ├── @ GlobalVariableReadNode (location: (161...164))
        │   └── name: :$-K
        ├── @ SymbolNode (location: (166...183))
        │   ├── opening_loc: (166...167) = ":"
        │   ├── value_loc: (167...183) = "$global_variable"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$global_variable"
        ├── @ SymbolNode (location: (185...188))
        │   ├── opening_loc: (185...186) = ":"
        │   ├── value_loc: (186...188) = "$_"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$_"
        ├── @ SymbolNode (location: (190...194))
        │   ├── opening_loc: (190...191) = ":"
        │   ├── value_loc: (191...194) = "$-w"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$-w"
        ├── @ SymbolNode (location: (196...207))
        │   ├── opening_loc: (196...197) = ":"
        │   ├── value_loc: (197...207) = "$LOAD_PATH"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$LOAD_PATH"
        ├── @ SymbolNode (location: (209...216))
        │   ├── opening_loc: (209...210) = ":"
        │   ├── value_loc: (210...216) = "$stdin"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$stdin"
        ├── @ SymbolNode (location: (218...226))
        │   ├── opening_loc: (218...219) = ":"
        │   ├── value_loc: (219...226) = "$stdout"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$stdout"
        ├── @ SymbolNode (location: (228...236))
        │   ├── opening_loc: (228...229) = ":"
        │   ├── value_loc: (229...236) = "$stderr"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$stderr"
        ├── @ SymbolNode (location: (238...241))
        │   ├── opening_loc: (238...239) = ":"
        │   ├── value_loc: (239...241) = "$!"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$!"
        ├── @ SymbolNode (location: (243...246))
        │   ├── opening_loc: (243...244) = ":"
        │   ├── value_loc: (244...246) = "$?"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$?"
        ├── @ SymbolNode (location: (248...251))
        │   ├── opening_loc: (248...249) = ":"
        │   ├── value_loc: (249...251) = "$~"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$~"
        ├── @ SymbolNode (location: (253...256))
        │   ├── opening_loc: (253...254) = ":"
        │   ├── value_loc: (254...256) = "$&"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$&"
        ├── @ SymbolNode (location: (258...261))
        │   ├── opening_loc: (258...259) = ":"
        │   ├── value_loc: (259...261) = "$`"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$`"
        ├── @ SymbolNode (location: (263...266))
        │   ├── opening_loc: (263...264) = ":"
        │   ├── value_loc: (264...266) = "$'"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$'"
        ├── @ SymbolNode (location: (268...271))
        │   ├── opening_loc: (268...269) = ":"
        │   ├── value_loc: (269...271) = "$+"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$+"
        ├── @ SymbolNode (location: (273...276))
        │   ├── opening_loc: (273...274) = ":"
        │   ├── value_loc: (274...276) = "$:"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$:"
        ├── @ SymbolNode (location: (278...281))
        │   ├── opening_loc: (278...279) = ":"
        │   ├── value_loc: (279...281) = "$;"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$;"
        ├── @ SymbolNode (location: (283...290))
        │   ├── opening_loc: (283...284) = ":"
        │   ├── value_loc: (284...290) = "$DEBUG"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$DEBUG"
        ├── @ SymbolNode (location: (292...302))
        │   ├── opening_loc: (292...293) = ":"
        │   ├── value_loc: (293...302) = "$FILENAME"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$FILENAME"
        ├── @ SymbolNode (location: (304...307))
        │   ├── opening_loc: (304...305) = ":"
        │   ├── value_loc: (305...307) = "$0"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$0"
        ├── @ SymbolNode (location: (309...313))
        │   ├── opening_loc: (309...310) = ":"
        │   ├── value_loc: (310...313) = "$-0"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$-0"
        ├── @ SymbolNode (location: (315...332))
        │   ├── opening_loc: (315...316) = ":"
        │   ├── value_loc: (316...332) = "$LOADED_FEATURES"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$LOADED_FEATURES"
        ├── @ SymbolNode (location: (334...343))
        │   ├── opening_loc: (334...335) = ":"
        │   ├── value_loc: (335...343) = "$VERBOSE"
        │   ├── closing_loc: ∅
        │   └── unescaped: "$VERBOSE"
        └── @ SymbolNode (location: (345...349))
            ├── opening_loc: (345...346) = ":"
            ├── value_loc: (346...349) = "$-K"
            ├── closing_loc: ∅
            └── unescaped: "$-K"
