@Override
	public void run() {	
		System.out.print(".");
		if (strafing){			
			float yaw = (float) ((gyro[0]-start_pos)/20.0);
			
	        double rearValue = speed + -yaw;
	        double rightValue = (-speed / 2.0) + -yaw;
	        double leftValue = (-speed / 2.0) +  -yaw;
	        
			//Update Motor Values	
			FL.Throttle(leftValue);
			FR.Throttle(rightValue);
			RC.Throttle(rearValue);			
		}
		
		if(forward){
			float yaw = (float) ((gyro[0]-start_pos)/20.0);
			
	        double rearValue = 0 /*speed*/ + -yaw;
	        double rightValue = (-speed) + -yaw;
	        double leftValue = (speed) +  -yaw;
	        
			//Update Motor Values	
			FL.Throttle(leftValue);
			FR.Throttle(rightValue);
			RC.Throttle(rearValue);					
		}
		
		
	}