public void AddEffort(Entity item, double newValue) {
     if(Efforts.ContainsKey(item.Asset)) {
         if(newValue.CompareTo(0) == 0) {
             Efforts.Remove(item.Asset);
         } else {
             Efforts[item.Asset] = newValue;
         }
     } else {
         if(newValue.CompareTo(0) != 0) {
             Efforts.Add(item.Asset, newValue);
         }
     }
 }
 public double? GetEffort(Entity item) {
     return Efforts.ContainsKey(item.Asset) ? Efforts[item.Asset] : (double?) null;
 }