snippets for async and async.waterfall