FutureCallable<RequestT, ResponseT> callable, ImmutableSet<Status.Code> retryableCodes) {
this.callable = Preconditions.checkNotNull(callable);
this.retryableCodes = Preconditions.checkNotNull(retryableCodes);
}
@Override
<BUG>public ListenableFuture<ResponseT> futureCall(RequestT request, CallContext context) {

ListenableFuture<ResponseT> innerCallFuture = callable.futureCall(request, context);
</BUG>
ExceptionTransformingFuture transformingFuture =

FutureCallable<RequestT, ResponseT> callable, ImmutableSet<Status.Code> retryableCodes) {
this.callable = Preconditions.checkNotNull(callable);
this.retryableCodes = Preconditions.checkNotNull(retryableCodes);
}
@Override
public RpcFuture<ResponseT> futureCall(RequestT request, CallContext context) {
RpcFuture<ResponseT> innerCallFuture = callable.futureCall(request, context);
ExceptionTransformingFuture transformingFuture =
