GeoPoint extends GeoObject { @Nonnull public GeoPoint withLat(@Nonnull final Double lat) { return new GeoPoint(lat, lon, elevationMeters); } GeoPoint(
            @Nonnull final Double lat,
            @Nonnull final Double lon,
            @Nullable final Double elevationMeters);  GeoPoint(
            @Nonnull final Double lat,
            @Nonnull final Double lon); @SuppressWarnings({"ConstantConditions", "UnusedDeclaration"}) @Deprecated private  GeoPoint(); @Nonnull @Override GeoPoint getOrigin(); @Nonnull @Override GeoPoint getCenter(); @Nonnull Double getLat(); @Nonnull Double getLon(); @Nonnull Double getElevationMetersOrNaN(); @Nullable Double getElevationMeters(); @Nonnull GeoPoint withLat(@Nonnull final Double lat); @Nonnull GeoPoint withLon(@Nonnull final Double lon); @Nonnull GeoPoint withElevationMeters(@Nullable final Double elevationMeters); @Override @Nonnull GeoPoint translate(@Nonnull final GeoVector vector); @Override @Nonnull GeoPoint translate(final double northingMeters, final double eastingMeters, @Nullable final Double elevationMeters); @Override @Nonnull GeoPoint translate(final double northingMeters, final double eastingMeters); @Nonnull @Override GeoPoint moveTo(@Nonnull final GeoPoint origin); @Override boolean canEqual(@Nonnull final Object obj); @Override boolean equals(@Nullable final Object obj); @Override int hashCode();  }
@Test public void testWithLat() { LOG.info("testWithLat"); Assert.assertEquals(0, Double.compare(y1, x.withLat(y1).getLat())); Assert.assertEquals(0, Double.compare(x1, y.withLat(x1).getLat())); }