@Override
 public boolean equals(Object obj) {
   boolean rtrn = false;
   if (obj != null && super.equals(obj)) {
     if (obj instanceof EmbedTypeWeatherInfo) {
       EmbedTypeWeatherInfo etwi = (EmbedTypeWeatherInfo) obj;
       rtrn = location != null && location.equals(etwi.location);
       rtrn = rtrn && latitude == etwi.latitude;
       rtrn = rtrn && longitude == etwi.longitude;
       rtrn = rtrn && locationIncluded == etwi.locationIncluded;
       rtrn = rtrn && iconIncluded == etwi.iconIncluded;
       rtrn = rtrn && descriptionIncluded == etwi.descriptionIncluded;
       rtrn = rtrn && temperatureIncluded == etwi.temperatureIncluded;
       rtrn = rtrn && isFahrennheit == etwi.isFahrennheit;
       rtrn = rtrn && humidityIncluded == etwi.humidityIncluded;
       rtrn = rtrn && windSpeedIncluded == etwi.windSpeedIncluded;
       rtrn = rtrn && forecastIncluded == etwi.forecastIncluded;
       rtrn = rtrn && isRectangular == etwi.isRectangular;
       rtrn =
           rtrn && (textColor == null && etwi.textColor == null)
               || textColor.equals(etwi.textColor);
       rtrn =
           rtrn && (textColor == null && etwi.textColor == null)
               || backgroundColor.equals(etwi.backgroundColor);
       rtrn = rtrn && address != null && address.equals(etwi.address);
       rtrn =
           rtrn && (geocodeResult == null && etwi.geocodeResult == null)
               || (geocodeResult.equals(etwi.geocodeResult));
     }
   }
   return rtrn;
 }