// Path: java/6162_3739/src/org/usfirst/frc/team6162/robot/commands/ExampleCommand.java
// public class ExampleCommand extends Command {
// 
//     public ExampleCommand() {
//         // Use requires() here to declare subsystem dependencies
//         requires(Robot.exampleSubsystem);
//     }
// 
//     // Called just before this Command runs the first time
//     protected void initialize() {
//     }
// 
//     // Called repeatedly when this Command is scheduled to run
//     protected void execute() {
//     }
// 
//     // Make this return true when this Command no longer needs to run execute()
//     protected boolean isFinished() {
//         return false;
//     }
// 
//     // Called once after isFinished returns true
//     protected void end() {
//     }
// 
//     // Called when another command which requires one or more of the same
//     // subsystems is scheduled to run
//     protected void interrupted() {
//     }
// }
// 
// Path: SampleMultiFunction/src/org/usfirst/frc/team6162/robot/subsystems/ExampleSubsystem.java
// public class ExampleSubsystem extends Subsystem {
// 	// Put methods for controlling this subsystem
// 	// here. Call these from Commands.
// 
// 	public void initDefaultCommand() {
// 		// Set the default command for a subsystem here.
// 		// setDefaultCommand(new MySpecialCommand());
// 	}
// }


import edu.wpi.first.wpilibj.IterativeRobot;
import edu.wpi.first.wpilibj.command.Command;
import edu.wpi.first.wpilibj.command.Scheduler;
import edu.wpi.first.wpilibj.livewindow.LiveWindow;
import edu.wpi.first.wpilibj.smartdashboard.SendableChooser;
import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard;
import org.usfirst.frc.team6162.robot.commands.ExampleCommand;
import org.usfirst.frc.team6162.robot.subsystems.ExampleSubsystem;

package org.usfirst.frc.team6162.robot;



/**
 * The VM is configured to automatically run this class, and to call the
 * functions corresponding to each mode, as described in the IterativeRobot
 * documentation. If you change the name of this class or the package after
 * creating this project, you must also update the manifest file in the resource
 * directory.
 */
public class Robot extends IterativeRobot {

	public static final ExampleSubsystem exampleSubsystem = new ExampleSubsystem();
	public static OI oi;

	Command autonomousCommand;
	SendableChooser<Command> chooser = new SendableChooser<>();

	/**
	 * This function is run when the robot is first started up and should be
	 * used for any initialization code.
	 */
	@Override
	public void robotInit() {
		oi = new OI();
		chooser.addDefault("Default Auto", new ExampleCommand());
		// chooser.addObject("My Auto", new MyAutoCommand());
		SmartDashboard.putData("Auto mode", chooser);
	}

	/**
	 * This function is called once each time the robot enters Disabled mode.
	 * You can use it to reset any subsystem information you want to clear when
	 * the robot is disabled.
	 */
	@Override
	public void disabledInit() {

	}

// Path: java/6162_3739/src/org/usfirst/frc/team6162/robot/commands/ExampleCommand.java
// public class ExampleCommand extends Command {
// 
//     public ExampleCommand() {
//         // Use requires() here to declare subsystem dependencies
//         requires(Robot.exampleSubsystem);
//     }
// 
//     // Called just before this Command runs the first time
//     protected void initialize() {
//     }
// 
//     // Called repeatedly when this Command is scheduled to run
//     protected void execute() {
//     }
// 
//     // Make this return true when this Command no longer needs to run execute()
//     protected boolean isFinished() {
//         return false;
//     }
// 
//     // Called once after isFinished returns true
//     protected void end() {
//     }
// 
//     // Called when another command which requires one or more of the same
//     // subsystems is scheduled to run
//     protected void interrupted() {
//     }
// }
// 
// Path: SampleMultiFunction/src/org/usfirst/frc/team6162/robot/subsystems/ExampleSubsystem.java
// public class ExampleSubsystem extends Subsystem {
// 	// Put methods for controlling this subsystem
// 	// here. Call these from Commands.
// 
// 	public void initDefaultCommand() {
// 		// Set the default command for a subsystem here.
// 		// setDefaultCommand(new MySpecialCommand());
// 	}
// }


// Path: FRCGYRO/src/org/usfirst/frc/team6162/robot/Robot.java
import edu.wpi.first.wpilibj.IterativeRobot;
import edu.wpi.first.wpilibj.command.Command;
import edu.wpi.first.wpilibj.command.Scheduler;
import edu.wpi.first.wpilibj.livewindow.LiveWindow;
import edu.wpi.first.wpilibj.smartdashboard.SendableChooser;
import edu.wpi.first.wpilibj.smartdashboard.SmartDashboard;
import org.usfirst.frc.team6162.robot.commands.ExampleCommand;
import org.usfirst.frc.team6162.robot.subsystems.ExampleSubsystem;


package org.usfirst.frc.team6162.robot;



/**
 * The VM is configured to automatically run this class, and to call the
 * functions corresponding to each mode, as described in the IterativeRobot
 * documentation. If you change the name of this class or the package after
 * creating this project, you must also update the manifest file in the resource
 * directory.
 */
public class Robot extends IterativeRobot {

	public static final ExampleSubsystem exampleSubsystem = new ExampleSubsystem();
	public static OI oi;

	Command autonomousCommand;
	SendableChooser<Command> chooser = new SendableChooser<>();

	/**
	 * This function is run when the robot is first started up and should be
	 * used for any initialization code.
	 */
	@Override
	public void robotInit() {
		oi = new OI();
		chooser.addDefault("Default Auto", new ExampleCommand());
		// chooser.addObject("My Auto", new MyAutoCommand());
		SmartDashboard.putData("Auto mode", chooser);
	}

	/**
	 * This function is called once each time the robot enters Disabled mode.
	 * You can use it to reset any subsystem information you want to clear when
	 * the robot is disabled.
	 */
	@Override
	public void disabledInit() {

	}

	@Override