Rewrite in C99
Rewrite in C99