structs complete