         layer.addSublayer(darkOverlayLayer)
     }
     
-    func checkmarkPath(points: [CGPoint]) -> CGMutablePathRef {
+    private func checkmarkPath(points: [CGPoint]) -> CGMutablePathRef {
         return points.reduce(CGPathCreateMutable()) { (path, point) -> CGMutablePathRef in
             guard !CGPathIsEmpty(path) else { CGPathMoveToPoint(path, nil, point.x, point.y); return path }
             

        }
    }
    
    @IBInspectable var borderWidth: CGFloat = 1
    @IBInspectable var checkmarkColor: UIColor = UIColor(white: 50 / 255, alpha: 1) {
        didSet {
            checkmarkLayer.strokeColor = checkmarkColor.CGColor
            layoutIfNeeded()
        }
    }
    @IBInspectable var checkmarkImage: UIImage? {
        didSet {
            checkmarkImageView.image = checkmarkImage
            layoutIfNeeded()
        }
    }
    @IBInspectable var checkmarkWidth: CGFloat = 1 {
        didSet {
            checkmarkLayer.lineWidth = checkmarkWidth
            layoutIfNeeded()
        }
    }
    @IBInspectable var image: UIImage? {
        didSet {
            backgroundView.image = image
            layoutIfNeeded()
        }
    }
    @IBInspectable var color: UIColor = UIColor.whiteColor() {
        didSet {
            backgroundView.backgroundColor = color
            layoutIfNeeded()
        }
    }
    
    override var frame: CGRect {
        didSet {
            let size = frame.size
            guard size.width != size.height else { return }

    }
    
    //MARK: -
    override public func layoutSubviews() {
        super.layoutSubviews()
        
        layer.cornerRadius = frame.size.height / 2
