def _decompose_two_qubit_operation(
        self, op: cirq.Operation, moment_idx: int
    ) -> DecomposeResult:
        """Decomposes (connected component of) 2-qubit operations using gates from this gateset.

        Args:
            op: A two-qubit operation (can be a tagged `cirq.CircuitOperation` wrapping
                a connected component of 1 & 2  qubit unitaries).
            moment_idx: Index of the moment in which operation `op` occurs.

        Returns:
            A `cirq.OP_TREE` implementing `op` using gates from this gateset OR
            None or NotImplemented if decomposition of `op` is unknown.
        """
Decomposes (connected component of) 2-qubit operations using gates from this gateset.

        Args:
            op: A two-qubit operation (can be a tagged `cirq.CircuitOperation` wrapping
                a connected component of 1 & 2  qubit unitaries).
            moment_idx: Index of the moment in which operation `op` occurs.

        Returns:
            A `cirq.OP_TREE` implementing `op` using gates from this gateset OR
            None or NotImplemented if decomposition of `op` is unknown.
        
cirq-core/cirq/transformers/target_gatesets/compilation_target_gateset.py