added set difference and symmetrical difference