code: public static <E, S extends SortedSet<E>> UnmodifiableSortedSet<E> of(S set)
      {
          if (set == null)
          {
              throw new IllegalArgumentException("cannot create an UnmodifiableSortedSet for null");
          }
          return new UnmodifiableSortedSet<E>(SortedSetAdapter.adapt(set));
      }
docs: This method will take a MutableSortedSet and wrap it directly in a UnmodifiableSortedSet.  It will
  take any other non-GS-SortedSet and first adapt it will a SortedSetAdapter, and then return a
  UnmodifiableSortedSet that wraps the adapter.