in particular, maybe explain what gets mutated and how much needs to be re-done to "reset" (/get a new) container