sets and bags are object based, use === semantics