         }
     }
     
-    internal var thumbTintColor: UIColor = UIColor.whiteColor() {
+    internal var thumbTintColor: UIColor = .white {
         willSet {
             backgroundView.backgroundColor = isOn ? onThumbTintColor : newValue
         }
     }
-    internal var onThumbTintColor: UIColor = UIColor.whiteColor() {
+    internal var onThumbTintColor: UIColor = .white {
         willSet {
             backgroundView.backgroundColor = isOn ? newValue : thumbTintColor
         }
     }
-    internal var shadowColor: UIColor = UIColor.grayColor() {
+    internal var shadowColor: UIColor = .gray {
         willSet {
-            backgroundView.layer.shadowColor = newValue.CGColor
+            backgroundView.layer.shadowColor = newValue.cgColor
         }
     }
     

    }
    
    override internal init(frame: CGRect) {
        let squareRect = CGRectMake(0, 0, defaultFrame.height, defaultFrame.height)
        let initialFrame = CGRectIsEmpty(frame) ? CGRectInset(squareRect, borderMargin, borderMargin) : frame
        super.init(frame: initialFrame)
        setup()
    }
    
    private func setup() {
        backgroundView = UIView(frame: self.bounds)

        backgroundView.layer.cornerRadius = self.frame.height * 0.5
        backgroundView.layer.shadowPath = UIBezierPath(roundedRect: self.bounds, cornerRadius: backgroundView.layer.cornerRadius).CGPath
        backgroundView.layer.shadowRadius = 4.0
        backgroundView.layer.shadowOpacity = 0
        backgroundView.layer.shadowColor = shadowColor.CGColor
        backgroundView.layer.shadowOffset = CGSizeMake(0, 7)
        backgroundView.layer.masksToBounds = false

        self.addSubview(backgroundView)
        self.userInteractionEnabled = false
        
        setupSignViews()
    }

    private var thumbAnimationGroup: CAAnimationGroup!
    private var isOn: Bool = false
    private var isTracking: Bool = false
    
    // MARK: - Lifecycle -
    /**
     *   Initialization
     */
    
    required internal init?(coder aDecoder: NSCoder) {
        super.init(coder: aDecoder)
