         }
     }
     
-    var unselectedBorderColor: UIColor? {
+    public var unselectedBorderColor: UIColor? {
         set{
             _unselectedTrackLayer.borderColor = newValue?.CGColor
         }

private var defaultMinValue:CGFloat = 0.0
private var defaultMaxValue:CGFloat = 1.0

@IBDesignable class GVCenterSlider: UIControl {
    
    var actionBlock: ((slider: GVCenterSlider, value: CGFloat) -> Void)?
    
    //MARK: Properties
    @IBInspectable var selectedColor: UIColor = defaultSelectedColor {
        didSet {
            _selectedTrackLayer.backgroundColor = self.selectedColor.CGColor
            _centerDotLayer.backgroundColor = self.selectedColor.CGColor
        }
    }
    
    @IBInspectable var unselectedColor: UIColor = defaultUnselectedColor {
        didSet {
            _unselectedTrackLayer.backgroundColor = self.unselectedColor.CGColor
        }
    }
    
    @IBInspectable var value: CGFloat {
        get{ return _value }
        set{ self.setValue(newValue, animated:true) }
    }
    
    func setValue(value: CGFloat, animated: Bool = true) {
        _value = max(min(value, self.maximumValue), self.minimumValue)
        self.updateThumbPosition(animated: animated)
    }
    
    @IBInspectable var minimumValue: CGFloat = defaultMinValue // default 0.0. the current value may change if outside new min value
    @IBInspectable var maximumValue: CGFloat = defaultMaxValue // default 1.0. the current value may change if outside new max value
    
    @IBInspectable var minimumValueImage: UIImage? = nil { // default is nil. image that appears to left of control (e.g. speaker off)
        didSet{
            if let img = self.minimumValueImage {
                let imgLayer = _minTrackImageLayer ?? {

        }
    }
    
    @IBInspectable public var centerDotSize: CGFloat = defaultCenterDotSize {
        didSet {
            _centerDotLayer.cornerRadius = self.centerDotSize / 2.0
            _centerDotLayer.bounds = CGRectMake(0, 0, self.centerDotSize, self.centerDotSize)
