         button.setTitle("TEST", for: .normal)
         button.setTitleColor(.menuBackground, for: .normal)
         button.backgroundColor = .menuButton
+        button.addTarget(self, action: #selector(testButtonTouchDown), for: .touchDown)
+        button.addTarget(self, action: #selector(testButtonTouchUp), for: .touchUpInside)
         
         return button
     }()

        button.setTitleColor(.menuBackground, for: .normal)
        button.backgroundColor = .menuButton
        button.translatesAutoresizingMaskIntoConstraints = false
    
        return button
    }()

        verticalConstraint.isActive = true
    }
    
    fileprivate func touchDownAnimationFor(button: UIButton, withCompletion completion: ((_ finished: Bool) -> ())?) {
        
        UIView.animate(withDuration: 0.1, delay: 0.0, options: .curveEaseOut, animations: {
            button.transform = CGAffineTransform(scaleX: 0.95, y: 0.95)
        }) { finished in
            completion?(finished)
        }
    }
    
    fileprivate func touchUpAnimationFor(button: UIButton, withCompletion completion: @escaping (_ finished: Bool) -> ()) {
        
        UIView.animate(withDuration: 0.2, animations: {
                        button.transform = CGAffineTransform(scaleX: 1.0, y: 1.0)
        }) { finished in
            completion(finished)
        }
    }
    
    // MARK: - Button actions -
    func trainButtonTouchDown() {
        touchDownAnimationFor(button: trainButton, withCompletion: nil)
    }
    
    func trainButtonTouchUp() {
        touchUpAnimationFor(button: trainButton) { finished in
            // do something
        }
    }
    
    func testButtonTouchDown() {
        touchDownAnimationFor(button: testButton, withCompletion: nil)
    }
    
    func testButtonTouchUp() {
        touchUpAnimationFor(button: testButton) { finished in
            // do something
        }
    }
    
    // MARK: - Override -
    override var prefersStatusBarHidden: Bool {
        return true
