code: @Override
      public boolean hasSameRules(TimeZone othr) {
          if (this == othr) {
              return true;
          }
          if(!(othr instanceof SimpleTimeZone)){
              return false;
          }
          SimpleTimeZone other = (SimpleTimeZone)othr;
          return other != null &&
          raw     == other.raw &&
          useDaylight     == other.useDaylight &&
          (!useDaylight
           // Only check rules if using DST
           || (dst     == other.dst &&
               startMode      == other.startMode &&
               startMonth     == other.startMonth &&
               startDay       == other.startDay &&
               startDayOfWeek == other.startDayOfWeek &&
               startTime      == other.startTime &&
               startTimeMode  == other.startTimeMode &&
               endMode        == other.endMode &&
               endMonth       == other.endMonth &&
               endDay         == other.endDay &&
               endDayOfWeek   == other.endDayOfWeek &&
               endTime        == other.endTime &&
               endTimeMode    == other.endTimeMode &&
               startYear      == other.startYear));
      }
docs: Returns true if this zone has the same rules and offset as another zone.
  @param othr the TimeZone object to be compared with
  @return true if the given zone has the same rules and offset as this one