rough draft of special struct mutation