add data persistence