class CallImpl<R> implements Call<R> {
  private volatile SyncExecutionImpl<R> execution;

  void setExecution(SyncExecutionImpl<R> execution) {
    this.execution = execution;
  }

  @Override
  public R execute() {
    return execution.executeSync();
  }

  @Override
  public boolean cancel(boolean mayInterruptIfRunning) {<FILL_FUNCTION_BODY>}

  @Override
  public boolean isCancelled() {
    return execution.isCancelled();
  }
}

    boolean result = execution.cancel();
    if (mayInterruptIfRunning)
      execution.interrupt();
    return result;
  
<no_super_class>