public function create($name, array $options = [])
    {
        if (!is_string($name)) {
            throw new \InvalidArgumentException(sprintf(
                'The `$name` argument must be a string, `%s` given.',
                Debugger::getType($name)
            ));
        }

        if (strlen(trim($name)) === 0) {
            throw new \InvalidArgumentException('The `$name` argument must not be empty.');
        }

        $menu = $this->getMenuFactory()->createItem($name, $this->_extractMenuOptions($options));
        $this->_addMenu($menu, $this->_extractRendererOptions($options));

        return $menu;
    }