code: private void checkUnmappedElements(List<T> offspring,
                                         Map<T, T> mapping,
                                         int mappingStart,
                                         int mappingEnd)
      {
          for (int i = 0; i < offspring.size(); i++)
          {
              if (!isInsideMappedRegion(i, mappingStart, mappingEnd))
              {
                  T mapped = offspring.get(i);
                  while (mapping.containsKey(mapped))
                  {
                      mapped = mapping.get(mapped);
                  }
                  offspring.set(i, mapped);
              }
          }
      }
docs: Checks elements that are outside of the partially mapped section to
  see if there are any duplicate items in the list.  If there are, they
  are mapped appropriately.