callback-hell on abort version