private CreateOrganization(
     Guid guid,
     OrganizationType type,
     CreateOrUpdateContacts contacts,
     string legalName,
     string legalAddress,
     string actualName,
     string tin,
     CreateOrganizationLogo?logo,
     IEnumerable <CreateImage>?images)
 {
     Guid         = guid;
     Type         = type;
     Contacts     = contacts;
     LegalName    = legalName;
     LegalAddress = legalAddress;
     ActualName   = actualName;
     TIN          = tin;
     Logo         = logo;
     Images       = images == null?Array.Empty <CreateImage>() : images.ToArray();
 }
        /// <summary>
        /// </summary>
        /// <param name="type"></param>
        /// <param name="contacts"></param>
        /// <param name="legalName"></param>
        /// <param name="legalAddress"></param>
        /// <param name="actualName"></param>
        /// <param name="actualAddress"></param>
        /// <param name="actualGeoPosition"></param>
        /// <exception cref="ValidationException"></exception>
        public static CreateOrganization New(
            OrganizationType type,
            CreateOrUpdateContacts contacts,
            string legalName,
            string legalAddress,
            string actualName,
            string tin,
            CreateOrganizationLogo?logo,
            IEnumerable <CreateImage> images)
        {
            var createOrganization = new CreateOrganization(
                Guid.NewGuid(),
                type,
                contacts,
                legalName,
                legalAddress,
                actualName,
                tin,
                logo,
                images);

            new CreateOrganizationValidator().ValidateAndThrow(createOrganization);
            return(createOrganization);
        }