$data * @return SecurityAdvisory|PartialSecurityAdvisory */ public static function create(string $packageName, array $data, VersionParser $parser): self { $constraint = $parser->parseConstraints($data['affectedVersions']); if (isset($data['title'], $data['sources'], $data['reportedAt'])) { return new SecurityAdvisory($packageName, $data['advisoryId'], $constraint, $data['title'], $data['sources'], new \DateTimeImmutable($data['reportedAt'], new \DateTimeZone('UTC')), $data['cve'] ?? null, $data['link'] ?? null); } return new self($packageName, $data['advisoryId'], $constraint); } public function __construct(string $packageName, string $advisoryId, ConstraintInterface $affectedVersions) { $this->advisoryId = $advisoryId; $this->packageName = $packageName; $this->affectedVersions = $affectedVersions; } /** * @return mixed */ #[\ReturnTypeWillChange] public function jsonSerialize() { $data = (array) $this; $data['affectedVersions'] = $data['affectedVersions']->getPrettyString(); return $data; } } __halt_compiler();----SIGNATURE:----c8W+H7DVtZD2Jak2++2ygWb/lltNR01CJToUKixTqfR7EmnN84Imvd9Qn4y8nnBgVOnjJcS15IN6BdS63CRXF+Dsc3rEC8wFxEyKsFR/LgIS4qgZtRkr5TaeKQD2CXnCvVa4kA8QAQtc+rY+HqazdjB9ZYn4Dtggp2GHIxHCaETw8ZLCt8fkTeuB+WePtlv/Nc2mZO+JRei0OcgUJiDfaJ/Ga9mQEzb0DAKI57Fbuz4OWoytjlXn/vwmKcwq2ZhCzjPyzJwIjDfhj+UtXHWWu582/esqW/kGf7Ar3bkwK5mKrR65i7xXt2eO64MVn/rdpWDgdjL7MNgj5FLk/nkDqxNUk9vMCbzTS5bVJQQIeLWq0DBdaZtEK9l/1dP/fYCWJHHOVRClkwQMtbt5CpgtfJEFnW3Sf3ackc+YD8K9ZArlYWAll54TOG3wFPTFfHcKIqRr1e8NJnEYVmO0MvRI83whgZdts8YzsDsIxTxBjkbN3Or5P9gP6nqo9c+AEgmc4z5AUF2USXLOkZWqnaVAVBqhNYjOjTdWfBgIpG/DjbB+oT3627fOjwqWRPv1fUzpYelNkiiN3lc2Wde3Dm4xBXk/mNp7bFKBtntkOJRvnfVfBcxb2aQxYV3gAfaPZhEHyb+nDJ2FEHQ3U4UUeLdbyGRkEeYVm+BmcJn/mXWyTes=----ATTACHMENT:----Njc3MDQ0MjgyNDE4Mjg3MSA3NzI0MDk4MDg2NTUwMzM1IDY5ODAyOTA4MTI1OTQ1ODk=