first cpp