update the struct