code: private void maybeSimplifyArrowFunctionBody(Node arrowFunction, Node body) {
      checkArgument(arrowFunction.isArrowFunction());
      if (!body.isBlock() || !body.hasOneChild() || !body.getFirstChild().isReturn()) {
        return;
      }
      Node returnValue = body.getFirstChild().removeFirstChild();
      Node replacement = returnValue != null ? returnValue : IR.name("undefined");
      arrowFunction.replaceChild(body, replacement);
      compiler.reportChangeToEnclosingScope(replacement);
    }
docs: If possible, replace functions of the form ()=>{ return x; } with ()=>x