@Override
    public boolean equals(Object obj) {
        if (this == obj)
            return true;
        if (obj == null)
            return false;

        if (obj instanceof MapRunItemCounts == false)
            return false;
        MapRunItemCounts other = (MapRunItemCounts) obj;
        if (other.getPending() == null ^ this.getPending() == null)
            return false;
        if (other.getPending() != null && other.getPending().equals(this.getPending()) == false)
            return false;
        if (other.getRunning() == null ^ this.getRunning() == null)
            return false;
        if (other.getRunning() != null && other.getRunning().equals(this.getRunning()) == false)
            return false;
        if (other.getSucceeded() == null ^ this.getSucceeded() == null)
            return false;
        if (other.getSucceeded() != null && other.getSucceeded().equals(this.getSucceeded()) == false)
            return false;
        if (other.getFailed() == null ^ this.getFailed() == null)
            return false;
        if (other.getFailed() != null && other.getFailed().equals(this.getFailed()) == false)
            return false;
        if (other.getTimedOut() == null ^ this.getTimedOut() == null)
            return false;
        if (other.getTimedOut() != null && other.getTimedOut().equals(this.getTimedOut()) == false)
            return false;
        if (other.getAborted() == null ^ this.getAborted() == null)
            return false;
        if (other.getAborted() != null && other.getAborted().equals(this.getAborted()) == false)
            return false;
        if (other.getTotal() == null ^ this.getTotal() == null)
            return false;
        if (other.getTotal() != null && other.getTotal().equals(this.getTotal()) == false)
            return false;
        if (other.getResultsWritten() == null ^ this.getResultsWritten() == null)
            return false;
        if (other.getResultsWritten() != null && other.getResultsWritten().equals(this.getResultsWritten()) == false)
            return false;
        if (other.getFailuresNotRedrivable() == null ^ this.getFailuresNotRedrivable() == null)
            return false;
        if (other.getFailuresNotRedrivable() != null && other.getFailuresNotRedrivable().equals(this.getFailuresNotRedrivable()) == false)
            return false;
        if (other.getPendingRedrive() == null ^ this.getPendingRedrive() == null)
            return false;
        if (other.getPendingRedrive() != null && other.getPendingRedrive().equals(this.getPendingRedrive()) == false)
            return false;
        return true;
    }
Returns a string representation of this object. This is useful for testing and debugging. Sensitive data will be
redacted from this string using a placeholder value.

@return A string representation of this object.

@see java.lang.Object#toString()
aws-java-sdk-stepfunctions/src/main/java/com/amazonaws/services/stepfunctions/model/MapRunItemCounts.java