     //  MARK: Target - Action
     @objc private func keyboardWillAppear(notification: Notification) {
         let userInfo = notification.userInfo
-        let aValue = userInfo?[UIKeyboardFrameEndUserInfoKey] as! NSValue
+        let aValue = userInfo?[UIResponder.keyboardFrameEndUserInfoKey] as! NSValue
         let keyboardFrame = aValue.cgRectValue
         let screenFrame = UIScreen.main.bounds
 

        let paragraphStyle = NSMutableParagraphStyle.default.mutableCopy()
        (paragraphStyle as! NSMutableParagraphStyle).lineBreakMode = .byWordWrapping
        (paragraphStyle as! NSMutableParagraphStyle).alignment = .center
        let dict = [NSAttributedStringKey.font: UIFont.boldSystemFont(ofSize: 14.0),
                    NSAttributedStringKey.paragraphStyle: paragraphStyle,
                    NSAttributedStringKey.foregroundColor: UIColor.white]
        (messageText! as NSString).draw(in: messageRect!, withAttributes: dict)

        if let image = image {

    private func adjust() {
        let size = messageText?.boundingRect(with: CGSize(width: 160.0, height: 200.0),
                                             options: [.usesLineFragmentOrigin],
                                             attributes: [NSAttributedString.Key.font: UIFont.boldSystemFont(ofSize: 14.0)],
                                             context: nil).size
        messageText?.size(withAttributes: [NSAttributedString.Key.font: UIFont.boldSystemFont(ofSize: 14.0)])
        var imageAdjustment: CGFloat = 0.0
        if image != nil {
            imageAdjustment = 7.0 + (image?.size.height)!
