finished the struct and added test