renamed .c to .cpp for Nick's happiness