class Weather {

	@Override
	public boolean equals(Object o) {
		if (this == o) return true;
		if (o == null || getClass() != o.getClass()) return false;
		Weather weather = (Weather) o;
		return Double.compare(weather.humidityInPercent, humidityInPercent) == 0 &&
			Objects.equals(stationId, weather.stationId) &&
			Objects.equals(temperature, weather.temperature) &&
			Objects.equals(pressure, weather.pressure) &&
			Objects.equals(timestamp, weather.timestamp) &&
			Objects.equals(location, weather.location);
	}

	@JsonCreator public  Weather(
		@JsonProperty("stationId") String stationId,
		@JsonProperty("temperature") Temperature temperature,
		@JsonProperty("pressure")Pressure pressure,
		@JsonProperty("humidityInPercent") int humidityInPercent,
		@JsonProperty("timestamp") Instant timestamp,
		@JsonProperty("location") Location location);

}