@Override
 protected XIterator<E> createBaseView(XNavigableSet<E> baseParent, ViewInfo viewInfo) {
   if (viewInfo instanceof NavigableSetViewInfos.DescendingIterator) {
     return baseParent.descendingIterator();
   }
   throw new IllegalArgumentException(LAZY_COMMON_RESOURCE.get().illegalViewInfo());
 }
 @Override
 protected XNavigableSet<E> createBaseView(XNavigableSet<E> parentBase, ViewInfo viewInfo) {
   if (viewInfo instanceof NavigableSetViewInfos.DescendingSet) {
     return parentBase.descendingSet();
   }
   throw new IllegalArgumentException(LAZY_COMMON_RESOURCE.get().illegalViewInfo());
 }
 @SuppressWarnings("unchecked")
 @Override
 protected XNavigableSet<E> createBaseView(XNavigableSet<E> parentBase, ViewInfo viewInfo) {
   if (viewInfo instanceof NavigableSetViewInfos.TailSetByFromElementAndInclusive) {
     NavigableSetViewInfos.TailSetByFromElementAndInclusive tailSetByFromElementAndInclusive =
         (NavigableSetViewInfos.TailSetByFromElementAndInclusive) viewInfo;
     return parentBase.tailSet(
         (E) tailSetByFromElementAndInclusive.getFromElement(),
         tailSetByFromElementAndInclusive.isInclusive());
   }
   throw new IllegalArgumentException(LAZY_COMMON_RESOURCE.get().illegalViewInfo());
 }
 @SuppressWarnings("unchecked")
 @Override
 protected XNavigableSet<E> createBaseView(XNavigableSet<E> parentBase, ViewInfo viewInfo) {
   if (viewInfo
       instanceof
       NavigableSetViewInfos.SubSetByFromElementAndFromInclusiveAndToElementAndToInclusive) {
     NavigableSetViewInfos.SubSetByFromElementAndFromInclusiveAndToElementAndToInclusive
         subSetViewInfo =
             (NavigableSetViewInfos
                     .SubSetByFromElementAndFromInclusiveAndToElementAndToInclusive)
                 viewInfo;
     return parentBase.subSet(
         (E) subSetViewInfo.getFromElement(),
         subSetViewInfo.isFromInclusive(),
         (E) subSetViewInfo.getToElement(),
         subSetViewInfo.isToInclusive());
   }
   throw new IllegalArgumentException(LAZY_COMMON_RESOURCE.get().illegalViewInfo());
 }