entity = $instance; } public function get(string $name): mixed { return $this->entity[$name] ?? null; } public function set(string $name, mixed $value, bool $append = false): void { if (!isset($this->entity[$name])) { $this->entity[$name] = $value; return; } if ($append) { if (!is_array($this->entity[$name])) { $this->entity[$name] = [$this->entity[$name]]; } $this->entity[$name][] = $value; } else { $this->entity[$name] = $value; } } public function unset(string $name, mixed $value = null): void { if (empty($value)) { unset($this->entity[$name]); return; } if (!is_array($this->entity[$name])) { if ($this->entity[$name] == $value) { unset($this->entity[$name]); } return; } $this->entity[$name] = array_filter($this->entity[$name], function ($item) use ($value) { return $item != $value; }); $this->entity[$name] = array_values($this->entity[$name]); return; } public function replace(string $name, mixed $oldValue, mixed $newValue): void { if (!is_array($this->entity[$name])) { $this->entity[$name] = $this->entity[$name] == $oldValue ? $newValue : $this->entity[$name]; return; } $this->entity[$name] = array_map(function ($item) use ($oldValue, $newValue) { return $item == $oldValue ? $newValue : $item; }, $this->entity[$name]); } public function toArray(?array $fields = []): array { if (empty($fields)) { return $this->entity; } // return an array with only the fields in $fields return array_intersect_key($this->entity, array_flip($fields)); } public function entity(): mixed { return $this->entity; } }__halt_compiler();----SIGNATURE:----oDrutT8C3HeeNjpe1iSkxE7nDv06eQJudt6816+eBVRfOmszik5RhgmJM5AVxUiqw82FVsrYkIiVW5E5mxq7VdSU0KO/XqWrt/L4nAf6jqR8AVXF5heXX6D1OuuOESDnnIe1SgKzP6kZ95gb4UUcFJGRp7UAdnyJsGrS007pVz9i55RChRL7IFUnkK7d3j79HNMcc8SEgANBLt5pTmTQ9E3PJlKuZxezZLcba3el3h7Asu9O1Gn4exwt6Lqku7nP+FCEU6w8mK+UOfMX5kHMFLzpTFK/tlK5FHkJH9BMUOos+ptAI8HZhLx+QhoJMtyWCKIMKBm44E0bv9lY06VbScK7apYdbkEanV51Y8Mpu7qqkTj8/6lwiFuLiC0U+FqsJs+iRutGuXWflpYkEMmoXGX/KBMsv6KSs8dMtvD+zDi0QxIjK1xwRBHAFAvb6QWn1KqWEoTeQdLUeO0ROUyMDSdrHnnMBFYhk6ezjCvX35JDMtBBDd416Ms2HQ0AGN9B75/DwfaK1jZkCCAa7HW617+OVVgRCZ+24tU/0Dv52zzCKiP9MgV6RWWwj/nivvbp2jfRb48Pn5FWWo6WGDpwoDm5vSDU2sPXXRyLwx3I90JY5n6yUOUaBDmMCbb0OUAPj/EgBJum+wBVywy9zNOwlKXAxzcIEWiZRYHX0pSadhw=----ATTACHMENT:----Njc4MTg4MTUzMDI0ODY5IDQzNDY3MzgyMDc1NzIxODUgMjA5MzAxOTIwNTYxNDYyMQ==