protected function setEmbed($key, $value)
    {
        if (true === $this->isEmbedHasOne($key)) {
            return $this->setEmbedHasOne($key, $value);
        }
        if (true === $this->isEmbedHasMany($key)) {
            throw new \RuntimeException('You cannot set a hasMany embed directly. Please access using pushEmbed(), clear(), and/or remove()');
        }
        return $this;
    }