public async Task Handle <TValue>(EffStateMachine <TValue> stateMachine)
            {
                List <TValue>?values = null;
                Exception?    error  = null;

                try
                {
                    values = await NonDetEffectHandler.Run(stateMachine);
                }
                catch (Exception e)
                {
                    error = e;
                }

                if (values != null)
                {
                    foreach (var result in values)
                    {
                        stateMachine.SetResult(result);
                        await ContinueStateMachine(clone : true);
                    }
                }
                else
                {
                    stateMachine.SetException(error !);
                    await ContinueStateMachine();
                }
            }