generator async module