public function mainMenu(array $args = [])
    {
        $defaults = [
            'searchForm'     => false,
            'btnColor'       => 'default',
            'containerEl'    => 'div',
            'containerId'    => 'navbar-collapse-main-menu',
            'containerClass' => 'navbar-collapse-main-menu navbar-collapse collapse',
            'menuEl'         => 'ul',
            'menuId'         => 'navbar-main-menu',
            'menuClass'      => 'navbar-main-menu navbar-nav nav',
            'depth'          => 2,
            'indent'         => 2
        ];

        $args = wp_parse_args($args, $defaults);
        extract($args, EXTR_SKIP);

        $tab = '    ';
        $indent = (integer) $indent;

        $wrap = [];
        $wrap[] = PHP_EOL;
        $wrap[] = str_repeat($tab, $indent + 1);
        $wrap[] = sprintf('<%s id="%%1$s" class="%%2$s">', $menuEl);
        $wrap[] = PHP_EOL;
        $wrap[] = '%3$s';
        $wrap[] = str_repeat($tab, $indent + 1);
        $wrap[] = sprintf('</%s><!-- #%s -->', $menuEl, $menuId);

        if ($searchForm) {
            $wrap[] = $this->getNavbarSearchForm($btnColor);
        }

        $wrap[] = PHP_EOL;
        $wrap[] = str_repeat($tab, $indent);

        $output = [];
        $output[] = wp_nav_menu([
            'theme_location'  => 'main-menu',
            'container'       => $containerEl,
            'container_id'    => $containerId,
            'container_class' => $containerClass,
            'menu_id'         => $menuId,
            'menu_class'      => $menuClass,
            'items_wrap'      => implode('', $wrap),
            'depth'           => $depth,
            'echo'            => false,
            'walker'          => new NavbarWalker($indent + 2)
        ]);
        $output[] = sprintf('<!-- #%s -->', $containerId);

        return apply_filters('novusopress_view_main_menu_output', implode('', $output));
    }