public IEnumerable <Product> Filter(IEnumerable <Product> items, BaseSpecification <Product> specification)
 {
     foreach (var item in items)
     {
         if (specification.IsSutisfied(item))
         {
             yield return(item);
         }
     }
 }
 public AndSpecification(BaseSpecification <T> first, BaseSpecification <T> second)
 {
     _first  = first;
     _second = second;
 }