@Nullable Equation failEquation(boolean stable) {
    final EKey key = new EKey(method, Throw, stable);
    final Result result;
    if (exception) {
      result = Value.Fail;
    }
    else if (!interpreter.calls.isEmpty()) {
      Set<EKey> keys = new HashSet<>();
      for (TrackableCallValue call : interpreter.calls) {
        keys.add(new EKey(call.method, Throw, call.stableCall));
      }
      result = new Pending(Collections.singleton(new Component(Value.Top, keys)));
    }
    else {
      return null;
    }
    return new Equation(key, result);
  }
@Nullable Equation failEquation(boolean stable)