    }
    
    private func _commonInit() {
+      showsPageIndicator = true
       delegate = self
-      dataSource = self
+      dataSource = _dataSource
    }
    
    // MARK: - Life Cycle

}

open class ElementalPageViewController: UIPageViewController {
   // MARK: - Public Properties
   public fileprivate(set) var pages: [UIViewController] = [] {
      didSet {

      self.currentIndex = currentIndex
      _transition(from: viewControllers?.first, to: pages.count > currentIndex ? pages[currentIndex] : nil, direction: direction, animated: animated, notifyDelegate: true, completion: completion)
   }
   
   public var showsPageIndicator: Bool = false {
      didSet {
         guard showsPageIndicator != oldValue else { return }
         _dataSource = showsPageIndicator ? PageIndicatorDataSource(owner: self) : DataSource(owner: self)
         dataSource = _dataSource
      }
   }

   public weak var elementalDelegate: ElementalPageViewControllerDelegate?
   
