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

        if (obj instanceof CreateAccountSubscriptionRequest == false)
            return false;
        CreateAccountSubscriptionRequest other = (CreateAccountSubscriptionRequest) obj;
        if (other.getEdition() == null ^ this.getEdition() == null)
            return false;
        if (other.getEdition() != null && other.getEdition().equals(this.getEdition()) == false)
            return false;
        if (other.getAuthenticationMethod() == null ^ this.getAuthenticationMethod() == null)
            return false;
        if (other.getAuthenticationMethod() != null && other.getAuthenticationMethod().equals(this.getAuthenticationMethod()) == false)
            return false;
        if (other.getAwsAccountId() == null ^ this.getAwsAccountId() == null)
            return false;
        if (other.getAwsAccountId() != null && other.getAwsAccountId().equals(this.getAwsAccountId()) == false)
            return false;
        if (other.getAccountName() == null ^ this.getAccountName() == null)
            return false;
        if (other.getAccountName() != null && other.getAccountName().equals(this.getAccountName()) == false)
            return false;
        if (other.getNotificationEmail() == null ^ this.getNotificationEmail() == null)
            return false;
        if (other.getNotificationEmail() != null && other.getNotificationEmail().equals(this.getNotificationEmail()) == false)
            return false;
        if (other.getActiveDirectoryName() == null ^ this.getActiveDirectoryName() == null)
            return false;
        if (other.getActiveDirectoryName() != null && other.getActiveDirectoryName().equals(this.getActiveDirectoryName()) == false)
            return false;
        if (other.getRealm() == null ^ this.getRealm() == null)
            return false;
        if (other.getRealm() != null && other.getRealm().equals(this.getRealm()) == false)
            return false;
        if (other.getDirectoryId() == null ^ this.getDirectoryId() == null)
            return false;
        if (other.getDirectoryId() != null && other.getDirectoryId().equals(this.getDirectoryId()) == false)
            return false;
        if (other.getAdminGroup() == null ^ this.getAdminGroup() == null)
            return false;
        if (other.getAdminGroup() != null && other.getAdminGroup().equals(this.getAdminGroup()) == false)
            return false;
        if (other.getAuthorGroup() == null ^ this.getAuthorGroup() == null)
            return false;
        if (other.getAuthorGroup() != null && other.getAuthorGroup().equals(this.getAuthorGroup()) == false)
            return false;
        if (other.getReaderGroup() == null ^ this.getReaderGroup() == null)
            return false;
        if (other.getReaderGroup() != null && other.getReaderGroup().equals(this.getReaderGroup()) == false)
            return false;
        if (other.getAdminProGroup() == null ^ this.getAdminProGroup() == null)
            return false;
        if (other.getAdminProGroup() != null && other.getAdminProGroup().equals(this.getAdminProGroup()) == false)
            return false;
        if (other.getAuthorProGroup() == null ^ this.getAuthorProGroup() == null)
            return false;
        if (other.getAuthorProGroup() != null && other.getAuthorProGroup().equals(this.getAuthorProGroup()) == false)
            return false;
        if (other.getReaderProGroup() == null ^ this.getReaderProGroup() == null)
            return false;
        if (other.getReaderProGroup() != null && other.getReaderProGroup().equals(this.getReaderProGroup()) == false)
            return false;
        if (other.getFirstName() == null ^ this.getFirstName() == null)
            return false;
        if (other.getFirstName() != null && other.getFirstName().equals(this.getFirstName()) == false)
            return false;
        if (other.getLastName() == null ^ this.getLastName() == null)
            return false;
        if (other.getLastName() != null && other.getLastName().equals(this.getLastName()) == false)
            return false;
        if (other.getEmailAddress() == null ^ this.getEmailAddress() == null)
            return false;
        if (other.getEmailAddress() != null && other.getEmailAddress().equals(this.getEmailAddress()) == false)
            return false;
        if (other.getContactNumber() == null ^ this.getContactNumber() == null)
            return false;
        if (other.getContactNumber() != null && other.getContactNumber().equals(this.getContactNumber()) == false)
            return false;
        if (other.getIAMIdentityCenterInstanceArn() == null ^ this.getIAMIdentityCenterInstanceArn() == null)
            return false;
        if (other.getIAMIdentityCenterInstanceArn() != null && other.getIAMIdentityCenterInstanceArn().equals(this.getIAMIdentityCenterInstanceArn()) == 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-quicksight/src/main/java/com/amazonaws/services/quicksight/model/CreateAccountSubscriptionRequest.java