define all that in the cpp file, not the header