first commit, with only the header file