added data persistence