modification to abstract dao