@ ProgramNode (location: (0...199))
├── locals: []
└── statements:
    @ StatementsNode (location: (0...199))
    └── body: (length: 12)
        ├── @ AliasMethodNode (location: (0...15))
        │   ├── new_name:
        │   │   @ SymbolNode (location: (6...10))
        │   │   ├── opening_loc: (6...7) = ":"
        │   │   ├── value_loc: (7...10) = "foo"
        │   │   ├── closing_loc: ∅
        │   │   └── unescaped: "foo"
        │   ├── old_name:
        │   │   @ SymbolNode (location: (11...15))
        │   │   ├── opening_loc: (11...12) = ":"
        │   │   ├── value_loc: (12...15) = "bar"
        │   │   ├── closing_loc: ∅
        │   │   └── unescaped: "bar"
        │   └── keyword_loc: (0...5) = "alias"
        ├── @ AliasMethodNode (location: (17...38))
        │   ├── new_name:
        │   │   @ SymbolNode (location: (23...30))
        │   │   ├── opening_loc: (23...26) = "%s["
        │   │   ├── value_loc: (26...29) = "abc"
        │   │   ├── closing_loc: (29...30) = "]"
        │   │   └── unescaped: "abc"
        │   ├── old_name:
        │   │   @ SymbolNode (location: (31...38))
        │   │   ├── opening_loc: (31...34) = "%s["
        │   │   ├── value_loc: (34...37) = "def"
        │   │   ├── closing_loc: (37...38) = "]"
        │   │   └── unescaped: "def"
        │   └── keyword_loc: (17...22) = "alias"
        ├── @ AliasMethodNode (location: (40...59))
        │   ├── new_name:
        │   │   @ SymbolNode (location: (46...52))
        │   │   ├── opening_loc: (46...48) = ":'"
        │   │   ├── value_loc: (48...51) = "abc"
        │   │   ├── closing_loc: (51...52) = "'"
        │   │   └── unescaped: "abc"
        │   ├── old_name:
        │   │   @ SymbolNode (location: (53...59))
        │   │   ├── opening_loc: (53...55) = ":'"
        │   │   ├── value_loc: (55...58) = "def"
        │   │   ├── closing_loc: (58...59) = "'"
        │   │   └── unescaped: "def"
        │   └── keyword_loc: (40...45) = "alias"
        ├── @ AliasMethodNode (location: (61...84))
        │   ├── new_name:
        │   │   @ InterpolatedSymbolNode (location: (67...77))
        │   │   ├── opening_loc: (67...69) = ":\""
        │   │   ├── parts: (length: 2)
        │   │   │   ├── @ StringNode (location: (69...72))
        │   │   │   │   ├── opening_loc: ∅
        │   │   │   │   ├── content_loc: (69...72) = "abc"
        │   │   │   │   ├── closing_loc: ∅
        │   │   │   │   └── unescaped: "abc"
        │   │   │   └── @ EmbeddedStatementsNode (location: (72...76))
        │   │   │       ├── opening_loc: (72...74) = "\#{"
        │   │   │       ├── statements:
        │   │   │       │   @ StatementsNode (location: (74...75))
        │   │   │       │   └── body: (length: 1)
        │   │   │       │       └── @ IntegerNode (location: (74...75))
        │   │   │       │           └── flags: decimal
        │   │   │       └── closing_loc: (75...76) = "}"
        │   │   └── closing_loc: (76...77) = "\""
        │   ├── old_name:
        │   │   @ SymbolNode (location: (78...84))
        │   │   ├── opening_loc: (78...80) = ":'"
        │   │   ├── value_loc: (80...83) = "def"
        │   │   ├── closing_loc: (83...84) = "'"
        │   │   └── unescaped: "def"
        │   └── keyword_loc: (61...66) = "alias"
        ├── @ AliasGlobalVariableNode (location: (86...97))
        │   ├── new_name:
        │   │   @ GlobalVariableReadNode (location: (92...94))
        │   │   └── name: :$a
        │   ├── old_name:
        │   │   @ BackReferenceReadNode (location: (95...97))
        │   └── keyword_loc: (86...91) = "alias"
        ├── @ AliasMethodNode (location: (99...112))
        │   ├── new_name:
        │   │   @ SymbolNode (location: (105...108))
        │   │   ├── opening_loc: ∅
        │   │   ├── value_loc: (105...108) = "foo"
        │   │   ├── closing_loc: ∅
        │   │   └── unescaped: "foo"
        │   ├── old_name:
        │   │   @ SymbolNode (location: (109...112))
        │   │   ├── opening_loc: ∅
        │   │   ├── value_loc: (109...112) = "bar"
        │   │   ├── closing_loc: ∅
        │   │   └── unescaped: "bar"
        │   └── keyword_loc: (99...104) = "alias"
        ├── @ AliasGlobalVariableNode (location: (114...129))
        │   ├── new_name:
        │   │   @ GlobalVariableReadNode (location: (120...124))
        │   │   └── name: :$foo
        │   ├── old_name:
        │   │   @ GlobalVariableReadNode (location: (125...129))
        │   │   └── name: :$bar
        │   └── keyword_loc: (114...119) = "alias"
        ├── @ AliasMethodNode (location: (131...143))
        │   ├── new_name:
        │   │   @ SymbolNode (location: (137...140))
        │   │   ├── opening_loc: ∅
        │   │   ├── value_loc: (137...140) = "foo"
        │   │   ├── closing_loc: ∅
        │   │   └── unescaped: "foo"
        │   ├── old_name:
        │   │   @ SymbolNode (location: (141...143))
        │   │   ├── opening_loc: ∅
        │   │   ├── value_loc: (141...143) = "if"
        │   │   ├── closing_loc: ∅
        │   │   └── unescaped: "if"
        │   └── keyword_loc: (131...136) = "alias"
        ├── @ AliasMethodNode (location: (145...158))
        │   ├── new_name:
        │   │   @ SymbolNode (location: (151...154))
        │   │   ├── opening_loc: ∅
        │   │   ├── value_loc: (151...154) = "foo"
        │   │   ├── closing_loc: ∅
        │   │   └── unescaped: "foo"
        │   ├── old_name:
        │   │   @ SymbolNode (location: (155...158))
        │   │   ├── opening_loc: ∅
        │   │   ├── value_loc: (155...158) = "<=>"
        │   │   ├── closing_loc: ∅
        │   │   └── unescaped: "<=>"
        │   └── keyword_loc: (145...150) = "alias"
        ├── @ AliasMethodNode (location: (160...175))
        │   ├── new_name:
        │   │   @ SymbolNode (location: (166...169))
        │   │   ├── opening_loc: (166...167) = ":"
        │   │   ├── value_loc: (167...169) = "=="
        │   │   ├── closing_loc: ∅
        │   │   └── unescaped: "=="
        │   ├── old_name:
        │   │   @ SymbolNode (location: (170...175))
        │   │   ├── opening_loc: (170...171) = ":"
        │   │   ├── value_loc: (171...175) = "eql?"
        │   │   ├── closing_loc: ∅
        │   │   └── unescaped: "eql?"
        │   └── keyword_loc: (160...165) = "alias"
        ├── @ AliasMethodNode (location: (177...186))
        │   ├── new_name:
        │   │   @ SymbolNode (location: (183...184))
        │   │   ├── opening_loc: ∅
        │   │   ├── value_loc: (183...184) = "A"
        │   │   ├── closing_loc: ∅
        │   │   └── unescaped: "A"
        │   ├── old_name:
        │   │   @ SymbolNode (location: (185...186))
        │   │   ├── opening_loc: ∅
        │   │   ├── value_loc: (185...186) = "B"
        │   │   ├── closing_loc: ∅
        │   │   └── unescaped: "B"
        │   └── keyword_loc: (177...182) = "alias"
        └── @ AliasMethodNode (location: (188...199))
            ├── new_name:
            │   @ SymbolNode (location: (194...196))
            │   ├── opening_loc: (194...195) = ":"
            │   ├── value_loc: (195...196) = "A"
            │   ├── closing_loc: ∅
            │   └── unescaped: "A"
            ├── old_name:
            │   @ SymbolNode (location: (197...199))
            │   ├── opening_loc: (197...198) = ":"
            │   ├── value_loc: (198...199) = "B"
            │   ├── closing_loc: ∅
            │   └── unescaped: "B"
            └── keyword_loc: (188...193) = "alias"
