public RecipeEvaluator(List<WeightedValue> groups, Func<WeightedValue, List<WeightedGroupItem>> supplements) { _supplements = supplements; _resultPermutations = InitializePermutations (groups); }