wrap in work in async pcall