@NotNull
    public Object createObject(@NotNull Class<?> aClass, FList<Type> processedTypes) throws Exception {
      Object o = ReflectionUtil.newInstance(aClass);
      for (MutableAccessor accessor : XmlSerializerUtil.getAccessors(aClass)) {
        AbstractCollection abstractCollection = accessor.getAnnotation(AbstractCollection.class);
        List<Type> elementTypes = abstractCollection != null ? Arrays.asList(abstractCollection.elementTypes()) : Collections.emptyList();
        Object value = createValue(accessor.getGenericType(), processedTypes, elementTypes);
        if (value != null) {
          accessor.set(o, value);
        }
      }
      return o;
    }
@NotNull
    public Object createObject(@NotNull Class<?> aClass, FList<Type> processedTypes)