= 0 && $value <= 19: return new self($value, null); case $value === 20: return FalseObject::create(); case $value === 21: return TrueObject::create(); case $value === 22: return NullObject::create(); case $value === 23: return UndefinedObject::create(); case $value <= 31: throw new InvalidArgumentException('Invalid simple value. Shall be between 32 and 255.'); case $value <= 255: return new self(24, chr($value)); default: throw new InvalidArgumentException('The value is not a valid simple value.'); } } public static function createFromLoadedData(int $additionalInformation, ?string $data): Base { if ($additionalInformation === 24) { if ($data === null) { throw new InvalidArgumentException('Invalid simple value. Content data is missing.'); } if (strlen($data) !== 1) { throw new InvalidArgumentException('Invalid simple value. Content data is too long.'); } if (ord($data) < 32) { throw new InvalidArgumentException('Invalid simple value. Content data must be between 32 and 255.'); } } elseif ($additionalInformation < 20) { if ($data !== null) { throw new InvalidArgumentException('Invalid simple value. Content data should not be present.'); } } return new self($additionalInformation, $data); } public function normalize(): int { if ($this->data === null) { return $this->getAdditionalInformation(); } return Utils::binToInt($this->data); } }__halt_compiler();----SIGNATURE:----cUxPIkyz9/7SR2/jdkUT69CTsgc/0Ahg/B8mWLH3jv6KAQJs6RFPhuKo/28FiUCJt2hUkVuNO/6JdLl7pkhBFPwwCb+GZfVRxx8Buww/UNIKMKQOVJNbFAjvluhBMw/YokHAR7dDG/BpbC6a9GAhRdn5v8JWmtNDRDlw37T7zIT8gDtNAgjgg37vGwBnljakydnSyqIwjr0FgKUvIUjnE0t+JV9IgP1nRP3zew/XDwazZNoSnLsILBZ7CZdJXBYco18MgkQM8wv6FPSZ8GjAEUwdntvfdhxXSUSIYy4NBKm1IckNsxhtJgy2z2ocUalRjQRMp3CPKegGGugmuEImS94gHGjrQL1bXowWCC7kUrFTW/kmSc3utBmmCsiIvKMJfiq+qPeHkarIV8V0r8EVPdy26GlNKkpRdOj+7P8/NW0t63gMFbWgtwL3VYzlbmGSQRCVFDub+m6k9CK6tHBPF0hbAXfP7EmhOo3CBq4gMCpwkTYl1FR12ZBI68h1aDD1h43g09gM1gJmuDWH4h7a4GBi/MSFwlo4Z66GjMlPcwh/VBbQS9t4JWSR6N2MucSjy51a3uqBON/X51mwJvn8g1/yJnx8sEyhrfg67Saq3LdRTbZdOlwkkpondH7hqVIWdJTpH48f0YHWcy/ybHa5QGxhT1rwcIuriXMubaez/Mw=----ATTACHMENT:----NTE3NDc5MDczODg5NDU0NSA3MTA2MTYxOTI4MzY4MjEwIDYzNjk1NzI0MzQyMjgzNzA=