cleanup async funcs