Given that BurstCompiler.CompileFunctionPointer returns immediately how does async compilation work in this case? Does it return a non-bursted method and then it somehow replaces it with the bursted version when it is ready? Or does it wait for compilation to finish and then it returns the pointer?