     // MARK: - Outlets
     
     let tableView = UITableView()
-    
-    private let filterView = UIView()
-    private let filterStack = UIStackView()
-    private var filterViewTop: NSLayoutConstraint!
-    
-    private let exportLogButton = UIButton()
-    private let linesCountStack = UIStackView()
-    private let linesTotalLabel = UILabel()
-    private let linesFilteredLabel = UILabel()
     let textField = UITextField()
-    private let clearFilterButton = UIButton()
-    
-    private let menuView = UIView()
-    private let menuStack = UIStackView()
-    private var menuViewLeading: NSLayoutConstraint!
-    
-    private let toggleToolbarButton = UIButton()
-    private let forwardTouchesButton = UIButton()
-    private let autoFollowButton = UIButton()
-    private let clearLogButton = UIButton()
-    
-    private let updateOpacityGesture = UIPanGestureRecognizer()
-    private let hideConsoleGesture = UITapGestureRecognizer()
+    
+    fileprivate let filterView = UIView()
+    fileprivate let filterStack = UIStackView()
+    fileprivate var filterViewTop: NSLayoutConstraint!
+    
+    fileprivate let exportLogButton = UIButton()
+    fileprivate let linesCountStack = UIStackView()
+    fileprivate let linesTotalLabel = UILabel()
+    fileprivate let linesFilteredLabel = UILabel()
+    fileprivate let clearFilterButton = UIButton()
+    
+    fileprivate let menuView = UIView()
+    fileprivate let menuStack = UIStackView()
+    fileprivate var menuViewLeading: NSLayoutConstraint!
+    
+    fileprivate let toggleToolbarButton = UIButton()
+    fileprivate let forwardTouchesButton = UIButton()
+    fileprivate let autoFollowButton = UIButton()
+    fileprivate let clearLogButton = UIButton()
+    
+    fileprivate let updateOpacityGesture = UIPanGestureRecognizer()
+    fileprivate let hideConsoleGesture = UITapGestureRecognizer()
     
     // MARK: - Properties
-    
-    private let brain = AEConsole.shared.brain
-    private let config = Config.shared
     
     var isOnScreen = false {
         didSet {

        NSLayoutConstraint.activate([leading, trailing, top, bottom])
    }
    
    // MARK: - Override
    
    override func layoutSubviews() {
        super.layoutSubviews()
        
        updateContentLayout()
    }
    
    override func hitTest(_ point: CGPoint, with event: UIEvent?) -> UIView? {
        let hitView = super.hitTest(point, with: event)
        
        let filter = hitView?.superview == filterStack
        let menu = hitView?.superview == menuStack
        if !filter && !menu && forwardTouchesButton.isSelected {
            return nil
        }
        
        return hitView
    }
    
    override var canBecomeFirstResponder : Bool {
        return true
    }
    
    override func motionEnded(_ motion: UIEventSubtype, with event: UIEvent?) {
        if motion == .motionShake {
            if config.isShakeGestureEnabled {
                toggleUI()
            }
        }
    }
    
}

    }
    
    private func updateContentOffset() {
        if isToolbarActive {
            if tableView.contentOffset.y == -topInsetSmall {
                let offset = CGPoint(x: tableView.contentOffset.x, y: -topInsetLarge)
                tableView.setContentOffset(offset, animated: true)
