| 371 | } |
| 372 | |
| 373 | bool operator<(const MultiSetTree& other) const { |
| 374 | for (auto it1 = begin(), it2 = other.begin(); it1 != end() && it2 != other.end(); ++it1, ++it2) { |
| 375 | if (*it1 < *it2) return true; |
| 376 | if (*it2 < *it1) return false; |
| 377 | } |
| 378 | return size() < other.size(); |
| 379 | } |
| 380 | |
| 381 | bool operator<=(const MultiSetTree& other) const { |
| 382 | return *this < other || *this == other; |