we don't need string.h for this to work