     /// - Parameters:
     ///   - onAppear: Handler for handling event when keyboard will appear
     ///   - onHide: Handler for handling event when keyboard will disappear
-    open func hcSetKeyboardListener(onAppear:@escaping CompletionTwoNumbersHandler, onHide:@escaping CompletionHandler)
+    open func hcSetKeyboardListener(onAppear:@escaping CompletionTwoNumbersHandler, onHide:@escaping EmptyCompletionHandler)
     {
         self.appearHandler = onAppear
         self.hideHandler = onHide

    }
    
    /// Handler which handles event when keyboard will disappear
    private var hideHandler : CompletionHandler {
        get {
            if let value = objc_getAssociatedObject(self, &AssociatedKeys.HideHandler) as? CompletionHandler
            {
                return value
            }

    ///   - additionalOffset: Additional offset if we don't want a keyboard to be sticked to a text field or to a text view
    open func hcChangeConstraintsConstantBasedOnKeyboardAnimatingPosition(constraints:NSLayoutConstraint..., changeConstraintConstantExactlyBasedOnMoveValue:Bool = false, additionalOffset:CGFloat = 0.0)
    {
        self.hcSetKeyboardListener(onAppear: { moveValue, keyboardHeight in
            for constraint in constraints
            {
                constraint.constant = changeConstraintConstantExactlyBasedOnMoveValue ? moveValue + additionalOffset : keyboardHeight + additionalOffset
