implement diffable id sets