 @objc
 open class DKPhotoGalleryContentVC: UIViewController, UIScrollViewDelegate {
     
-    internal var dataSource: DKPhotoGalleryContentDataSource!
-    internal var delegate: DKPhotoGalleryContentDelegate?
+    internal weak var dataSource: DKPhotoGalleryContentDataSource!
+    internal weak var delegate: DKPhotoGalleryContentDelegate?
     
     public var pageChangeBlock: ((_ index: Int) -> Void)?
     public var prepareToShow: ((_ previewVC: DKPhotoBasePreviewVC) -> Void)?

        self.updateFooterView()
        
        if self.dataSource.hasIncrementalDataForLeft() {
            self.leftIncrementalIndicator = DKPhotoIncrementalIndicator.indicator(with: .left) {
                self.dataSource.incrementalItemsForLeft { [weak self] (count) in
                    guard let strongSelf = self, let leftIncrementalIndicator = strongSelf.leftIncrementalIndicator else { return }
                    
                    let scrollView = strongSelf.mainView


////////////////////////////////////////////////////////////

internal protocol DKPhotoGalleryContentDataSource: class {
    
    func item(for index: Int) -> DKPhotoGalleryItem
    
