@Override
 public Iterator<String> iterator() {
   return delegateFieldsProducer.iterator();
 }
 @Override
 public Iterator<String> iterator() {
   Iterator<String> iterator = in.iterator();
   assert iterator != null;
   return iterator;
 }