code: def _sorted_keys(self, keys, startkey, reverse=False):
          
  
          tuple_key = lambda t: t[::-1]
          if reverse:
              tuple_cmp = lambda t: t[::-1] > startkey[::-1]
          else:
              tuple_cmp = lambda t: t[::-1] < startkey[::-1]
  
          searchkeys = sorted(keys, key=tuple_key, reverse=reverse)
          searchpos = sum(1 for _ in ifilter(tuple_cmp, searchkeys))
  
          searchkeys = searchkeys[searchpos:] + searchkeys[:searchpos]
  
          for key in searchkeys:
              yield key
docs: Generator that yields sorted keys starting with startkey
  
          Parameters
          ----------
  
          keys: Iterable of tuple/list
          \tKey sequence that is sorted
          startkey: Tuple/list
          \tFirst key to be yielded
          reverse: Bool
          \tSort direction reversed if True