the problem is the combination of observer and waituntil. The observer is called at each change of numMu, and at each call you suspend this method. So you have in a short time a big number of suspended methods.
So you cannot use waituntil in an observer method.
If you have a more complex condition to observe, you can use a combination of generator and method. If the condition is met, just do nothing.