def iter_items(self,  start_key=None, end_key=None, reverse=False):
        """Iterates over the (key, value) items of the associated tree,
        in ascending order if reverse is True, iterate in descending order,
        reverse defaults to False"""
        # optimized iterator (reduced method calls) - faster on CPython but slower on pypy

        if self.is_empty():
            return []
        if reverse:
            return self._iter_items_backward(start_key, end_key)
        else:
            return self._iter_items_forward(start_key, end_key)
def iter_items(self,  start_key=None, end_key=None, reverse=False):
        
        

        if self.is_empty():
            return []
        if reverse:
            return self._iter_items_backward(start_key, end_key)
        else:
            return self._iter_items_forward(start_key, end_key)
def iter_items ( self , start_key = None , end_key = None , reverse = False ) : # optimized iterator (reduced method calls) - faster on CPython but slower on pypy if self . is_empty ( ) : return [ ] if reverse : return self . _iter_items_backward ( start_key , end_key ) else : return self . _iter_items_forward ( start_key , end_key )
Iterates over the (key, value) items of the associated tree,
        in ascending order if reverse is True, iterate in descending order,
        reverse defaults to False
Iterates over the ( key value ) items of the associated tree in ascending order if reverse is True iterate in descending order reverse defaults to False