def untag_prefix(self, *axis_order: AxisName) -> NamedArray | NamedArrayView:
    """Adds the requested axes to the front of the array's positional axes.

    This is a version of `untag` that can be called on NamedArrays or
    NamedArrayViews that already have positional axes.

    Args:
      *axis_order: Axis names to make positional, in the order they should
        appear in the positional view.

    Returns:
      A view with the given axes treated as positional, followed by the existing
      positional axes.
    """
    # We implement `untag_prefix` using `untag` with temporary axis
    # identifiers.
    tmp_axis_ids = [TmpPosAxisMarker() for _ in self.positional_shape]
    return self.tag(*tmp_axis_ids).untag(*axis_order, *tmp_axis_ids)
Adds the requested axes to the front of the array's positional axes.

    This is a version of `untag` that can be called on NamedArrays or
    NamedArrayViews that already have positional axes.

    Args:
      *axis_order: Axis names to make positional, in the order they should
        appear in the positional view.

    Returns:
      A view with the given axes treated as positional, followed by the existing
      positional axes.
    
penzai/core/named_axes.py