using default continuations, async code geneneration tidy up