}
private Machine getInitialNegIndicatorMachine()
{
State startState = new NamedState("START");
State endState = new NamedState("END");
State twoPartState = new NamedState("TWOSTATE");
State twoOfThreePartState = new NamedState("TWOOFTHREESTATE");
State threePartState = new NamedState("THREESTATE");
State twoArterialPartState = new NamedState("TWOSTATEART");
State threeArterialPartState = new NamedState("THREESTATEART");
State ntEndState = new NonTerminalEndState("NON TERMINAL END");
endState.setEndStateFlag(true);
ntEndState.setEndStateFlag(true);
Machine m = new Machine(startState);
Condition negInitDetC = new TextSetCondition(iv_negInitialDeterminersSet, false);
Condition negInit1of2DetC = new TextSetCondition(iv_negCol1of2PartSet, false);
Condition negInit2of2DetC = new TextSetCondition(iv_negCol2of2PartSet, false);
Condition negInit1of3DetC = new TextSetCondition(iv_negCol1Of3PartSet, false);
Condition negInit2of3DetC = new TextSetCondition(iv_negCol2Of3PartSet, false);
Condition negInit3of3DetC = new TextSetCondition(iv_negCol3Of3PartSet, false);
Condition negInit1of3ArterialDetC = new TextSetCondition(iv_negCol1Of3ArterialPartSet, false);
Condition negInit2of3ArterialDetC = new TextSetCondition(iv_negCol2Of3ArterialPartSet, false);
Condition negInit3of3ArterialDetC = new TextSetCondition(iv_negCol3Of3ArterialPartSet, false);
Condition negInitNtEndDetC = new TextSetCondition(iv_negColAnyOf3PartSet, false);
startState.addTransition(negInitDetC, endState); // start with a modal
startState.addTransition(negInit1of2DetC, twoPartState);
startState.addTransition(negInit1of3DetC, twoOfThreePartState);
startState.addTransition(negInit1of3ArterialDetC, twoArterialPartState);
startState.addTransition(negInitNtEndDetC, ntEndState);
startState.addTransition(new AnyCondition(), startState);
twoPartState.addTransition(negInit2of2DetC, endState);
twoPartState.addTransition(new AnyCondition(), startState);
twoOfThreePartState.addTransition(negInit2of3DetC, threePartState);
twoOfThreePartState.addTransition(new AnyCondition(), startState);
twoArterialPartState.addTransition(negInit2of3ArterialDetC, threeArterialPartState);
twoArterialPartState.addTransition(new AnyCondition(), startState);
threePartState.addTransition(negInit3of3DetC, endState);
threePartState.addTransition(new AnyCondition(), startState);
threeArterialPartState.addTransition(negInit3of3ArterialDetC, endState);
threeArterialPartState.addTransition(new AnyCondition(), startState);
ntEndState.addTransition(negInitNtEndDetC, ntEndState);
ntEndState.addTransition(new AnyCondition(), endState);
endState.addTransition(new AnyCondition(), startState);
return m;
}