Program (script) @1:1 ├─ VariableDeclaration (var) @1:1 │ └─ VariableDeclarator @1:1 │ ├─ Identifier "f" [global] (var) @1:5 │ └─ FunctionExpression "" [arrow] @1:9 │ ├─ parameters │ │ ├─ BindingPattern (object) │ │ │ └─ entry │ │ │ ├─ name │ │ │ │ └─ Identifier "a" [global] @1:12 │ │ │ └─ alias │ │ │ └─ Identifier "b" [variable:0] @1:15 │ │ ├─ BindingPattern (object) │ │ │ ├─ entry │ │ │ │ ├─ name │ │ │ │ │ └─ Identifier "c" [global] @1:22 │ │ │ │ └─ alias │ │ │ │ └─ Identifier "d" [variable:1] @1:25 │ │ │ └─ entry │ │ │ ├─ name │ │ │ │ └─ Identifier "e" [global] @1:28 │ │ │ └─ alias │ │ │ └─ Identifier "g" [variable:2] @1:31 │ │ └─ Identifier "h" [argument:2] @1:10 │ └─ body │ └─ FunctionBody @1:9 │ └─ ReturnStatement @1:9 │ └─ Identifier "h" [argument:2] @1:42 └─ VariableDeclaration (var) @2:1 └─ VariableDeclarator @2:1 ├─ Identifier "g" [global] (var) @2:5 └─ FunctionExpression "" [arrow] @2:9 ├─ parameters │ ├─ BindingPattern (object) │ └─ Identifier "i" [argument:1] @2:10 └─ body └─ FunctionBody @2:9 └─ ReturnStatement @2:9 └─ Identifier "i" [argument:1] @2:20