`Notes`

`Notes`

```
```[1] Even this is not a completely precise description, because the ordering by which the input ranges are sorted is permitted to be a strict weak ordering that is not a total ordering: there might be values *x* and *y* that are equivalent (that is, neither *x < y* nor *y < x*) but not equal. See the LessThan Comparable requirements for a fuller discussion. The output range consists of those elements from *[first1, last1)* for which equivalent elements do not exist in *[first2, last2)*. Specifically, if the range *[first1, last1)* contains *m* elements that are equivalent to each other and the range *[first2, last2)* contains *n* elements from that equivalence class (where either *m* or *n* may be zero), then the output range contains the *lastmax(m – n, 0)* of these elements from *[first1, last1)*. Note that this precision is only important if elements can be equivalent but not equal. If you're using a total ordering (if you're using *strcmp*, for example, or if you're using ordinary arithmetic comparison on integers), then you can ignore this technical distinction: for a total ordering, equality and equivalence are the same.