class EfficientCoverageMap implements CoverageMap {

    @Override
    public int[] computeGainsOfFixedParameter(int[] combination) {
        Preconditions.notNull(combination, COMBINATION_NOT_NULL);
        
        int[] gains = new int[fixedParameterSize];
        Set<ParameterCombinationCoverageMap> relevantCombinations = getRelevantCombinationCoverages(combination);
        for (ParameterCombinationCoverageMap combinationCoverage : relevantCombinations) {
            combinationCoverage.addGainsOfFixedParameter(combination, gains);
        }
        
        return gains;
    }

    public  EfficientCoverageMap(Collection<IntSet> parameterCombinations, int fixedParameter, Int2IntMap parameters,
                                ConstraintChecker constraintChecker);

}