 
         if sender as NSObject == sliderPanGestureRecogniser {
         
-            switch (sender.state) {
+            switch sender.state {
              
             case .Began:
                 
                 isCurrentDraggingSlider = true
                 touchesBeganPoint = sliderPanGestureRecogniser.translationInView(sliderView)
                 dynamicButtonAnimator.removeBehavior(snappingBehavior)
-                lastDelegateFireOffset = (self.bounds.size.width * 0.5) + ((touchesBeganPoint.x + touchesBeganPoint.x) * 0.40)
+                lastDelegateFireOffset = (bounds.size.width * 0.5) + ((touchesBeganPoint.x + touchesBeganPoint.x) * 0.40)
                 
             case .Changed:
                 
                 let translationInView = sliderPanGestureRecogniser.translationInView(sliderView)
-                let translatedCenterX:CGFloat = (self.bounds.size.width * 0.5) + ((touchesBeganPoint.x + translationInView.x) * 0.40)
+                let translatedCenterX:CGFloat = (bounds.size.width * 0.5) + ((touchesBeganPoint.x + translationInView.x) * 0.40)
                 sliderView.center = CGPointMake(translatedCenterX, sliderView.center.y);
                 
                 if (translatedCenterX < lastDelegateFireOffset) {
                     
-                    if (fabs(self.lastDelegateFireOffset - translatedCenterX) >= (sliderView.bounds.size.width * 0.15)) {
+                    if (fabs(lastDelegateFireOffset - translatedCenterX) >= (sliderView.bounds.size.width * 0.15)) {
                         
-                        self.delegate?.snappingSliderDidDecrementValue(self)
+                        delegate?.snappingSliderDidDecrementValue(self)
                         lastDelegateFireOffset = translatedCenterX
                     }
                 }

                    
                    if (fabs(lastDelegateFireOffset - translatedCenterX) >= (sliderView.bounds.size.width * 0.15)) {
                        
                        self.delegate?.snappingSliderDidIncrementValue(self)
                        lastDelegateFireOffset = translatedCenterX
                    }
                }
                
            case .Ended:
                
                self.dynamicButtonAnimator.addBehavior(snappingBehavior)
                isCurrentDraggingSlider = false
                lastDelegateFireOffset = self.center.x
                
            case .Failed:
                
                self.dynamicButtonAnimator.addBehavior(snappingBehavior)
                isCurrentDraggingSlider = false
                lastDelegateFireOffset = self.center.x
                
            case .Possible:
                
                println("")
                
            case .Cancelled:
                
                self.dynamicButtonAnimator.addBehavior(snappingBehavior)
                isCurrentDraggingSlider = false
                lastDelegateFireOffset = self.center.x
            }
        }
        
    }
    
}

final class SliderSnappingBehavior: UIDynamicBehavior {

        
        super.init()
        
        addChildBehavior(dynamicItemBehavior)
        addChildBehavior(snapBehavior)
    }
}
