// Path: src/main/java/org/fuin/ddd4j/ddd/Ddd4JUtils.java
// public static final String SHORT_ID_PREFIX = "DDD4J";


import org.fuin.objects4j.common.MarshalInformation;
import org.fuin.objects4j.common.ToExceptionCapable;
import org.fuin.objects4j.vo.ValueObject;
import static org.fuin.ddd4j.ddd.Ddd4JUtils.SHORT_ID_PREFIX;
import java.io.Serializable;
import jakarta.json.bind.annotation.JsonbProperty;
import jakarta.validation.constraints.NotNull;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlRootElement;
import org.fuin.objects4j.common.Contract;
import org.fuin.objects4j.common.ExceptionShortIdentifable;

            result = prime * result + ((sid == null) ? 0 : sid.hashCode());
            result = prime * result + version;
            return result;
        }

        @Override
        public boolean equals(Object obj) {
            if (this == obj)
                return true;
            if (obj == null)
                return false;
            if (getClass() != obj.getClass())
                return false;
            Data other = (Data) obj;
            if (aggregateId == null) {
                if (other.aggregateId != null)
                    return false;
            } else if (!aggregateId.equals(other.aggregateId))
                return false;
            if (aggregateType == null) {
                if (other.aggregateType != null)
                    return false;
            } else if (!aggregateType.equals(other.aggregateType))
                return false;
            if (message == null) {
                if (other.message != null)
                    return false;
            } else if (!message.equals(other.message))
                return false;
            if (sid == null) {

// Path: src/main/java/org/fuin/ddd4j/ddd/Ddd4JUtils.java
// public static final String SHORT_ID_PREFIX = "DDD4J";


// Path: src/main/java/org/fuin/ddd4j/ddd/AggregateAlreadyExistsException.java
import org.fuin.objects4j.common.MarshalInformation;
import org.fuin.objects4j.common.ToExceptionCapable;
import org.fuin.objects4j.vo.ValueObject;
import static org.fuin.ddd4j.ddd.Ddd4JUtils.SHORT_ID_PREFIX;
import java.io.Serializable;
import jakarta.json.bind.annotation.JsonbProperty;
import jakarta.validation.constraints.NotNull;
import jakarta.xml.bind.annotation.XmlAccessType;
import jakarta.xml.bind.annotation.XmlAccessorType;
import jakarta.xml.bind.annotation.XmlElement;
import jakarta.xml.bind.annotation.XmlRootElement;
import org.fuin.objects4j.common.Contract;
import org.fuin.objects4j.common.ExceptionShortIdentifable;

            result = prime * result + ((sid == null) ? 0 : sid.hashCode());
            result = prime * result + version;
            return result;
        }

        @Override
        public boolean equals(Object obj) {
            if (this == obj)
                return true;
            if (obj == null)
                return false;
            if (getClass() != obj.getClass())
                return false;
            Data other = (Data) obj;
            if (aggregateId == null) {
                if (other.aggregateId != null)
                    return false;
            } else if (!aggregateId.equals(other.aggregateId))
                return false;
            if (aggregateType == null) {
                if (other.aggregateType != null)
                    return false;
            } else if (!aggregateType.equals(other.aggregateType))
                return false;
            if (message == null) {
                if (other.message != null)
                    return false;
            } else if (!message.equals(other.message))
                return false;
            if (sid == null) {

                if (other.sid != null)
