initial commit c version