add OnConflict method