 	
 	/// The animation for the placeholder when editing begins.
 	open func placeholderEditingDidBeginAnimation() {
-		if placeholderLabel.transform.isIdentity {
-			isAnimating = true
-			UIView.animate(withDuration: 0.15, animations: { [weak self] in
-				if let s = self {
-					s.placeholderLabel.transform = CGAffineTransform(scaleX: 0.75, y: 0.75)
-					switch s.textAlignment {
-					case .left, .natural:
-						s.placeholderLabel.x = 0
-					case .right:
-						s.placeholderLabel.x = s.width - s.placeholderLabel.width
-					default:break
-					}
-					s.placeholderLabel.y = -s.placeholderLabel.height + s.placeholderVerticalOffset
-					s.placeholderLabel.textColor = s.placeholderActiveColor
-				}
-			}) { [weak self] _ in
-				self?.isAnimating = false
-			}
-		} else if isEditing {
-			placeholderLabel.textColor = placeholderActiveColor
-		}
+        guard placeholderLabel.transform.isIdentity else {
+            if isEditing {
+                placeholderLabel.textColor = placeholderActiveColor
+            }
+            return
+        }
+        
+        isAnimating = true
+        UIView.animate(withDuration: 0.15, animations: { [weak self] in
+            guard let s = self else {
+                return
+            }
+            
+            s.placeholderLabel.transform = CGAffineTransform(scaleX: 0.75, y: 0.75)
+            
+            switch s.textAlignment {
+            case .left, .natural:
+                s.placeholderLabel.x = 0
+            case .right:
+                s.placeholderLabel.x = s.width - s.placeholderLabel.width
+            default:break
+            }
+            
+            s.placeholderLabel.y = -s.placeholderLabel.height + s.placeholderVerticalOffset
+            s.placeholderLabel.textColor = s.placeholderActiveColor
+        }) { [weak self] _ in
+            self?.isAnimating = false
+        }
 	}
 	
 	/// The animation for the placeholder when editing ends.

	
	/// Prepares the divider.
	private func prepareDivider() {
        dividerColor = Color.darkText.dividers
	}
	
	/// Prepares the placeholderLabel.

	/// Handles the clearIconButton TouchUpInside event.
	@objc
    open func handleClearIconButton() {
        guard true == delegate?.textFieldShouldClear?(self) else {
            return
        }
		
        text = nil
	}
	
	/// Handles the visibilityIconButton TouchUpInside event.
    @objc
	open func handleVisibilityIconButton() {
		isSecureTextEntry = !isSecureTextEntry
		
        if !isSecureTextEntry {
			super.font = nil
			font = placeholderLabel.font
		}
		
        visibilityIconButton?.tintColor = visibilityIconButton?.tintColor.withAlphaComponent(isSecureTextEntry ? 0.38 : 0.54)
	}
	
	/**
