docs: @SuppressWarnings("unchecked")
  	private static Tuple2<LinkedHashMap<Class<?>, Integer>, TypeSerializer<Object>[]> decomposeSubclassSerializerRegistry(
  		LinkedHashMap<Class<?>, TypeSerializer<?>> subclassSerializerRegistry) {
  
  		final LinkedHashMap<Class<?>, Integer> subclassIds = new LinkedHashMap<>(subclassSerializerRegistry.size());
  		final TypeSerializer[] subclassSerializers = new TypeSerializer[subclassSerializerRegistry.size()];
  
  		subclassSerializerRegistry.forEach((registeredSubclassClass, serializer) -> {
  			int id = subclassIds.size();
  			subclassIds.put(registeredSubclassClass, id);
  			subclassSerializers[id] = serializer;
  		});
  
  		return Tuple2.of(subclassIds, subclassSerializers);
  	}