return result to callback