     }
 
     func nextInputView() {
-        logger?.logDebug(message: String(format: "[%@] nextInputView", instanceType(self)))
         let nextIdx = inputViews.index(of: currentInputView!)! + 1
         let nextField = inputViews[nextIdx]
+        logger?.logDebug(message: String(format: "[%@] nextInputView: %@;", instanceType(self), String(describing: nextField), String(reflecting: nextField)))
         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 var currentInputView: UIView?

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


    }

    deinit {
        deinitialize()
    }

}
