don't need to beautify on our own with templates
don't hardcode voidPtr
don't hardcode ref.types.CString