first steps calling async and writing progress