code: function evaluate(model, instance, message, autoInitialiseModel) {
      if (autoInitialiseModel === void 0) { autoInitialiseModel = true; }
      // initialise the state machine model if necessary
      if (autoInitialiseModel && model.clean === false) {
          initialise(model);
      }
      exports.console.log(instance + " evaluate " + message);
      // terminated state machine instances will not evaluate messages
      if (instance.isTerminated) {
          return false;
      }
      return evaluateState(model, instance, message);
  }
docs: Passes a message to a state machine instance for evaluation; a message may trigger a [[Transition]].
  @param model The [[StateMachine]] model.
  @param instance The state machine instance.
  @param message The message to evaluate.
  @param autoInitialiseModel Defaulting to true, this will cause the [[StateMachine]] model to be initialised prior to initialising the instance if the model has changed.
  @returns Returns true if the message caused a [[Transition]].