@SuppressWarnings("unchecked")
    public static <V> IntTreePMap<V> from(Map<? extends Integer, ? extends V> map) {
        // but that's good enough for an immutable
        // (i.e. we can't mess someone else up by adding the wrong type to it)
        return IntTreePMap.<V>empty().plusAll(map);
    }