defining a struct type