more improvements to special struct mutations