Equation notNullParamEquation(int i, boolean stable) {
    final EKey key = new EKey(method, new In(i, false), stable);
    final Result result;
    if (interpreter.dereferencedParams[i]) {
      result = Value.NotNull;
    }
    else {
      Set<ParamKey> calls = interpreter.parameterFlow[i];
      if (calls == null || calls.isEmpty()) {
        result = Value.Top;
      }
      else {
        Set<EKey> keys = new HashSet<>();
        for (ParamKey pk: calls) {
          keys.add(new EKey(pk.method, new In(pk.i, false), pk.stable));
        }
        result = new Pending(Collections.singleton(new Component(Value.Top, keys)));
      }
    }
    return new Equation(key, result);
  }
Equation notNullParamEquation(int i, boolean stable)