void IExecuteSystem.Execute() { foreach (var e in coroutinesGroup.GetEntities()) { var coroutine = e.coroutine.value; if (!coroutine.MoveNext()) { e.RemoveCoroutine(); pool.DestroyEntityIfEmpty(e); } } }