public Collection<V> valueCollection() {
   synchronized (mutex) {
     if (values == null) {
       values = new SynchronizedCollection<V>(m.valueCollection(), mutex);
     }
     return values;
   }
 }