code: public static <K, N> InternalTimersSnapshotReader<K, N> getReaderForVersion(
  		int version, ClassLoader userCodeClassLoader) {
  
  		switch (version) {
  			case NO_VERSION:
  				return new InternalTimersSnapshotReaderPreVersioned<>(userCodeClassLoader);
  
  			case 1:
  				return new InternalTimersSnapshotReaderV1<>(userCodeClassLoader);
  
  			case InternalTimerServiceSerializationProxy.VERSION:
  				return new InternalTimersSnapshotReaderV2<>(userCodeClassLoader);
  
  			default:
  				// guard for future
  				throw new IllegalStateException(
  					"Unrecognized internal timers snapshot writer version: " + version);
  		}
  	}
docs: -------------------------------------------------------------------------------