             guard let weakSelf = self else {
                 return
             }
+            weakSelf.scrollViewBounces = weakSelf.scrollView?.bounces ?? true
             weakSelf.scrollViewInsets = weakSelf.scrollView?.contentInset ?? UIEdgeInsets.zero
         }
     }

        // ignore observer
        self.ignoreObserver(true)
        
        // call super start
        super.start()
        

            self.handler?()
            // un-ignore observer
            self.ignoreObserver(false)
            scrollView.bounces = self.scrollViewBounces
        })
        
    }
