     /// Remove page from Container
     ///
     /// - Parameter page: Page
-    public final func removeSubPages(page: Page) {
+    public final func removeSubPage(page: Page) {
         switch page.pageType {
         case .view(let view):
             view.removeFromSuperview()
         case .viewController(let controller):
-            addSubview(controller.view)
             controller.view.removeFromSuperview()
             controller.removeFromParentViewController()
         }

    
    /// Override this function to custom clear if need
    open func clearPage() {
        visiblePages.filter{ $0 != nil }.forEach{ removeSubPages(page: $0!) }
        visiblePages = Array(repeating: nil, count: numberOfPages)
        reuseablePages = [:]
    }

                }
                
                if !visibleIndexCollection.contains(index), let inVisiblePage = page {
                    enterReuseQueue(inVisiblePage, withIndex: index)
                }
            }
        } else {
