     
     private func startBorderLayerAnimation(animated: Bool) {
         if state == .empty {
-            let finalPath = UIBezierPath(
+            let finalPath = centerPath.cgPath
+            /*UIBezierPath(
                 arcCenter: CGPoint(x: sideWidth / 2.0, y: sideWidth / 2.0),
                 radius: sideWidth / 2.0 - currentBorderLineWidth,
                 startAngle: 0.0,
                 endAngle: doublePi,
                 clockwise: true
-                ).cgPath
+            ).cgPath*/
             if animated {
                 with(CABasicAnimation(keyPath: "path")) {
                     $0.fromValue = UIBezierPath(

                clockwise: true
            )
        case .square:
            centerPath = UIBezierPath(
                rect: CGRect(
                    origin: CGPoint.zero,
                    size: CGSize(width: halfSideWidth - currentBorderLineWidth, height: halfSideWidth - currentBorderLineWidth)
                )
            )
        }
        centerShape.path = centerPath.cgPath
        centerShape.fillColor = emptyFillColor.cgColor
    }

        }
    }
    
    private var borderPath: UIBezierPath {
        let centerPoint = CGPoint(x: sideWidth / 2.0, y: sideWidth / 2.0)
        let halfSideWidth = sideWidth / 2.0
        let result: UIBezierPath
        switch form {
        case .circle:
            result = UIBezierPath(
                arcCenter: centerPoint,
                radius: sideWidth / 2.0,
                startAngle: 0.0,
