public function run(array $args = [], $enableLog = false)
    {
        try {
            return $this->workflow->run($args, $enableLog);
        } catch (WorkflowException $ex) {
            throw new StateMachineException('Error running State Machine', 100, $ex);
        }
    }