Tweeks

Optimization: no need to allocate a done pointer.