Async works
Added comments