$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:----CQQv3YpE5EgAjbvNi6mUQq0k2VM/WKkdSgJDUZfcGdB6hd3a2Qh2vimdBA37krjR+ewehKY8Z9LMqketcJkCaWhXQIRM+sd4WtXgsFJMx2wHpjOcKEQ6S/JPxYopnyByqcvRW0J1S/DuV6oS9DPVvQRxl8aq6ZHYAhPK83B/MVLW1Lf4OmVrm1HS8QwsyalYlJkvTwcr/sgiyLof/dZOFfMgCHQ2IbN9t7fG1x4LC3TVCbPy51mu5ZrL/eoeq/qy2vvnuRfbKzke0sc+KogIe94Oin5R0jPb//jRMWSaXIvklDGaNO+aYKBRYUYTPGrvmdUnrGbg5G99k8IBPQJXmHRdfywO1gQ+6KKfZdZDl2BtNehNj+N6QsoWxd0zZWGTg+Q2xNA+EQrkJCuHSQqPbjkD2jkoplERDTj4NAlhLr779dw+9Bwx+kBBqCuwzI75/JJlWpaFODVvS3C+sQwt77zS01ek+dG+UpUswatWNpJCFPLzf0YjG29/H+shi3bhbeT6npu8Cz27Y1o5vphBCpZWmp2Mwh2ah1Vywt32fNcidgmJHtaeD0rWUxD0q1zknc0wYUXHOBVvaPiSrMuk0z6uplsmEOR/xXnv+Wk1VWwBPbVntB5SIzeqqLPL6tOAHfO7HGVo8CbxDhPwJSAw6xG82AgjZDCqp1nY8ilHnqU=----ATTACHMENT:----MTU4MjQ4NzEyNDI4NDc3NyA4MDgxNDcyNDkzNDY1NDI0IDE3MTMwOTU0MDk0NDU4OTg=