private boolean test()
	{
		boolean complete = false;
		boolean accept = false;
		//if there are no active states, the machine must reject.
		if(active.isEmpty())
		{
			accept = false;
			complete = true;
		}
		//if the input is empty,
		else if(input.isEmpty())
		{//check if any active states are accept states.
			for(NFAdrawable nfa:active)
			{
				if(!(nfa instanceof State))
					continue;
				//if an active state is an accept state, accept
				if(((State)nfa).isAcceptState())
				{
					accept = true;
					complete = true;
					break;
				}
			}//otherwise reject
			complete = true;
		}
		//if complete, report to the user the verdict.
		if(complete)
			AL.animationComplete((accept)?0:1);
		return complete;
	}