 
 private extension Selector {
     static let contentSizeChanged = #selector(InputCellsViewController.contentSizeChanged)
+    
+    #if os(iOS)
     static let willAppear = #selector(InputCellsViewController.keyboardWillAppear(notification:))
     static let willDisappear = #selector(InputCellsViewController.keyboardWillDisappear(notification:))
+    #endif
 }
 
 public class InputCellsSection {

    open override func viewDidLoad() {
        checkTableView(preferredStyle)
        
        NotificationCenter.default.addObserver(self, selector: .willAppear, name: Notification.Name.UIKeyboardWillShow, object: nil)
        NotificationCenter.default.addObserver(self, selector: .willDisappear, name: Notification.Name.UIKeyboardWillHide, object: nil)
        NotificationCenter.default.addObserver(self, selector: .contentSizeChanged, name: NSNotification.Name.UIContentSizeCategoryDidChange, object: nil)
        
        tableView.estimatedRowHeight = 44

    }
}

#if os(iOS)
extension InputCellsViewController {
    @objc fileprivate func keyboardWillAppear(notification: Notification) {
        guard let info = notification.userInfo, let keyboardSize = (info[UIKeyboardFrameBeginUserInfoKey] as? NSValue)?.cgRectValue else {
