implemented Distinct.
implemented Union.