dynamically allocate c
checking version