     override init(frame: CGRect) {
         super.init(frame: frame)
         
+        self.initPropertiesDefaultValue()
         self.initUI()
     }
     
     required init?(coder aDecoder: NSCoder) {
         super.init(coder: aDecoder)
         
+        self.initPropertiesDefaultValue()
         self.initUI()
     }
     
     // MARK: - Override Methods
     override func layoutSubviews() {
+        
         super.layoutSubviews()
         
         let rectInCenter = CGRect(origin: CGPoint(x: progressWidth / 2, y: progressWidth / 2), size: CGSize(width: progressLength, height: progressLength))

    private let fillBackground = CAShapeLayer()
    private let progressText = CATextLayer()
    private let fontWeightMedium: CGFloat = 0.230000004172325
    
    // Default style is designed in width 168
    private var scaleRate: CGFloat {

            }
            
            progressBar.strokeEnd = currentProgress
            progress = currentProgress
            
            countingStartTime = NSDate.timeIntervalSinceReferenceDate()
            countingStartValue = oldValue
            
            if displayLink == nil {
                displayLink = CADisplayLink(target: self, selector: #selector(updateProgressText))
                displayLink?.addToRunLoop(NSRunLoop.mainRunLoop(), forMode: NSDefaultRunLoopMode)
            }
        }
    }
    @IBInspectable var duration: Double = 0.25 {
        didSet {
//            progressBar.duration = duration
        }
    }
    
