{
	GLOBAL =
	 {
		ENTER = ("setSpeedTo: 0.0", "setStateTo: LIFT_OFF");
	};
	"LIFT_OFF" =
	{
		ENTER = (setTakeOffFromPlanet, "setSpeedFactorTo: 1.0", performFlyToRangeFromDestination);
		"DESIRED_RANGE_ACHIEVED" = ("setStateTo: GO_TO_STATION");
		"CLOSE_TO_MOON" = ("setStateTo: LIFT_OFF_FROM_SECONDARY_PLANET");
		"CLOSE_TO_SECONDARY_PLANET" = ("setStateTo: LIFT_OFF_FROM_SECONDARY_PLANET");
		"CLOSE_TO_MAIN_PLANET" = ("setStateTo: LIFT_OFF_FROM_MAIN_PLANET");
	};
	"LIFT_OFF_FROM_SECONDARY_PLANET" =
	{
		"DESIRED_RANGE_ACHIEVED" = ("setStateTo: GO_TO_STATION");
	};
	"GO_TO_STATION" =
	{
		ENTER = (setTargetToStation, "setDesiredRangeTo: 5000.0", setDestinationToTarget, checkCourseToDestination);
		"WAYPOINT_SET" = ("setAITo: gotoWaypointAI.plist");
		"COURSE_OK" = ("setSpeedFactorTo: 1.0", performFlyToRangeFromDestination);
		"DESIRED_RANGE_ACHIEVED" = (setTargetToSystemStation, "setAITo: dockingAI.plist");
		ATTACKED = (setTargetToPrimaryAggressor, broadcastDistressMessage, "setStateTo: FLEE");
		"INCOMING_MISSILE" = (fightOrFleeMissile, "setStateTo: FLEE");
		UPDATE = (setTargetToStation, "setDesiredRangeTo: 5000.0",
				setDestinationToTarget, checkCourseToDestination, "pauseAI: 5.0");
	};
	"LIFT_OFF_FROM_MAIN_PLANET" =
	{
		"DESIRED_RANGE_ACHIEVED" = ("setStateTo: GO_TO_MAIN_STATION");
	};
	"GO_TO_MAIN_STATION" =
	{
		ENTER = (setTargetToSystemStation, "setDesiredRangeTo: 5000.0", setDestinationToTarget, checkCourseToDestination);
		"WAYPOINT_SET" = ("setAITo: gotoWaypointAI.plist");
		"COURSE_OK" = ("setSpeedFactorTo: 1.0", performFlyToRangeFromDestination);
		"DESIRED_RANGE_ACHIEVED" = (setTargetToSystemStation, "setAITo: dockingAI.plist");
		ATTACKED = (setTargetToPrimaryAggressor, broadcastDistressMessage, "setStateTo: FLEE");
		"INCOMING_MISSILE" = (fightOrFleeMissile, "setStateTo: FLEE");
		UPDATE = (setTargetToSystemStation, "setDesiredRangeTo: 5000.0",
				setDestinationToTarget, checkCourseToDestination, "pauseAI: 5.0");
	};
	FLEE =
	{
		ENTER = ("setDesiredRangeTo: 25600", performFlee);
		"TARGET_LOST" = (performIdle, "setStateTo: GLOBAL");
		"INCOMING_MISSILE" = (fightOrFleeMissile, "setStateTo: FLEE");
		"REACHED_SAFETY" = ("setSpeedTo: 0.0", performIdle, "pauseAI: 30.0");
	};
}