code: public static <T> Factory<T> on(TimeLine<T> timeLine) {
  
          if (timeLine instanceof TimeAxis) {
              Class<?> chronoType = TimeAxis.class.cast(timeLine).getChronoType();
              return new Factory<>(new SerializableTimeLine<>(timeLine, chronoType));
          }
  
          return new Factory<>(timeLine);
  
      }
docs: /*[deutsch]
  <p>Definiert einen Zeitstrahl, auf dem neue generische Intervalle erzeugt werden k&ouml;nnen. </p>
  
  @param   <T> generic type of timepoints on the underlying timeline
  @param   timeLine    the timeline definition
  @return  new interval factory
  @since   5.0