data updates, checking for inversion