add alternative stopping criterion