moving everything to top level, why is this not actual Cpp