for data consistent