Worked on alter and commute when operating on refs.