start of cpp libthryft