private Set<Constraint> apply(final Binding b, final Set<Constraint> additional) {
    final Set<Constraint> result = new HashSet<>();

    for (final Constraint constr : myConstraints) {
      result.add(constr.apply(b));
    }

    for (final Constraint constr : additional) {
      result.add(constr.apply(b));
    }

    return result;
  }
private Set<Constraint> apply(final Binding b, final Set<Constraint> additional)