@Override
  public Constraint merge(Constraint data1, Constraint data2) {
    return data1.equals(data2) ? data1 : new Constraint(data1.calls | data2.calls, data1.nulls | data2.nulls);
  }
@Override
  public Constraint merge(Constraint data1, Constraint data2)