code: public static GPX of(
  		final String creator,
  		final Metadata metadata,
  		final List<WayPoint> wayPoints,
  		final List<Route> routes,
  		final List<Track> tracks
  	) {
  		return new GPX(
  			Version.V11,
  			creator,
  			metadata,
  			wayPoints,
  			routes,
  			tracks
  		);
  	}
docs: Create a new {@code GPX} object with the given data.
  
  @param creator the name or URL of the software that created your GPX
  document. This allows others to inform the creator of a GPX
  instance document that fails to validate.
  @param metadata the metadata about the GPS file
  @param wayPoints the way-points
  @param routes the routes
  @param tracks the tracks
  @return a new {@code GPX} object with the given data
  @throws NullPointerException if the {@code creator}, {code wayPoints},
  {@code routes} or {@code tracks} is {@code null}