Implemented UnitOfWork