} } catch (Exception e) { return false;
return true;
    private boolean advance() {	metamodel.Class c = instance.getInstanceClass() ;	metamodel.StateMachine m = c.getStateMachine() ;	metamodel.State currentState = instance.currentState ;	int tCount = m.getStateTransitionCount() ;		try {	    System.out.println("InstanceInterpreter getting a next signal");	    Signal s = instance.getNextSignal() ;	    System.out.println("InstanceInterpreter got a next signal");	    if ( tCount > 0 ) {		Transition[] ts =  m.getTransitions() ;		for ( int i  = 0 ; i < tCount ; i++) {		    Transition t = ts[i] ;		    if (s.getEvent().getName().equals( t.getEvent().getName() )		    && t.getFromState().getName().equals(currentState.getName()) ) {			metamodel.State newState = t.getToState() ;			instance.currentState = newState ;			System.out.println("InstanceInterpreter transitioning state to " + newState.getName());			if ( newState instanceof NonDeletionState) {			    System.out.println("InstanceInterpreter executing procedure");			    Procedure p = newState.getProcedure() ;			    interpreter.interpret( p , context ) ;			    System.out.println("InstanceInterpreter done with proc");			    return true;			} else {			    return false;			}		    }		}	    }	} catch (Exception e) {	    return false;	}	return true;    }