{
    CHECK_FOR_DEBRIS = {
        ATTACKED = ( setTargetToPrimaryAggressor, launchDefenseShip, increaseAlertLevel, "setStateTo: DEFENSE_MODE" );
        GROUP_ATTACK_TARGET = ( setTargetToFoundTarget, launchDefenseShip, increaseAlertLevel, "setStateTo: DEFENSE_MODE" );
        INCOMING_MISSILE = ( fireECM, setTargetToPrimaryAggressor, launchDefenseShip, increaseAlertLevel, "setStateTo: DEFENSE_MODE" );
        NOTHING_FOUND = ( "setStateTo: IDLE" );
        TARGET_FOUND = ( launchScavenger, "setStateTo: IDLE" );
        UPDATE = ( "setDesiredRangeTo: 25600", scanForLoot, "pauseAI: 10.0" );
    };
    DEFENSE_MODE = {
        ATTACKED = ( setTargetToPrimaryAggressor, launchDefenseShip, groupAttackTarget, increaseAlertLevel );
        CONDITION_GREEN = ( "setStateTo: IDLE" );
        CONDITION_YELLOW = ( "setStateTo: IDLE" );
        ENTER = ( groupAttackTarget );
        INCOMING_MISSILE = ( fireECM, launchDefenseShip, increaseAlertLevel );
        NO_TARGET = ( "pauseAI: 10.0", "setStateTo: IDLE" );
        RED_ALERT = ( launchDefenseShip );
        TARGET_DESTROYED = ( "pauseAI: 10.0", "setStateTo: IDLE" );
        TARGET_LOST = ( "pauseAI: 10.0", "setStateTo: IDLE" );
        UPDATE = ( launchDefenseShip, "pauseAI: 4.0" );
        YELLOW_ALERT = ( "setStateTo: IDLE" );
    };
    GLOBAL = {
        ENTER = ( setUpEscorts, "sendScriptMessage: $moveSentinels", "setStateTo: IDLE" );
    };
    IDLE = {
        ATTACKED = ( setTargetToPrimaryAggressor, launchDefenseShip, increaseAlertLevel, "setStateTo: DEFENSE_MODE" );
        ENTER = ( decreaseAlertLevel );
        GROUP_ATTACK_TARGET = ( setTargetToFoundTarget, launchDefenseShip, increaseAlertLevel, "setStateTo: DEFENSE_MODE" );
        INCOMING_MISSILE = ( fireECM, setTargetToPrimaryAggressor, increaseAlertLevel, launchDefenseShip, "setStateTo: DEFENSE_MODE" );
        UPDATE = ( decreaseAlertLevel, "pauseAI: 10.0", "setStateTo: CHECK_FOR_DEBRIS" );
    };
}