added some C quirks and pointer stuff