better using update to gather as well