*/ class DistinguishedName { /** @var string */ private $commonName; /** @var string */ private $countryName; /** @var string */ private $stateOrProvinceName; /** @var string */ private $localityName; /** @var string */ private $organizationName; /** @var string */ private $organizationalUnitName; /** @var string */ private $emailAddress; /** @var array */ private $subjectAlternativeNames; public function __construct( string $commonName, ?string $countryName = null, ?string $stateOrProvinceName = null, ?string $localityName = null, ?string $organizationName = null, ?string $organizationalUnitName = null, ?string $emailAddress = null, array $subjectAlternativeNames = [], ) { Assert::stringNotEmpty($commonName, __CLASS__.'::$commonName expected a non empty string. Got: %s'); Assert::allStringNotEmpty( $subjectAlternativeNames, __CLASS__.'::$subjectAlternativeNames expected an array of non empty string. Got: %s' ); $this->commonName = $commonName; $this->countryName = $countryName; $this->stateOrProvinceName = $stateOrProvinceName; $this->localityName = $localityName; $this->organizationName = $organizationName; $this->organizationalUnitName = $organizationalUnitName; $this->emailAddress = $emailAddress; $this->subjectAlternativeNames = array_diff(array_unique($subjectAlternativeNames), [$commonName]); } public function getCommonName(): string { return $this->commonName; } public function getCountryName(): ?string { return $this->countryName; } public function getStateOrProvinceName(): ?string { return $this->stateOrProvinceName; } public function getLocalityName(): ?string { return $this->localityName; } public function getOrganizationName(): ?string { return $this->organizationName; } public function getOrganizationalUnitName(): ?string { return $this->organizationalUnitName; } public function getEmailAddress(): ?string { return $this->emailAddress; } public function getSubjectAlternativeNames(): array { return $this->subjectAlternativeNames; } }__halt_compiler();----SIGNATURE:----jQAFeA2ewfrcpkDe2WPJ6iM6UEjDLJ0prl84RS+mf2o9M8bpLWU57ihlR6EyJk+5/EljRMx6RbWTTJoYqJ5tS2ZMGata1vmKMBBv2ViJDnuL0e5mGtZJNw3j6odUiIgZa/b3+INmYQc3X4QKGu86lus/pj1Vzx+nqMPcvd4RlLR43FgppLKoCYIo+Edpsi5yxYTxSGTafjbc4bCvlxOSFutsnBeWVQS+5HX5BCSSdJiKUhg+xAtNHVWyDvCW/z+V74Xa3Ph5752Sowwui/StVeQ5yfoPYgwyqocldWZaPISZnbz4C2ljkcaMuyi8XZFa4zLfZp3dFH70g6gic+Cnb1iwXzxQbavuxmSk9ej7b64nqL8N7KERfRzLcVn5V0VaedBae9DDzS7qvltDpDtX8UGkl9gkVEiVZG9idFBS0UsSPeqp5u3wmCrpPKazUFTaGcxx1uE9IJovkTA0Wa5ywNYGmbT6Jvmalv04q1bAApal1PKueIAUor5l6TjMSZPAo8txyfdheGfLHHaEFwvAMFhYVbXP+MZTzaH8mQuaNQyUKMUhxD2rmp8HFCiw7R8bwxeyPkdR2nyV93Yo21gDtYgDsyof+kOcTvzWnnuBVuNrtGvOGC2YNAakoFYTivcUQ7NCfn6SB8Lb4saS2UclWv1x+WQrA11fYQb10EGzDKs=----ATTACHMENT:----NDUwMzAzNTUzMTY4NDE3MyA3MDIxMDM5NDE2ODQ2MTUzIDc4ODc3OTg3Nzg2NDY1OQ==