In the overlap_find_all_i function located in include/interval-tree/interval_tree.hpp, the condition for checking the right branch is if (ptr->right_ && ptr->right_->max() >= ival.low()). This seems overly loose? While it does not cause correctness issues, it may lead to traversing too many unnecessary nodes during the search, potentially impacting performance.