     static let defaultLength = 30
     
     // MARK: - Init
-    
     required public init?(coder aDecoder: NSCoder) {
         super.init(coder: aDecoder)
         super.delegate = self

        }
    }
    
    // MARK: - IBInspectable: Limits and behaviors
    
    @IBInspectable public dynamic var animate : Bool = true
    @IBInspectable public dynamic var ascending : Bool = true
    @IBInspectable public var maxLength : Int = TextFieldCounter.defaultLength {
        didSet {
            if (!isValidMaxLength(max: maxLength)) {
                maxLength = TextFieldCounter.defaultLength
            }
        }
    }
    @IBInspectable public dynamic var counterColor : UIColor = .lightGray
    @IBInspectable public dynamic var limitColor: UIColor = .red
    
    // MARK: - Enumerations and Constants
    
    enum AnimationType {
        case basic
        case didReachLimit

            animateCounterLabelColor(color: limitColor)
            fireHapticFeedback()
            if (animate) {
                counterLabel.shake(transform: CGAffineTransform(translationX: 5, y: 0), duration: 0.3)
            }
        default:
            break
