@Override
    public boolean equals(Object o) {
        if (this == o) return true;
        if (o == null || getClass() != o.getClass()) return false;
        VerifyAssignmentResult that = (VerifyAssignmentResult) o;
        return partsOngoing == that.partsOngoing && movesOngoing == that.movesOngoing && Objects.equals(partStates, that.partStates) && Objects.equals(moveStates, that.moveStates);
    }
@param partStates    A map from partitions to reassignment states.
@param partsOngoing  True if there are any ongoing partition reassignments.
@param moveStates    A map from log directories to movement states.
@param movesOngoing  True if there are any ongoing moves that we know about.
tools/src/main/java/org/apache/kafka/tools/reassign/VerifyAssignmentResult.java