protected internal void CustomCollection <F>(string optionName, Action <F> configurator) where F : AbstractCollectionFactory
 {
     if (configurator != null)
     {
         F val = New.CollectionFactory <F>(CreateChildContext(optionName));
         configurator(val);
         val.AttachToParent(Options);
     }
 }