splitting on c++ level as well