     
     public let labelTitle: UILabel = UILabel()
 
-    var defaultBounces = false
+    private var scrollViewBouncesDefaultValue = false
     
-    var previousOffset: CGFloat = 0
-    var pullToRefreshAction: (() -> ()) = {}
-    var layerLoader: CAShapeLayer = CAShapeLayer()
-    var layerSeparator: CAShapeLayer = CAShapeLayer()
-    var loading: Bool = false {
+    private var previousOffset: CGFloat = 0
+    private var pullToRefreshAction: (() -> ()) = {}
+    private var layerLoader: CAShapeLayer = CAShapeLayer()
+    private var layerSeparator: CAShapeLayer = CAShapeLayer()
+    private var loading: Bool = false {
         
         didSet {
             if loading {


        var scrollView = superview as UIScrollView
        var insets = scrollView.contentInset
        scrollView.bounces = self.defaultBounces
        UIView.animateWithDuration(0.3, animations: { () -> Void in
            scrollView.contentInset = UIEdgeInsets(top: 0, left: insets.left, bottom: insets.bottom, right: insets.right)
        }) { (Bool) -> Void in

        superview?.removeObserver(self, forKeyPath: contentOffsetKeyPath, context: &KVOContext)
        if (newSuperview != nil && newSuperview.isKindOfClass(UIScrollView)) {
            newSuperview.addObserver(self, forKeyPath: contentOffsetKeyPath, options: .Initial, context: &KVOContext)
            scrollViewBouncesDefaultValue = (newSuperview as UIScrollView).bounces
        }
    }
    
