/** * {@inheritDoc} */ public function val($value = null) { if ($value === null) { return parent::val(); } $this->children = []; if ($value) { foreach ($value as $key => $value) { $child = isset($this->children[$key]) ? $this->children[$key] : $this->createDuplicate($key); $child->val($value); } } return $this; }