it is the C version of last project