generic updates to structure