Update from 2.4 to 3.1, including some additional validation.