BaseDao refactoring & improvments