code: public static <D extends CalendarVariant<D>> Factory<D> on(
          CalendarFamily<D> family,
          String variant
      ) {
  
          Class<D> chronoType = family.getChronoType();
          TimeLine<D> timeLine = family.getTimeLine(variant);
          CalendarSystem<D> calsys = family.getCalendarSystem(variant);
          return new Factory<>(chronoType, variant, timeLine, calsys);
  
      }
docs: /*[deutsch]
  <p>Definiert einen Zeitstrahl, auf dem neue generische Kalenderintervalle erzeugt werden k&ouml;nnen. </p>
  
  @param   <D> generic type of timepoints on the underlying timeline
  @param   family  calendar family
  @param   variant calendar variant
  @return  new interval factory
  @see     #on(CalendarFamily, VariantSource)