System.out.println( Thread.currentThread().getName() + " finished executing state procedure" );
	private boolean advance() throws LemRuntimeException {		metamodel.Class c = instance.getInstanceClass() ;		metamodel.StateMachine m = c.getStateMachine() ;		metamodel.State currentState = instance.currentState ;		if ( m.getStateTransitionCount() == 0 )			return false;		System.out.println( Thread.currentThread().getName() + " InstanceInterpreter getting a next signal" );		Signal s = instance.getNextSignal();		System.out.println( Thread.currentThread().getName() + " InstanceInterpreter got a next signal" );		Iterator i = m.getTransitionList().iterator();		System.out.println( Thread.currentThread().getName() + " InstanceInterpreter searching for a Transition" );		while ( i.hasNext() ) {			Transition t = (Transition)i.next();			/* Skip initialising transition */			if ( t.getFromState() == null )				continue;			System.out.println( s.getEvent().hashCode() + " == " + t.getEvent().hashCode() + " ??" );			if ( s.getEvent() == t.getEvent()			        && t.getFromState() == currentState ) {				metamodel.State newState = t.getToState();				instance.currentState = newState;				System.out.println( "InstanceInterpreter transitioning state to " + newState.getName() );				if ( newState instanceof NonDeletionState ) {					Procedure p = newState.getProcedure();					interpreter.interpret( p, context );					return true;				} else {					return false;				}			}			System.out.println( Thread.currentThread().getName() + " InstanceInterpreter couldn't find a transition!" );		}		return true;	}