@Override
  public boolean equals(Object obj) {
    if (this == obj) return true;
    if (obj == null) return false;
    if (getClass() != obj.getClass()) return false;
    OFFlowStatsEntryVer10 other = (OFFlowStatsEntryVer10) obj;

    if (tableId == null) {
      if (other.tableId != null) return false;
    } else if (!tableId.equals(other.tableId)) return false;
    if (match == null) {
      if (other.match != null) return false;
    } else if (!match.equals(other.match)) return false;
    if (durationSec != other.durationSec) return false;
    if (durationNsec != other.durationNsec) return false;
    if (priority != other.priority) return false;
    if (idleTimeout != other.idleTimeout) return false;
    if (hardTimeout != other.hardTimeout) return false;
    if (cookie == null) {
      if (other.cookie != null) return false;
    } else if (!cookie.equals(other.cookie)) return false;
    if (packetCount == null) {
      if (other.packetCount != null) return false;
    } else if (!packetCount.equals(other.packetCount)) return false;
    if (byteCount == null) {
      if (other.byteCount != null) return false;
    } else if (!byteCount.equals(other.byteCount)) return false;
    if (actions == null) {
      if (other.actions != null) return false;
    } else if (!actions.equals(other.actions)) return false;
    return true;
  }
  @Override
  public int hashCode() {
    final int prime = 31;
    int result = 1;

    result = prime * result + ((tableId == null) ? 0 : tableId.hashCode());
    result = prime * result + ((match == null) ? 0 : match.hashCode());
    result = prime * (int) (durationSec ^ (durationSec >>> 32));
    result = prime * (int) (durationNsec ^ (durationNsec >>> 32));
    result = prime * result + priority;
    result = prime * result + idleTimeout;
    result = prime * result + hardTimeout;
    result = prime * result + ((cookie == null) ? 0 : cookie.hashCode());
    result = prime * result + ((packetCount == null) ? 0 : packetCount.hashCode());
    result = prime * result + ((byteCount == null) ? 0 : byteCount.hashCode());
    result = prime * result + ((actions == null) ? 0 : actions.hashCode());
    return result;
  }