first commit for type stuff