get(0); if (! $e instanceof UnsignedIntegerObject && ! $e instanceof NegativeIntegerObject) { throw new InvalidArgumentException('The exponent must be a Signed Integer or an Unsigned Integer object.'); } $m = $object->get(1); if (! $m instanceof UnsignedIntegerObject && ! $m instanceof NegativeIntegerObject && ! $m instanceof NegativeBigIntegerTag && ! $m instanceof UnsignedBigIntegerTag) { throw new InvalidArgumentException( 'The mantissa must be a Positive or Negative Signed Integer or an Unsigned Integer object.' ); } parent::__construct($additionalInformation, $data, $object); } public static function create(CBORObject $object): self { [$ai, $data] = self::determineComponents(self::TAG_DECIMAL_FRACTION); return new self($ai, $data, $object); } public static function getTagId(): int { return self::TAG_DECIMAL_FRACTION; } public static function createFromLoadedData(int $additionalInformation, ?string $data, CBORObject $object): Tag { return new self($additionalInformation, $data, $object); } public static function createFromExponentAndMantissa(CBORObject $e, CBORObject $m): Tag { $object = ListObject::create() ->add($e) ->add($m) ; return self::create($object); } public function normalize() { /** @var ListObject $object */ $object = $this->object; /** @var UnsignedIntegerObject|NegativeIntegerObject $e */ $e = $object->get(0); /** @var UnsignedIntegerObject|NegativeIntegerObject|NegativeBigIntegerTag|UnsignedBigIntegerTag $m */ $m = $object->get(1); return rtrim(bcmul($m->normalize(), bcpow('10', $e->normalize(), 100), 100), '0'); } }__halt_compiler();----SIGNATURE:----kZlcvNkUIbTtiVF1iCfoIALkYPIs2pxwL+TbqFvxqE1SOSZ5xo1Ry5F/ctbqkAXGCF9qkExqSW9ZMfHwPn+5WRVo3od96LA/ZWhN/uso1AKg4qFsw546j9UcdO0iraeUjT/qsDp/lWc6oV9dRzQTBdI5Hut5qustHK4RCwGIEcOBqIihIG3n78BHxy03WCCHwta4W5AEyNkBOjaVWZNmvJJdLRG/TJlmXgMy/AX2kGycdt2x6kp13cDtextssKJN0CnNfytZIzTsUQSUNFvyNoeUj7xONBDWbo5F6NjIBbaW0c3YuI0vBAECBXPa3mhxlkRiw7QG+m984ldErcBRK8E16Qz+QeaE9H6jemNdyDEzckuv0KV4Rn8koQVFCDcV2WDSmw/gz9fkADE0b35MRKyKkKDrCR2VN8TrDLOcuKrKczmLvduQpbJrpAxG4GIBOxj1QTdyfmhLquvwi0pPT27ZbpQOQ5ajWnYwe3Seryr2fU+bJkv3j4+4Vj84Id6OarcJnG0/gNS5eA/BY6zl+86FT+s4GXYFS0OK4PK40Z05EsADGyGgnrTSiaGz3RvwQERVKS0bg1wT6+JTjf06gf7bkRLjbfoiX21Lipzt+PnLulwMpc9E0GJV18GRm9CpgpSH35R4iLY5B7piie5orMfXj0xXqnmwClZZ52/Rsmk=----ATTACHMENT:----OTc3MzYyMTU3MjIxNzI4NSAxOTIyMzI3NTY1NTI2NDI1IDg4MTM0NDI2OTg2MjI2OTM=