{
	GLOBAL =
	{
		ENTER = ("setStateTo: LOOK_FOR_TARGETS");
	};
	"ATTACK_SHIP" =
	{
		ENTER = (performAttack);
		"ATTACKED" = (setTargetToPrimaryAggressor, "setStateTo: ATTACK_SHIP");
		"INCOMING_MISSILE" = (fightOrFleeMissile, setTargetToPrimaryAggressor, "setStateTo: ATTACK_SHIP");
		"TARGET_DESTROYED" = ("setStateTo: LOOK_FOR_TARGETS");
		"TARGET_FOUND" = (setTargetToFoundTarget, "setStateTo: ATTACK_SHIP");
		"TARGET_LOST" = ("setStateTo: LOOK_FOR_TARGETS");
		UPDATE = (scanForNonThargoid, "pauseAI: 15.0");
	};
	"LOOK_FOR_TARGETS" =
	 {
		ENTER = ("setSpeedTo: 0.0", performTumble, scanForNonThargoid, "pauseAI: 5.0");
		"ATTACKED" = (setTargetToPrimaryAggressor, deployEscorts, "setStateTo: ATTACK_SHIP");
		"INCOMING_MISSILE" = (fightOrFleeMissile, setTargetToPrimaryAggressor, "setStateTo: ATTACK_SHIP");
		"TARGET_FOUND" = (setTargetToFoundTarget, deployEscorts, "setStateTo: ATTACK_SHIP");
		"NOTHING_FOUND" = ("setStateTo: HEAD_FOR_PLANET");
		UPDATE = (scanForNonThargoid, "pauseAI: 5.0");
	};
	"HEAD_FOR_PLANET" =
	{
		ENTER = (setCourseToPlanet, "setDesiredRangeTo: 80000.0", checkCourseToDestination, checkForNormalSpace);
		RESTARTED = (setCourseToPlanet, "setDesiredRangeTo: 80000.0", checkCourseToDestination, checkForNormalSpace);
		"COURSE_OK" = ("setSpeedFactorTo: 1.0", performFlyToRangeFromDestination);
		"WAYPOINT_SET" = ("setAITo: gotoWaypointAI.plist");
		"DESIRED_RANGE_ACHIEVED" = ("setStateTo: LOOK_FOR_TARGETS");
		ATTACKED = (setTargetToPrimaryAggressor, deployEscorts, "setStateTo: ATTACK_SHIP");
		"INCOMING_MISSILE" = (fightOrFleeMissile, setTargetToPrimaryAggressor, "setStateTo: ATTACK_SHIP");
		"TARGET_FOUND" = (setTargetToFoundTarget, deployEscorts, "setStateTo: ATTACK_SHIP");
        	"INTERSTELLAR_SPACE" = ("setStateTo: HEAD_FOR_WITCHPOINT"); 
		UPDATE = (setCourseToPlanet, "setDesiredRangeTo: 80000.0", checkCourseToDestination, scanForNonThargoid, "pauseAI: 10.0");
	};
	"HEAD_FOR_WITCHPOINT" =
	{
		ENTER = (setCourseToWitchpoint, "setDesiredRangeTo: 15000.0", checkCourseToDestination);
		"COURSE_OK" = ("setSpeedFactorTo: 1.0", performFlyToRangeFromDestination);
		"WAYPOINT_SET" = ("setAITo: gotoWaypointAI.plist");
		"DESIRED_RANGE_ACHIEVED" = ("setStateTo: LOOK_FOR_TARGETS");
		ATTACKED = (setTargetToPrimaryAggressor, deployEscorts, "setStateTo: ATTACK_SHIP");
		"INCOMING_MISSILE" = (fightOrFleeMissile, setTargetToPrimaryAggressor, "setStateTo: ATTACK_SHIP");
		"TARGET_FOUND" = (setTargetToFoundTarget, deployEscorts, "setStateTo: ATTACK_SHIP");
		UPDATE = (setCourseToWitchpoint, "setDesiredRangeTo: 15000.0", checkCourseToDestination, scanForNonThargoid, "pauseAI: 10.0");
	};
}