public ModsType mapPairs(ModsType mods, List<ExtentPair> pairs) {
   pairs = MapperUtils.noNull(pairs);
   List<ArrayItem> oldies = map(mods);
   List<ArrayItem> unknowns = filter(oldies, false, ExtentItem.class);
   List<ExtentItem> toExtents = toExtents(pairs);
   List<ArrayItem> news = MapperUtils.mergeList(toExtents, unknowns);
   return map(mods, pairs, NO_PRESERVATION, NO_PRESERVATION);
 }
  public ModsType map(
      ModsType mods,
      List<ExtentPair> pairs,
      String preservationTreatment,
      String preservationStateOfArt) {
    pairs = MapperUtils.noNull(pairs);
    List<ArrayItem> oldies = map(mods);
    List<ExtentItem> toExtents = toExtents(pairs);
    List<ArrayItem> news;
    if (preservationTreatment == NO_PRESERVATION) {
      List<ArrayItem> unknowns = filter(oldies, false, ExtentItem.class);
      news = MapperUtils.mergeList(toExtents, unknowns);
    } else {
      List<ArrayItem> unknowns = filter(oldies, false, ExtentItem.class, NoteItem.class);
      List<NoteItem> notes = MapperUtils.find(oldies, NoteItem.class);
      updateTreatmentItem(oldies, notes, preservationTreatment, PRESERVATION_TREATMENT);
      updateTreatmentItem(oldies, notes, preservationStateOfArt, PRESERVATION_STATE_OF_ART);
      news = MapperUtils.mergeList(toExtents, notes, unknowns);
    }

    return map(mods, news);
  }