protected function checkValueStructure(BaseValue $value) { if (!$value->date instanceof DateTime) { throw new InvalidArgumentType("{$value->date}", 'DateTime', $value->date); } }