Refined async2 code