trying to split out main cpp module