handle async initializer