         self.keyboardStateDelegate = keyboardStateDelegate
 
         let defaultCenter = NotificationCenter.default
-        defaultCenter.addObserver(self, selector: #selector(UIViewController._keyboardWillShow(_:)), name: UIResponder.keyboardWillShowNotification, object: nil)
-        defaultCenter.addObserver(self, selector: #selector(UIViewController._keyboardWillHide(_:)), name: UIResponder.keyboardWillHideNotification, object: nil)
+        defaultCenter.addObserver(self,
+                                  selector: #selector(UIViewController._keyboardWillShow(_:)),
+                                  name: UIResponder.keyboardWillShowNotification,
+                                  object: nil)
+        defaultCenter.addObserver(self,
+                                  selector: #selector(UIViewController._keyboardWillHide(_:)),
+                                  name: UIResponder.keyboardWillHideNotification,
+                                  object: nil)
     }
 
     /**

    }

    /// Keyboard animation did stop selector
    @objc fileprivate dynamic func keyboardAnimationDidStop(_ animationID: String?, finished: Bool, context: UnsafeMutableRawPointer) {
        keyboardStateDelegate?.keyboardDidTransition(keyboardState)
    }



    /// Handler for `UIKeyboardWillShowNotification`
    @objc fileprivate dynamic func _keyboardWillShow(_ n: Notification) {
        guard let userInfo = n.userInfo,
            let rect = (userInfo[UIResponder.keyboardFrameEndUserInfoKey] as? NSValue)?.cgRectValue,
            let duration = (userInfo[UIResponder.keyboardAnimationDurationUserInfoKey] as? NSNumber)?.doubleValue,
            let curveValue = (userInfo[UIResponder.keyboardAnimationCurveUserInfoKey] as? NSNumber)?.intValue else {
            return
        }

        let convertedRect = view.convert(rect, from: nil)
        let height = convertedRect.height
        let curve = UIView.AnimationCurve(rawValue: curveValue)!

        keyboardHeight = height
        keyboardAnimationToState(.activeWithHeight(keyboardHeight), duration: duration, curve: curve)
    }

    /// Handler for `UIKeyboardWillHideNotification`
    @objc fileprivate dynamic func _keyboardWillHide(_ n: Notification) {
        guard let userInfo = n.userInfo,
            let duration = (userInfo[UIResponder.keyboardAnimationDurationUserInfoKey] as? NSNumber)?.doubleValue,
            let curveValue = (userInfo[UIResponder.keyboardAnimationCurveUserInfoKey] as? NSNumber)?.intValue else {
            return
        }

        let curve = UIView.AnimationCurve(rawValue: curveValue)!

        keyboardHeight = 0.0
        keyboardAnimationToState(.hidden, duration: duration, curve: curve)
    }

    /// Keyboard animation
