 
 extension ColorMatchTabsViewController: CircleMenuDataSource {
     
-    public func numberOfItems(inMenu circleMenu: CircleMenu) -> Int {
+    open func numberOfItems(inMenu circleMenu: CircleMenu) -> Int {
         return dataSource?.numberOfItems(inController: self) ?? 0
     }
     
-    public func circleMenu(_ circleMenu: CircleMenu, tintColorAt index: Int) -> UIColor {
+    open func circleMenu(_ circleMenu: CircleMenu, tintColorAt index: Int) -> UIColor {
         return dataSource!.tabsViewController(self, tintColorAt: index)
     }
     


extension ColorMatchTabsViewController: ScrollMenuDelegate {
    
    public func scrollMenu(_ scrollMenu: ScrollMenu, didSelectedItemAt index: Int) {
        updateNavigationBar(forSelectedIndex: index)
        if _view.tabs.selectedSegmentIndex != index {
            _view.tabs.selectedSegmentIndex = index


extension ColorMatchTabsViewController: ColorTabsDataSource {
    
    open func numberOfItems(inTabSwitcher tabSwitcher: ColorTabs) -> Int {
        return dataSource?.numberOfItems(inController: self) ?? 0
    }
    
    open func tabSwitcher(_ tabSwitcher: ColorTabs, titleAt index: Int) -> String {
        return dataSource!.tabsViewController(self, titleAt: index)
    }
    
    open func tabSwitcher(_ tabSwitcher: ColorTabs, iconAt index: Int) -> UIImage {
        return dataSource!.tabsViewController(self, iconAt: index)
    }
    
    open func tabSwitcher(_ tabSwitcher: ColorTabs, hightlightedIconAt index: Int) -> UIImage {
        return dataSource!.tabsViewController(self, hightlightedIconAt: index)
    }
    
    open func tabSwitcher(_ tabSwitcher: ColorTabs, tintColorAt index: Int) -> UIColor {
        return dataSource!.tabsViewController(self, tintColorAt: index)
    }
    
