@Override
  public boolean equals(Object obj) {

    if (this == obj) {
      return true;
    }
    if (obj instanceof StandardZoneRules) {
      StandardZoneRules other = (StandardZoneRules) obj;
      return Arrays.equals(this.standardTransitions, other.standardTransitions)
          && Arrays.equals(this.standardOffsets, other.standardOffsets)
          && Arrays.equals(this.savingsInstantTransitions, other.savingsInstantTransitions)
          && Arrays.equals(this.wallOffsets, other.wallOffsets) && Arrays.equals(this.lastRules, other.lastRules);
    }
    return false;
  }