     
     fileprivate func registerObservers() {
         
-        NotificationCenter.default.addObserver(self, selector: #selector(didReceivePreferredContentSizeChanged(_:)), name: Notification.Name.UIContentSizeCategoryDidChange, object: nil)
-        NotificationCenter.default.addObserver(self, selector: #selector(didReceiveKeyboardWillChangeFrame(_:)), name: Notification.Name.UIKeyboardWillChangeFrame, object: nil)
+        NotificationCenter.default.addObserver(self,
+                                               selector: #selector(didReceivePreferredContentSizeChanged(_:)),
+                                               name: Notification.Name.UIContentSizeCategoryDidChange,
+                                               object: nil)
+        
+        NotificationCenter.default.addObserver(self,
+                                               selector: #selector(didReceiveKeyboardWillChangeFrame(_:)),
+                                               name: Notification.Name.UIKeyboardWillChangeFrame,
+                                               object: nil)
         
     }
     

        additionalContentInsets = .zero
        updateMessagesViewInsets()
        
        inputToolbar.layer.addObserver(self, forKeyPath: #keyPath(CALayer.bounds), options: [.new], context: nil)
    }

    
    open override func observeValue(forKeyPath keyPath: String?, of object: Any?, change: [NSKeyValueChangeKey : Any]?, context: UnsafeMutableRawPointer?) {
        
        
        if keyPath == #keyPath(CALayer.bounds) {
            
        }
        
    }
}



        NotificationCenter.default.removeObserver(self)
    }
    
    open func didReceiveKeyboardWillChangeFrame(_ notification: Notification) {
        
        if let userInfo = notification.userInfo,
            let keyboardEndFrame = (userInfo[UIKeyboardFrameEndUserInfoKey] as? NSValue)?.cgRectValue,
