def __init__(self, qubit_map: Mapping[cirq.Qid, int] | None = None, *args, **kwargs):
        """Inits StateVectorMixin.

        Args:
            qubit_map: A map from the Qubits in the Circuit to the index
                of this qubit for a canonical ordering. This canonical ordering
                is used to define the state (see the state_vector() method).
            *args: Passed on to the class that this is mixed in with.
            **kwargs: Passed on to the class that this is mixed in with.
        """
        super().__init__(*args, **kwargs)
        self._qubit_map = qubit_map or {}
        qid_shape = simulator._qubit_map_to_shape(self._qubit_map)
        self._qid_shape = None if qubit_map is None else qid_shape
Inits StateVectorMixin.

        Args:
            qubit_map: A map from the Qubits in the Circuit to the index
                of this qubit for a canonical ordering. This canonical ordering
                is used to define the state (see the state_vector() method).
            *args: Passed on to the class that this is mixed in with.
            **kwargs: Passed on to the class that this is mixed in with.
        
cirq-core/cirq/sim/state_vector.py