docs: private static <T> PojoSerializer<T> constructReconfiguredPojoSerializer(
  			PojoSerializer<T> originalNewPojoSerializer,
  			IntermediateCompatibilityResult<T> fieldSerializerCompatibility,
  			LinkedOptionalMap<Class<?>, TypeSerializerSnapshot<?>> registeredSerializerSnapshots,
  			IntermediateCompatibilityResult<T> preExistingRegistrationsCompatibility,
  			LinkedOptionalMap<Class<?>, TypeSerializerSnapshot<?>> nonRegisteredSubclassSerializerSnapshots) {
  
  		@SuppressWarnings("unchecked")
  		final TypeSerializer<Object>[] reconfiguredFieldSerializers = constructReconfiguredFieldSerializers(fieldSerializerCompatibility);
  
  		Tuple2<LinkedHashMap<Class<?>, Integer>, TypeSerializer<Object>[]> reconfiguredSubclassRegistry = constructReconfiguredSubclassRegistry(
  			originalNewPojoSerializer.getBundledSubclassSerializerRegistry(),
  			registeredSerializerSnapshots,
  			preExistingRegistrationsCompatibility);
  
  		return new PojoSerializer<>(
  			originalNewPojoSerializer.getPojoClass(),
  			originalNewPojoSerializer.getFields(),
  			reconfiguredFieldSerializers,
  			reconfiguredSubclassRegistry.f0,
  			reconfiguredSubclassRegistry.f1,
  			restoreSerializers(nonRegisteredSubclassSerializerSnapshots.unwrapOptionals()),
  			originalNewPojoSerializer.getExecutionConfig());
  	}