Object (@Nullable Object context, @NotNull List<? extends Element> elements) { if (!isSurroundWithTag()) { return doDeserializeList(context, elements); } assert elements.size() == 1; Element element = elements.get(0); return doDeserializeList(context == null && element.getName().equals(Constants.SET) ? new HashSet<>() : context, element.getChildren()); }