text: // RobotBuilder Version: 2.0
  //
  // This file was generated by RobotBuilder. It contains sections of
  // code that are automatically generated and assigned by robotbuilder.
  // These sections will be updated in the future when you export to
  // C++ from RobotBuilder. Do not put any code or make any change in
  // the blocks indicating autogenerated code or it will be lost on an
  // update. Deleting the comments indicating the section will prevent
  // it from being updated in the future.
  
  
  #ifndef _ROBOT_H
  #define _ROBOT_H
  
  #include <WPILib.h>
  #include <Commands/Command.h>
  #include <LiveWindow/LiveWindow.h>
  
  #include "OI.h"
  #include "Commands/Autonomous.h"
  #include "Subsystems/Navigation.h"
  #include "Subsystems/HardwareTesting.h"
  
  // BEGIN AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=INCLUDES
  #include "Subsystems/DriveBase.h"
  // END AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=INCLUDES
  
  class Robot : public IterativeRobot {
  private:
  	std::unique_ptr<Command> autonomousCommand;
  	std::unique_ptr<Command> tankDriveCommand;
  
  public:
  	static std::unique_ptr<OI> oi;
  	LiveWindow *lw = LiveWindow::GetInstance();
  
  	//
  	// Subsystems.
  	//
  	// Note that these should be private/non-static, but FIRST's code
  	// generation takes some shortcuts.)
  public:
  	// BEGIN AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=DECLARATIONS
      static std::shared_ptr<DriveBase> driveBase;
      // END AUTOGENERATED CODE, SOURCE=ROBOTBUILDER ID=DECLARATIONS
      static std::shared_ptr<Navigation> navigation;
  
      // Special subsystem to let the hardware folks run extra motors, etc.
      static std::shared_ptr<HardwareTesting> hardwareTesting;
  
      //
      // Methods from the Robot class
  public:
  	void RobotInit() override;
  
  	// Handling for "Disabled" mode
  	void DisabledInit() override;
  	void DisabledPeriodic() override;
  
  	// Handling for "Autonomous" mode
  	void AutonomousInit() override;
  	void AutonomousPeriodic() override;
  
  	// Handling for "Teleoperated" mode
  	void TeleopInit() override;
  	void TeleopPeriodic() override;
  
  	// Handling for "Testing" mode
  	void TestInit() override;
  	void TestPeriodic() override;
  
  private:
  	void StopAutoModeCommand();
  };
  #endif
  