private static boolean hasWildcardBeforeEnd(DimensionBinding variant) {
        for (int i = 0; i < variant.getValues().size() - 1; i++) { // -1 to not check the rightmost
            if (variant.getValues().get(i) == null)
                return true;
        }
        return false;
    }
For variants which are underspecified we must explicitly resolve each possible combination
of actual left-side values.

I.e if we have the variants [-,b=b1], [a=a1,-], [a=a2,-],
this returns the variants [a=a1,b=b1], [a=a2,b=b1]

This is necessary because left-specified values takes precedence, and resolving [a=a1,b=b1] would
otherwise lead us to the compiled profile [a=a1,-], which may contain default values for properties where
we should have preferred variant values in [-,b=b1].
container-search/src/main/java/com/yahoo/search/query/profile/QueryProfileCompiler.java