code: public GroupZipper left() {
          if (!canLeft()) {
              throw new NoSuchElementException("Could not move left because the first node at this level has already been reached");
          }
  
          index--;
          node = parent.getNode().getGroups().get(index);
  
          return this;
      }
docs: Navigates left the tree to the previous node at the same level.
  
  @return a new groupzipper which points to the previous node at the same
  level
  @throws NoSuchElementException
  if the first node at the current level has already been
  reached