public CoverCollection CreateCoverCollection(int agrId, Dictionary <string, int> values, int valeur) { var agr = Engine.GetAgreement(agrId, valeur); var ccValues = values.Where(val => !agr.Values.ContainsKey(val.Key) || !agr.Values[val.Key].Equals(val.Value)).ToDictionary(val => val.Key, val => val.Value); var cc = new CoverCollection(agr.Id, ccValues, valeur); Engine.CoverCollections.Add(cc); return(cc.Get(valeur)); }