make it more fail safe
data
data update