def METHOD_NAME(self, tag: t.Optional[t.Union[Tag, str]] = None) -> t.List[Item]:
    if not tag:
        return [
            ver
            for _d in sorted(self._fs.listdir("/"))
            if self._fs.isdir(_d)
            for ver in self.METHOD_NAME(_d)
        ]
    _tag = Tag.from_taglike(tag)
    if _tag.version is None:
        if not self._fs.isdir(_tag.name):
            raise NotFound(
                f"no {self._item_type.get_typename()}s with name '{_tag.name}' found"
            )
        tags = sorted(
            [
                Tag(_tag.name, f.name)
                for f in self._fs.scandir(_tag.name)
                if f.is_dir
            ]
        )
        return [self._get_item(t) for t in tags]
    else:
        return [self._get_item(_tag)] if self._fs.isdir(_tag.path()) else []