docs: @Override
    public ImmutableList<E> subList(int fromIndex, int toIndex) {
      checkPositionIndexes(fromIndex, toIndex, size());
      int length = toIndex - fromIndex;
      if (length == size()) {
        return this;
      }
      switch (length) {
        case 0:
          return of();
        case 1:
          return of(get(fromIndex));
        default:
          return subListUnchecked(fromIndex, toIndex);
      }
    }