code: def next(self):
          "Gets the next key"
  
          if not self._index_stack:
              return False
  
          index = self._index_stack[-1]
  
          if self._last_index != self._dic.ROOT:
  
              child_label = self._guide.child(index)  # UCharType
  
              if child_label:
                  # Follows a transition to the first child.
                  index = self._follow(child_label, index)
                  if index is None:
                      return False
              else:
                  while True:
                      sibling_label = self._guide.sibling(index)
                      # Moves to the previous node.
                      if len(self.key) > 0:
                          self.key.pop()
                          #self.key[-1] = 0
  
                      self._index_stack.pop()
                      if not self._index_stack:
                          return False
  
                      index = self._index_stack[-1]
                      if sibling_label:
                          # Follows a transition to the next sibling.
                          index = self._follow(sibling_label, index)
                          if index is None:
                              return False
                          break
  
          return self._find_terminal(indexf next(self):
          "Gets the next key"
  
          if not self._index_stack:
              return False
  
          index = self._index_stack[-1]
  
          if self._last_index != self._dic.ROOT:
  
              child_label = self._guide.child(index)  # UCharType
  
              if child_label:
                  # Follows a transition to the first child.
                  index = self._follow(child_label, index)
                  if index is None:
                      return False
              else:
                  while True:
                      sibling_label = self._guide.sibling(index)
                      # Moves to the previous node.
                      if len(self.key) > 0:
                          self.key.pop()
                          #self.key[-1] = 0
  
                      self._index_stack.pop()
                      if not self._index_stack:
                          return False
  
                      index = self._index_stack[-1]
                      if sibling_label:
                          # Follows a transition to the next sibling.
                          index = self._follow(sibling_label, index)
                          if index is None:
                              return False
                          break
  
          return self._find_terminal(index)
docs: Gets the next key