start await refactor