this block might be held onto for quite a while if the IEmbedFunctionContext stays around for a long time.