code: public <T> List<T> cloneList(List<T> list) {
          return new ArrayList<T>(list);
      }
docs: Create a new {@link ArrayList} instance containing all elements of the
  given list.  This is not a deep clone operation, so the underlying
  elements are copied by memory and not cloned.
  
  @param list The list to copy
  
  @return The newly created list