public void Train() { for (int i = 0; i < source.Count; i++) { var item = source[i]; if (facet != null && !facet.Include(item)) { continue; } Train(item); } }