Implemented mergeWith restore option