public virtual void ExecutionStarted(IActivityExecution execution) { if (execution is ExecutionEntity && delayFireHistoricVariableEvents) { ExecutionEntity executionEntity = (ExecutionEntity)execution; executionEntity.FireHistoricVariableInstanceCreateEvents(); } IActivityExecution parent = execution; while ((parent != null) && (parent.ExecutionStartContext != null)) { parent.DisposeExecutionStartContext(); parent = parent.Parent; } }