before change data struct