modify to use CL-COROUTINE library instead of WAQL.UTIL.COROUTINE