added support for findAndModify