         return inputViews.filter { view in
             let absoluteInputViewFrame = window.convert(view.frame, from: view.superview)
             return absoluteCellFrame.intersects(absoluteInputViewFrame)
-            }.first
+        }.first
     }
 
     func visibleCell(forInputView inputView: UIView) -> UITableViewCell? {

    }

    func nextInputView() {
        logger?.logDebug(message: String(format: "[%@] nextInputView", instanceType(self)))
        let nextIdx = inputViews.index(of: currentInputView!)! + 1
        let nextField = inputViews[nextIdx]
        if !nextField.becomeFirstResponder() {
            guard let currentInputView = currentInputView else {
                fatalError("no current input view")

    fileprivate var inputViews: [UIView]!
    fileprivate var oldTextFieldDelegates: [UITextField: UITextFieldDelegate?] = [:]
    fileprivate var oldTextViewDelegates: [UITextView: UITextViewDelegate?] = [:]
    fileprivate weak var currentInputView: UIView?

    private weak var tableView: UITableView?
    private var originalContentInset: UIEdgeInsets?
    private var originalContentOffset: CGPoint?

