@Override
    public Iterator<E> iterator() {
        return Iterators.transform(map.entrySet().iterator(), Map.Entry::getValue);
    }
@Test
    public void testIterator() {
        ExtendedSet<TestValue> set = new ExtendedSet<>(Maps.newConcurrentMap());
        TestValue val = new TestValue("foo", 1);
        assertTrue(set.add(val));
        TestValue nextval = new TestValue("goo", 2);
        assertTrue(set.add(nextval));
        assertTrue(set.contains(nextval));
        Iterator<TestValue> iterator = set.iterator();
        assertEquals(val, iterator.next());
        assertTrue(iterator.hasNext());
        assertEquals(nextval, iterator.next());
    }