Added async support