added CPP SOS kernel