added difference abstraction