added abstract persistence DAO