class AbstractMultimap implements Multimap<K, V> {

    @Override
    public Collection<V> get( K key ) {
        Collection<V> collection = data.get(key);
        if (collection == null) {
            collection = createCollection();
        }
        return wrapCollection(key, collection);
    }

    protected  AbstractMultimap( Map<K, Collection<V>> entries );

}