define_rewrite_rules(
[where, expr.where(a = b, rest), ((a) => expr.where(rest))(b)],
[where, expr.where(a = b), ((a) => expr)(b)],
[where, expr.where(), expr],
);
console.log(x + y).where(x = 1, y = x + 2);

((x$1) => ((y$2) => console.log(x$1 + y$2))(x$1 + 2))(1);

step: 8
DONE
program:
slice:
call_expression:
parenthesized_expression:
(
arrow_function:
formal_parameters:
(
x$1
)
=>
call_expression:
parenthesized_expression:
(
arrow_function:
formal_parameters:
(
y$2
)
=>
call_expression:
member_expression:
console
.
log
(
binary_expression:
x$1
+
y$2
)
)
(
binary_expression:
x$1
+
2
)
)
(
1
)