need to look at EmitAssemblyHelper