@NotNull
  ListResult doLoadChildren(final int parentId) throws IOException {
    PersistentFSConnection.ensureIdIsValid(parentId);
    if (parentId == SUPER_ROOT_ID) {
      throw new AssertionError(
        "Incorrect call .doLoadChildren() with a super-root record id(=" + SUPER_ROOT_ID + "). " +
        "Super-root is a special file record for internal use, it MUST NOT be used directly");
    }

    final PersistentFSRecordsStorage records = connection.getRecords();
    final int parentModCount = records.getModCount(parentId);
    try (DataInputStream input = attributeAccessor.readAttribute(parentId, CHILDREN_ATTR)) {
      final int count = (input == null) ? 0 : DataInputOutputUtil.readINT(input);
      final List<ChildInfo> children = (count == 0) ? Collections.emptyList() : new ArrayList<>(count);
      int prevId = parentId;
      int maxAllocatedID = records.maxAllocatedID();
      for (int i = 0; i < count; i++) {
        final int childId = DataInputOutputUtil.readINT(input) + prevId;
        checkChildIdValid(parentId, childId, i, maxAllocatedID);

        prevId = childId;
        final int nameId = records.getNameId(childId);
        checkNameIdValid(nameId, parentId, childId);
        final ChildInfo child = new ChildInfoImpl(childId, nameId, null, null, null);
        children.add(child);
      }

      return new ListResult(parentModCount, children, parentId);
    }
  }
@NotNull
  ListResult doLoadChildren(final int parentId)