public ICollector Merge(ICollector coll) { if (!this.IsMergeable(coll)) throw new InvalidProgramException("Algorithmic error"); IImageProvider ic = coll as IImageProvider; if (ic != null) { List<string> Images = new List<string>(_ListImage); Images.AddRange(ic.Image); return new ImageCollector(Images); } return coll.Merge(this); }