"a struct with at least one mutable field"?  And also "expected a ... contract but got a ... type" seems wrong.