docs: def _fluent_size(self, fluents, ordering) -> Sequence[Sequence[int]]:
          '''Returns the sizes of `fluents` following the given `ordering`.
  
          Returns:
              Sequence[Sequence[int]]: A tuple of tuple of integers
              representing the shape and size of each fluent.
          '''
          shapes = []
          for name in ordering:
              fluent = fluents[name]
              shape = self._param_types_to_shape(fluent.param_types)
              shapes.append(shape)
          return tuple(shapes)