   """
   @spec member?(t, value) :: boolean
   def member?(%MapSet{map: map}, value) do
-    Map.has_key?(map, value)
+    match?(%{^value => _}, map)
   end
 
   @doc """

    true
  end
  defp none_in?([key | rest], map2) do
    case Map.has_key?(map2, key) do
      true -> false
      false -> none_in?(rest, map2)
    end
  end


    map =
      map1
      |> Map.keys
      |> filter_not_in(map2, [])

    %MapSet{map: map}
  end
