@SuppressWarnings("unchecked")
    public MapPBag<E> minus(Object element) {
        int n = count(element);
        if (n == 0)
            return this;
        if (n == 1) // remove from map
            return new MapPBag<E>(map.minus(element), size - 1);
        // otherwise just decrement count:
        return new MapPBag<E>(map.plus((E) element, n - 1), size - 1);
    }