<a
>
<b
>
CALL_EXPRESSION
</b
>
<c
>
object.method(a)
</c
>
<d
>
<a
>
<b
>
DOT_EXPRESSION
</b
>
<c
>
object.method
</c
>
<d
>
<a
>
<b
>
NAME_EXPRESSION
</b
>
<c
>
object
</c
>
<d
>
<a
>
<b
>
NAME
</b
>
<c
>
object
</c
>
<d
>
</d
>
</a
>
</d
>
</a
>
<a
>
<b
>
NAME_EXPRESSION
</b
>
<c
>
method
</c
>
<d
>
<a
>
<b
>
NAME
</b
>
<c
>
method
</c
>
<d
>
</d
>
</a
>
</d
>
</a
>
</d
>
</a
>
<a
>
<b
>
PARAMS
</b
>
<c
>
(a)
</c
>
<d
>
<a
>
<b
>
NAME_EXPRESSION
</b
>
<c
>
a
</c
>
<d
>
<a
>
<b
>
NAME
</b
>
<c
>
a
</c
>
<d
>
</d
>
</a
>
</d
>
</a
>
</d
>
</a
>
</d
>
</a
>
<a
>
<b
>
CALL_EXPRESSION
</b
>
<c
>
puts(b)
</c
>
<d
>
<a
>
<b
>
NAME_EXPRESSION
</b
>
<c
>
puts
</c
>
<d
>
<a
>
<b
>
NAME
</b
>
<c
>
puts
</c
>
<d
>
</d
>
</a
>
</d
>
</a
>
<a
>
<b
>
PARAMS
</b
>
<c
>
(b)
</c
>
<d
>
<a
>
<b
>
NAME_EXPRESSION
</b
>
<c
>
b
</c
>
<d
>
<a
>
<b
>
NAME
</b
>
<c
>
b
</c
>
<d
>
</d
>
</a
>
</d
>
</a
>
</d
>
</a
>
</d
>
</a
>
<a
>
<b
>
ASSIGNMENT_EXPRESSION
</b
>
<c
>
c=d;
</c
>
<d
>
<a
>
<b
>
NAME_EXPRESSION
</b
>
<c
>
c
</c
>
<d
>
<a
>
<b
>
NAME
</b
>
<c
>
c
</c
>
<d
>
</d
>
</a
>
</d
>
</a
>
<a
>
<b
>
NAME_EXPRESSION
</b
>
<c
>
d
</c
>
<d
>
<a
>
<b
>
NAME
</b
>
<c
>
d
</c
>
<d
>
</d
>
</a
>
</d
>
</a
>
</d
>
</a
>