use async to make throbber work