adding some cpp stuff