code: static <T> PojoSerializerSnapshotData<T> createFrom(
  			Class<T> pojoClass,
  			Field[] fields,
  			TypeSerializerSnapshot<?>[] existingFieldSerializerSnapshots,
  			LinkedHashMap<Class<?>, TypeSerializerSnapshot<?>> existingRegisteredSubclassSerializerSnapshots,
  			Map<Class<?>, TypeSerializerSnapshot<?>> existingNonRegisteredSubclassSerializerSnapshots) {
  
  		final LinkedOptionalMap<Field, TypeSerializerSnapshot<?>> fieldSerializerSnapshots = new LinkedOptionalMap<>(fields.length);
  		for (int i = 0; i < fields.length; i++) {
  			Field field = fields[i];
  			String fieldName = (field == null) ? getDummyNameForMissingField(i) : field.getName();
  			fieldSerializerSnapshots.put(fieldName, field, existingFieldSerializerSnapshots[i]);
  		}
  
  		return new PojoSerializerSnapshotData<>(
  			pojoClass,
  			fieldSerializerSnapshots,
  			optionalMapOf(existingRegisteredSubclassSerializerSnapshots, Class::getName),
  			optionalMapOf(existingNonRegisteredSubclassSerializerSnapshots, Class::getName));
  	}
docs: Creates a {@link PojoSerializerSnapshotData} from existing snapshotted configuration of a {@link PojoSerializer}.