add AbstractDAO
untracking .idea