code: public <T extends BioPAXElement> T copy(T source, String newID) 
  	{
  		T copy = (T) level.getDefaultFactory().create(
  				(Class<T>) source.getModelInterface(), newID);
  		this.copy = copy;
  		// to avoid unnecessary checks/warnings when existing valid element is being cloned  
  		//(e.g., copying BPS.stepProcess values, if there is a Conversion, which was set via stepConversion).
  		AbstractPropertyEditor.checkRestrictions.set(false);
  		traverser.traverse(source, null);
  		AbstractPropertyEditor.checkRestrictions.set(true);//back to default
  		return copy;
  	}
docs: Returns a copy of the BioPAX element
  (with all the property values are same)
  
  @param <T> biopax type
  @param source biopax element to copy
  @param newID copy biopax element's absolute URI
  @return a copy of the source biopax element