code: @Override
      public Path getParent() {
          final List<String> tokens = tokenize(this);
          // No parent?
          final int numTokens = tokens.size();
          if (numTokens == 0 || (numTokens == 1 && !this.isAbsolute())) {
              return null;
          }
  
          // Iterate over all but the last token and build a new path
          final StringBuffer sb = new StringBuffer();
          if (this.isAbsolute()) {
              sb.append(ArchivePath.SEPARATOR);
          }
          for (int i = 0; i < numTokens - 1; i++) {
              if (i >= 1) {
                  sb.append(ArchivePath.SEPARATOR);
              }
              sb.append(tokens.get(i));
          }
  
          final String parentPath = sb.toString();
          return new ShrinkWrapPath(parentPath, fileSystem);
      }
docs: {@inheritDoc}
  
  @see java.nio.file.Path#getParent()