code: def subspace_index(self, little_endian_bits_int: int
                         ) -> Tuple[Union[slice, int, 'ellipsis'], ...]:
          
          return linalg.slice_for_qubits_equal_to(self.axes,
                                                  little_endian_bits_int)
docs: An index for the subspace where the target axes equal a value.
  
          Args:
              little_endian_bits_int: The desired value of the qubits at the
                  targeted `axes`, packed into an integer. The least significant
                  bit of the integer is the desired bit for the first axis, and
                  so forth in increasing order.
  
          Returns:
              A value that can be used to index into `target_tensor` and
              `available_buffer`, and manipulate only the part of Hilbert space
              corresponding to a given bit assignment.
  
          Example:
              If `target_tensor` is a 4 qubit tensor and `axes` is `[1, 3]` and
              then this method will return the following when given
              `little_endian_bits=0b01`:
  
                  `(slice(None), 0, slice(None), 1, Ellipsis)`
  
              Therefore the following two lines would be equivalent:
  
                  args.target_tensor[args.subspace_index(0b01)] += 1
  
                  args.target_tensor[:, 0, :, 1] += 1