semicolons could also be contained by type name